:root{--bg:#0d0c14;--panel:#171620;--panel2:#1e1c29;--line:#2d2a3a;--text:#f5f3fb;--muted:#9993a9;--purple:#8d3df0;--purple2:#a855f7;--green:#42d392;--gold:#ffca3a;--radius:14px}*{box-sizing:border-box}html{color-scheme:dark}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:radial-gradient(circle at top,#181122 0,#0d0c14 40%);color:var(--text)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.topbar,.admin-topbar{height:68px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;background:rgba(15,14,23,.88);backdrop-filter:blur(16px);position:sticky;top:0;z-index:20}.topbar nav{display:flex;gap:28px;color:#d2cde0}.brand{display:flex;align-items:center;gap:10px;font-weight:800}.brand-mark{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,var(--purple),#5e20c6);box-shadow:0 8px 22px rgba(141,61,240,.3)}.top-actions{display:flex;align-items:center;gap:10px}.primary,.ghost,.button-link{border-radius:9px;padding:11px 16px;border:1px solid transparent;cursor:pointer}.primary{background:linear-gradient(135deg,var(--purple),#6e28cb);color:#fff;font-weight:700}.ghost{background:#191823;border-color:var(--line);color:#ddd8e8}.hero{max-width:1240px;margin:0 auto;padding:86px 28px;display:grid;grid-template-columns:1.2fr .8fr;gap:48px;align-items:center}.hero h1{font-size:clamp(42px,6vw,76px);line-height:.98;margin:14px 0 22px;max-width:800px}.hero p{font-size:18px;color:var(--muted);line-height:1.7;max-width:680px}.eyebrow{font-size:12px;letter-spacing:.16em;color:#b98cff;font-weight:800}.hero-actions{display:flex;gap:12px;margin-top:30px}.hero-card{background:linear-gradient(145deg,#21192d,#14131c);border:1px solid var(--line);border-radius:22px;padding:20px;display:grid;grid-template-columns:150px 1fr;gap:20px;box-shadow:0 30px 80px rgba(0,0,0,.35)}.mock-cover,.cover-placeholder{background:linear-gradient(145deg,#41225b,#13131e);border-radius:14px;min-height:220px;display:grid;place-items:center;color:#c9a7f7;font-size:38px;font-weight:900}.section{max-width:1240px;margin:0 auto;padding:30px 28px 80px}.section-head,.page-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.section h2,.page-head h1{margin:8px 0}.card-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;margin-top:24px}.series-card{background:var(--panel);border:1px solid var(--line);padding:12px;border-radius:var(--radius)}.series-card .cover-placeholder{min-height:270px}.series-card h3{margin:12px 0 5px}.series-card p,.footer,.page-head p,small{color:var(--muted)}.rating{color:var(--gold);font-weight:800}.footer{border-top:1px solid var(--line);padding:36px 28px;display:flex;justify-content:center;gap:20px}.admin-body{display:flex;background:#0c0d12}.sidebar{width:238px;height:100vh;position:sticky;top:0;overflow:auto;padding:18px 14px;background:#0c0e14;border-right:1px solid #242630;display:flex;flex-direction:column;gap:4px}.sidebar small{font-size:10px;letter-spacing:.12em;margin:18px 10px 6px;color:#686d7d}.sidebar>a:not(.brand){padding:10px 12px;border-radius:8px;color:#cbcbd3}.sidebar>a:not(.brand):hover{background:#1d1730;color:#fff}.admin-brand{padding:0 8px 12px}.admin-shell{min-width:0;flex:1}.admin-main{padding:28px;max-width:1680px;margin:0 auto}.admin-topbar{position:sticky;background:#0f1118}.admin-user{font-weight:700}.page-head{margin-bottom:22px}.page-head h1{font-size:30px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.stat,.panel{background:linear-gradient(180deg,#171922,#13151d);border:1px solid #292c37;border-radius:12px}.stat{padding:18px}.stat span{display:block;color:#9ea1af}.stat strong{display:block;font-size:34px;margin:8px 0}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.wide-left{grid-template-columns:2fr 1fr}.bulk-grid{grid-template-columns:1.2fr .8fr}.panel{padding:18px}.panel h2{font-size:17px;margin:0 0 18px}.flow{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.flow span{background:#211a32;border:1px solid #3b2d58;padding:12px 14px;border-radius:9px}.check-list{padding-left:20px;line-height:2}.tabs,.steps{display:flex;gap:8px;margin-bottom:16px;border-bottom:1px solid var(--line)}.tabs button{background:none;border:0;color:#aaa4b7;padding:12px 16px;border-bottom:2px solid transparent}.tabs button.active{color:#fff;border-color:var(--purple)}.steps{border:1px solid var(--line);background:#14161e;padding:12px;border-radius:12px}.steps span{flex:1;padding:9px 12px;color:#9296a4}.steps .active{background:#2c1a45;color:#fff;border-radius:8px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.span-2{grid-column:span 2}label{display:block;color:#c9c8d1;font-size:13px}input,select,textarea{width:100%;margin-top:8px;background:#10121a;border:1px solid #343745;color:#fff;border-radius:8px;padding:11px 12px;outline:none}input:focus,select:focus,textarea:focus{border-color:#7a3ed1;box-shadow:0 0 0 3px rgba(122,62,209,.12)}textarea{resize:vertical}.code-area{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;line-height:1.65}.callout{margin:14px 0;padding:13px 14px;border:1px solid #4a3667;background:#20182d;border-radius:9px;color:#c9b9dc;line-height:1.6}.option-list{display:grid;gap:10px;margin:16px 0}.option-list label{display:flex;align-items:center;gap:9px}.option-list input{width:auto;margin:0}.preview-chapter{padding:14px;border:1px solid var(--line);border-radius:10px;margin-bottom:12px}.preview-chapter>div:first-child{display:flex;justify-content:space-between;align-items:center}.pill{display:inline-flex;padding:5px 8px;border-radius:999px;background:#342050;color:#d8b4fe;font-size:11px}.pill.success{background:#143427;color:#74e1ad}.thumb-row{display:grid!important;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}.thumb-row div{height:100px;border-radius:8px;border:1px solid #383a45;background:linear-gradient(145deg,#2a2440,#12141b);display:grid;place-items:center;color:#a99fb8}.summary-box{border-top:1px solid var(--line);margin-top:16px;padding-top:8px}.summary-box div{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #242630}.error-page{min-height:70vh;display:grid;place-content:center;text-align:center;gap:10px}.error-page h1{font-size:48px;margin:0}@media(max-width:1000px){.sidebar{width:190px}.stats-grid{grid-template-columns:repeat(2,1fr)}.admin-grid,.wide-left,.bulk-grid{grid-template-columns:1fr}.card-grid{grid-template-columns:repeat(3,1fr)}.hero{grid-template-columns:1fr}.hero-card{display:none}}@media(max-width:700px){.topbar nav{display:none}.sidebar{display:none}.admin-main{padding:18px}.card-grid{grid-template-columns:repeat(2,1fr)}.stats-grid{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.page-head{align-items:flex-start;flex-direction:column}.hero{padding-top:55px}.footer{flex-direction:column;align-items:center}.steps{overflow:auto}.steps span{min-width:130px}}

/* Phase 2 functional admin */
.sidebar>a.active{background:linear-gradient(90deg,#2c1d47,#21172f);color:#fff;border:1px solid #3d2a5b}.admin-brand span:last-child{display:flex;flex-direction:column}.admin-brand small{margin:2px 0 0;color:#9a74d6;letter-spacing:0;font-size:10px}.nav-badge{float:right;background:#6f31b7;color:#fff;border-radius:999px;padding:2px 6px;font-size:8px;font-weight:800}.nav-badge.beta{background:#283e72}.sidebar-user{margin-top:auto;position:sticky;bottom:-18px;background:#11131a;border-top:1px solid #242630;padding:14px 7px;display:grid;grid-template-columns:34px 1fr auto;gap:9px;align-items:center}.sidebar-user .avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#39255a;font-weight:800}.sidebar-user strong,.sidebar-user small{display:block;margin:0}.sidebar-user button{background:transparent;border:0;color:#aaa;cursor:pointer}.breadcrumbs{display:flex;gap:10px;align-items:center;color:#828796}.breadcrumbs strong{color:#e7e7ee}.notification-dot{width:23px;height:23px;border-radius:50%;background:#a52a43;display:grid;place-items:center;font-size:10px}.page-actions{display:flex;gap:9px}.stack-panels{display:flex;flex-direction:column;gap:16px}.save-wide{width:100%;text-align:center}.alert{border-radius:10px;padding:13px 15px;margin:0 0 16px;border:1px solid}.alert.success{background:#112c23;border-color:#23563f;color:#78dfae}.alert.danger{background:#32171d;border-color:#6b2e38;color:#ff9aa9}.pill.warning{background:#3c2d13;color:#f2c15b}.pill.danger{background:#3a171d;color:#ff8a98}.panel-title-row{display:flex;align-items:center;justify-content:space-between}.table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.table-search{max-width:330px;margin:0}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;min-width:850px}.data-table th{text-align:left;color:#7f8493;font-size:11px;text-transform:uppercase;letter-spacing:.06em;padding:11px;border-bottom:1px solid #30323d}.data-table td{padding:12px 11px;border-bottom:1px solid #242630;color:#d9d9df}.series-cell{display:flex;align-items:center;gap:10px}.series-cell img,.mini-cover{width:38px;height:50px;object-fit:cover;border-radius:6px;background:#2a1d3f;display:grid;place-items:center}.series-cell small{display:block;margin-top:3px}.tiny-button{display:inline-flex;background:#2d1a47;color:#cca8ff;border:1px solid #55347d;border-radius:7px;padding:6px 9px}.empty-cell{text-align:center!important;padding:40px!important;color:#7e8190!important}.cover-preview{display:block;width:110px;max-height:165px;object-fit:cover;border-radius:9px;margin-top:14px;border:1px solid var(--line)}.seo-health{display:flex;justify-content:space-between;align-items:center;background:#121a17;border:1px solid #284036;padding:11px;border-radius:9px;margin-bottom:14px}.seo-health strong{color:#68d69e}.seo-health span{color:#7e9b8c;font-size:11px}.quality-list{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:8px}.quality-list li{padding-left:20px;position:relative;color:#aaa}.quality-list li:before{position:absolute;left:0}.quality-list li.ok:before{content:'✓';color:#49d18c}.quality-list li.warn:before{content:'!';color:#f2b84b}.summary-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px}.summary-cards div{background:#10121a;border:1px solid #2b2e39;border-radius:9px;padding:10px}.summary-cards span,.summary-cards strong{display:block}.summary-cards span{font-size:10px;color:#858997}.summary-cards strong{margin-top:4px}.empty-preview{min-height:420px;display:grid;place-content:center;text-align:center;color:#838694;padding:30px}.empty-icon{font-size:46px;color:#8e47e8}.empty-preview strong{color:#ddd;font-size:17px}.warning-list{display:grid;gap:7px;margin:10px 0 14px}.warning-list div{font-size:12px;background:#2e2414;border:1px solid #5a471f;color:#e4bd66;border-radius:7px;padding:8px 10px}.chapter-preview-list{max-height:590px;overflow:auto;padding-right:4px}.chapter-meta{display:flex!important;gap:8px!important;justify-content:flex-start!important;margin-top:8px;color:#858997;font-size:11px}.url-preview{display:flex!important;flex-wrap:wrap;gap:6px!important;justify-content:flex-start!important;margin:11px 0}.url-preview span{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;background:#10121a;border:1px solid #2e313d;border-radius:6px;padding:6px 7px;color:#aaa}.text-success{color:#65d89d}.text-warning{color:#efbd57}.confirm-import{border-top:1px solid var(--line);padding-top:14px;margin-top:15px}.confirm-import small{display:block;text-align:center;margin-top:8px}.primary:disabled{opacity:.4;cursor:not-allowed}.auth-wrap{min-height:calc(100vh - 68px);display:grid;place-items:center;padding:38px 20px}.auth-card{width:min(430px,100%);background:linear-gradient(180deg,#191722,#111219);border:1px solid #2d2d39;border-radius:18px;padding:30px;box-shadow:0 30px 90px rgba(0,0,0,.42)}.auth-card.wide-auth{width:min(620px,100%)}.auth-brand{margin-bottom:28px}.auth-card h1{font-size:30px;margin:8px 0}.muted{color:var(--muted)}.stack-form{display:grid;gap:14px}.stack-form .primary{width:100%;margin-top:4px}.divider{display:flex;align-items:center;gap:10px;color:#686c78;margin:18px 0}.divider:before,.divider:after{content:'';height:1px;background:#2b2d35;flex:1}.google-button{display:flex;justify-content:center;gap:10px;align-items:center;border:1px solid #353743;background:#151720;padding:11px;border-radius:9px;font-weight:700}.google-g{font-weight:900;color:#fff;background:#4c65c6;width:22px;height:22px;border-radius:50%;display:grid;place-items:center}.auth-note{display:block;text-align:center;margin-top:12px;line-height:1.5}code{background:#11131a;border:1px solid #2e303a;border-radius:5px;padding:1px 5px;color:#d5bbf6}
@media(max-width:900px){.page-actions{width:100%;flex-wrap:wrap}.summary-cards{grid-template-columns:1fr 1fr 1fr}.admin-topbar .breadcrumbs b,.admin-topbar .breadcrumbs strong{display:none}}

/* Phase 3 public experience */
:root{--max:1380px;--danger:#ef5b6c;--warning:#f0b44d}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:10px;padding:11px 16px;border:1px solid transparent;font-weight:750;cursor:pointer}.btn.small{padding:8px 11px;font-size:13px}.content-shell{width:min(var(--max),calc(100% - 40px));margin-inline:auto}.hero-home{min-height:490px;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.85fr);align-items:stretch;border-bottom:1px solid var(--line);background:radial-gradient(circle at 72% 30%,rgba(141,61,240,.17),transparent 30%),linear-gradient(180deg,#11101a,#0d0c14);overflow:hidden}.hero-copy{padding:90px max(24px,calc((100vw - var(--max))/2));padding-right:48px;align-self:center}.hero-copy h1{font-size:clamp(44px,5.2vw,76px);line-height:1;letter-spacing:-.045em;margin:12px 0 22px;max-width:800px}.hero-copy p{max-width:720px;color:#b8b2c7;font-size:17px;line-height:1.75}.hero-art{position:relative;display:flex;align-items:center;justify-content:center;background-size:cover;background-position:center}.hero-art:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0d0c14 0,rgba(13,12,20,.3) 45%,rgba(13,12,20,.3)),linear-gradient(0deg,#0d0c14 0,transparent 40%)}.hero-art img{width:250px;aspect-ratio:2/3;object-fit:cover;border-radius:16px;position:relative;z-index:2;box-shadow:0 35px 90px #000;transform:rotate(2deg)}.hero-art .cover-placeholder{width:250px;aspect-ratio:2/3;z-index:2}.content-shell>.section-head{margin-top:42px}.section-head h2{margin:5px 0;font-size:26px}.section-head>a{color:#c49cff;font-weight:700}.poster{aspect-ratio:2/3;overflow:hidden;border-radius:12px 12px 0 0;position:relative;background:#181620}.poster img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s}.series-card:hover .poster img{transform:scale(1.035)}.series-card{overflow:hidden;border:1px solid var(--line);border-radius:13px;background:#15141e;transition:transform .2s,border-color .2s}.series-card:hover{transform:translateY(-3px);border-color:#62418b}.series-card-body{padding:13px}.series-card-body h3{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0 0 9px;font-size:15px}.meta-row{display:flex;justify-content:space-between;color:#aaa4b7;font-size:12px}.meta-row span:first-child{color:#ffcc53}.type-chip{position:absolute;left:9px;bottom:9px;background:rgba(14,12,20,.88);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);padding:5px 7px;border-radius:7px;text-transform:uppercase;font-size:10px;font-weight:800}.type-chip.static{position:static}.home-columns{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:26px;padding-bottom:72px}.update-list,.popular-panel{background:#14131c;border:1px solid var(--line);border-radius:14px;overflow:hidden}.update-row{display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 14px;border-bottom:1px solid #262332}.update-row:last-child{border-bottom:0}.update-row:hover,.rank-row:hover{background:#1b1925}.mini-cover{width:42px;height:58px;border-radius:7px;background:#272332;overflow:hidden}.mini-cover img{width:100%;height:100%;object-fit:cover}.update-row .grow{display:flex;flex-direction:column;min-width:0}.update-row strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.update-row span,.update-row b{font-size:12px;color:#9e98aa}.update-row b{color:#d0c8dd}.popular-panel{margin-top:42px;padding:0 12px 12px}.popular-panel .section-head{padding:0 8px}.rank-row{display:grid;grid-template-columns:30px 42px 1fr;gap:9px;align-items:center;padding:9px;border-radius:9px}.rank-num{font-size:18px;color:#a863f3;font-weight:900}.rank-row div:last-child{display:flex;min-width:0;flex-direction:column}.rank-row strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rank-row small{color:#8f899a;margin-top:4px}.empty-state{padding:30px;border:1px dashed #3b354b;border-radius:12px;color:#9d96aa;text-align:center;grid-column:1/-1}.page-hero.compact{padding:60px max(20px,calc((100vw - var(--max))/2));border-bottom:1px solid var(--line);background:linear-gradient(135deg,#181220,#0d0c14)}.page-hero h1{font-size:42px;margin:6px 0}.page-hero p{color:var(--muted)}.filter-bar{display:grid;grid-template-columns:minmax(240px,1fr) 170px 170px 160px auto;gap:10px;padding:22px 0}.filter-bar input,.filter-bar select,.chapter-search,.nav-search input{background:#171620;border:1px solid var(--line);border-radius:9px;color:var(--text);padding:11px 13px;outline:none}.filter-bar input:focus,.filter-bar select:focus,.chapter-search:focus,.nav-search input:focus{border-color:#7650a9}.results-head{display:flex;gap:8px;color:var(--muted);padding:4px 0 12px}.results-head strong{color:var(--text)}.browse-grid{grid-template-columns:repeat(6,minmax(0,1fr));padding-bottom:70px}.nav-search{width:min(340px,26vw);position:relative}.nav-search input{width:100%;padding-right:38px}.nav-search>span{position:absolute;right:13px;top:10px;color:#847d8e}.user-pill{display:flex;align-items:center;gap:8px;font-size:13px}.avatar.mini{width:30px;height:30px}.footer{padding:38px max(20px,calc((100vw - var(--max))/2));border-top:1px solid var(--line);display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:28px;background:#111019}.footer>div{display:flex;flex-direction:column}.footer span,.footer small{color:#888293}.footer nav{display:flex;gap:20px;font-size:13px;color:#aaa3b6}
.series-hero{position:relative;min-height:480px;background-image:var(--banner);background-position:center;background-size:cover}.series-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0c0b12 5%,rgba(12,11,18,.91) 45%,rgba(12,11,18,.76)),linear-gradient(0deg,#0d0c14 0,transparent 70%)}.series-hero-overlay{position:absolute;inset:0;backdrop-filter:blur(1px)}.series-hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:230px minmax(0,1fr) 320px;gap:34px;align-items:end;padding-top:72px;padding-bottom:44px}.series-cover{aspect-ratio:2/3;border-radius:14px;overflow:hidden;background:#191722;box-shadow:0 25px 65px #000}.series-cover img{width:100%;height:100%;object-fit:cover}.series-primary{padding-bottom:6px}.series-primary h1{font-size:clamp(38px,4vw,58px);letter-spacing:-.035em;margin:11px 0 4px}.original-title{color:#8e8799;margin-bottom:16px}.series-primary p{max-width:760px;color:#b5afc1;line-height:1.7}.chip-row{display:flex;gap:8px}.status-chip{border:1px solid #373242;background:#1b1924;border-radius:7px;padding:5px 9px;font-size:11px;font-weight:800;text-transform:uppercase}.status-chip.ongoing{color:#8ae2b4}.status-chip.completed{color:#9db8ff}.series-stats{background:rgba(19,17,26,.84);border:1px solid #332e41;border-radius:14px;backdrop-filter:blur(15px);display:grid;grid-template-columns:1fr 1fr;overflow:hidden}.series-stats>div{padding:20px;border-right:1px solid #312d3c;border-bottom:1px solid #312d3c;display:flex;flex-direction:column}.series-stats strong{font-size:22px}.series-stats span{font-size:11px;color:#938c9f;margin-top:5px}.series-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:26px;padding:34px 0}.series-main{display:flex;flex-direction:column;gap:22px}.info-card{background:#15141d;border:1px solid var(--line);border-radius:14px;padding:22px}.info-card .section-head{margin:0}.synopsis-full{line-height:1.85;color:#c0bac9}.editorial-note{margin-top:20px;padding:18px;border-left:3px solid var(--purple);background:#1b1724;border-radius:0 10px 10px 0}.editorial-note p{margin-bottom:0;color:#aaa3b5}.sticky{position:sticky;top:88px}.info-card dl{display:grid;grid-template-columns:95px 1fr;gap:12px 8px}.info-card dt{color:#837d8e;font-size:13px}.info-card dd{margin:0;text-align:right;font-size:13px}.info-card h4{margin:24px 0 10px}.tag-cloud{display:flex;flex-wrap:wrap;gap:7px}.tag-cloud a,.tag-cloud span{padding:6px 9px;border-radius:7px;background:#211c2b;border:1px solid #382f48;font-size:12px;color:#d7c7e8}.tag-cloud.muted span{background:#1b1922;border-color:#2c2935;color:#9f98aa}.chapter-search{width:220px}.chapter-list{margin-top:12px;border:1px solid #292633;border-radius:11px;overflow:hidden}.chapter-row{display:flex;align-items:center;justify-content:space-between;padding:15px 14px;border-bottom:1px solid #292633}.chapter-row:last-child{border-bottom:0}.chapter-row:hover{background:#1b1925}.chapter-row>div{display:flex;flex-direction:column;gap:5px}.chapter-row>div:last-child{text-align:right;align-items:flex-end}.chapter-row span,.chapter-row time{font-size:12px;color:#85808d}.reaction-strip{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:16px}.reaction-strip button{background:#1b1924;border:1px solid #302c3a;border-radius:10px;padding:14px 8px;color:#fff;display:flex;flex-direction:column;gap:5px;align-items:center}.reaction-strip button span{font-size:24px}.reaction-strip button small{color:#817a8c}.community-coming{margin-top:18px;padding:16px;border:1px dashed #4d3a65;border-radius:10px;display:flex;flex-direction:column;gap:5px;color:#c8b5de}.community-coming span{color:#90899c;font-size:13px}.related{padding-bottom:70px}
.reader-body{background:#08080c;color:#fff}.reader-toolbar{height:58px;position:sticky;top:0;z-index:50;background:rgba(12,11,17,.94);backdrop-filter:blur(14px);border-bottom:1px solid #282532;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 18px;font-size:13px}.reader-brand{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reader-title{color:#aaa4b5}.reader-controls{justify-self:end;display:flex;gap:7px}.reader-controls button{background:#1a1822;border:1px solid #302c3c;color:#ddd6e7;border-radius:8px;padding:7px 10px;cursor:pointer}.reader-canvas{width:min(920px,100%);margin:0 auto;min-height:70vh;background:#000;transition:width .2s}.reader-canvas.reader-wide{width:min(1200px,100%)}.reader-canvas img{width:100%;height:auto;display:block;margin:0;padding:0}.reader-empty{padding:80px;text-align:center;color:#8b8495}.reader-bottom{width:min(920px,calc(100% - 28px));margin:28px auto 50px;display:grid;grid-template-columns:1fr auto 1fr;gap:16px}.reader-bottom a{padding:14px;border:1px solid #2e2a38;border-radius:10px;background:#15131c}.reader-bottom a:last-child{text-align:right}.reader-bottom .back-series{text-align:center;color:#c493ff}
.admin-page-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.admin-page-head h1{margin:5px 0}.admin-page-head p{color:var(--muted);margin:0}.head-actions{display:flex;gap:9px}.admin-card{background:var(--panel);border:1px solid var(--line);border-radius:13px;padding:18px}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;font-size:13px}.data-table th{text-align:left;color:#888198;font-weight:650;padding:12px;border-bottom:1px solid var(--line);white-space:nowrap}.data-table td{padding:13px 12px;border-bottom:1px solid #282532}.pill{display:inline-flex;padding:5px 8px;border-radius:999px;background:#25222e;border:1px solid #373240;font-size:11px;text-transform:capitalize}.pill.success{color:#79dfa7;background:#11271d;border-color:#1e4932}.pill.warning{color:#f1c46a;background:#2d2413;border-color:#54401d}.pill.danger{color:#ff8793;background:#32171b;border-color:#5b262c}.stats-grid.four{grid-template-columns:repeat(4,1fr);margin-bottom:18px}.flash{padding:12px 14px;border-radius:9px;margin-bottom:15px}.flash.success{background:#10271b;border:1px solid #27563a;color:#83e2ad}.flash.error{background:#2b161a;border:1px solid #58252d;color:#ff929d}.card-title{display:flex;justify-content:space-between}.card-title h2{margin:0}.card-title p{color:var(--muted);margin:6px 0 15px;font-size:13px}
@media(max-width:1100px){.browse-grid{grid-template-columns:repeat(4,1fr)}.home-columns{grid-template-columns:1fr}.popular-panel{margin-top:0}.series-hero-inner{grid-template-columns:190px 1fr}.series-stats{grid-column:1/-1;grid-template-columns:repeat(4,1fr)}.series-layout{grid-template-columns:1fr}.sticky{position:static}.nav-search{display:none}}
@media(max-width:760px){.topbar{height:60px;padding:0 14px}.topbar nav{display:none}.top-actions .btn.ghost{font-size:0;padding:9px}.top-actions .btn.ghost:before{content:"G";font-size:14px}.hero-home{grid-template-columns:1fr;min-height:auto}.hero-copy{padding:62px 20px 40px}.hero-copy h1{font-size:43px}.hero-art{min-height:260px}.hero-art img{width:150px}.content-shell{width:min(100% - 24px,var(--max))}.card-grid,.browse-grid{grid-template-columns:repeat(2,1fr);gap:11px}.home-columns{display:block}.update-row{grid-template-columns:42px 1fr}.update-row>b{display:none}.filter-bar{grid-template-columns:1fr 1fr}.filter-bar input{grid-column:1/-1}.filter-bar .btn{grid-column:1/-1}.series-hero-inner{grid-template-columns:120px 1fr;gap:18px;padding-top:38px}.series-primary h1{font-size:30px}.series-primary p{display:none}.series-primary .hero-actions{margin-top:15px}.series-primary .btn{padding:9px;font-size:12px}.series-stats{grid-template-columns:1fr 1fr}.series-layout{padding-top:18px}.reaction-strip{grid-template-columns:repeat(3,1fr)}.chapter-search{width:145px}.reader-toolbar{grid-template-columns:1fr auto}.reader-title{display:none}.reader-bottom{grid-template-columns:1fr 1fr}.reader-bottom .back-series{grid-row:2;grid-column:1/-1}.footer{grid-template-columns:1fr;text-align:center}.footer nav{justify-content:center;flex-wrap:wrap}.stats-grid.four{grid-template-columns:1fr 1fr}.admin-page-head{align-items:flex-start;flex-direction:column}.head-actions{width:100%}.head-actions .btn{flex:1}}
.checkline{display:flex!important;align-items:center;gap:9px}.checkline input{width:auto!important;margin:0}
/* Phase 4 — professional community */
.icon-link{width:34px;height:34px;border:1px solid var(--line);background:#171620;border-radius:9px;display:grid;place-items:center;color:#c9c2d4}.profile-hero{min-height:330px;background:linear-gradient(0deg,#0d0c14 0,rgba(13,12,20,.4)),var(--profile-banner,linear-gradient(135deg,#25143b,#10101a));background-size:cover;background-position:center}.profile-hero-inner{min-height:330px;display:grid;grid-template-columns:150px 1fr auto;gap:28px;align-items:end;padding-bottom:38px}.profile-avatar{width:150px;height:150px;border-radius:26px;background:#2b1b40;border:4px solid #0d0c14;display:grid;place-items:center;font-size:52px;font-weight:900;overflow:hidden}.profile-avatar img,.comment-avatar img{width:100%;height:100%;object-fit:cover}.profile-name-row{display:flex;align-items:center;gap:12px}.profile-name-row h1{font-size:38px;margin:0}.profile-handle{color:#9b93a8;margin:7px 0 12px}.profile-hero p{max-width:670px;color:#c4bdce}.rank-badge{display:inline-flex;padding:5px 9px;border-radius:999px;background:linear-gradient(135deg,#522b86,#2d1a48);border:1px solid #6b3da6;color:#dec7ff;font-size:11px;font-weight:800}.rank-badge.small{padding:3px 6px;font-size:9px}.profile-stats{display:flex;gap:24px;margin-top:20px}.profile-stats strong{font-size:18px}.profile-stats span{display:block;color:#898393;font-size:11px;font-weight:500}.profile-actions{display:flex;gap:9px;align-self:center}.profile-grid{display:grid;grid-template-columns:1fr 320px;gap:24px;padding:30px 0 70px}.badge-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.badge-card{display:flex;align-items:center;gap:12px;padding:15px;border:1px solid #302b3b;border-radius:11px;background:#1a1822}.badge-icon{width:42px;height:42px;border-radius:12px;background:#2a1b3d;display:grid;place-items:center;color:#c18cff}.badge-card div:last-child{display:flex;flex-direction:column}.badge-card span{font-size:12px;color:#8f8999;margin-top:3px}.account-page{padding-top:40px;padding-bottom:70px}.settings-form{display:grid;gap:18px;max-width:760px}.settings-form label{display:grid;gap:8px;color:#aaa4b5}.settings-form input,.settings-form textarea,.library-form select,.rating-row select,.inline-form select{background:#111019;border:1px solid #363140;color:#fff;border-radius:9px;padding:11px}.continue-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.continue-card{display:grid;grid-template-columns:66px 1fr;gap:13px;background:#171620;border:1px solid var(--line);padding:10px;border-radius:12px}.mini-cover{width:66px;aspect-ratio:2/3;border-radius:8px;background:#211f29;overflow:hidden}.mini-cover img{width:100%;height:100%;object-fit:cover}.continue-card>div:last-child{display:flex;flex-direction:column;justify-content:center;gap:7px}.continue-card span{font-size:12px;color:#938da0}.progress-track{height:5px;background:#2a2732;border-radius:99px;overflow:hidden}.progress-track i{display:block;height:100%;background:var(--purple)}.spaced{margin-top:42px}.library-chip{position:absolute;left:9px;bottom:9px;background:rgba(15,12,20,.9);border:1px solid #54406b;border-radius:7px;padding:5px 7px;font-size:9px;text-transform:uppercase}.notification-list{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:13px;overflow:hidden}.notification-item{display:grid;grid-template-columns:36px 1fr;gap:12px;padding:16px 18px;border-bottom:1px solid var(--line);background:#15141d}.notification-item:last-child{border-bottom:0}.notification-item.unread{background:#1c1725}.notification-icon{width:34px;height:34px;border-radius:10px;background:#2b1b3d;display:grid;place-items:center;color:#bc83ff}.notification-item p{margin:4px 0;color:#a39cac}.notification-item time{font-size:11px;color:#706b78}
.reaction-strip form{display:block}.reaction-strip form button{width:100%;height:100%}.reaction-strip button.selected{border-color:#8d3df0;background:#2a193d;box-shadow:inset 0 0 0 1px #8d3df0}.rating-row{display:flex;justify-content:space-between;align-items:center;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.comment-sort{display:flex;gap:5px;background:#111019;padding:4px;border-radius:9px}.comment-sort a{padding:7px 10px;border-radius:7px;font-size:12px;color:#91899d}.comment-sort a.active{background:#2b2040;color:#fff}.comment-compose{margin:15px 0 20px}.comment-compose textarea,.reply-form textarea,.chat-compose textarea{width:100%;resize:vertical;background:#111019;border:1px solid #373142;color:#fff;border-radius:10px;padding:13px;outline:none}.comment-compose>div{display:flex;align-items:center;justify-content:space-between;margin-top:9px}.community-signin{margin:15px 0;padding:15px;border:1px dashed #4d3a65;border-radius:10px;color:#aaa1b6}.community-signin a{color:#c99aff;font-weight:700}.comments-list{display:flex;flex-direction:column;gap:15px}.comment-card{display:grid;grid-template-columns:42px 1fr;gap:12px;padding:16px 0;border-top:1px solid #292531}.comment-avatar{width:42px;height:42px;border-radius:12px;background:#2b1b3c;display:grid;place-items:center;font-weight:800;overflow:hidden}.comment-body header,.comment-reply header{display:flex;align-items:center;gap:7px}.comment-body time,.comment-reply time{font-size:10px;color:#706b78}.comment-text{color:#c6c0cf;line-height:1.65;margin:8px 0}.comment-text.spoiler{background:#08080c;color:transparent;border-radius:7px;padding:8px;cursor:pointer;user-select:none}.comment-text.spoiler.revealed{color:#c6c0cf;background:#1d1926}.comment-actions{display:flex;align-items:center;gap:8px}.comment-actions form{display:inline}.comment-actions button{background:transparent;border:0;color:#8f889a;cursor:pointer;padding:3px}.comment-actions span{font-size:11px;color:#6e6975}.reply-form{margin-top:10px}.reply-form button{margin-top:7px}.comment-reply{display:grid;grid-template-columns:30px 1fr;gap:9px;margin-top:14px;padding-left:10px;border-left:2px solid #322b41}.comment-reply .comment-avatar{width:30px;height:30px;font-size:11px}
.chat-shell{height:calc(100vh - 110px);min-height:650px;display:grid;grid-template-columns:300px 1fr;margin-top:22px;margin-bottom:22px;border:1px solid var(--line);border-radius:15px;overflow:hidden;background:#111019}.chat-sidebar{border-right:1px solid var(--line);background:#15141d;padding:14px}.chat-sidebar-head{padding:12px}.chat-sidebar-head h2{margin:4px 0}.chat-room{display:grid;grid-template-columns:38px 1fr;gap:10px;padding:11px;border-radius:10px}.chat-room:hover,.chat-room.active{background:#241b31}.room-icon{width:36px;height:36px;border-radius:10px;background:#211a2b;display:grid;place-items:center;color:#b97fff}.chat-room div{display:flex;min-width:0;flex-direction:column}.chat-room small{color:#77717f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-main{display:grid;grid-template-rows:65px 1fr auto;min-width:0}.chat-header{display:flex;justify-content:space-between;align-items:center;padding:0 18px;border-bottom:1px solid var(--line)}.chat-header>div{display:flex;flex-direction:column}.chat-header span{font-size:11px;color:#85808c}.online-pill{color:#5fd99a!important;background:#11261c;border:1px solid #265339;border-radius:999px;padding:5px 8px}.chat-messages{overflow:auto;padding:18px;display:flex;flex-direction:column;gap:15px}.chat-message{display:grid;grid-template-columns:34px 1fr;gap:10px}.chat-message p{margin:5px 0;color:#c8c2d0;white-space:pre-wrap}.message-meta{display:flex;align-items:center;gap:7px}.message-meta time{font-size:10px;color:#716c79}.chat-compose{display:grid;grid-template-columns:1fr auto;gap:9px;padding:13px;border-top:1px solid var(--line);background:#15141d}.chat-compose textarea{resize:none}.inline-form{display:flex;gap:6px;align-items:center}.wide-cell{min-width:280px}.stat-card{background:#171620;border:1px solid var(--line);border-radius:12px;padding:16px;display:flex;flex-direction:column}.stat-card span{color:#8e879a;font-size:12px}.stat-card strong{font-size:26px;margin-top:6px}
@media(max-width:900px){.profile-hero-inner{grid-template-columns:100px 1fr}.profile-avatar{width:100px;height:100px}.profile-actions{grid-column:1/-1}.profile-grid{grid-template-columns:1fr}.continue-grid{grid-template-columns:1fr 1fr}.chat-shell{grid-template-columns:220px 1fr}}
@media(max-width:650px){.top-actions .icon-link{display:none}.profile-hero-inner{grid-template-columns:72px 1fr;gap:14px}.profile-avatar{width:72px;height:72px;border-radius:18px;font-size:28px}.profile-name-row h1{font-size:26px}.profile-stats{gap:12px}.continue-grid{grid-template-columns:1fr}.badge-grid{grid-template-columns:1fr}.chat-shell{display:block;height:auto;min-height:0}.chat-sidebar{border-right:0;border-bottom:1px solid var(--line);max-height:220px;overflow:auto}.chat-main{height:65vh}.comment-sort{display:none}}
.community-admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.rank-ladder{display:flex;flex-direction:column}.rank-ladder>div{display:flex;justify-content:space-between;padding:11px 0;border-bottom:1px solid var(--line)}.rank-ladder span{color:#8f8999}.settings-form select{background:#111019;border:1px solid #363140;color:#fff;border-radius:9px;padding:11px}@media(max-width:800px){.community-admin-grid{grid-template-columns:1fr}}

/* Phase 5 — discovery, SEO quality control, production hardening */
.btn.subscribed{border-color:#6d3da2;background:#261838;color:#d8b5ff}.admin-page-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin-bottom:22px}.admin-page-head h1{font-size:32px;margin:5px 0}.admin-page-head p{color:var(--muted);margin:0;max-width:780px}.head-actions{display:flex;gap:9px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.stat-card small{margin-top:8px}.admin-grid.two{grid-template-columns:minmax(0,2fr) minmax(280px,1fr)}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}.panel-head h2{margin:0}.data-list{display:flex;flex-direction:column}.data-row{padding:13px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:14px}.data-row:last-child{border-bottom:0}.data-row>div:first-child{min-width:0;display:flex;flex-direction:column;gap:3px}.data-row small{overflow:hidden;text-overflow:ellipsis}.issue-chips{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px}.pill.warning{background:#47350d;color:#f4cf62}.pill.danger{background:#4a1c26;color:#ff9aaa}.metric-stack{display:grid;gap:5px;margin:18px 0}.metric-stack>div{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line)}.muted{color:var(--muted)}.btn.full{display:block;width:100%;text-align:center}.notice-card{margin-bottom:18px;border-color:#4a3667;background:linear-gradient(145deg,#21172f,#15141d)}.notice-card p{color:#aaa1b6;line-height:1.6}.table-wrap{overflow:auto}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line);font-size:13px}.admin-table th{color:#8d8798;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.url-cell{max-width:520px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.health-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:18px}.health-card{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;background:#171620;border:1px solid var(--line);border-radius:12px;padding:15px}.health-card.ok{border-color:#254334}.health-card.bad{border-color:#5c2932}.health-icon{width:38px;height:38px;border-radius:11px;background:#211c2a;display:grid;place-items:center;font-weight:900}.health-card.ok .health-icon{background:#143427;color:#74e1ad}.health-card.bad .health-icon{background:#4a1c26;color:#ff9aaa}.health-card p{margin:3px 0 0;color:var(--muted);font-size:12px}.code-box{padding:15px;background:#0b0c11;border:1px solid #2d2a3a;border-radius:10px;overflow:auto;color:#c8b4e8}.recommendation-section{padding-top:5px;padding-bottom:65px}.recommend-reason{font-size:11px!important;line-height:1.4;color:#9f93ad!important;min-height:30px}
@media(max-width:900px){.stat-grid{grid-template-columns:1fr 1fr}.admin-grid.two{grid-template-columns:1fr}.health-grid{grid-template-columns:1fr}}@media(max-width:600px){.stat-grid{grid-template-columns:1fr}.admin-page-head{align-items:flex-start;flex-direction:column}.head-actions{width:100%;flex-wrap:wrap}.health-card{grid-template-columns:36px 1fr}.health-card>.pill{grid-column:2}.issue-chips{justify-content:flex-start}.data-row{align-items:flex-start;flex-direction:column}}

/* Phase 6 — Google data, taxonomy, access control, autocomplete */
.success-callout{border-color:#28513d;background:#13281e;color:#a8e9c7}.danger-callout{border-color:#6a2936;background:#32151c;color:#ffb5c0}.gsc-status{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.gsc-status h2{margin:8px 0 3px}.gsc-status p{margin:0;color:var(--muted)}.settings-form{display:grid;gap:14px}.compact-form{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;margin-bottom:15px}.compact-form input,.compact-form select{margin-top:0}.creator-form{grid-template-columns:1fr 130px auto}.taxonomy-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.taxonomy-grid .panel:last-child{grid-column:1/-1}.taxonomy-list{max-height:560px;overflow:auto}.taxonomy-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 3px;border-bottom:1px solid var(--line)}.taxonomy-list span{display:flex;flex-direction:column;gap:3px}.danger-link{border:0;background:transparent;color:#f58a9d;cursor:pointer}.permission-card{padding:14px 0;border-top:1px solid var(--line);display:grid;gap:8px}.permission-card>strong,.permission-card>small{display:block}.permission-card label{display:flex;align-items:center;gap:8px}.permission-card input[type=checkbox]{width:auto;margin:0}.nav-search{position:relative}.search-suggestions{position:absolute;left:0;right:0;top:calc(100% + 9px);min-width:390px;background:#12131a;border:1px solid #34303e;border-radius:12px;box-shadow:0 22px 55px rgba(0,0,0,.45);overflow:hidden;z-index:80}.search-suggestions>a{display:grid;grid-template-columns:40px 1fr;gap:10px;align-items:center;padding:10px 12px;border-bottom:1px solid #25232c}.search-suggestions>a:hover{background:#21182c}.search-suggestions>a:last-child{border-bottom:0}.search-suggestions span:last-child{display:flex;flex-direction:column;min-width:0}.search-suggestions strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-suggestions small{margin-top:3px}.suggest-cover{width:38px;height:50px;border-radius:6px;background:#2d203c;display:grid;place-items:center;overflow:hidden}.suggest-cover img{width:100%;height:100%;object-fit:cover}.suggest-empty{padding:16px;color:var(--muted)}
@media(max-width:900px){.taxonomy-grid{grid-template-columns:1fr}.taxonomy-grid .panel:last-child{grid-column:auto}.gsc-status{align-items:flex-start;flex-direction:column}.search-suggestions{min-width:320px}}
@media(max-width:700px){.compact-form,.creator-form{grid-template-columns:1fr}.nav-search{display:none}}
.chat-unread{display:inline-grid;place-items:center;min-width:19px;height:19px;padding:0 5px;margin-left:5px;border-radius:999px;background:var(--purple);font-size:10px;color:#fff;vertical-align:middle}
/* Phase 7 production polish */
.multi-select{min-height:150px;background:#0d1018}.code-textarea{width:100%;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;line-height:1.65;white-space:pre;background:#0a0d14}.form-foot{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:14px}.legal-wrap,.content-wrap{max-width:980px;margin:0 auto;padding:64px 24px}.content-wrap.narrow{max-width:760px}.legal-copy{margin-top:28px;padding:30px;border:1px solid var(--border);border-radius:18px;background:var(--panel);font-size:1rem;line-height:1.9}.settings-list{display:grid;gap:0}.setting-row{display:flex!important;justify-content:space-between;align-items:center;padding:18px 4px;border-bottom:1px solid var(--border)}.setting-row input{width:20px;height:20px}.notification-link{position:relative}.notification-link b{position:absolute;right:-8px;top:-8px;background:#7c3aed;color:white;border-radius:999px;min-width:18px;height:18px;padding:0 5px;font-size:10px;display:grid;place-items:center}.readiness-score{display:flex;flex-direction:column;align-items:flex-end}.readiness-score strong{font-size:2rem}.readiness-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:22px}.check-card{display:flex;gap:14px;padding:18px;border-radius:16px;border:1px solid var(--border);background:var(--panel)}.check-card>span{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-weight:800}.check-card.pass>span{background:rgba(34,197,94,.15);color:#4ade80}.check-card.fail>span{background:rgba(245,158,11,.15);color:#fbbf24}.check-card strong,.check-card small{display:block}.check-card p{margin:.3rem 0 0;color:var(--muted)}.legal-admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.legal-admin-grid textarea{resize:vertical}.data-table pre{max-width:520px;white-space:pre-wrap;overflow:auto}.auth-card .stack-form{display:grid;gap:14px;margin:22px 0}.muted{color:var(--muted)}
@media(max-width:1100px){.legal-admin-grid{grid-template-columns:1fr}.readiness-grid{grid-template-columns:1fr}}

/* Phase 8 public UX */
:root{--p8-bg:#0b0912;--p8-card:#15121f;--p8-line:#2a2439;--p8-text:#f6f3ff;--p8-accent:#8b5cf6}
html{scroll-behavior:smooth}.site-body{background:radial-gradient(circle at 75% -10%,rgba(139,92,246,.12),transparent 34%),var(--p8-bg)}
.skip-link{position:fixed;left:12px;top:-80px;z-index:9999;background:#fff;color:#111;padding:10px 14px;border-radius:8px}.skip-link:focus{top:12px}
.topbar{position:sticky;top:0;z-index:100;backdrop-filter:blur(18px);background:rgba(11,9,18,.88);border-bottom:1px solid rgba(255,255,255,.07)}
.mobile-menu-btn{display:none;background:transparent;border:0;color:#fff;font-size:22px}.mobile-drawer{position:fixed;z-index:99;top:68px;left:0;right:0;padding:14px;background:#100d18;border-bottom:1px solid var(--p8-line);box-shadow:0 20px 40px #0008}.mobile-drawer a{display:block;padding:13px 10px;color:#eee;border-bottom:1px solid #ffffff0c}
.hero-copy h1{font-size:clamp(2.6rem,6vw,5.4rem);line-height:.94;letter-spacing:-.055em}.hero-copy p{line-height:1.75}
.series-card{transition:transform .22s,border-color .22s,box-shadow .22s}.series-card:hover{transform:translateY(-5px);border-color:#8b5cf677;box-shadow:0 18px 50px #0006}.poster img{transition:transform .35s,opacity .2s}.series-card:hover .poster img{transform:scale(1.035)}
.update-row,.rank-row,.chapter-row{transition:.18s}.update-row:hover,.rank-row:hover,.chapter-row:hover{background:#8b5cf610}
.active-filter{margin:0 0 18px;padding:10px 14px;border:1px solid #8b5cf644;background:#8b5cf612;border-radius:12px}.active-filter a{float:right}
.reader-progress{position:fixed;z-index:1000;top:0;left:0;right:0;height:3px;background:#ffffff0a}.reader-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,#7c3aed,#a78bfa)}
.reader-toolbar{backdrop-filter:blur(16px)}.reader-image-error{min-height:160px;background:#17131f;border:1px dashed #5b526b;color:transparent}
:focus-visible{outline:2px solid #a78bfa;outline-offset:3px}
@media(max-width:900px){.desktop-nav,.topbar .nav-search{display:none}.mobile-menu-btn{display:block}.topbar{padding-left:14px;padding-right:14px}.topbar .brand span:last-child{display:none}.top-actions .user-pill span:last-child{display:none}.home-columns,.series-layout{grid-template-columns:1fr!important}.series-side .sticky{position:static}.filter-bar{display:grid;grid-template-columns:1fr 1fr}.filter-bar input{grid-column:1/-1}.reader-title{display:none}}
@media(max-width:560px){.content-shell{padding-left:14px;padding-right:14px}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px}.series-card-body{padding:10px}.filter-bar{grid-template-columns:1fr}.filter-bar>*{grid-column:auto!important}.footer nav{display:flex;flex-wrap:wrap;gap:12px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* ===== Phase 9 distinctive experience ===== */
.passport-stats{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.passport-stats>div{min-width:120px;padding:15px 18px;background:#ffffff08;border:1px solid #ffffff12;border-radius:14px}.passport-stats b{display:block;font-size:1.65rem}.passport-stats span{color:#aaa1b8;font-size:.82rem}
.dna-grid,.series-intelligence{display:grid;grid-template-columns:1.35fr .85fr;gap:18px}.taste-bars a{display:grid;grid-template-columns:120px 1fr 28px;gap:10px;align-items:center;padding:9px 0;color:inherit}.taste-bars i{height:7px;border-radius:999px;background:#ffffff0d;overflow:hidden}.taste-bars em{display:block;height:100%;background:linear-gradient(90deg,#7c3aed,#a78bfa);border-radius:inherit}
.catchup-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.catchup-card{display:flex;gap:12px;padding:12px;background:#15121f;border:1px solid #ffffff0d;border-radius:14px;color:inherit;transition:.2s}.catchup-card:hover{transform:translateY(-3px);border-color:#8b5cf677}.catchup-card img{width:55px;height:76px;object-fit:cover;border-radius:8px}.catchup-card div{min-width:0;display:flex;flex-direction:column;justify-content:center}.catchup-card strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.catchup-card span{color:#c6b9e8;margin-top:5px}.catchup-card small{color:#91899f;margin-top:3px}
.library-intel{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;margin-bottom:10px;background:linear-gradient(110deg,#1d1730,#15121f);border:1px solid #8b5cf63b;border-radius:16px}.library-intel>div{display:flex;flex-direction:column}.library-intel strong{font-size:1.3rem}
.vibe-filter{margin-top:-28px;position:relative}.vibe-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.vibe-actions{display:flex;gap:10px;margin-top:16px}.mini-dna{display:flex;flex-wrap:wrap;gap:5px;margin:8px 0}.mini-dna span{font-size:.7rem;background:#8b5cf615;border:1px solid #8b5cf630;padding:4px 6px;border-radius:999px}
.dna-meter-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 18px}.dna-meter-grid>div{display:grid;grid-template-columns:95px 1fr 36px;align-items:center;gap:8px}.dna-meter-grid i{display:flex;gap:4px}.dna-meter-grid em{height:7px;flex:1;border-radius:999px;background:#ffffff0d}.dna-meter-grid em.on{background:linear-gradient(90deg,#7c3aed,#a78bfa)}.dna-foot{display:flex;gap:18px;flex-wrap:wrap;margin-top:18px;color:#aaa1b8}.editor-note{margin-top:14px;padding:12px 14px;border-left:3px solid #8b5cf6;background:#8b5cf60d;color:#cfc8dc}
.pulse-card{background:radial-gradient(circle at 100% 0,#8b5cf61e,transparent 46%),#15121f}.pulse-card>h2{font-size:2rem;margin:6px 0}.pulse-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}.pulse-stats div{padding:12px;background:#ffffff06;border-radius:11px}.pulse-stats b{display:block;font-size:1.25rem}.pulse-stats span{font-size:.75rem;color:#91899f}.series-intelligence{margin-bottom:18px}
.story-dna-admin{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.taste-hero{background:radial-gradient(circle at 85% 20%,#8b5cf638,transparent 30%),linear-gradient(180deg,#13101c,#0b0912)}
@media(max-width:980px){.catchup-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dna-grid,.series-intelligence{grid-template-columns:1fr}.vibe-filter-grid{grid-template-columns:1fr 1fr}}
@media(max-width:580px){.catchup-grid,.vibe-filter-grid,.dna-meter-grid{grid-template-columns:1fr}.library-intel{align-items:flex-start;gap:14px;flex-direction:column}.taste-bars a{grid-template-columns:90px 1fr 24px}.story-dna-admin{grid-template-columns:1fr}}

/* ===== Phase 10: reader safety + alternative discovery ===== */
.radar-hero{background:radial-gradient(circle at 80% 0,#22c55e24,transparent 35%),linear-gradient(180deg,#11151a,#0b0912)}
.gems-hero{background:radial-gradient(circle at 75% 10%,#eab30823,transparent 32%),linear-gradient(180deg,#17140d,#0b0912)}
.radar-columns{display:grid;grid-template-columns:1fr 1fr;gap:22px}.radar-list{display:flex;flex-direction:column;gap:9px}.radar-row{display:grid;grid-template-columns:48px 1fr auto;gap:12px;align-items:center;padding:10px;background:#15121f;border:1px solid #ffffff0c;border-radius:13px;color:inherit;transition:.18s}.radar-row:hover{border-color:#8b5cf65e;transform:translateX(3px)}.radar-cover{width:48px;height:62px;background:#0e0c14;border-radius:8px;overflow:hidden}.radar-cover img{width:100%;height:100%;object-fit:cover}.radar-main{display:flex;flex-direction:column;min-width:0}.radar-main strong,.radar-main span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.radar-main span{font-size:.8rem;color:#91899f;margin-top:3px}.radar-time{text-align:right}.radar-time b{display:block;font-size:.7rem;text-transform:uppercase;color:#a78bfa}.radar-time time{font-size:.75rem;color:#91899f}
.gem-method{display:flex;gap:14px;align-items:flex-start;margin-top:-24px}.gem-method strong{white-space:nowrap;color:#eab308}.gem-method span{color:#aaa1b8;line-height:1.6}.gem-chip{position:absolute;top:10px;left:10px;padding:6px 8px;background:#17120ae8;border:1px solid #eab30866;border-radius:999px;color:#facc15;font-size:.68rem;font-weight:800}.gem-evidence{display:flex;justify-content:space-between;gap:8px;margin:8px 0;color:#d8cfdf}.gem-evidence small{color:#81798c}
.reader-community{background:#0b0912;border-top:1px solid #ffffff0b;padding:42px 16px 70px}.reader-community-inner{max-width:1000px;margin:auto}.reader-reactions,.chapter-discussion{background:#15121f;border:1px solid #ffffff0d;border-radius:16px;padding:20px;margin-bottom:16px}.chapter-reaction-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.chapter-reaction-strip form{display:block}.chapter-reaction-strip button{width:100%;padding:12px 6px;border:1px solid #302a3c;background:#100e17;color:#b8b0c4;border-radius:12px;cursor:pointer}.chapter-reaction-strip button span,.chapter-reaction-strip button b,.chapter-reaction-strip button small{display:block}.chapter-reaction-strip button span{font-size:1.4rem}.chapter-reaction-strip button b{font-size:1rem;margin:3px 0}.chapter-reaction-strip button small{font-size:.68rem}.chapter-reaction-strip button.selected{border-color:#8b5cf6;background:#251b38;color:#fff}
.spoiler-shield-note{padding:10px 12px;border:1px solid #8b5cf642;background:#8b5cf60d;border-radius:10px;color:#bbb1c8;font-size:.82rem;line-height:1.5;margin:12px 0}.comment-text.auto-shielded{position:relative}.comment-text.auto-shielded:not(.revealed):after{content:"Spoiler Shield · beyond your reading progress · click to reveal";position:absolute;inset:0;display:grid;place-items:center;color:#bda7dc;background:#0c0912;border:1px solid #8b5cf64d;border-radius:7px;font-size:.75rem;text-align:center;padding:8px}.spoiler-compose{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.spoiler-compose label:last-child{font-size:.78rem;color:#9f97aa}.spoiler-compose input[type=number]{width:100px;background:#100e17;border:1px solid #393143;color:#fff;border-radius:7px;padding:6px}
.profile-grid{align-items:start}.reputation-card{background:radial-gradient(circle at 100% 0,#8b5cf61d,transparent 40%),#15121f}.reputation-card h3{font-size:1.5rem;margin:5px 0}.reputation-score{font-size:2.2rem;font-weight:900}.reputation-score small{font-size:.68rem;font-weight:500;color:#91899f;margin-left:6px}.reputation-card p{color:#91899f;font-size:.8rem;line-height:1.5}
@media(max-width:900px){.radar-columns{grid-template-columns:1fr}.chapter-reaction-strip{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.radar-row{grid-template-columns:42px 1fr}.radar-time{grid-column:2;text-align:left}.chapter-reaction-strip{grid-template-columns:repeat(2,1fr)}.gem-method{flex-direction:column}}

/* ===== Phase 11: social discovery without opaque algorithms ===== */
.safe-feed-hero{background:radial-gradient(circle at 80% 0,#22c55e1d,transparent 34%),linear-gradient(180deg,#0f1714,#0b0912)}
.tonight-hero{background:radial-gradient(circle at 80% 10%,#6366f12b,transparent 32%),linear-gradient(180deg,#111027,#0b0912)}
.lists-hero,.list-detail-hero{background:radial-gradient(circle at 78% 0,#ec489927,transparent 34%),linear-gradient(180deg,#1b0e18,#0b0912)}
.feed-shell{max-width:850px}.feed-explainer{display:flex;gap:12px;margin-top:-22px;margin-bottom:18px}.feed-explainer span{color:#9f97aa;line-height:1.5}
.safe-feed-item{background:#15121f;border:1px solid #ffffff0d;border-radius:15px;padding:16px;margin:10px 0}.safe-feed-item header{display:flex;justify-content:space-between;gap:12px}.safe-feed-item header>div{display:flex;gap:7px;flex-wrap:wrap}.safe-feed-item header span,.safe-feed-item time{color:#8f879a;font-size:.78rem}.safe-feed-text{padding:14px 0;line-height:1.65}.safe-feed-item footer{display:flex;gap:16px;color:#8f879a;font-size:.75rem}
.safe-feed-spoiler{display:flex;flex-direction:column;align-items:flex-start;width:100%;margin:14px 0;padding:18px;background:#0d0a12;border:1px solid #8b5cf65b;color:#c9bdd8;border-radius:12px;text-align:left;cursor:pointer}.safe-feed-spoiler b{color:#b99de8}.safe-feed-spoiler span{margin:6px 0}.safe-feed-spoiler small{color:#8b5cf6}.safe-feed-spoiler.revealed{background:#15121f;border-color:#ffffff0c}.revealed-feed-copy{line-height:1.65}
.tonight-controls{display:flex;align-items:end;justify-content:space-between;gap:14px;margin-top:-24px}.tonight-controls>div{display:flex;gap:12px}.tonight-controls label{min-width:190px}.tonight-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.tonight-card{display:grid;grid-template-columns:115px 1fr;gap:16px;background:#15121f;border:1px solid #ffffff0d;border-radius:15px;padding:12px;color:inherit;transition:.2s}.tonight-card:hover{transform:translateY(-3px);border-color:#8b5cf65d}.tonight-poster{height:165px;border-radius:10px;overflow:hidden}.tonight-poster img{width:100%;height:100%;object-fit:cover}.tonight-card h3{font-size:1.2rem;margin:5px 0}.tonight-card p{color:#9d94a8;font-size:.82rem;line-height:1.45}.tonight-signals{display:flex;gap:5px;flex-wrap:wrap}.tonight-signals span{font-size:.67rem;padding:4px 6px;background:#8b5cf612;border-radius:999px}.tonight-card footer{display:flex;justify-content:space-between;margin-top:12px;color:#aaa1b8;font-size:.78rem}
.lists-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:18px;margin-top:-24px}.list-create label{display:block;margin:10px 0}.reader-list-mini{display:grid;grid-template-columns:1fr 1fr;gap:9px}.reader-list-mini a{display:flex;flex-direction:column;padding:14px;background:#15121f;border:1px solid #ffffff0d;border-radius:12px;color:inherit}.reader-list-mini span{color:#8f879a;font-size:.75rem;margin-top:4px}
.public-lists-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.public-list-card{position:relative;min-height:180px;padding:19px;background:linear-gradient(145deg,#1b1524,#131019);border:1px solid #ffffff0d;border-radius:15px;color:inherit;transition:.2s}.public-list-card:hover{border-color:#ec489955;transform:translateY(-3px)}.public-list-card h3{font-size:1.25rem}.public-list-card p{color:#978e9f;line-height:1.5;font-size:.82rem}.public-list-card footer{display:flex;justify-content:space-between;position:absolute;bottom:16px;left:19px;right:19px;font-size:.72rem;color:#8e8596}.list-count{font-size:.68rem;color:#f0abfc}
.list-byline{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:18px}.curated-stack{max-width:900px;margin:auto}.curated-row{display:grid;grid-template-columns:46px 72px 1fr;gap:15px;align-items:center;padding:12px 0;border-bottom:1px solid #ffffff0b;color:inherit}.curated-num{font-size:1.6rem;font-weight:900;color:#3f3748}.curated-cover{width:72px;height:100px;border-radius:8px;overflow:hidden}.curated-cover img{width:100%;height:100%;object-fit:cover}.curated-main p{color:#c5b9ce;font-style:italic;margin:6px 0}.curated-main span{font-size:.75rem;color:#8f879a}
.series-pathways{margin-bottom:18px}.pathway-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.pathway-grid>a{display:flex;gap:10px;padding:10px;background:#100e17;border:1px solid #ffffff0b;border-radius:11px;color:inherit}.pathway-cover{width:45px;height:62px;overflow:hidden;border-radius:7px;flex:0 0 auto}.pathway-cover img{width:100%;height:100%;object-fit:cover}.pathway-grid strong,.pathway-grid span,.pathway-grid small{display:block}.pathway-grid span{font-size:.7rem;color:#a78bfa;margin:3px 0}.pathway-grid small{font-size:.68rem;color:#8f879a;line-height:1.35}.pathway-actions{margin-top:15px;border-top:1px solid #ffffff0b;padding-top:14px}.pathway-actions form{display:grid;grid-template-columns:1fr 1.5fr auto;gap:9px;align-items:end;margin-top:9px}.pathway-actions label{font-size:.72rem;color:#9a91a4}.pathway-actions input,.pathway-actions select{width:100%;margin-top:5px}
@media(max-width:900px){.tonight-grid,.lists-layout{grid-template-columns:1fr}.public-lists-grid,.pathway-grid{grid-template-columns:1fr 1fr}.tonight-controls{align-items:stretch;flex-direction:column}.tonight-controls>div{flex-wrap:wrap}}
@media(max-width:580px){.tonight-grid,.public-lists-grid,.pathway-grid,.reader-list-mini{grid-template-columns:1fr}.tonight-card{grid-template-columns:90px 1fr}.tonight-poster{height:135px}.pathway-actions form{grid-template-columns:1fr}.feed-explainer{flex-direction:column}.tonight-controls>div{display:grid;grid-template-columns:1fr;width:100%}.tonight-controls label{min-width:0}.curated-row{grid-template-columns:34px 58px 1fr}.curated-cover{width:58px;height:82px}}

/* ===== Phase 12: community intelligence ===== */
.awards-hero{background:radial-gradient(circle at 80% 0,#eab3082a,transparent 34%),linear-gradient(180deg,#1a160b,#0b0912)}
.catchup-brief-hero{background:radial-gradient(circle at 80% 0,#06b6d423,transparent 34%),linear-gradient(180deg,#0b171a,#0b0912)}
.chapter-predictions{background:#15121f;border:1px solid #ffffff0d;border-radius:16px;padding:20px;margin-bottom:16px}.poll-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.chapter-poll{background:#100e17;border:1px solid #ffffff0b;border-radius:13px;padding:14px}.chapter-poll header{display:flex;justify-content:space-between}.chapter-poll h3{font-size:1rem}.poll-options form{margin:6px 0}.poll-options button{position:relative;display:grid;grid-template-columns:1fr 90px 38px;align-items:center;gap:8px;width:100%;padding:8px;background:#17131f;border:1px solid #30293b;color:#d3cbdc;border-radius:9px;text-align:left}.poll-options button.selected{border-color:#8b5cf6}.poll-options i{height:5px;background:#ffffff0c;border-radius:999px;overflow:hidden}.poll-options em{display:block;height:100%;background:#8b5cf6}.poll-options b{text-align:right;font-size:.7rem}.create-prediction{margin-top:12px}.create-prediction summary{cursor:pointer;color:#b9a5d6}.create-prediction form{display:grid;grid-template-columns:130px 1fr;gap:8px;margin-top:12px}.prediction-options{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:7px}
.release-health{margin-bottom:18px}.release-health-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.release-health-grid>div{padding:13px;background:#ffffff06;border-radius:11px}.release-health-grid b{display:block;font-size:1.35rem}.release-health-grid span{font-size:.72rem;color:#91899f}.momentum-spark{margin-top:15px}.momentum-spark>span{font-size:.72rem;color:#91899f}.momentum-spark>div{height:70px;display:flex;align-items:end;gap:2px;margin-top:6px}.momentum-spark i{flex:1;min-width:2px;background:#8b5cf6;border-radius:3px 3px 0 0;opacity:.8}
.awards-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.award-winner{display:flex;gap:14px;color:inherit;margin:12px 0}.award-winner img{width:82px;height:112px;object-fit:cover;border-radius:9px}.award-winner h2{margin:4px 0}.award-winner small{color:#eab308}.award-category ol{padding:0;list-style:none}.award-category li{display:flex;justify-content:space-between;padding:7px 0;border-top:1px solid #ffffff0b}.award-vote{display:flex;align-items:end;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid #ffffff0b}
.narrow-shell{max-width:780px}.catchup-brief{margin-top:-24px}.catchup-range{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;text-align:center}.catchup-range span{display:block;color:#91899f}.catchup-range b{font-size:1.5rem}.catchup-range i{font-size:2rem;color:#8b5cf6}.catchup-evidence{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:22px 0}.catchup-evidence div{padding:15px;background:#ffffff06;border-radius:11px;text-align:center}.catchup-evidence b{display:block;font-size:1.5rem}.catchup-evidence span{font-size:.72rem;color:#91899f}.evidence-warning{padding:13px;border-left:3px solid #06b6d4;background:#06b6d40d;color:#aaa1b8;line-height:1.55;margin-bottom:16px}
.intel-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.intel-table a{display:grid;grid-template-columns:28px 1fr auto;gap:8px;padding:9px 0;border-bottom:1px solid #ffffff0b;color:inherit}.intel-table span{color:#6f6879}.intel-table b{color:#a78bfa}
@media(max-width:800px){.poll-grid,.awards-grid,.intel-grid{grid-template-columns:1fr}.release-health-grid,.catchup-evidence{grid-template-columns:1fr}.create-prediction form{grid-template-columns:1fr}.prediction-options{grid-column:auto;grid-template-columns:1fr}.award-vote{align-items:stretch;flex-direction:column}}

/* ===== Phase 13: trust, moderation and editorial quality ===== */
.safety-hero{background:radial-gradient(circle at 80% 0,#22c55e20,transparent 34%),linear-gradient(180deg,#0d1813,#0b0912)}
.trust-card{margin-top:-24px}.trust-top{display:flex;align-items:center;justify-content:space-between}.trust-top h2{font-size:2rem;margin:5px 0}.trust-top>strong{font-size:3rem}.trust-top>strong small{font-size:.9rem;color:#91899f}.trust-meter{height:9px;background:#ffffff0b;border-radius:999px;overflow:hidden;margin:14px 0 20px}.trust-meter i{display:block;height:100%;background:linear-gradient(90deg,#22c55e,#8b5cf6);border-radius:inherit}.trust-factors{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.trust-factors div{padding:12px;background:#ffffff05;border-radius:10px}.trust-factors b{display:block;font-size:1.2rem}.trust-factors span{font-size:.72rem;color:#91899f}
.connection-row{display:grid;grid-template-columns:40px 1fr auto;gap:12px;align-items:center;padding:12px 0;border-top:1px solid #ffffff0b}.provider-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#fff;color:#222;font-weight:900}.connection-row div{display:flex;flex-direction:column}.connection-row small{color:#91899f}.connection-row>b{font-size:.75rem;color:#22c55e}.safety-links{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0 40px}
.safety-admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.safety-admin-grid form label{display:block;margin:10px 0}.trust-breakdown{display:flex;gap:7px;flex-wrap:wrap;margin-top:14px}.trust-breakdown span{padding:5px 8px;border-radius:999px;background:#ffffff08;font-size:.7rem}.mod-note{padding:13px 0;border-top:1px solid #ffffff0b}.mod-note header{display:flex;justify-content:space-between}.mod-note time{font-size:.72rem;color:#91899f}.mod-note p{color:#c0b8c9;line-height:1.5}
.quality-explainer{display:flex;gap:12px;margin-bottom:12px}.quality-explainer strong{color:#a78bfa;white-space:nowrap}.quality-review-list{display:flex;flex-direction:column;gap:10px}.quality-review-row{background:#15121f;border:1px solid #ffffff0d;border-radius:13px;padding:14px}.quality-summary{display:grid;grid-template-columns:58px 1fr;gap:12px;align-items:center}.quality-score{display:grid;place-items:center;width:54px;height:54px;border-radius:50%;font-weight:900;background:#ffffff08}.quality-score.good{border:2px solid #22c55e}.quality-score.mid{border:2px solid #eab308}.quality-score.bad{border:2px solid #ef4444}.quality-summary>div{display:flex;flex-direction:column}.quality-summary span,.quality-summary small{color:#91899f}.quality-review-row details{margin-top:10px}.quality-review-row summary{cursor:pointer;color:#b9a5d6}.quality-review-row form{display:grid;grid-template-columns:180px 1fr;gap:8px;margin-top:12px}.quality-review-row form label:not(:first-child){grid-column:1/-1}.quality-review-row textarea{width:100%}
.notice-priority{display:inline-block;margin-left:8px;font-size:.58rem;padding:3px 5px;border-radius:999px;background:#ef444425;color:#fca5a5;vertical-align:middle}.notification-item.priority-critical,.notification-item.priority-high{border-left:3px solid #ef4444}.notification-item.priority-low{opacity:.86}
.report-menu{position:relative}.report-menu summary{cursor:pointer;color:#7f7789;font-size:.72rem}.report-menu form{position:absolute;right:0;top:24px;z-index:20;width:260px;padding:10px;background:#100e17;border:1px solid #3a3046;border-radius:10px;box-shadow:0 14px 40px #0008}.report-menu select,.report-menu input{width:100%;margin-bottom:7px}
@media(max-width:800px){.trust-factors{grid-template-columns:1fr 1fr}.safety-admin-grid{grid-template-columns:1fr}.quality-review-row form{grid-template-columns:1fr}.quality-review-row form label:not(:first-child){grid-column:auto}}

/* ===== Phase 14: release-candidate operations ===== */
.rc-score{display:flex;flex-direction:column;align-items:end}.rc-score strong{font-size:2.5rem}.rc-score span{font-size:.72rem;color:#91899f}.rc-banner{display:flex;gap:12px;align-items:center;padding:14px 16px;border-radius:12px;margin-bottom:14px}.rc-banner.ready{background:#22c55e12;border:1px solid #22c55e45}.rc-banner.attention{background:#eab30810;border:1px solid #eab30845}.rc-banner span{color:#aaa1b8}.rc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.rc-checks>div,.migration-list>div{display:grid;grid-template-columns:28px 1fr;gap:8px;padding:8px 0;border-bottom:1px solid #ffffff0b}.rc-checks p{margin:0;display:flex;flex-direction:column}.rc-checks small,.migration-list small{color:#91899f}.rc-checks .ok,.migration-list .ok{color:#22c55e}.rc-checks .fail,.migration-list .fail{color:#f59e0b}.migration-list>div{grid-template-columns:28px 1fr auto}.rc-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.rc-metrics div{padding:14px;background:#ffffff05;border-radius:10px}.rc-metrics b{display:block;font-size:1.45rem}.rc-metrics span{font-size:.7rem;color:#91899f}.manual-checklist{display:grid;grid-template-columns:1fr 1fr;gap:8px}.manual-checklist label{padding:10px;background:#ffffff04;border-radius:9px;line-height:1.45}.manual-checklist input{margin-right:7px}
@media(max-width:800px){.rc-grid,.manual-checklist{grid-template-columns:1fr}.rc-metrics{grid-template-columns:1fr 1fr}}

/* ===== Phase 16: staging validation ===== */
.staging-run{display:grid;grid-template-columns:1fr auto auto auto;gap:14px;align-items:center}.staging-run p{margin:4px 0;color:#91899f}.rc-checks .warn{color:#f59e0b}.staging-groups{align-items:start}.deploy-code{padding:14px;background:#0c0a10;border:1px solid #ffffff0d;border-radius:10px;overflow:auto;color:#c9bdd8;line-height:1.7}.validation-history>div{display:grid;grid-template-columns:170px auto auto auto 1fr;gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid #ffffff0b}.validation-history small{text-align:right;color:#91899f}
@media(max-width:900px){.staging-run{grid-template-columns:1fr}.validation-history>div{grid-template-columns:1fr auto auto auto}.validation-history small{display:none}}

/* ===== Phase 17: StoryKai brand system ===== */
.storykai-brand img{display:block;width:142px;height:auto;max-height:42px}.storykai-admin-brand{gap:10px}.storykai-admin-brand>img{width:36px;height:36px;border-radius:10px}.storykai-auth-brand img{width:190px;max-width:80%;height:auto}.storykai-footer{display:grid;grid-template-columns:1fr auto auto;gap:28px;align-items:center}.footer-brand{display:flex;flex-direction:column;gap:3px}.footer-brand img{width:150px;height:auto}.footer-brand>span{font-weight:700;color:#d9d3e1}.footer-brand>small,.footer-domain small{color:#7f778a}.footer-domain{text-align:right;color:#a78bfa;font-weight:800}
.cover-placeholder{display:grid;place-items:center;background:radial-gradient(circle at 60% 20%,#6366f13b,transparent 36%),#100d18}.cover-placeholder .placeholder-mark{width:48%;height:48%;object-fit:contain;background:transparent}
.storykai-discovery-rail{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:-30px;position:relative;z-index:5;margin-bottom:34px}.storykai-discovery-rail>a{display:flex;gap:11px;align-items:center;padding:15px;background:rgba(20,16,31,.94);backdrop-filter:blur(15px);border:1px solid #ffffff10;border-radius:14px;color:inherit;box-shadow:0 16px 40px #0004;transition:.2s}.storykai-discovery-rail>a:hover{transform:translateY(-3px);border-color:#6366f16b}.storykai-discovery-rail>a>span{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:linear-gradient(135deg,#22d3ee22,#a855f72b);color:#8b5cf6;font-size:1.25rem;flex:0 0 auto}.storykai-discovery-rail div{display:flex;flex-direction:column;min-width:0}.storykai-discovery-rail b{font-size:.85rem}.storykai-discovery-rail small{font-size:.68rem;color:#91899f;line-height:1.35;margin-top:2px}
@media(max-width:1100px){.storykai-discovery-rail{grid-template-columns:1fr 1fr}.storykai-footer{grid-template-columns:1fr auto}.footer-domain{grid-column:1/-1;text-align:left}}
@media(max-width:700px){.storykai-brand img{width:108px}.storykai-discovery-rail{grid-template-columns:1fr;margin-top:-12px}.storykai-footer{grid-template-columns:1fr}.storykai-footer nav{display:flex;flex-wrap:wrap}.footer-domain{text-align:left}.storykai-admin-brand>span{display:block}}


/* ===== Phase 18: StoryKai visible production polish ===== */
.browse-hero{background:radial-gradient(circle at 80% 0,#22d3ee17,transparent 34%),radial-gradient(circle at 20% 30%,#a855f713,transparent 28%),linear-gradient(180deg,#11101a,#0b0912)}
.browse-page{padding-top:20px}.browse-filter-bar{display:grid;grid-template-columns:2fr repeat(3,minmax(135px,1fr)) auto;align-items:end;gap:10px;padding:14px;background:#15121f;border:1px solid #ffffff0d;border-radius:15px}.browse-filter-bar label{display:flex;flex-direction:column;gap:5px}.browse-filter-bar label>span{font-size:.67rem;text-transform:uppercase;letter-spacing:.08em;color:#91899f}.browse-filter-actions{display:flex;gap:7px}.browse-facet-panel{display:grid;grid-template-columns:1.3fr .7fr;gap:18px;margin:14px 0 18px;padding:14px 16px;background:#100e17;border:1px solid #ffffff0b;border-radius:14px}.facet-title{display:block;margin-bottom:8px;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:#8b83a0}.facet-chips{display:flex;flex-wrap:wrap;gap:6px}.facet-chips a{display:flex;gap:5px;align-items:center;padding:6px 9px;border:1px solid #30293b;background:#17131f;border-radius:999px;color:#bdb5c8;font-size:.74rem}.facet-chips a:hover,.facet-chips a.active{border-color:#6366f177;background:#6366f116;color:#fff}.facet-chips small{color:#71697e}.facet-chips.compact a{padding:5px 8px;font-size:.69rem}.active-filter-row{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.active-filter-row>span{font-size:.68rem;color:#7f7789;text-transform:uppercase}.active-filter-row b{font-size:.7rem;padding:5px 8px;border-radius:999px;background:#22d3ee0f;border:1px solid #22d3ee28;color:#b8e9f1}.active-filter-row>a{font-size:.7rem;color:#a78bfa}.results-hint{font-size:.7rem;color:#746d7d}.series-card-submeta{display:flex;justify-content:space-between;gap:8px;margin-top:7px;color:#71697e;font-size:.65rem}.pagination{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:28px 0 10px}.pagination>div{display:flex;gap:5px}.pagination a{min-width:36px;padding:8px 10px;text-align:center;background:#15121f;border:1px solid #ffffff0d;border-radius:9px;color:#aaa1b8}.pagination a:hover,.pagination a.active{border-color:#6366f16f;color:#fff;background:#6366f119}.rich-empty{grid-column:1/-1;display:flex!important;align-items:center;justify-content:center;flex-direction:column;gap:8px;min-height:260px}.rich-empty img{width:64px;height:64px}.rich-empty strong{font-size:1.1rem}.rich-empty span{color:#91899f;text-align:center}

.home-personal{margin-top:24px}.home-personal-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.resume-story-card{display:grid;grid-template-columns:68px 1fr;gap:11px;align-items:center;padding:10px;background:linear-gradient(135deg,#17131f,#110e18);border:1px solid #ffffff0c;border-radius:13px;color:inherit;transition:.2s}.resume-story-card:hover{transform:translateY(-3px);border-color:#6366f15c}.resume-cover{height:90px;border-radius:8px;overflow:hidden;background:#0d0b12}.resume-cover img{width:100%;height:100%;object-fit:cover}.resume-story-card>div:last-child{min-width:0;display:flex;flex-direction:column}.resume-story-card strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.resume-story-card small{color:#91899f;margin:3px 0 7px;font-size:.69rem}.resume-story-card.catchup{border-color:#a855f72c}.resume-story-card.catchup b{font-size:.7rem;color:#a78bfa}

.chapter-tools{display:flex;gap:8px;align-items:center}.chapter-sort{display:flex;padding:3px;background:#0e0c14;border-radius:9px}.chapter-sort button{border:0;background:transparent;color:#81798c;padding:6px 9px;border-radius:7px;cursor:pointer;font-size:.7rem}.chapter-sort button.active{background:#282032;color:#fff}.series-mobile-dock{display:none}
.reader-page-indicator{position:fixed;z-index:1001;top:8px;left:50%;transform:translateX(-50%);padding:5px 9px;border-radius:999px;background:#09070dc9;backdrop-filter:blur(10px);color:#a99fb6;font-size:.66rem;pointer-events:none}.reader-shortcuts{text-align:center;padding:6px;color:#686071;font-size:.65rem;background:#0b0912}.reader-focus-mode .reader-toolbar,.reader-focus-mode .reader-shortcuts,.reader-focus-mode .reader-community,.reader-focus-mode .reader-bottom{display:none!important}.reader-focus-mode .reader-page-indicator{opacity:.55}.reader-focus-mode{background:#050406}.reader-focus-mode .reader-canvas{max-width:100vw!important}

.chat-header>div{display:flex;flex-direction:column}.chat-header strong{font-size:1.05rem}.chat-header .eyebrow{font-size:.57rem}.chat-empty{min-height:280px;display:grid;place-items:center;align-content:center;gap:5px;color:#91899f}.chat-empty img{width:56px}.chat-empty strong{color:#d9d1e1}.chat-compose{display:grid!important;grid-template-columns:1fr auto!important}.chat-compose-meta{grid-column:1/-1;display:flex;justify-content:space-between;color:#71697e;font-size:.65rem;padding:0 3px}.chat-compose textarea{resize:none;min-height:48px}.chat-room.active{box-shadow:inset 3px 0 #6366f1}

.library-tools{display:flex;gap:7px}.library-tools input{min-width:210px}.library-filter-empty{grid-column:1/-1}.notifications-hero{background:radial-gradient(circle at 80% 0,#6366f122,transparent 34%),linear-gradient(180deg,#12101d,#0b0912)}.notification-toolbar{display:flex;justify-content:space-between;gap:10px;margin-top:-24px;margin-bottom:14px;padding:12px;background:#15121f;border:1px solid #ffffff0d;border-radius:13px}.notification-toolbar>div{display:flex;gap:7px}.notification-group-label{padding:18px 4px 7px;font-size:.67rem;letter-spacing:.1em;text-transform:uppercase;color:#71697e}.notification-title-line{display:flex;gap:7px;align-items:center}.unread-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#8b5cf6}.notification-item{border-radius:12px;margin:4px 0}.notification-item.unread{background:#8b5cf60a}.notification-icon{font-size:1.1rem}

@media(max-width:1100px){.browse-filter-bar{grid-template-columns:2fr 1fr 1fr}.browse-filter-actions{grid-column:2/-1;justify-content:flex-end}.browse-facet-panel{grid-template-columns:1fr}.home-personal-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.browse-filter-bar{grid-template-columns:1fr 1fr}.browse-search-field{grid-column:1/-1}.browse-filter-actions{grid-column:1/-1}.home-personal-grid{grid-template-columns:1fr 1fr}.chapter-tools{width:100%;margin-top:8px}.chapter-tools .chapter-search{flex:1}.series-mobile-dock{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;left:10px;right:10px;bottom:10px;z-index:200;padding:5px;background:#100d18ed;border:1px solid #ffffff13;border-radius:13px;backdrop-filter:blur(18px);box-shadow:0 15px 50px #000a}.series-mobile-dock a{padding:9px 4px;text-align:center;border-radius:9px;color:#bfb6ca;font-size:.69rem}.series-mobile-dock a:first-child{background:#6366f1;color:#fff}.site-body:has(.series-mobile-dock) .footer{padding-bottom:85px}.reader-page-indicator{top:5px}.reader-shortcuts{display:none}.library-tools{width:100%;display:grid;grid-template-columns:1fr 1fr}.library-tools input{min-width:0}.notification-toolbar{align-items:stretch;flex-direction:column}.notification-toolbar>div{display:grid;grid-template-columns:1fr 1fr}}
@media(max-width:520px){.browse-filter-bar{grid-template-columns:1fr}.browse-search-field,.browse-filter-actions{grid-column:auto}.browse-filter-actions{justify-content:stretch}.browse-filter-actions>*{flex:1}.home-personal-grid{grid-template-columns:1fr}.pagination{flex-wrap:wrap}.pagination>div{order:3;width:100%;justify-content:center}.chapter-tools{align-items:stretch;flex-direction:column}.chapter-sort button{flex:1}.chapter-sort{display:flex}.series-mobile-dock{grid-template-columns:repeat(4,1fr)}.library-tools{grid-template-columns:1fr}.notification-toolbar>div{grid-template-columns:1fr}}


/* ===== Phase 19: StoryKai community/account visual unification ===== */
.hero-mini-points{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.hero-mini-points span{padding:6px 9px;border-radius:999px;background:#ffffff08;border:1px solid #ffffff0c;color:#b6adbf;font-size:.68rem}
.storykai-profile-hero{position:relative;overflow:hidden}.storykai-profile-hero:before{content:"";position:absolute;inset:0;background:var(--profile-banner,none) center/cover no-repeat;opacity:.34;filter:saturate(.8)}.profile-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#0b0912 10%,#0b0912db 52%,#0b091284),linear-gradient(0deg,#0b0912,transparent 60%)}.storykai-profile-hero .profile-hero-inner{position:relative;z-index:1}.profile-primary{min-width:0}.profile-content{padding-top:20px}.private-profile-card{display:flex;gap:16px;align-items:center;max-width:760px;margin:auto}.private-profile-card img{width:72px;height:72px}.profile-dashboard{display:grid;grid-template-columns:1.35fr .65fr;gap:14px}.profile-rep-card h2{font-size:1.6rem}.reputation-ring{display:flex;flex-direction:column;align-items:center;justify-content:center;width:82px;height:82px;border-radius:50%;border:5px solid #6366f14d;box-shadow:inset 0 0 0 3px #0e0b14}.reputation-ring b{font-size:1.08rem}.reputation-ring small{font-size:.57rem;color:#8e8598}.profile-metric-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}.profile-metric-row>div{padding:11px;background:#ffffff05;border-radius:9px}.profile-metric-row b,.profile-metric-row span{display:block}.profile-metric-row span{font-size:.65rem;color:#8e8598}.profile-about dl{display:grid;grid-template-columns:1fr auto;gap:9px;margin-top:16px}.profile-about dt{color:#8e8598}.profile-about dd{font-weight:700}.profile-badges{margin-bottom:4px}.profile-list-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.profile-list-card{min-height:150px;display:flex;flex-direction:column;padding:15px;border-radius:13px;background:linear-gradient(145deg,#18131f,#110e17);border:1px solid #ffffff0c;color:inherit}.profile-list-card h3{margin:8px 0 5px}.profile-list-card p{color:#91899f;font-size:.75rem;line-height:1.45;flex:1}.profile-list-card footer{font-size:.68rem;color:#a78bfa}.account-settings-hero{background:radial-gradient(circle at 75% 0,#6366f120,transparent 36%),linear-gradient(180deg,#12101c,#0b0912)}.account-settings-layout{display:grid;grid-template-columns:210px 1fr;gap:16px;margin-top:18px}.account-settings-nav{display:flex;flex-direction:column;gap:4px;position:sticky;top:78px;align-self:start;padding:8px;background:#131018;border:1px solid #ffffff0b;border-radius:12px}.account-settings-nav a{padding:9px 10px;border-radius:8px;color:#978e9f}.account-settings-nav a:hover,.account-settings-nav a.active{background:#6366f115;color:#fff}.settings-section-head{display:flex;justify-content:space-between;gap:12px;align-items:start}.settings-section-head h2{margin:4px 0}.settings-form label small{display:block;margin-top:4px;color:#746c7f;font-size:.65rem}.settings-two-col{display:grid;grid-template-columns:1fr 1fr;gap:10px}.privacy-toggle{display:flex!important;align-items:flex-start;gap:10px;padding:13px;border:1px solid #30283b;border-radius:10px;background:#ffffff04}.privacy-toggle input{margin-top:3px}.privacy-toggle span{display:flex;flex-direction:column}.privacy-toggle small{line-height:1.4}

.reader-lists-page{padding-top:20px}.lists-guest-cta{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:-18px}.lists-guest-cta h2{margin:4px 0}.list-visibility{display:block;font-size:.57rem;text-transform:uppercase;letter-spacing:.09em;color:#8b5cf6}.reader-list-mini>a>div{display:flex;flex-direction:column}.public-list-top{display:flex;justify-content:space-between;align-items:center}.curator-avatar{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#22d3ee33,#a855f73b);border:1px solid #ffffff12;color:#eee;font-weight:800}.curator-byline{display:flex;gap:7px;align-items:center}.list-detail-head{max-width:920px}.curated-list-intro{display:flex;gap:14px;align-items:start;max-width:900px;margin:10px auto 18px;padding:12px;border-left:3px solid #8b5cf6;background:#8b5cf608}.curated-list-intro>span{white-space:nowrap;font-weight:800;color:#a78bfa}.curated-list-intro p{margin:0;color:#91899f;line-height:1.5;font-size:.76rem}.curated-main blockquote{margin:7px 0;padding-left:10px;border-left:2px solid #51445f;color:#c7bdd0;font-style:italic}.curated-meta{display:flex;gap:12px;align-items:center;color:#8f879a;font-size:.71rem}.curated-meta b{margin-left:auto;color:#a78bfa}

.vibe-presets{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:-20px;margin-bottom:14px}.vibe-presets a{display:flex;flex-direction:column;padding:13px;background:#15121f;border:1px solid #ffffff0d;border-radius:12px;color:inherit;transition:.2s}.vibe-presets a:hover{transform:translateY(-3px);border-color:#6366f16b}.vibe-presets a>span{font-size:1.25rem;color:#a78bfa}.vibe-presets strong{margin:5px 0 2px;font-size:.79rem}.vibe-presets small{font-size:.62rem;color:#81788c}.vibe-evidence-note{display:flex;gap:8px;align-items:center;margin-top:10px;padding:10px 12px;border-radius:10px;background:#22d3ee09;border:1px solid #22d3ee1e;font-size:.7rem}.vibe-evidence-note b{color:#bdebf1}.vibe-evidence-note span{color:#81798c}.gem-method{display:grid;grid-template-columns:.7fr 1.3fr;gap:14px;margin-top:-20px}.gem-method>div:first-child{display:flex;flex-direction:column}.gem-method-steps{display:grid;grid-template-columns:1fr 1fr;gap:6px}.gem-method-steps span{display:flex;gap:7px;align-items:center;padding:7px;background:#ffffff05;border-radius:8px;font-size:.68rem}.gem-method-steps b{color:#f0abfc}.gem-method>p{grid-column:1/-1;margin:0;color:#81798c;font-size:.7rem}.gem-score-help{cursor:help}.taste-quick-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:-24px;margin-bottom:12px}.taste-quick-actions a{display:flex;gap:10px;align-items:center;padding:12px;background:#15121f;border:1px solid #ffffff0d;border-radius:11px;color:inherit}.taste-quick-actions>a>span{font-size:1.2rem}.taste-quick-actions div{display:flex;flex-direction:column}.taste-quick-actions b{font-size:.77rem}.taste-quick-actions small{font-size:.62rem;color:#81798c}.taste-transparency{display:flex;gap:10px;margin-bottom:12px;padding:11px 13px}.taste-transparency span{color:#81798c;font-size:.71rem}.radar-time{display:flex!important;flex-direction:column;align-items:flex-end}.radar-time small{font-size:.62rem;color:#8b5cf6}

.awards-page{padding-top:16px}.award-year-nav{display:flex;gap:6px;margin-bottom:14px}.award-year-nav a{padding:7px 11px;border-radius:9px;background:#15121f;border:1px solid #ffffff0d;color:#8f879a}.award-year-nav a.active{background:#eab30817;border-color:#eab30852;color:#fde68a}.award-category-head{display:flex;justify-content:space-between;gap:10px}.award-category-head p{margin:4px 0 0;color:#81798c;font-size:.7rem}.award-glyph{font-size:1.6rem;color:#eab308}.award-place{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#ffffff06;color:#6f6879;font-size:.65rem}.award-category li{display:grid!important;grid-template-columns:28px 1fr auto!important;align-items:center}.award-vote{display:grid!important;grid-template-columns:1fr auto;align-items:end}.award-vote label{min-width:0}.award-vote select{width:100%;max-width:100%}

.storykai-auth-wrap{min-height:calc(100vh - 72px);padding:40px 20px;background:radial-gradient(circle at 15% 20%,#6366f11f,transparent 27%),radial-gradient(circle at 85% 70%,#22d3ee12,transparent 26%),#0b0912}.auth-split{display:grid;grid-template-columns:1fr 430px;max-width:980px;margin:auto;border:1px solid #ffffff0d;border-radius:20px;overflow:hidden;background:#100d17;box-shadow:0 30px 80px #0008}.auth-story-panel{display:flex;flex-direction:column;justify-content:center;padding:50px;background:radial-gradient(circle at 20% 10%,#a855f721,transparent 30%),linear-gradient(145deg,#171123,#0d0b13)}.storykai-auth-logo img{width:170px}.auth-story-panel h1{max-width:480px;font-size:2.6rem;line-height:1.03;margin:12px 0}.auth-story-panel>p{max-width:530px;color:#9d94a7;line-height:1.55}.auth-benefits{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:20px}.auth-benefits span{padding:9px;background:#ffffff05;border:1px solid #ffffff08;border-radius:9px;font-size:.7rem;color:#c3bacb}.modern-auth-card{width:auto!important;max-width:none!important;border:0!important;border-radius:0!important;padding:42px!important;box-shadow:none!important}.modern-auth-card h2{font-size:1.7rem;margin:5px 0}.staff-auth-split .auth-story-panel{background:linear-gradient(145deg,#15131a,#0d0b10)}

.storykai-admin-head{padding-bottom:4px}.stat.attention{border-color:#f59e0b42;background:#f59e0b08}.admin-module-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0}.admin-module-card{display:grid;grid-template-columns:42px 1fr auto;gap:10px;align-items:center;padding:15px;background:#15121f;border:1px solid #ffffff0d;border-radius:12px;color:inherit}.admin-module-card>span{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#6366f115}.admin-module-card div{display:flex;flex-direction:column}.admin-module-card small{margin-top:3px;color:#81798c;font-size:.65rem;line-height:1.35}.admin-module-card em{font-size:.66rem;color:#a78bfa;font-style:normal}.safe-feed-author{display:flex!important;gap:9px!important;align-items:flex-start}.safe-feed-author>div{display:flex;gap:5px;flex-wrap:wrap}

@media(max-width:1000px){.profile-list-grid,.admin-module-grid{grid-template-columns:1fr 1fr}.vibe-presets{grid-template-columns:repeat(3,1fr)}.taste-quick-actions{grid-template-columns:1fr 1fr}.auth-split{grid-template-columns:1fr 390px}.auth-story-panel{padding:36px}.auth-story-panel h1{font-size:2.2rem}}
@media(max-width:760px){.profile-dashboard,.account-settings-layout{grid-template-columns:1fr}.account-settings-nav{position:static;display:grid;grid-template-columns:repeat(3,1fr)}.settings-two-col{grid-template-columns:1fr}.profile-list-grid{grid-template-columns:1fr 1fr}.lists-guest-cta{align-items:stretch;flex-direction:column}.vibe-presets{grid-template-columns:1fr 1fr}.gem-method{grid-template-columns:1fr}.gem-method>p{grid-column:auto}.auth-split{grid-template-columns:1fr}.auth-story-panel{padding:28px}.auth-story-panel h1{font-size:2rem}.modern-auth-card{padding:28px!important}.admin-module-grid{grid-template-columns:1fr}.award-vote{grid-template-columns:1fr}}
@media(max-width:520px){.profile-list-grid,.vibe-presets,.taste-quick-actions{grid-template-columns:1fr}.profile-metric-row{grid-template-columns:1fr}.account-settings-nav{grid-template-columns:1fr 1fr}.gem-method-steps{grid-template-columns:1fr}.auth-benefits{grid-template-columns:1fr}.auth-story-panel{padding:24px}.modern-auth-card{padding:24px!important}.profile-stats{gap:10px;flex-wrap:wrap}}


/* ===== Phase 20: Product freeze / accessibility / mobile hardening ===== */
:focus-visible{outline:3px solid #a78bfa;outline-offset:3px;border-radius:4px}
.skip-link{position:fixed;left:12px;top:-80px;z-index:9999;padding:10px 14px;background:#fff;color:#111;border-radius:8px;font-weight:800}.skip-link:focus{top:12px}
button,a,input,select,textarea{scroll-margin-top:90px}button:disabled,[aria-disabled="true"]{cursor:not-allowed;opacity:.58}
input:invalid:not(:placeholder-shown),textarea:invalid:not(:placeholder-shown),select:invalid:not(:focus){border-color:#ef444477}
.form-invalid-hint{display:block;margin-top:5px;color:#fca5a5;font-size:.66rem}
form[aria-busy="true"] button[type="submit"],form[aria-busy="true"] button:not([type]){pointer-events:none;opacity:.72}
.rich-empty a.btn{margin-top:10px}.notification-settings-card{display:flex;flex-direction:column;gap:7px}.notification-settings-card .setting-row{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:12px 4px;border-bottom:1px solid #ffffff0a}.notification-settings-card .setting-row>span{display:flex;flex-direction:column;gap:3px}.notification-settings-card .setting-row small{color:#81798c;font-size:.66rem;line-height:1.4}.notification-settings-card input[type="checkbox"]{width:20px;height:20px;accent-color:#8b5cf6}.reader-empty.rich-empty{max-width:620px;margin:80px auto;padding:28px}.reader-empty.rich-empty img{width:60px;height:60px}.error-page{min-height:60vh}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
@media(max-width:760px){.topbar{min-height:60px}.desktop-nav,.nav-search{display:none}.mobile-menu-btn{display:inline-grid;place-items:center;min-width:44px;min-height:44px}.top-actions .user-pill>span:last-child,.top-actions>a[href="/auth/google"]{display:none}.mobile-drawer{max-height:calc(100vh - 60px);overflow:auto}.mobile-drawer a{min-height:44px;display:flex;align-items:center}.notification-settings-card .setting-row{min-height:58px}.reader-toolbar{gap:7px}.reader-controls button{min-height:40px}.reader-bottom a{min-height:44px;display:flex;align-items:center;justify-content:center}.chat-compose textarea{font-size:16px}.chat-compose button{min-height:44px}}
@media(max-width:520px){.top-actions{gap:5px}.top-actions .btn.small{padding:7px 9px}.account-settings-nav a{min-height:42px;display:flex;align-items:center}.notification-toolbar{align-items:stretch;flex-direction:column}.notification-toolbar>div{display:grid;grid-template-columns:1fr 1fr}.notification-toolbar .btn{justify-content:center}.curated-meta{flex-wrap:wrap}.curated-meta b{margin-left:0;width:100%}}

.global-flash-wrap{position:relative;z-index:30;max-width:1180px;margin:10px auto -4px;padding:0 18px}.global-flash-wrap .flash{padding:11px 13px;border-radius:9px;border:1px solid #ffffff12}.global-flash-wrap .flash.success{background:#10b98112;border-color:#10b98142;color:#bbf7d0}.global-flash-wrap .flash.error{background:#ef444412;border-color:#ef444447;color:#fecaca}.admin-flash-wrap{margin:0 0 12px;padding:0}


/* ===== StoryKai production layout hotfix — 2026-08-23 =====
   Final override layer. Keeps the desktop header compact, makes the mobile
   drawer deterministic, and prevents navigation overflow at laptop widths. */
.site-body{min-width:320px;overflow-x:hidden}
.topbar{
  width:100%;
  height:68px;
  padding-inline:clamp(16px,2vw,30px);
  gap:clamp(12px,1.5vw,24px);
  justify-content:flex-start;
}
.topbar .storykai-brand{flex:0 0 auto}
.topbar .desktop-nav{
  display:flex;
  align-items:center;
  gap:clamp(12px,1.35vw,24px);
  min-width:0;
  white-space:nowrap;
  font-size:clamp(13px,1.05vw,15px);
}
.topbar .nav-search{
  margin-left:auto;
  flex:1 1 250px;
  min-width:180px;
  max-width:340px;
  width:auto;
}
.topbar .top-actions{flex:0 0 auto;white-space:nowrap}
.topbar .top-actions .btn.small{padding:9px 12px}
.mobile-menu-btn{flex:0 0 44px}
.mobile-drawer[hidden]{display:none!important}
.mobile-drawer{
  top:68px;
  max-height:calc(100dvh - 68px);
  overflow-y:auto;
  overscroll-behavior:contain;
}
#main-content{min-height:55vh}
.storykai-footer{width:100%}

@media(max-width:1180px){
  .topbar .desktop-nav{gap:14px;font-size:13px}
  .topbar .desktop-nav a:nth-last-child(-n+2){display:none}
  .topbar .nav-search{max-width:260px}
}
@media(max-width:1020px){
  .topbar .desktop-nav,.topbar .nav-search{display:none!important}
  .mobile-menu-btn{display:inline-grid!important;place-items:center}
  .topbar{justify-content:flex-start}
  .topbar .top-actions{margin-left:auto}
}
@media(min-width:1021px){
  .mobile-menu-btn{display:none!important}
  .mobile-drawer{display:none!important}
}
@media(max-width:760px){
  .topbar{height:60px;padding-inline:12px;gap:8px}
  .mobile-drawer{top:60px;max-height:calc(100dvh - 60px)}
  .topbar .storykai-brand img{width:106px}
  .topbar .top-actions{gap:6px}
  .topbar .top-actions .btn.small{padding:8px 10px}
}
@media(max-width:430px){
  .topbar .top-actions>a[href="/auth/google"]{display:none!important}
  .topbar .storykai-brand img{width:98px}
}


/* ===== StoryKai one-page Publisher ===== */
.publisher-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;margin-bottom:16px}.publisher-head h1{font-size:34px;margin:5px 0}.publisher-head p{margin:0;color:var(--muted);max-width:760px}.publisher-head-actions{display:flex;gap:8px}.story-publisher{min-width:0}.publisher-jumpbar,.editor-tabs{position:sticky;top:68px;z-index:16;display:flex;gap:4px;padding:7px;margin:0 0 14px;background:#111019ed;border:1px solid #302b39;border-radius:12px;backdrop-filter:blur(18px);overflow-x:auto;scrollbar-width:thin}.publisher-jumpbar a,.editor-tabs a{flex:0 0 auto;padding:8px 11px;border-radius:8px;color:#958da0;font-size:12px;font-weight:700}.publisher-jumpbar a:hover,.publisher-jumpbar a.active,.editor-tabs a:hover,.editor-tabs a.active{background:#6d3be31c;color:#fff}.publisher-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:16px;align-items:start}.publisher-main{display:flex;flex-direction:column;gap:14px;min-width:0}.publisher-section{scroll-margin-top:145px;padding:19px;background:linear-gradient(180deg,#17151f,#121019);border:1px solid #2a2632;border-radius:14px}.publisher-section-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:17px}.publisher-section-head>div:first-child{display:flex;gap:11px;align-items:flex-start}.publisher-section-head h2{margin:0 0 4px;font-size:19px}.publisher-section-head p{margin:0;color:#8e8799;font-size:12px;line-height:1.45}.step-number{display:grid;place-items:center;min-width:32px;height:32px;border-radius:9px;background:#8b5cf617;border:1px solid #8b5cf737;color:#c4b5fd;font-size:10px;font-weight:900}.required-note{font-size:10px;color:#948b9e}.publisher-section label{margin-bottom:11px}.publisher-section label>small{display:block;margin-top:5px;font-size:10px;color:#777080}.publisher-sidebar{min-width:0}.publisher-sticky{position:sticky;top:132px}.publisher-status-card{padding:16px;background:linear-gradient(145deg,#1c1627,#121019);border:1px solid #392d49;border-radius:13px}.publisher-status-card h3{margin:6px 0 11px}.publisher-status-card ul{list-style:none;padding:0;margin:0 0 15px}.publisher-status-card li{display:flex;gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid #ffffff0a;color:#91899b;font-size:12px}.publisher-status-card li span{width:17px;color:#746c7f}.publisher-status-card li.done{color:#d7f7e7}.publisher-status-card li.done span{color:#42d392}.publisher-status-card li em{margin-left:auto;font-size:9px;color:#6f6879;font-style:normal}.publisher-help{font-size:10px;color:#746c7f;line-height:1.5;margin:10px 0 0}.publisher-image-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.image-upload-card{display:grid;grid-template-columns:130px 1fr;gap:13px;padding:12px;border:1px solid #302a39;border-radius:12px;background:#ffffff03}.image-upload-card h3{margin:1px 0 8px}.image-preview{overflow:hidden;background:#0c0a10;border:1px dashed #3a3342;border-radius:10px;display:grid;place-items:center}.image-preview.cover-shape{aspect-ratio:2/3}.image-preview.banner-shape{aspect-ratio:16/9;grid-column:1/-1}.image-preview img{width:100%;height:100%;object-fit:cover}.image-preview img[src*="storykai-mark"]{object-fit:contain;padding:22px;opacity:.5}.upload-drop{position:relative;display:flex!important;align-items:center;justify-content:center;min-height:40px;padding:9px;border-radius:8px;background:#6d3be31a;border:1px dashed #8b5cf65a;color:#c4b5fd!important;font-weight:800;cursor:pointer}.upload-drop input{position:absolute;inset:0;opacity:0;cursor:pointer;margin:0}.or-label{display:block;text-align:center;color:#615a6b;font-size:9px;margin:5px}.taxonomy-picker-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.publisher-chapter-area{min-height:290px}.chapter-import-explainer{display:grid;grid-template-columns:.45fr 1fr;gap:10px;margin-bottom:12px;padding:11px;border-radius:10px;background:#0d0b12;border:1px solid #2c2733}.chapter-import-explainer>div{display:flex;flex-direction:column;gap:4px}.chapter-import-explainer span{color:#847d8e;font-size:11px}.chapter-import-explainer pre{margin:0;padding:9px;background:#08070b;border-radius:7px;color:#bfb5c9;overflow:auto;font-size:10px}.publisher-check{padding:10px;border-radius:9px;background:#ffffff04}.chapter-live-summary{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 12px;border-radius:9px;border:1px solid #2d2934;color:#777080}.chapter-live-summary strong{color:#aaa1b5}.chapter-live-summary.has-data{border-color:#42d39240;background:#42d39208}.chapter-live-summary.has-data strong{color:#7ee5b4}.publisher-disabled{opacity:.75}.edit-image-upload{display:grid;grid-template-columns:1fr;gap:5px;margin-bottom:14px;padding:10px;border:1px solid #2d2934;border-radius:10px}.mini-media-preview{height:150px;overflow:hidden;border-radius:8px;background:#0c0a10}.mini-media-preview.banner{height:95px}.mini-media-preview img{width:100%;height:100%;object-fit:cover}.editor-anchor{display:block;position:relative;top:-120px;visibility:hidden}.editor-tabs{top:68px}.editor-tabs a[href*="/admin/"]{color:#c4b5fd}

@media(max-width:1150px){.publisher-layout{grid-template-columns:1fr}.publisher-sidebar{order:-1}.publisher-sticky{position:static}.publisher-status-card{display:grid;grid-template-columns:1fr auto;gap:8px 15px;align-items:center}.publisher-status-card ul{grid-column:1/-1;display:grid;grid-template-columns:repeat(5,1fr);gap:4px;margin:0}.publisher-status-card li{border:0;padding:6px}.publisher-status-card .btn{grid-column:2;grid-row:1}.publisher-help{display:none}.taxonomy-picker-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.publisher-head{align-items:flex-start;flex-direction:column}.publisher-head-actions{width:100%}.publisher-head-actions>*{flex:1}.publisher-jumpbar,.editor-tabs{top:60px}.publisher-image-grid{grid-template-columns:1fr}.taxonomy-picker-grid{grid-template-columns:1fr 1fr}.publisher-status-card{display:block}.publisher-status-card ul{grid-template-columns:1fr 1fr}.publisher-status-card .btn{width:100%}.chapter-import-explainer{grid-template-columns:1fr}.image-upload-card{grid-template-columns:100px 1fr}}
@media(max-width:520px){.publisher-section{padding:14px}.publisher-section-head{align-items:flex-start;flex-direction:column}.publisher-section-head>div:first-child{width:100%}.publisher-image-grid,.taxonomy-picker-grid{grid-template-columns:1fr}.image-upload-card{grid-template-columns:1fr}.image-preview.cover-shape{width:130px}.publisher-status-card ul{grid-template-columns:1fr}.publisher-jumpbar{margin-inline:-4px}.publisher-head h1{font-size:28px}}


/* ===== StoryKai JSON import + chapter history ===== */
.publisher-json-import{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;margin-bottom:14px;border:1px solid #3b2d4c;border-radius:14px;background:radial-gradient(circle at 10% 0,#8b5cf619,transparent 38%),linear-gradient(145deg,#191421,#121019)}.publisher-json-import h2{margin:3px 0 4px;font-size:18px}.publisher-json-import p{margin:0;max-width:690px;color:#8f8799;font-size:12px;line-height:1.45}.publisher-json-actions{display:flex;gap:8px;flex:0 0 auto}.json-upload-button{position:relative;overflow:hidden;cursor:pointer}.json-upload-button input{position:absolute;inset:0;opacity:0;cursor:pointer}.json-import-status{flex-basis:100%;padding:9px 11px;border-radius:9px;font-size:11px;line-height:1.45}.publisher-json-import:has(.json-import-status:not([hidden])){flex-wrap:wrap}.json-import-status.success{background:#22c55e0e;border:1px solid #22c55e3c;color:#bbf7d0}.json-import-status.error{background:#ef444411;border:1px solid #ef444447;color:#fecaca}.compact-json-import{margin-bottom:12px}.edit-main-stack{display:flex;flex-direction:column;gap:12px;min-width:0}.edit-chapters-panel{scroll-margin-top:135px}.existing-chapter-summary{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 12px;margin-bottom:9px;border-radius:9px;background:#8b5cf60b;border:1px solid #8b5cf628}.existing-chapter-summary span{font-size:11px;color:#91899f}.existing-chapters-table{max-height:420px;overflow:auto;border:1px solid #2b2731;border-radius:10px}.chapter-admin-row{display:grid;grid-template-columns:minmax(120px,1fr) 70px 90px 110px 60px;gap:10px;align-items:center;padding:9px 11px;border-bottom:1px solid #ffffff08;font-size:11px}.chapter-admin-row:last-child{border-bottom:0}.chapter-admin-row>span:first-child{display:flex;flex-direction:column}.chapter-admin-row small{color:#777080;margin-top:2px}.chapter-admin-row a{color:#c4b5fd}.chapter-admin-head{position:sticky;top:0;z-index:2;background:#14111a;color:#777080;font-size:9px;text-transform:uppercase;letter-spacing:.07em}.inline-chapter-add{margin-top:14px;padding-top:14px;border-top:1px solid #2d2934}.inline-chapter-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}.inline-chapter-head h3{margin:3px 0}.inline-chapter-head p{margin:0;color:#81798c;font-size:11px}.next-chapter-badge{padding:6px 8px;border-radius:999px;background:#22c55e0d;border:1px solid #22c55e35;color:#86efac;font-size:10px;white-space:nowrap}.compact-empty{min-height:120px!important}.compact-empty strong,.compact-empty span{display:block;text-align:center}.compact-empty span{color:#81798c;margin-top:4px}

@media(max-width:850px){.publisher-json-import{align-items:flex-start;flex-direction:column}.publisher-json-actions{width:100%}.publisher-json-actions>*{flex:1}.chapter-admin-row{grid-template-columns:minmax(100px,1fr) 55px 75px 55px}.chapter-admin-row>span:nth-child(4),.chapter-admin-head>span:nth-child(4){display:none}}
@media(max-width:520px){.publisher-json-actions{display:grid;grid-template-columns:1fr}.existing-chapter-summary,.inline-chapter-head{align-items:flex-start;flex-direction:column}.chapter-admin-row{grid-template-columns:1fr 48px 70px}.chapter-admin-row>span:nth-child(4),.chapter-admin-row>span:nth-child(5),.chapter-admin-head>span:nth-child(4),.chapter-admin-head>span:nth-child(5){display:none}}

.json-import-status.loading{background:#3b82f60e;border:1px solid #3b82f63d;color:#bfdbfe}


/* ===== StoryKai JSON taxonomy visibility fix ===== */
.json-taxonomy-preview{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}
.json-taxonomy-chip{display:inline-flex;align-items:center;padding:4px 7px;border-radius:999px;background:#22c55e0d;border:1px solid #22c55e30;color:#a7f3d0;font-size:10px;line-height:1}
.json-taxonomy-chip.pending{background:#8b5cf60f;border-color:#8b5cf63d;color:#c4b5fd}
.multi-select option[data-json-pending="1"]{font-weight:700}

.chapter-search-empty{margin:10px 0!important;min-height:88px!important}
.table-search-empty{padding:18px;text-align:center;color:#8f8799;border-top:1px solid #ffffff0b;background:#100e16}

.canonical-preview{padding:10px 11px;border-radius:8px;background:#0d0b12;border:1px solid #302a39;color:#a7f3d0;font:600 11px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere}

.series-breadcrumbs{display:flex;align-items:center;gap:7px;padding-top:14px;padding-bottom:8px;color:#746d7d;font-size:.7rem;overflow:hidden;white-space:nowrap}.series-breadcrumbs a{color:#9a91a5}.series-breadcrumbs strong{overflow:hidden;text-overflow:ellipsis;color:#cfc6d6;font-weight:700}


/* StoryKai unified search */
.browse-search-field{position:relative}.browse-search-suggestions{top:calc(100% + 7px);left:0;right:0;z-index:80;max-height:360px;overflow:auto}
.search-suggestions a.is-active,.search-suggestions a:hover{background:rgba(255,255,255,.09)}
.chapter-search-empty{margin:8px 0;min-height:88px}.suggest-empty{padding:14px;color:#8e8798;text-align:center;font-size:.78rem}

/* StoryKai taxonomy focus: genres navigate, tags describe */
.facet-chips.informational span{
  display:inline-flex;align-items:center;padding:5px 8px;border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.045);border-radius:999px;color:#8f8799;font-size:.69rem;
  cursor:default;user-select:text
}
.genre-landing .pagination{justify-content:center;flex-wrap:wrap}

/* ===== StoryKai admin deletion + rank badges + profile media ===== */
.series-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px}.series-row-actions form{margin:0}.tiny-button.danger{border-color:#8a3945;background:#35161d;color:#ff9fab;cursor:pointer}.tiny-button.danger:hover{background:#4a1b24;color:#ffd5db}
.profile-media-editor{display:grid;grid-template-columns:1fr 1fr;gap:12px}.profile-media-card{display:grid;grid-template-columns:118px minmax(0,1fr);gap:13px;padding:12px;border:1px solid #ffffff12;border-radius:15px;background:#ffffff04}.profile-media-card h3{margin:2px 0 8px}.profile-media-preview{overflow:hidden;border-radius:12px;background:#071a20;border:1px solid #ffffff12;display:grid;place-items:center}.profile-media-preview.avatar-preview{width:118px;aspect-ratio:1}.profile-media-preview.banner-preview{grid-column:1/-1;width:100%;aspect-ratio:3/1}.profile-media-preview img{width:100%;height:100%;object-fit:cover}.profile-media-preview img[src*="storykai-mark"]{object-fit:contain;padding:24px;opacity:.55}.profile-upload-btn{position:relative;display:inline-flex!important;align-items:center;justify-content:center;width:max-content;min-height:38px;padding:8px 12px;border-radius:10px;border:1px solid #31bfc333;background:#1eb5ba12;color:#a9eff0!important;font-weight:800;cursor:pointer}.profile-upload-btn input{position:absolute;inset:0;opacity:0;cursor:pointer}
.rank-badge{display:inline-flex;align-items:center;gap:6px}.rank-mini-crest,.rank-crest{display:grid;place-items:center;clip-path:polygon(50% 0,88% 16%,100% 54%,78% 92%,50% 100%,22% 92%,0 54%,12% 16%);background:linear-gradient(145deg,#8191a8,#2f3948);color:#f5f8ff;text-shadow:0 0 10px currentColor;box-shadow:0 0 18px #7c8da844}.rank-mini-crest{width:18px;height:18px;font-size:9px}.rank-crest{width:52px;height:52px;font-size:19px;margin-bottom:3px}.rank-newbie .rank-mini-crest,.rank-step.rank-newbie .rank-crest{background:linear-gradient(145deg,#647086,#272f3d)}.rank-member .rank-mini-crest,.rank-step.rank-member .rank-crest{background:linear-gradient(145deg,#756bba,#332d62)}.rank-advanced .rank-mini-crest,.rank-step.rank-advanced .rank-crest{background:linear-gradient(145deg,#d3b15b,#67501b);color:#fff1b3}.rank-elite .rank-mini-crest,.rank-step.rank-elite .rank-crest{background:linear-gradient(145deg,#b8b7a5,#494941)}.rank-veteran .rank-mini-crest,.rank-step.rank-veteran .rank-crest{background:linear-gradient(145deg,#34c8cb,#155366);color:#caffff}.rank-legend .rank-mini-crest,.rank-step.rank-legend .rank-crest{background:linear-gradient(145deg,#dc7f4b,#6a2b21);color:#ffe0c4}.rank-mythic .rank-mini-crest,.rank-step.rank-mythic .rank-crest{background:linear-gradient(145deg,#dc568e,#6c2049);color:#ffd0e3}.visual-rank-ladder{display:grid!important;grid-template-columns:repeat(7,minmax(80px,1fr));gap:8px!important}.visual-rank-ladder .rank-step{display:flex!important;flex-direction:column;align-items:center;text-align:center;padding:11px 6px!important;border:1px solid #ffffff10;border-radius:12px;background:#ffffff03}.visual-rank-ladder .rank-step strong{font-size:11px}.visual-rank-ladder .rank-step>span:last-child{font-size:9px;color:#807987;margin-top:3px}.badge-icon img{width:100%;height:100%;object-fit:cover;border-radius:inherit}
@media(max-width:900px){.profile-media-editor{grid-template-columns:1fr}.visual-rank-ladder{grid-template-columns:repeat(4,1fr)}}
@media(max-width:620px){.profile-media-card{grid-template-columns:82px minmax(0,1fr)}.profile-media-preview.avatar-preview{width:82px}.visual-rank-ladder{grid-template-columns:repeat(2,1fr)}.series-row-actions{flex-direction:column;align-items:stretch}.series-row-actions .tiny-button{width:100%;text-align:center}}
.avatar.mini,.sidebar-user .avatar{overflow:hidden}.avatar.mini img,.sidebar-user .avatar img{width:100%;height:100%;object-fit:cover;display:block}.comment-avatar img{width:100%;height:100%;object-fit:cover;display:block}


/* ===== StoryKai rank crest v2 — professional progression emblems ===== */
.rank-ladder-card{overflow:hidden}
.rank-ladder-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}
.rank-ladder-head h2{margin:3px 0 4px}.rank-ladder-head p{margin:0;color:#7f7886;font-size:11px}
.visual-rank-ladder{
  display:grid!important;
  grid-template-columns:repeat(7,minmax(92px,1fr))!important;
  gap:10px!important;
}
.visual-rank-ladder .rank-step{
  position:relative;isolation:isolate;
  display:flex!important;flex-direction:column;align-items:center;justify-content:flex-start;
  min-height:132px;padding:13px 7px 11px!important;
  border:1px solid #ffffff0d!important;border-radius:16px!important;
  background:linear-gradient(180deg,#171820,#0d0e13)!important;
  box-shadow:inset 0 1px 0 #ffffff07,0 12px 30px #00000018;
  overflow:hidden;
}
.visual-rank-ladder .rank-step::before{
  content:"";position:absolute;inset:-45% -30% auto;height:90%;
  background:radial-gradient(circle,var(--rank-glow,#8792a8) 0,transparent 66%);
  opacity:.11;z-index:-1;pointer-events:none;
}
.visual-rank-ladder .rank-step::after{
  content:"";position:absolute;left:18%;right:18%;bottom:0;height:1px;
  background:linear-gradient(90deg,transparent,var(--rank-glow,#8792a8),transparent);opacity:.42
}
.rank-crest{
  width:66px!important;height:70px!important;margin:0 0 5px!important;
  display:grid!important;place-items:center!important;
  clip-path:none!important;background:none!important;box-shadow:none!important;
}
.rank-crest img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 8px 12px #0008)}
.visual-rank-ladder .rank-step strong{font-size:11px!important;letter-spacing:.01em;color:#f1f3f6}
.visual-rank-ladder .rank-step>span:last-child{margin-top:3px!important;font-size:9px!important;color:#777d87!important}
.rank-newbie{--rank-glow:#aab0c0}.rank-member{--rank-glow:#b6a3ff}.rank-advanced{--rank-glow:#ffe08a}
.rank-elite{--rank-glow:#f1f0d7}.rank-veteran{--rank-glow:#6ff2f0}.rank-legend{--rank-glow:#ffb06d}.rank-mythic{--rank-glow:#ff8dca}

.rank-badge{
  --rank-glow:#aab0c0;
  display:inline-flex!important;align-items:center!important;gap:6px!important;
  min-height:25px;padding:3px 8px 3px 4px!important;
  border:1px solid color-mix(in srgb,var(--rank-glow) 24%,transparent)!important;
  border-radius:999px!important;
  background:linear-gradient(180deg,#151820,#0c0e13)!important;
  color:#e8edf2!important;
  box-shadow:inset 0 1px 0 #ffffff09!important;
  white-space:nowrap;
}
.rank-badge.small{min-height:21px;padding:2px 6px 2px 3px!important;gap:4px!important;font-size:9px!important}
.rank-mini-crest{
  width:21px!important;height:21px!important;display:grid!important;place-items:center!important;
  clip-path:none!important;background:none!important;box-shadow:none!important;flex:0 0 auto;
}
.rank-badge.small .rank-mini-crest{width:17px!important;height:17px!important}
.rank-mini-crest img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 2px 4px #0008)}
.rank-badge>span{line-height:1;font-weight:750;letter-spacing:.01em}
.rank-badge.rank-newbie{--rank-glow:#aab0c0}.rank-badge.rank-member{--rank-glow:#b6a3ff}.rank-badge.rank-advanced{--rank-glow:#ffe08a}
.rank-badge.rank-elite{--rank-glow:#f1f0d7}.rank-badge.rank-veteran{--rank-glow:#6ff2f0}.rank-badge.rank-legend{--rank-glow:#ffb06d}.rank-badge.rank-mythic{--rank-glow:#ff8dca}

@media(max-width:1050px){.visual-rank-ladder{grid-template-columns:repeat(4,minmax(92px,1fr))!important}}
@media(max-width:620px){.visual-rank-ladder{grid-template-columns:repeat(2,minmax(100px,1fr))!important}.rank-crest{width:62px!important;height:66px!important}}


/* ===== StoryKai chapter URL dump ===== */
.chapter-url-dump-card{margin:14px 0;padding:14px;border:1px solid #2f3440;border-radius:12px;background:#10131a}
.chapter-url-dump-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:10px}
.chapter-url-dump-head h3{margin:4px 0 3px;font-size:15px}.chapter-url-dump-head p{margin:0;color:#8c929d;font-size:11px;line-height:1.5}
.chapter-url-dump{width:100%;min-height:330px;resize:vertical;white-space:pre;overflow:auto;background:#080b10!important;border-color:#2b3440!important;color:#cce6e8!important;font-size:11px!important;line-height:1.55!important}
.chapter-url-dump-note{display:block;margin-top:7px;color:#737b87;font-size:10px;line-height:1.45}.chapter-url-dump-head .btn.success{border-color:#2fbd8b;color:#b8f5dc}
@media(max-width:700px){.chapter-url-dump-head{flex-direction:column}.chapter-url-dump-head .btn{width:100%}.chapter-url-dump{min-height:280px}}

/* StoryKai JSON duplicate precheck */
.json-import-status.duplicate{background:#f59e0b12;border:1px solid #f59e0b45;color:#fde7ad}
.json-import-status.duplicate strong{color:#fff1c7}
.json-duplicate-link{display:inline-flex;margin-left:6px;padding:4px 8px;border-radius:7px;background:#f59e0b18;border:1px solid #f59e0b38;color:#ffe3a0;font-weight:800}
.json-duplicate-link:hover{background:#f59e0b26;color:#fff}
