:root{--bg:#0a0707;--bg-panel:#120b0c;--bg-panel-raised:#1a1112;--border:#3a1418;--border-bright:#6b1620;--text:#ede4e4;--text-dim:#a5898c;--accent:#b3122a;--accent-bright:#ff2740;--accent-dim:#4a0810;--shadow-glow:0 0 24px #b3122a40;--sans:"Inter", system-ui, "Segoe UI", Roboto, sans-serif;--display:"Cinzel", var(--sans);--mono:ui-monospace, Consolas, monospace;font:17px/1.6 var(--sans);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body,#root{height:100%;min-height:100svh;margin:0}body{background:radial-gradient(at top,#170c0d 0%,#0a0707 60%)}#root{flex-direction:column;display:flex}h1,h2,h3{font-family:var(--display);color:var(--text);margin:0;font-weight:600}p{margin:0 0 1em}p:last-child{margin-bottom:0}a{color:var(--accent-bright)}button{font-family:inherit}::selection{background:var(--accent-dim);color:var(--text)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg-panel)}::-webkit-scrollbar-thumb{background:var(--border-bright);border-radius:6px}::-webkit-scrollbar-thumb:hover{background:var(--accent)}.app{flex-direction:column;min-height:100svh;display:flex}.app-header{text-align:center;border-bottom:1px solid var(--border);background:linear-gradient(#b3122a14,#0000);padding:20px 24px 0}.app-title{text-decoration:none;display:inline-block}.app-header h1{letter-spacing:.12em;text-transform:uppercase;color:var(--accent-bright);text-shadow:var(--shadow-glow);font-size:2rem}.tab-bar{flex-wrap:wrap;justify-content:center;gap:4px;margin-top:18px;display:flex}.tab-link{letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);border-bottom:2px solid #0000;padding:10px 18px;font-size:.8rem;text-decoration:none;transition:color .2s,border-color .2s}.tab-link:hover{color:var(--text)}.tab-link-active{color:var(--accent-bright);border-color:var(--accent)}.viewer-page{flex-direction:column;flex:1;min-height:0;display:flex}.viewer{flex:1;min-height:0;display:flex}.image-pane{border-right:1px solid var(--border);background:var(--bg-panel);flex:1;justify-content:center;align-items:center;min-width:0;padding:24px;display:flex}.image-frame{border:1px solid var(--border-bright);cursor:zoom-in;background:#000;border-radius:6px;max-width:100%;max-height:calc(100svh - 220px);padding:0;transition:border-color .2s,box-shadow .2s;display:block;position:relative;overflow:hidden}.image-frame:hover{border-color:var(--accent);box-shadow:var(--shadow-glow)}.image-frame img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:calc(100svh - 220px);display:block}.image-zoom-badge{letter-spacing:.06em;text-transform:uppercase;color:var(--text);border:1px solid var(--border-bright);opacity:0;pointer-events:none;background:#0a0707bf;border-radius:4px;padding:4px 10px;font-size:.7rem;transition:opacity .2s;position:absolute;bottom:8px;right:8px}.image-frame:hover .image-zoom-badge,.image-frame:focus-visible .image-zoom-badge{opacity:1}.text-pane{flex:1;min-width:0;padding:32px;overflow-y:auto}.text-pane-content{max-width:640px;margin:0 auto}.text-pane-content h2{font-family:var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--accent-bright);border-bottom:1px solid var(--border);margin:1.6em 0 .7em;padding-bottom:6px;font-size:1.15rem}.text-pane-content h2:first-child{margin-top:0}.text-pane-content p{color:var(--text);font-size:1.05rem}.text-pane-content em{color:var(--text-dim);border-left:2px solid var(--accent-dim);margin:.8em 0;padding-left:12px;font-style:italic;display:block}.text-pane-content strong{color:var(--accent-bright)}.text-pane-content blockquote{border-left:2px solid var(--border-bright);color:var(--text-dim);margin:.8em 0;padding-left:12px}.app-footer{border-top:1px solid var(--border);background:var(--bg-panel);padding:12px 24px}.nav-bar{justify-content:center;align-items:center;gap:24px;display:flex}.nav-button{letter-spacing:.06em;text-transform:uppercase;color:var(--text);border:1px solid var(--border-bright);cursor:pointer;background:0 0;border-radius:4px;padding:10px 20px;font-size:.85rem;transition:background .2s,border-color .2s,color .2s}.nav-button:hover:not(:disabled){background:var(--accent-dim);border-color:var(--accent);color:#fff}.nav-button:disabled{opacity:.35;cursor:not-allowed}.nav-counter{text-align:center;min-width:64px;font-family:var(--mono);color:var(--text-dim);letter-spacing:.04em}.empty-state{color:var(--text-dim);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.zoom-overlay{z-index:100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#050303eb;flex-direction:column;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.zoom-close{width:44px;height:44px;color:var(--text);border:1px solid var(--border-bright);cursor:pointer;background:0 0;border-radius:4px;font-size:1.6rem;line-height:1;position:absolute;top:16px;right:20px}.zoom-close:hover{color:#fff;border-color:var(--accent);background:var(--accent-dim)}.zoom-stage{width:90vw;height:80vh}.zoom-wrapper{width:100%;height:100%}.zoom-content{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.zoom-content img{max-width:90vw;max-height:80vh}.zoom-hint{color:var(--text-dim);letter-spacing:.03em;margin-top:16px;font-size:.8rem}.home{flex:1;min-height:0;padding:40px 24px 56px;overflow-y:auto}.home-intro{text-align:center;max-width:640px;color:var(--text-dim);margin:0 auto 32px}.collection-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:20px;max-width:960px;margin:0 auto;display:grid}.collection-card{border:1px solid var(--border);background:var(--bg-panel);border-radius:8px;text-decoration:none;transition:border-color .2s,box-shadow .2s;display:block;overflow:hidden}.collection-card:hover{border-color:var(--accent);box-shadow:var(--shadow-glow)}.collection-thumb{aspect-ratio:4/3;background:#000;overflow:hidden}.collection-thumb img{object-fit:cover;object-position:top;opacity:.85;width:100%;height:100%}.collection-meta{padding:14px 16px}.collection-meta h2{letter-spacing:.04em;color:var(--text);font-size:1.1rem}.collection-count{color:var(--text-dim);font-size:.8rem;font-family:var(--mono);margin-top:4px;display:block}@media (width<=860px){.viewer{flex-direction:column;overflow-y:auto}.image-pane{border-right:none;border-bottom:1px solid var(--border);padding:16px}.image-frame,.image-frame img{max-height:46svh}.text-pane{padding:24px 20px}}
