| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554 |
- :root {
- --bg-main: #121212;
- --bg-card: #1e1e1e;
- --border: #333333;
- --text-primary: #ffffff;
- --text-secondary: #a0a0a0;
- --text-muted: #d1d1d1;
- --accent: #e2e2e2;
- --accent-glow: rgba(255,255,255,0.1);
- }
- @media (prefers-color-scheme: light) {
- :root {
- --bg-main: #ffffff;
- --bg-card: #f8f9fa;
- --border: #e0e0e0;
- --text-primary: #1a1a1a;
- --text-secondary: #5f6368;
- --text-muted: #757575;
- --accent: #202124;
- --accent-glow: rgba(0,0,0,0.05);
- }
- }
- *, *::before, *::after {
- box-sizing: border-box;
- }
- body {
- background-color:var(--bg-main);
- color:var(--text-primary);
- font-family:system-ui,-apple-system,sans-serif;
- margin:0;
- padding:0;
- -webkit-tap-highlight-color: transparent;
- }
- img[src=""] {
- display: none;
- }
- .view-home {
- display: flex;
- justify-content: center;
- align-items: center;
- min-height: 100vh;
- padding: 20px;
- background: radial-gradient(circle at top right, var(--bg-card) 0%, var(--bg-main) 100%);
- }
- .view-home .container {
- width: 100%;
- max-width: 580px;
- margin: 0 auto;
- text-align: center;
- display: flex;
- flex-direction: column;
- }
- .view-home .hero-logo {
- font-size:4.5rem;
- margin-bottom:30px;
- letter-spacing:-3px;
- font-weight:800;
- }
- .view-home .search-input-wrapper {
- width: 100%;
- margin-bottom: 24px;
- }
- .view-home .search-box {
- font-size:1.1rem;
- padding:16px 28px;
- box-shadow:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -1px rgba(0,0,0,0.06);
- }
- .view-home .buttons {
- display:flex;
- gap:12px;
- justify-content:center;
- }
- .view-home button {
- padding:10px 24px;
- border-radius:8px;
- font-weight:600;
- font-size:0.9rem;
- cursor:pointer;
- transition:all 0.2s;
- border:1px solid transparent;
- touch-action:manipulation;
- }
- .view-home .btn-primary {
- background:var(--accent);
- color:var(--bg-main);
- }
- .view-home .btn-primary:hover {
- filter:brightness(1.1);
- transform:translateY(-1px);
- }
- .view-home .btn-secondary {
- background:var(--bg-card);
- color:var(--text-primary);
- border-color:var(--border);
- }
- .view-home .btn-secondary:hover {
- background:var(--border);
- border-color:var(--text-secondary);
- }
- header {
- display:flex;
- align-items:center;
- gap:20px;
- padding:15px 60px;
- border-bottom:1px solid var(--border);
- background:var(--bg-main);
- }
- .search-form {
- flex-grow:1;
- max-width:600px;
- }
- h1 {
- font-size:1.5rem;
- margin:0;
- letter-spacing:-1px;
- white-space:nowrap;
- }
- h1 span {
- color:var(--accent);
- }
- .search-box {
- width: 100%;
- padding: 12px 24px;
- border-radius: 99px;
- border: 1px solid var(--border);
- background: var(--bg-card);
- color: var(--text-primary);
- outline: none;
- transition: border-color 0.2s, box-shadow 0.2s;
- }
- .search-box:focus {
- border-color:var(--accent);
- box-shadow:0 0 0 4px var(--accent-glow);
- }
- .nav-tabs {
- padding:0 60px;
- border-bottom:1px solid var(--border);
- background:var(--bg-main);
- }
- .nav-container {
- display:flex;
- gap:30px;
- max-width:1200px;
- }
- .nav-tabs a {
- padding:14px 0;
- color:var(--text-secondary);
- text-decoration:none;
- font-size:0.9rem;
- font-weight:500;
- border-bottom:2px solid transparent;
- transition:color 0.2s;
- touch-action: manipulation;
- }
- .nav-tabs a:hover {
- color:var(--text-primary);
- }
- .nav-tabs a.active {
- color:var(--accent);
- border-bottom-color:var(--accent);
- }
- .image-results-container {
- padding:30px 60px;
- }
- .image-grid {
- display:grid;
- grid-template-columns:repeat(auto-fill,minmax(240px,1fr));
- gap:24px;
- max-width:1600px;
- margin:0 auto;
- }
- .image-card {
- background:var(--bg-card);
- border-radius:12px;
- overflow:hidden;
- border:1px solid var(--border);
- transition:transform 0.2s ease,border-color 0.2s;
- }
- .image-card:hover {
- transform:translateY(-4px);
- border-color:var(--accent);
- }
- .image-wrapper {
- position:relative;
- aspect-ratio:4/3;
- background:#000;
- overflow:hidden;
- }
- .image-wrapper img {
- width:100%;
- height:100%;
- object-fit:cover;
- display:block;
- transition:opacity 0.3s;
- }
- .image-overlay {
- position: absolute;
- inset: 0;
- background: rgba(0, 0, 0, 0.4);
- display: flex;
- align-items: center;
- justify-content: center;
- opacity: 0;
- transition: opacity 0.2s;
- pointer-events: none;
- }
- .image-card:hover .image-overlay {
- opacity:1;
- pointer-events: auto;
- }
- .overlay-buttons {
- display:flex;
- flex-direction:column;
- gap:10px;
- width:70%;
- }
- .overlay-btn {
- padding:8px 16px;
- border-radius:20px;
- font-size:0.8rem;
- font-weight:700;
- text-decoration:none;
- text-align:center;
- transition:filter 0.2s;
- touch-action: manipulation;
- }
- .overlay-btn:hover {
- filter:brightness(1.1);
- }
- .overlay-btn.primary {
- background:var(--accent);
- color:var(--bg-main);
- }
- .overlay-btn.secondary {
- background:rgba(255,255,255,0.1);
- color:white;
- backdrop-filter:blur(4px);
- border:1px solid rgba(255,255,255,0.2);
- }
- .image-info {
- padding:12px;
- }
- .image-caption {
- display:block;
- font-size:0.85rem;
- color:var(--text-primary);
- white-space:nowrap;
- overflow:hidden;
- text-overflow:ellipsis;
- margin-bottom:4px;
- }
- .image-source {
- display:block;
- font-size:0.75rem;
- color:var(--text-secondary);
- white-space:nowrap;
- overflow:hidden;
- text-overflow:ellipsis;
- }
- .content-layout {
- display:grid;
- grid-template-columns:140px minmax(0,700px) 450px;
- gap:60px;
- padding:30px 60px;
- }
- .results-container {
- grid-column:2;
- }
- .result {
- margin-bottom:32px;
- }
- .result a {
- color:var(--accent);
- text-decoration:none;
- font-size:1.25rem;
- display:inline-block;
- margin-bottom:4px;
- }
- .url {
- color:var(--text-secondary);
- font-size:0.85rem;
- display:block;
- margin-bottom:4px;
- }
- .desc {
- color:var(--text-muted);
- line-height:1.6;
- margin:0;
- }
- .infobox {
- grid-column:3;
- background:var(--bg-card);
- border:1px solid var(--border);
- border-radius:12px;
- align-self:start;
- margin-bottom: 10px;
- }
- .infobox-header {
- padding:20px;
- border-bottom:1px solid var(--border);
- }
- .infobox-title {
- font-size:1.5rem;
- font-weight:600;
- margin:0;
- } .infobox-content {
- display: flex;
- flex-direction: column;
- gap: 12px;
- }
- .read-more {
- color: var(--accent);
- font-weight: bold;
- text-decoration: none;
- font-size: 0.9rem;
- align-self: flex-start;
- }
- .read-more:hover {
- text-decoration: underline;
- } .infobox-main {
- display:flex;
- gap:15px;
- padding:20px;
- }
- .infobox-image {
- width:120px;
- height:120px;
- min-width:120px;
- border-radius:8px;
- border:1px solid var(--border);
- object-fit:cover;
- }
- .infobox-summary {
- display: block;
- font-size:0.95rem;
- line-height:1.5;
- color:var(--text-muted);
- margin:0;
- }
- .pagination {
- display: flex;
- justify-content: center;
- align-items: center;
- gap: 16px;
- margin-top: 40px;
- padding-bottom: 40px;
- }
- .pagination-btn {
- background: var(--bg-card);
- color: var(--text-primary);
- border: 1px solid var(--border);
- padding: 8px 16px;
- border-radius: 8px;
- text-decoration: none;
- font-size: 0.9rem;
- font-weight: 600;
- transition: all 0.2s;
- touch-action: manipulation;
- }
- .pagination-btn:hover {
- background: var(--border);
- border-color: var(--text-secondary);
- }
- .pagination-current {
- color: var(--text-secondary);
- font-size: 0.9rem;
- }
- @media (max-width:1200px) {
- .content-layout {
- grid-template-columns:1fr;
- padding:20px 30px;
- gap:20px;
- }
- .results-container,.infobox-sidebar {
- grid-column:1;
- max-width:100%;
- }
- .infobox-sidebar {
- order:-1;
- }
- .nav-tabs,.image-results-container {
- padding:0 30px;
- }
- header {
- padding:15px 30px;
- }
- }
- @media (max-width:768px) {
- header {
- flex-direction:column;
- gap:12px;
- padding:12px 16px;
- text-align:center;
- }
- h1 {
- font-size:1.3rem;
- }
- .search-form {
- width:100%;
- max-width:100%;
- }
- .search-form .search-box {
- width:100%;
- }
- .nav-tabs {
- overflow-x:auto;
- -webkit-overflow-scrolling:touch;
- padding:0 16px;
- }
- .nav-container {
- gap:24px;
- min-width:max-content;
- }
- .nav-tabs a {
- padding:12px 0;
- font-size:0.95rem;
- }
- .content-layout {
- padding:16px;
- gap:16px;
- }
- .result {
- margin-bottom:24px;
- }
- .result a {
- font-size:1.1rem;
- word-break:break-word;
- }
- .url {
- font-size:0.8rem;
- word-break:break-all;
- }
- .desc {
- font-size:0.9rem;
- }
- .infobox {
- margin-bottom:16px;
- }
- .infobox-header {
- padding:16px;
- }
- .infobox-title {
- font-size:1.2rem;
- }
- .infobox-main {
- flex-direction:column;
- padding:16px;
- gap:12px;
- }
- .infobox-image {
- width:100%;
- height:auto;
- min-width:unset;
- max-width:200px;
- }
- .image-results-container {
- padding:16px;
- }
- .pagination {
- flex-wrap:wrap;
- gap:8px;
- padding:0 8px;
- }
- .pagination-btn {
- padding:10px 14px;
- font-size:0.85rem;
- }
- .view-home {
- display: flex;
- justify-content: center;
- align-items: center;
- transform: translateY(-5vh);
- padding:20px 16px;
- min-height: 100vh;
- }
- .view-home .container {
- padding:0;
- width:100%;
- max-width:580px;
- }
- .view-home .hero-logo {
- font-size:3rem;
- margin-bottom:24px;
- }
- .view-home .search-input-wrapper {
- margin-bottom:16px;
- }
- .view-home .search-box {
- width:100%;
- font-size:1rem;
- padding:14px 20px;
- }
- .view-home .buttons {
- gap:10px;
- }
- .view-home button {
- padding:12px 20px;
- }
- }
- @media (max-width:600px) {
- header {
- padding:12px 12px;
- }
- .search-box {
- font-size:0.95rem;
- }
- .view-home .search-box {
- width:100%;
- }
- .view-home {
- padding:20px 16px;
- }
- .image-grid {
- grid-template-columns:repeat(auto-fill,minmax(140px,1fr));
- gap:10px;
- }
- .image-card {
- border-radius:8px;
- }
- .image-info {
- padding:8px 10px;
- }
- .image-caption {
- font-size:0.8rem;
- }
- .image-source {
- font-size:0.7rem;
- }
- .overlay-buttons {
- width:80%;
- }
- .overlay-btn {
- padding:6px 12px;
- font-size:0.75rem;
- }
- }
|