:root{--qt-bg:#0f1211;--qt-surface:#171b19;--qt-elevated:#1e2421;--qt-ink:#e8eeeb;--qt-muted:#8a968f;--qt-accent:#5b8a7a;--qt-accent-soft:#5b8a7a38;--qt-line:#e8eeeb1a;--qt-font-display:"Space Grotesk", "Segoe UI", sans-serif;--qt-font-ui:"IBM Plex Sans", "Segoe UI", sans-serif;color:var(--qt-ink);background:var(--qt-bg);font-family:var(--qt-font-ui);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--qt-bg);min-width:320px}a{color:var(--qt-accent);text-decoration:none}.shell{background:radial-gradient(ellipse 70% 45% at 85% 0%, #5b8a7a12, transparent 55%), radial-gradient(ellipse 50% 35% at 10% 100%, #5b8a7a0a, transparent 50%), var(--qt-bg);background-attachment:fixed;flex-direction:column;min-height:100vh;display:flex}.app-header{z-index:100;background:var(--qt-surface);border-bottom:1px solid var(--qt-line);position:sticky;top:0}.app-header__inner{justify-content:space-between;align-items:center;gap:16px;width:100%;max-width:1120px;margin:0 auto;padding:12px 20px;display:flex}.app-header__brand{align-items:center;gap:28px;min-width:0;display:flex}.app-header__logo{color:inherit;flex-shrink:0;align-items:center;gap:12px;text-decoration:none;transition:opacity .2s;display:flex}.app-header__logo:hover{opacity:.9}.brand-mark{flex-shrink:0;width:36px;height:36px;display:block}.brand-mark__plate{fill:var(--qt-elevated)}.brand-mark__bowl,.brand-mark__stem{fill:none;stroke:var(--qt-accent);stroke-width:3.2px}.brand-mark__tile{fill:var(--qt-muted)}.brand-mark__tile:nth-of-type(5){fill:var(--qt-ink)}.app-header__word{flex-direction:column;gap:2px;display:flex}.app-header__name{font-family:var(--qt-font-display);letter-spacing:-.02em;color:var(--qt-ink);font-size:1.2rem;font-weight:700;line-height:1.1}.app-header__tag{letter-spacing:.04em;color:var(--qt-muted);white-space:nowrap;font-size:.68rem;font-weight:500}.app-header__nav{align-items:center;gap:2px;display:flex}.app-header__link{color:var(--qt-muted);border-radius:6px;padding:7px 11px;font-size:.9rem;font-weight:500;text-decoration:none;transition:color .15s,background .15s}.app-header__link:hover{color:var(--qt-ink);background:#e8eeeb0f}.app-header__link.is-active{color:var(--qt-ink);background:var(--qt-accent-soft)}.app-header__actions{flex-shrink:0;align-items:center;gap:10px;display:flex}.app-header__cta.ant-btn{background:var(--qt-accent);height:34px;color:var(--qt-bg);box-shadow:none;border:none;border-radius:6px;padding-inline:14px;font-weight:600}.app-header__cta.ant-btn:hover{color:var(--qt-bg)!important;background:#6a9b8a!important}.app-header__ghost.ant-btn{border-radius:6px;height:34px;color:var(--qt-muted)!important}.app-header__ghost.ant-btn:hover{color:var(--qt-ink)!important;background:#e8eeeb0f!important}.app-header__user{border:1px solid var(--qt-line);background:var(--qt-elevated);color:var(--qt-ink);font:inherit;border-radius:6px;align-items:center;gap:10px;margin:0;padding:4px 10px 4px 4px;display:flex}.app-header__avatar{background:var(--qt-accent-soft);width:28px;height:28px;color:var(--qt-accent);border-radius:5px;place-items:center;font-size:14px;display:grid}.app-header__user-name{font-size:.84rem;font-weight:600;line-height:1.1}@media (width<=720px){.app-header__tag,.app-header__nav{display:none}}.main{flex:1;width:min(1120px,100% - 2rem);margin:0 auto;padding:1.5rem 0 3rem}.hero{padding:.5rem 0 1.5rem;animation:.45s both rise}.hero h1{font-family:var(--qt-font-display);letter-spacing:-.03em;color:var(--qt-ink);margin:0 0 .55rem;font-size:clamp(1.8rem,3.5vw,2.4rem);font-weight:700;line-height:1.1}.hero p{max-width:36rem;color:var(--qt-muted);margin:0;font-size:1rem}.filters{flex-wrap:wrap;align-items:center;gap:.65rem;margin:0 0 1.25rem;animation:.45s 60ms both rise;display:flex}.grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem;display:grid}.card{background:var(--qt-surface);border:1px solid var(--qt-line);color:inherit;border-radius:10px;flex-direction:column;transition:transform .18s,border-color .18s,background .18s;animation:.45s both rise;display:flex;overflow:hidden}.card:hover{background:var(--qt-elevated);border-color:#5b8a7a73;transform:translateY(-2px)}.card-cover{aspect-ratio:16/10;background:var(--qt-elevated) center/cover no-repeat;position:relative}.card-cover:after{content:"";background:linear-gradient(#0000 45%,#0f1211e0);position:absolute;inset:0}.card-body{flex-direction:column;flex:1;gap:.35rem;padding:.85rem 1rem 1rem;display:flex}.card-title{font-family:var(--qt-font-display);letter-spacing:-.02em;color:var(--qt-ink);margin:0;font-size:1.05rem;font-weight:700}.card-meta{color:var(--qt-muted);flex-wrap:wrap;gap:.4rem .65rem;font-size:.82rem;display:flex}.badge{background:var(--qt-accent-soft);color:var(--qt-accent);border:1px solid #5b8a7a47;border-radius:999px;align-items:center;padding:.12rem .45rem;font-size:.72rem;font-weight:600;display:inline-flex}.badge.nexus{color:#c8a05a;background:#c8a05a1f;border-color:#c8a05a47}.detail{gap:1.25rem;animation:.4s both rise;display:grid}@media (width>=900px){.detail{grid-template-columns:1.2fr .8fr;align-items:start}}.panel{background:var(--qt-surface);border:1px solid var(--qt-line);border-radius:10px;padding:1.25rem}.panel h1,.panel h3{font-family:var(--qt-font-display);letter-spacing:-.02em;color:var(--qt-ink);margin:0 0 .5rem}.muted{color:var(--qt-muted)}.cover-lg{aspect-ratio:16/9;background:var(--qt-elevated) center/cover no-repeat;border:1px solid var(--qt-line);border-radius:8px;width:100%;margin-bottom:1rem}.file-row{border-bottom:1px solid var(--qt-line);justify-content:space-between;align-items:center;gap:.75rem;padding:.65rem 0;display:flex}.file-row:last-child{border-bottom:none}.pager{justify-content:center;margin-top:1.5rem;display:flex}.empty{text-align:center;color:var(--qt-muted);border:1px dashed var(--qt-line);background:var(--qt-surface);border-radius:10px;padding:3rem 1rem}.footer{border-top:1px solid var(--qt-line);color:var(--qt-muted);background:0 0;flex-wrap:wrap;justify-content:space-between;gap:1rem;width:min(1120px,100% - 2rem);margin:0 auto;padding:1rem 1.25rem 1.5rem;font-size:.85rem;display:flex}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
