:root{--bg: #141218;--panel: #1b1822;--text: #e2ddd6;--muted: #9d95aa;--accent: #c8a55e;--accent-border: rgba(200, 165, 94, .3);--border: #312d3d}*,*:before,*:after{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:Segoe UI,system-ui,-apple-system,sans-serif;background:radial-gradient(circle at 20% 0%,#2a2234 0%,var(--bg) 32%);color:var(--text)}.showcase-page{height:100%;overflow-y:auto;padding:42px 20px 48px}.showcase-hero{max-width:980px;margin:0 auto 30px;padding:24px;border:1px solid var(--accent-border);border-radius:12px;background:linear-gradient(180deg,rgba(255,255,255,.02),transparent)}.showcase-kicker{margin:0 0 12px;font-size:11px;text-transform:uppercase;letter-spacing:.16em;color:var(--accent)}.showcase-hero h1{margin:0 0 8px;font-size:clamp(30px,4.5vw,44px);font-family:Georgia,Times New Roman,serif}.showcase-hero p{margin:0;color:var(--muted);line-height:1.65}.showcase-overview{margin-top:14px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:#ffffff05}.showcase-overview p{margin:0}.showcase-overview p+p{margin-top:8px}.showcase-section-note{margin:-8px 0 14px;color:var(--muted);font-size:12px;line-height:1.55}.search-bar-wrap{display:flex;align-items:center;gap:10px;margin-bottom:18px}.showcase-search-input{flex:1;max-width:480px;padding:9px 14px;border:1px solid var(--border);border-radius:10px;background:var(--panel);color:var(--text);font-size:13px;outline:none;transition:border-color .15s ease}.showcase-search-input:focus{border-color:var(--accent-border)}.showcase-search-input::placeholder{color:var(--muted)}.search-count{font-size:11px;letter-spacing:.06em;color:var(--muted);white-space:nowrap}.showcase-grid-unified{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.showcase-card-unified img{display:block;width:100%}.unified-img-character{object-fit:contain;object-position:center top;background:#ddd0bb;height:auto}.unified-img-location{aspect-ratio:4 / 3;object-fit:cover;object-position:center;height:auto}.unified-img-scene{aspect-ratio:16 / 9;object-fit:cover;object-position:center;height:auto}.search-type-badge{display:inline-block;margin-top:4px;padding:2px 7px;border-radius:100px;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.search-type-badge--character{background:#64a0ff26;color:#89b4ff;border:1px solid rgba(100,160,255,.3)}.search-type-badge--variant{background:#c8a55e1f;color:var(--accent);border:1px solid var(--accent-border)}.search-type-badge--location{background:#78c88c1f;color:#7ec89a;border:1px solid rgba(120,200,140,.3)}.search-type-badge--scene{background:#c878c81f;color:#c878c8;border:1px solid rgba(200,120,200,.3)}.showcase-cta{margin-top:16px;border:1px solid var(--accent-border);background:#c8a55e24;color:var(--text);border-radius:8px;padding:8px 14px;font-size:13px;font-weight:600;cursor:pointer}.showcase-cta:hover{background:#c8a55e3d}.showcase-section{max-width:980px;margin:0 auto 30px}.showcase-section h2{margin:0 0 14px;font-size:12px;text-transform:uppercase;letter-spacing:.14em;color:var(--accent)}.chapter-zero-list{margin:0;padding:0;list-style:none;border-top:1px solid var(--border)}.chapter-zero-list li{position:relative;padding:14px 12px 14px 42px;border-bottom:1px solid var(--border);line-height:1.5}.chapter-zero-list li:before{position:absolute;left:12px;color:var(--accent);content:"○"}.chapter-zero-note{margin-top:16px}.showcase-tabs{display:inline-flex;gap:6px;margin-bottom:18px;padding:4px;border:1px solid var(--border);border-radius:10px;background:#ffffff05}.showcase-tab{border:1px solid transparent;background:transparent;color:var(--muted);border-radius:8px;padding:7px 12px;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}.showcase-tab.active{color:var(--text);border-color:var(--accent-border);background:#c8a55e29}.showcase-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px}.showcase-card{margin:0;border:1px solid var(--border);border-radius:10px;overflow:hidden;background:var(--panel);display:flex;flex-direction:column;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.showcase-card:hover{transform:translateY(-4px);border-color:var(--accent-border);box-shadow:0 10px 28px #00000059}.showcase-card img{width:100%;height:420px;object-fit:cover;object-position:center 22%;background:#120f18;display:block;border-bottom:1px solid var(--border)}.showcase-card-body{padding:10px 12px 12px;display:grid;gap:6px;background:linear-gradient(180deg,rgba(255,255,255,.03),transparent),#171522}.showcase-card p{margin:0;font-size:12px;font-weight:600}.showcase-role{margin-top:6px;color:var(--accent);font-size:11px;letter-spacing:.04em;text-transform:uppercase;font-weight:700}.showcase-description{color:var(--muted);line-height:1.55;font-size:12px;font-weight:500;display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden}.showcase-grid-featured{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));margin-bottom:18px}.showcase-grid-featured .showcase-card{border-color:var(--accent-border)}.showcase-grid-featured .showcase-card img{height:520px}.showcase-grid-featured .showcase-card-body{padding:12px 14px 14px}.showcase-grid-featured .showcase-description{-webkit-line-clamp:7}.showcase-grid-location{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.showcase-grid-scene{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.showcase-grid-character .showcase-card img{object-fit:contain;object-position:center top;background:#ddd0bb;height:auto}.showcase-grid-featured.showcase-grid-character .showcase-card img{height:auto}.showcase-grid-location .showcase-card img{height:auto;object-fit:cover;object-position:center}.showcase-grid-scene .showcase-card img{aspect-ratio:16 / 9;height:auto;object-fit:cover;object-position:center}.showcase-grid-location .showcase-card-body{padding:12px 13px 14px;background:linear-gradient(180deg,rgba(255,255,255,.02),transparent),#171522}.showcase-empty{margin:0;padding:12px;border:1px dashed var(--border);border-radius:10px;color:var(--muted)}.spoiler-lock{min-height:240px;display:flex;flex-direction:column;justify-content:center;gap:12px;align-items:center;padding:16px;text-align:center}.spoiler-title{font-size:12px;color:var(--muted);margin:0}.showcase-reveal-btn{border:1px solid var(--accent-border);background:#c8a55e24;color:var(--text);border-radius:8px;padding:8px 12px;font-size:12px;font-weight:700;cursor:pointer}.showcase-reveal-btn:hover{background:#c8a55e3d}
