:root{--bg:#fafaf9;--surface:#fff;--border:#e4e2df;--text:#1b1a18;--text-muted:#6d6a64;--accent:#14665a;--accent-contrast:#fff;--accent-soft:#e3efec;--shadow:0 1px 2px #0000000d, 0 8px 24px -12px #00000026;--radius:12px;--radius-sm:8px}@media (prefers-color-scheme:dark){:root{--bg:#131312;--surface:#1c1c1a;--border:#2e2d2a;--text:#ecebe8;--text-muted:#9b988f;--accent:#4fb39f;--accent-contrast:#10201c;--accent-soft:#1d2f2b;--shadow:0 1px 2px #0006, 0 8px 24px -12px #0009}}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:1rem;line-height:1.6}img{max-width:100%;display:block}h1,h2{letter-spacing:-.01em;margin:0 0 .5rem;line-height:1.2}h1{font-size:clamp(1.75rem,4vw,2.5rem)}h2{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-size:1.1rem}p{margin:0 0 1rem}a{color:var(--accent)}.shell{flex-direction:column;min-height:100dvh;display:flex}.topbar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;padding:1rem clamp(1rem,4vw,2.5rem);display:flex}.brand{letter-spacing:.02em;color:var(--text);font-size:1.05rem;font-weight:700;text-decoration:none}.brand span{color:var(--text-muted);font-weight:400}.topbar-link{font-size:.9rem;font-weight:600;text-decoration:none}.topbar-link:hover{text-decoration:underline}.content{flex:1;width:100%;max-width:68rem;margin:0 auto;padding:clamp(1.5rem,4vw,3rem) clamp(1rem,4vw,2.5rem) 4rem}.footer{border-top:1px solid var(--border);color:var(--text-muted);padding:1.25rem clamp(1rem,4vw,2.5rem);font-size:.85rem}.hero{max-width:34rem;margin-bottom:2.5rem}.hero p{color:var(--text-muted);font-size:1.05rem}.grid{grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:1.25rem;display:grid}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);flex-direction:column;text-decoration:none;transition:transform .12s,box-shadow .12s,border-color .12s;display:flex;position:relative;overflow:hidden}.card:hover,.card:focus-visible{box-shadow:var(--shadow);border-color:var(--accent);transform:translateY(-2px)}.card-body{flex-direction:column;flex:1;gap:.4rem;padding:1rem 1.1rem 1.2rem;display:flex}.card-name{margin:0;font-size:1.1rem}.card-tagline{color:var(--text-muted);flex:1;margin:0;font-size:.9rem}.badge{background:var(--surface);border:1px solid var(--border);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;box-shadow:var(--shadow);border-radius:999px;padding:.25rem .55rem;font-size:.72rem;font-weight:600;position:absolute;top:.75rem;right:.75rem}.shot{aspect-ratio:16/10;background:var(--accent-soft);overflow:hidden}.shot img{object-fit:cover;object-position:top;width:100%;height:100%}.shot-placeholder{place-items:center;display:grid}.shot-placeholder span{letter-spacing:.05em;color:var(--accent);opacity:.7;font-size:3rem;font-weight:800}.tags{flex-wrap:wrap;gap:.4rem;margin:.35rem 0 0;padding:0;list-style:none;display:flex}.tag{background:var(--accent-soft);color:var(--accent);border-radius:999px;padding:.2rem .6rem;font-size:.75rem;font-weight:600}.back{margin-bottom:1.5rem;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-block}.back:hover{text-decoration:underline}.detail-header{margin-bottom:1.5rem}.detail-tagline{color:var(--text-muted);margin:0;font-size:1.05rem}.detail-shot{border:1px solid var(--border);border-radius:var(--radius);margin-bottom:1.5rem}.detail-shot.shot-placeholder span{font-size:5rem}.detail-actions{flex-wrap:wrap;gap:.75rem;margin-bottom:2.5rem;display:flex}.detail-columns{gap:2rem;display:grid}@media (width>=768px){.detail-columns{grid-template-columns:1fr 14rem;gap:3rem}}.detail-about p{max-width:42rem}.btn{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--text);padding:.6rem 1.2rem;font-size:.95rem;font-weight:600;text-decoration:none;transition:border-color .12s,background .12s;display:inline-block}.btn:hover{border-color:var(--accent)}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}.btn-primary:hover{filter:brightness(1.08)}.btn-disabled{color:var(--text-muted);cursor:not-allowed}
