:root{--ink: #111827;--muted: #64748b;--line: #d9e2ec;--panel: rgba(255, 255, 255, .88);--soft: #f6f8fb;--mint: #d9f99d;--cyan: #bae6fd;--rose: #fecdd3;--gold: #fde68a;--blue: #2563eb;--red: #dc2626;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--ink);background:#edf3f7}*{box-sizing:border-box}body{margin:0;min-width:1080px;min-height:100vh;background:linear-gradient(115deg,rgba(186,230,253,.56),transparent 34%),linear-gradient(245deg,rgba(254,205,211,.5),transparent 36%),#edf3f7}button,input,textarea,select{font:inherit}button,a{text-decoration:none}.appShell{display:grid;grid-template-columns:276px 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;padding:24px 18px;background:#101820;color:#fff;display:flex;flex-direction:column;gap:26px}.brand{display:flex;gap:12px;align-items:center;padding:6px}.brandMark{width:48px;height:48px;display:grid;place-items:center;border-radius:8px;color:#111827;background:linear-gradient(135deg,var(--gold),var(--cyan))}.brand strong,.brand span{display:block}.brand span{color:#aebdcc;font-size:12px;margin-top:2px}.nav,.navGroup{display:grid;gap:8px}.navGroupTitle{min-height:44px;display:flex;align-items:center;gap:10px;padding:0 12px;border-radius:8px;background:#d9f99d1f;color:#f8fafc;font-weight:900}.navSubmenu{display:grid;gap:6px;padding-left:18px;border-left:1px solid rgba(255,255,255,.14)}.nav button{height:44px;border:0;color:#dbeafe;background:transparent;display:flex;align-items:center;gap:10px;padding:0 12px;border-radius:8px;cursor:pointer}.navSubmenu button{height:38px;font-size:14px}.nav button.active,.nav button:hover{background:#223140;color:#fff}.sidebarCard{margin-top:auto;padding:16px;border:1px solid rgba(255,255,255,.14);border-radius:8px;background:#ffffff0f}.sidebarUser{display:grid;gap:6px;padding:14px;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:#ffffff0a}.sidebarUser span{color:#aebdcc;font-size:12px;overflow-wrap:anywhere}.sidebarUser strong{font-size:14px}.sidebarUser button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;border:0;border-radius:8px;background:#223140;color:#fff;cursor:pointer}.sidebarCard span,.sidebarCard strong{display:block}.sidebarCard span{color:#aebdcc;font-size:12px}.sidebarCard strong{margin-top:5px}.sidebarCard p{color:#cbd5e1;font-size:13px;line-height:1.55;margin:12px 0 0}.sidebarUser{display:grid;gap:6px;padding:14px;border-radius:8px;background:#ffffff14}.sidebarUser span{color:#aebdcc;font-size:12px}.sidebarUser strong{font-size:13px;overflow-wrap:anywhere}.sidebarVersion{display:grid;gap:3px;margin:4px 0;padding:8px 10px;border-radius:8px;background:#60e79b1f;border:1px solid rgba(96,231,155,.22)}.sidebarVersion strong{color:#d9f99d;font-size:12px}.sidebarUser button{min-height:34px;border:1px solid rgba(255,255,255,.14);border-radius:8px;background:#ffffff14;color:#f8fafc;display:inline-flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;font-weight:750}.sidebarUser button:first-of-type{background:#d9f99d;color:#111827;border-color:transparent}.content{padding:26px}.mainGrid{display:grid;grid-template-columns:320px 1fr;gap:18px;align-items:start}.workspace,.directorGrid,.settingsGrid{display:grid;gap:18px}.settingsGrid{grid-template-columns:minmax(360px,.8fr) 1.2fr;align-items:start}.panel{background:var(--panel);border:1px solid rgba(15,23,42,.08);box-shadow:0 18px 52px #0f172a14;border-radius:8px;padding:18px}.projectPanel{position:sticky;top:24px}.panelHeader{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.eyebrow{margin:0 0 3px;color:#0f766e;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:0}h1,h2{margin:0;letter-spacing:0}h1{font-size:34px}h2{font-size:20px}.heroBand,.directorHero{display:flex;justify-content:space-between;gap:20px;align-items:center;color:#0f172a;background:linear-gradient(135deg,#d9f99dbf,#bae6fdcc),#f8fafc}.heroBand p,.directorHero p{max-width:760px;color:#334155;line-height:1.65}.heroStats{display:flex;gap:10px}.heroStats span{width:86px;height:76px;border-radius:8px;display:grid;place-items:center;background:#ffffffa8;font-size:28px;font-weight:800}.heroStats small{display:block;color:var(--muted);font-size:12px;font-weight:600}.directorSteps{min-width:220px;display:grid;gap:8px}.directorSteps span{padding:10px 12px;background:#ffffffb3;border:1px solid rgba(15,23,42,.08);border-radius:8px;font-weight:700}.sectionGrid{display:grid;gap:18px}.sectionGrid.two{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.formGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.formGrid.compact{grid-template-columns:repeat(4,minmax(0,1fr))}.field{display:grid;gap:6px}.field span{font-size:13px;font-weight:700;color:#334155}.field small{color:var(--muted)}.control,.readonlyBox{min-height:42px;width:100%;border:1px solid #cbd5e1;background:#fff;border-radius:8px;padding:10px 11px;color:#0f172a;outline:none}.control:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb21}.textarea{resize:vertical;line-height:1.45}.multi{min-height:98px}.buttonRow,.exportRow,.toggleRow,.imageActions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.primaryButton,.secondaryButton,.ghostButton,.iconButton,.uploadButton,.toggle{min-height:38px;border-radius:8px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 13px;cursor:pointer;font-weight:750}.primaryButton{background:#111827;color:#fff}.primaryButton:disabled,.secondaryButton:disabled,.secondaryButton.disabled,.iconButton:disabled{opacity:.55;cursor:not-allowed}.primaryButton.full{width:100%;margin-top:12px}.secondaryButton,.ghostButton,.uploadButton{color:#0f172a;background:#fff;border-color:#cbd5e1}label.secondaryButton{position:relative;overflow:hidden}label.secondaryButton input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.ghostButton{min-height:32px;padding:0 10px}.iconButton{width:38px;padding:0;background:#fff;border-color:#cbd5e1;color:#0f172a}.imageActions .iconButton{width:auto;min-width:76px;padding:0 12px}.iconButton.danger,.danger{color:#b91c1c}.iconButton.good{color:#15803d}.iconButton.warn{color:#a16207}.iconButton.publish{color:#0369a1}.iconButton.good.active{background:#dcfce7;border-color:#22c55e;color:#166534;box-shadow:0 0 0 3px #22c55e24}.iconButton.warn.active{background:#fef3c7;border-color:#f59e0b;color:#92400e;box-shadow:0 0 0 3px #f59e0b24}.toggle{background:#eef2f7;border-color:#d5dde8;color:#334155}.toggle.active{background:#ecfdf5;color:#047857;border-color:#a7f3d0}.toggleDot{width:10px;height:10px;border-radius:999px;background:currentColor}.batchStatus{margin-top:12px;min-height:42px;border-radius:8px;border:1px solid #cbd5e1;background:#f8fafc;color:#475569;padding:10px 12px;display:flex;align-items:center;gap:8px;font-weight:750}.batchStatusText{flex:1}.statusStopButton{min-height:30px;border-radius:8px;border:1px solid #ef4444;background:#fff1f2;color:#b91c1c;padding:0 12px;font-weight:850;cursor:pointer}.statusStopButton:disabled{opacity:.55;cursor:not-allowed}.batchStatus.running{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.batchStatus.done{background:#ecfdf5;border-color:#a7f3d0;color:#047857}.batchStatus.pending{background:#fff7ed;border-color:#fed7aa;color:#c2410c}.batchStatus.error{background:#fef2f2;border-color:#fecaca;color:#b91c1c}.costBox{margin-top:12px;border:1px solid #bbf7d0;background:#f0fdf4;color:#14532d;border-radius:8px;padding:11px 13px}.costBox div{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}.costBox span{display:inline-flex;align-items:center;gap:6px;font-weight:850}.costBox strong{font-size:18px}.costBox p{margin:7px 0 0;color:#166534;line-height:1.5;font-weight:700}.downloadGroup{min-height:38px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;display:inline-flex;align-items:center;gap:8px;padding:5px 8px;flex-wrap:wrap}.downloadGroup span{display:inline-flex;align-items:center;gap:6px;font-weight:850;color:#0f172a;padding:0 4px}.downloadGroup a{min-height:28px;border-radius:7px;background:#f1f5f9;color:#0f172a;text-decoration:none;display:inline-flex;align-items:center;padding:0 10px;font-weight:800}.downloadGroup a:hover{background:#e2e8f0}.downloadGroup.disabled{opacity:.65}.downloadGroup em{color:#64748b;font-style:normal;padding:0 8px}.projectList,.stack,.cardList,.dialogueList,.templateList{display:grid;gap:10px}.projectItem{text-align:left;padding:12px;border-radius:8px;border:1px solid #dce4ee;background:#fff;cursor:pointer}.projectItem.active{border-color:#111827;box-shadow:inset 4px 0 #111827}.projectItem strong,.projectItem span,.miniCard strong,.miniCard span,.imageMeta span{display:block}.projectItem span,.miniCard span,.imageMeta span{color:var(--muted);font-size:13px;margin-top:4px}.divider{height:1px;background:#e2e8f0;margin:14px 0}.miniCard{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:10px;padding:10px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.miniCard img,.avatar{width:44px;height:44px;border-radius:8px;object-fit:cover}.avatar{display:grid;place-items:center;background:var(--cyan);color:#0f172a;font-weight:900}.uploadButton{position:relative;min-height:34px;font-size:13px}.uploadButton input{position:absolute;inset:0;opacity:0;cursor:pointer}.pageTabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:8px}.pageTabs button{white-space:nowrap;min-height:36px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;padding:0 12px;cursor:pointer}.pageTabs button.active{background:#111827;color:#fff;border-color:#111827}.selectedPageBox{display:flex;align-items:center;gap:10px;padding:12px;border-radius:8px;background:#f8fafc;margin-bottom:12px}.factoryActions,.directorActions{margin:0 0 14px}.selectedPageBox span{color:var(--muted);margin-right:auto}.dialogueItem{display:grid;grid-template-columns:34px 1fr 64px auto;gap:10px;align-items:start;padding:12px;border:1px solid #e2e8f0;border-radius:8px;background:#fff}.dialogueItem p{margin:6px 0;color:#334155;line-height:1.45}.dialogueItem small{color:var(--muted)}.numberBadge,.numberGhost{width:30px;height:30px;display:grid;place-items:center;border-radius:999px;font-weight:900}.numberBadge{background:var(--red);color:#fff}.numberGhost{background:#e5e7eb;color:#64748b}.orderInput{width:60px;min-height:32px;border:1px solid #cbd5e1;border-radius:8px;padding:6px}.promptPanel{padding:0;overflow:hidden}.promptPanel .panelHeader{padding:18px;margin:0;border-bottom:1px solid #e2e8f0}.promptText{width:100%;min-height:420px;max-height:680px;overflow:auto;margin:0;padding:20px;white-space:pre-wrap;word-break:break-word;line-height:1.58;color:#dbeafe;background:#101820;border:0;outline:none;resize:vertical}.promptTextarea::placeholder{color:#93a4b8}.imageGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.imageCard{background:#fff;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.imageCard.approved{border-color:#22c55e;box-shadow:0 0 0 3px #22c55e24}.imageCard.redo{border-color:#f59e0b;box-shadow:0 0 0 3px #f59e0b26}.imageCard.review{border-color:#cbd5e1}.imageCard img,.imagePlaceholder{width:100%;aspect-ratio:3 / 4;object-fit:cover;background:#e2e8f0}.imagePlaceholder{display:grid;place-items:center;color:var(--muted)}.imageMeta,.imageActions,.imageCard details{padding:12px}.imageTitleRow{display:flex;align-items:center;justify-content:space-between;gap:10px}.statusPill{border-radius:999px;padding:5px 10px;font-size:12px;font-weight:800;white-space:nowrap}.statusPill.approved{background:#dcfce7;color:#166534}.statusPill.redo{background:#fef3c7;color:#92400e}.statusPill.review{background:#e2e8f0;color:#475569}.statusPill.failed{background:#fee2e2;color:#991b1b}.imageCard details{border-top:1px solid #e2e8f0}.imageCard pre{max-height:220px;overflow:auto;white-space:pre-wrap;font-size:12px;line-height:1.45}.costLogList{display:grid;gap:8px}.costLogItem{border:1px solid #dbe4ef;border-radius:8px;padding:10px 12px;display:grid;grid-template-columns:minmax(58px,.4fr) repeat(3,minmax(120px,1fr));gap:10px;align-items:center;color:#475569;font-weight:700}.costLogItem strong{color:#0f172a}.storyFactory{background:linear-gradient(135deg,#fde68a52,#bae6fd57),var(--panel)}.characterFactory{background:linear-gradient(135deg,#fecdd33d,#d9f99d47),var(--panel)}.characterTemplateGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.jobStatus{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-bottom:12px;padding:10px 12px;border:1px solid #dbe5ef;border-radius:8px;background:#ffffffc7;color:#334155}.jobStatus.running{border-color:#99f6e4;background:#f0fdfa}.jobStatus strong{color:#0f172a}.jobStatus span{color:#64748b;font-weight:700}.coverDesigner{display:grid;gap:12px;margin-bottom:14px;padding:12px;border:1px solid #dbe5ef;border-radius:8px;background:#ffffffc2}.coverDesignerTop{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.coverDesignerTop strong,.coverDesignerTop span{display:block}.coverDesignerTop span{margin-top:4px;color:#64748b;line-height:1.5;font-weight:650}.coverDesignerGrid{display:grid;grid-template-columns:minmax(220px,320px) 1fr;gap:12px;align-items:start}.coverPreview{display:grid;gap:10px}.coverPreview img{display:block;width:100%;aspect-ratio:2 / 3;object-fit:cover;border:1px solid #dbe5ef;border-radius:8px;background:#e2e8f0}.coverForm{display:grid;gap:10px}.characterTemplateCard{display:grid;gap:10px;padding:12px;border:1px solid #e2e8f0;border-radius:8px;background:#ffffffdb}.characterTemplateTop{display:flex;gap:10px;align-items:flex-start;justify-content:space-between}.compactButton{min-height:32px;padding:0 10px;white-space:nowrap;position:relative;overflow:hidden}.compactButton input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.referencePreview{display:grid;grid-template-columns:72px 1fr;gap:10px;align-items:center;padding:8px;border:1px solid #bbf7d0;border-radius:8px;background:#f0fdf4}.referencePreview img{width:72px;height:72px;object-fit:cover;border-radius:6px;border:1px solid #86efac}.characterTemplateCard strong,.characterTemplateCard span{display:block}.characterTemplateCard span{margin-top:4px;color:var(--muted);font-size:13px}.characterTemplateCard p{margin:0;color:#334155;line-height:1.5}.characterTemplateCard dl{display:grid;gap:7px;margin:0}.characterTemplateCard dl div{display:grid;grid-template-columns:72px 1fr;gap:8px}.characterTemplateCard dt{color:#0f766e;font-weight:800;font-size:13px}.characterTemplateCard dd{margin:0;color:#334155;line-height:1.45}.characterTemplateCard pre{max-height:180px;overflow:auto;white-space:pre-wrap;font-size:12px;line-height:1.45}.characterSheetPreview{overflow:hidden;border:1px solid #dbe5ef;border-radius:8px;background:#f8fafc}.characterSheetPreview img{display:block;width:100%;aspect-ratio:3 / 4;object-fit:cover;background:#e2e8f0}.characterSheetEmpty{display:grid;min-height:170px;place-items:center;padding:18px;text-align:center;color:#64748b}.characterSheetEmpty strong{color:#0f172a}.characterSheetMeta{display:flex;gap:8px;align-items:center;justify-content:space-between;padding:9px 10px;border-top:1px solid #dbe5ef}.characterSheetMeta a{color:#0f766e;font-weight:800;text-decoration:none}.storyGrid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px;align-items:start}.storyColumn,.chapterList{display:grid;gap:10px}.storyBlock,.chapterHeader,.chapterItem{padding:12px;border-radius:8px;border:1px solid #e2e8f0;background:#ffffffd1}.storyBlock strong,.storyBlock span,.storyBlock small,.chapterItem strong,.chapterItem span{display:block}.storyBlock p,.chapterItem span{margin:7px 0 0;color:#334155;line-height:1.55}.storyBlock small{margin-top:8px;color:var(--muted);line-height:1.45}.storyBible{display:grid;gap:7px;margin-top:8px;color:#334155;line-height:1.45}.chapterHeader{display:grid;gap:8px}.chapterItem{width:100%;text-align:left;cursor:pointer}.chapterItem.active{border-color:#111827;box-shadow:inset 4px 0 #111827}.templateCard{display:grid;gap:10px;border:1px solid #e2e8f0;border-radius:8px;padding:12px;background:#f8fafc}.templateCard strong,.templateCard span{display:block}.templateCard span{color:var(--muted);font-size:13px;margin-top:4px}.checkboxLine{min-height:38px;display:inline-flex;align-items:center;gap:8px;font-weight:700;color:#334155}.notice{position:fixed;top:18px;right:22px;z-index:20;max-width:420px;padding:12px 14px;background:#111827;color:#fff;border-radius:8px;box-shadow:0 20px 50px #0f172a33;cursor:pointer}.authPage{min-height:100vh;display:grid;place-items:center;padding:32px}.authPanel{width:min(520px,100%);padding:24px;border:1px solid rgba(15,23,42,.08);border-radius:8px;background:#ffffffe6;box-shadow:0 24px 70px #0f172a24}.authBrand{display:flex;align-items:center;gap:12px;margin-bottom:18px}.authTabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:16px}.authTabs button{min-height:40px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#334155;display:inline-flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;font-weight:800}.authTabs button.active{background:#111827;color:#fff;border-color:#111827}.authForm{display:grid;gap:12px}.authForm label{display:grid;gap:6px;color:#334155;font-weight:800}.authForm input{width:100%;min-height:42px;border:1px solid #cbd5e1;border-radius:8px;padding:0 12px;background:#fff;color:#111827}.inlineNotice{position:static;max-width:none;margin-bottom:12px;box-shadow:none}.emailCodeRow{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end}.authHint{margin:0;color:#64748b;line-height:1.6;font-size:13px}.versionText{margin:10px 0 0;color:#94a3b8;font-size:12px;font-weight:800}.adminGrid{display:grid;gap:18px}.accountCenterOverlay{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:28px;background:#0f172a75;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.accountCenterPanel{width:min(920px,calc(100vw - 56px));max-height:min(880px,calc(100vh - 56px));overflow:auto;display:grid;gap:16px;padding:20px;border:1px solid rgba(15,23,42,.12);border-radius:8px;background:#fffffff5;box-shadow:0 28px 90px #0f172a4d}.adminAccountCenterPanel{width:min(1180px,calc(100vw - 56px))}.accountSummaryGrid,.licenseGenerator,.memberManager{display:grid;gap:14px}.accountHero{display:grid;gap:5px;padding:14px;border:1px solid #dbeafe;border-radius:8px;background:linear-gradient(135deg,#e0f2fed1,#f0fdf4b8)}.accountHero strong{color:#0f172a;font-size:20px;overflow-wrap:anywhere}.accountHero span{color:#0f766e;font-size:13px;font-weight:900}.compactHeader{margin-bottom:0}.licenseGenerator.embedded{padding-top:4px;border-top:1px solid #e2e8f0}.memberManager,.licenseGenerator{padding-top:14px;border-top:1px solid #e2e8f0}.licenseGeneratorActions{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.licenseGeneratorLayout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:14px;align-items:stretch}.licenseGeneratorForm{display:grid}.licenseSummaryPanel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.licenseSummaryPanel div{display:grid;gap:6px;padding:12px;border:1px solid #e2e8f0;border-radius:8px;background:#fff}.licenseSummaryPanel strong{color:#0f172a;font-size:19px}.licenseSummaryPanel span{color:#0f766e;font-size:12px;font-weight:850}.licenseResultBar{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;padding:12px;border:1px solid #dbe3ef;border-radius:8px;background:#f8fafc}.licenseResultBar span{color:#64748b;font-size:13px;font-weight:750}.memberIdentity{display:flex;align-items:center;gap:10px}.memberIdentity strong,.memberIdentity span{display:block}.memberIdentity strong{overflow-wrap:anywhere}.memberIdentity span{margin-top:3px;color:#64748b;font-size:12px;font-weight:800}.memberToolbar{display:grid;grid-template-columns:minmax(240px,1fr) 160px 160px;gap:10px;align-items:center}.memberSearch{min-height:38px;display:flex;align-items:center;gap:8px;padding:0 12px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#64748b}.memberSearch:focus-within{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb21}.memberSearch input{width:100%;min-width:0;border:0;outline:0;color:#0f172a;background:transparent;font:inherit;font-weight:750}.memberManagementLayout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);gap:14px;align-items:start}.memberTable{display:grid;gap:8px}.memberTableHead,.memberTableRow{display:grid;grid-template-columns:minmax(180px,1.25fr) 72px 82px minmax(110px,.8fr) 96px;gap:10px;align-items:center}.memberTableHead{padding:0 12px;color:#64748b;font-size:12px;font-weight:850}.memberTableRow{width:100%;padding:11px 12px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;color:#0f172a;font:inherit;text-align:left;cursor:pointer}.memberTableRow:hover,.memberTableRow.active{border-color:#93c5fd;background:#f8fbff}.memberTableRow.active{box-shadow:inset 3px 0 #0f766e}.memberTableRow strong,.memberTableRow small{display:block;overflow-wrap:anywhere}.memberTableRow strong{font-weight:900}.memberTableRow small{margin-top:3px;color:#64748b;font-size:12px;font-weight:750}.memberTableRow>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.memberDetailPanel{position:sticky;top:0;display:grid;gap:12px;padding:14px;border:1px solid #dbe3ef;border-radius:8px;background:#fff}.emptyDetail{min-height:220px;place-items:center;align-content:center;color:#64748b;text-align:center}.emptyDetail strong,.emptyDetail span{display:block}.memberControls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.memberToggleGroup{display:flex;align-items:end;gap:12px;min-height:70px}.quotaGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.quotaGrid div{display:grid;gap:5px;padding:12px;border:1px solid #e2e8f0;border-radius:8px;background:#fff}.quotaGrid strong{color:#0f172a;font-size:18px}.quotaGrid span{color:#64748b;font-size:12px;font-weight:800}.generatedCodeList{display:grid;gap:8px}.generatedCodePanel{display:grid;gap:10px;padding:12px;border:1px solid #dbeafe;border-radius:8px;background:#f8fbff}.generatedCodePanel strong,.generatedCodePanel span{display:block}.generatedCodePanel strong{color:#0f172a;font-size:15px}.generatedCodePanel span{margin-top:3px;color:#64748b;font-size:12px;font-weight:750}.generatedCode{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;padding:10px;border:1px solid #cbd5e1;border-radius:8px;background:#fff}.generatedCode code{color:#0f172a;font-weight:900;overflow-wrap:anywhere}.countPill{padding:7px 10px;border-radius:999px;background:#e0f2fe;color:#075985;font-size:12px;font-weight:800}.countPill.muted{background:#f1f5f9;color:#64748b}.userCardGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.userCard{display:grid;gap:10px;padding:12px;border:1px solid #e2e8f0;border-radius:8px;background:#fff}.userCard strong,.userCard span{display:block}.userCard strong{overflow-wrap:anywhere}.userCard span{margin-top:3px;color:#0f766e;font-size:13px;font-weight:800}.userMetaGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.userMetaGrid small{color:#64748b;overflow-wrap:anywhere}.adminTable{display:grid;gap:8px}.adminTableHead,.adminTableRow{display:grid;grid-template-columns:1.1fr .6fr .5fr .6fr .8fr 44px;gap:10px;align-items:center}.adminTableHead{padding:0 10px;color:#64748b;font-size:12px;font-weight:800}.adminTableRow{padding:10px;border:1px solid #e2e8f0;border-radius:8px;background:#fff}.adminTableRow strong{overflow-wrap:anywhere}.adminTableNote{grid-column:1 / -1;color:#64748b}.licenseDetailsOverlay{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:28px;background:#0f172a80;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.licenseDetailsPanel{width:min(980px,calc(100vw - 56px));max-height:min(820px,calc(100vh - 56px));overflow:auto;display:grid;gap:14px;padding:18px;border:1px solid rgba(15,23,42,.14);border-radius:8px;background:#fffffffa;box-shadow:0 28px 90px #0f172a57}.licenseDetailsTable{overflow-x:auto}.licenseDetailsTable .adminTableHead,.licenseDetailsTable .adminTableRow{min-width:760px}.emptyState{padding:32px;border:1px dashed #cbd5e1;border-radius:8px;color:var(--muted);background:#ffffff9e;text-align:center}.readerDashboard{display:grid;gap:16px}.readerPublishPanel,.readerLibraryPanel,.readerViewer{display:grid;gap:16px;padding:18px;border:1px solid rgba(15,23,42,.1);border-radius:8px;background:#ffffffeb;box-shadow:0 18px 48px #0f172a14}.readerPublishPanel{grid-template-columns:minmax(260px,.78fr) minmax(420px,1.22fr);align-items:start}.readerPublishPanel.embedded{box-shadow:none;background:#f8fafc}.readerPublishIntro h1,.readerPublishIntro h2,.readerViewerHeader h2{margin:0;color:#0f172a}.readerPublishIntro p{margin:8px 0 0;color:#64748b;line-height:1.6}.readerPublishForm{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.readerPublishForm .field:last-of-type,.readerPublishForm .primaryButton{grid-column:1 / -1}.readerToolbar{display:grid;grid-template-columns:1fr minmax(220px,320px) auto;gap:10px;align-items:center}.readerTabs{display:flex;gap:8px;flex-wrap:wrap}.readerTabs button,.readerWorkActions span{min-height:34px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 11px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#334155;cursor:pointer;font-weight:800}.readerTabs button.active,.readerTabs button:hover,.readerWorkActions span.active{border-color:#0f766e;background:#ecfdf5;color:#0f766e}.readerWorkActions span.disabled{border-color:#e2e8f0;background:#f8fafc;color:#94a3b8}.readerSearch{min-height:38px;display:flex;align-items:center;gap:8px;padding:0 12px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#64748b}.readerSearch input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#0f172a;font-weight:750}.readerWorkGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px}.readerWorkCard{display:grid;grid-template-columns:96px 1fr;gap:12px;min-height:148px;padding:12px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;color:#0f172a;text-align:left;cursor:pointer}.readerWorkCard:hover,.readerWorkCard.active{border-color:#93c5fd;background:#f8fbff}.readerCover{width:96px;aspect-ratio:3 / 4;display:grid;place-items:center;overflow:hidden;border-radius:8px;background:#101820;color:#fff;font-size:26px;font-weight:900}.readerCover img{width:100%;height:100%;object-fit:cover}.readerWorkMeta{display:grid;gap:8px;min-width:0}.readerWorkMeta strong{font-size:17px;overflow-wrap:anywhere}.readerAuthor{color:#0f766e;font-size:12px;font-weight:900;overflow-wrap:anywhere}.readerWorkMeta p{margin:0;color:#64748b;font-size:13px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.readerWorkStats,.readerWorkActions,.readerReviewActions{display:flex;flex-wrap:wrap;gap:7px;align-items:center}.readerWorkStats span{padding:4px 8px;border-radius:999px;background:#f1f5f9;color:#475569;font-size:12px;font-weight:800}.readerWorkActions span{min-height:30px;padding:0 9px;font-size:12px}.readerReviewActions span{min-height:30px;display:inline-flex;align-items:center;padding:0 10px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#0f172a;font-size:12px;font-weight:850}.readerProgressLine{height:6px;overflow:hidden;border-radius:999px;background:#e2e8f0}.readerProgressLine span{display:block;height:100%;border-radius:inherit;background:#0f766e}.readerViewerHeader{display:flex;justify-content:space-between;gap:12px;align-items:start}.readerViewerHeader span{display:block;margin-top:6px;color:#64748b;font-weight:800}.readerStage{position:relative;min-height:min(72vh,760px);display:grid;grid-template-columns:94px minmax(0,1fr) 94px;gap:10px;align-items:stretch;border-radius:8px;background:#05070b;padding:10px}.readerImageFrame{display:grid;place-items:center;min-height:620px;overflow:hidden}.readerImageFrame img{max-width:100%;max-height:min(72vh,760px);object-fit:contain;border-radius:4px}.readerMissing{width:100%;height:100%;min-height:420px;display:grid;place-items:center;color:#94a3b8;border:1px dashed rgba(148,163,184,.35);border-radius:8px}.readerTurn{border:0;border-radius:8px;background:#f8fafc1a;color:#f8fafc;cursor:pointer;font-weight:900}.readerTurn:disabled{opacity:.35;cursor:not-allowed}.readerBottomPanel{display:grid;gap:10px}.readerPageStrip{display:flex;gap:6px;overflow-x:auto;padding-bottom:2px}.readerPageStrip button{flex:0 0 auto;min-width:54px;min-height:34px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#334155;cursor:pointer;font-weight:850}.readerPageStrip button.active{border-color:#0f766e;background:#0f766e;color:#fff}.readerChapterList{display:flex;gap:8px;flex-wrap:wrap}.readerChapterList span{padding:7px 10px;border-radius:8px;background:#f8fafc;color:#475569;font-size:12px;font-weight:800}.readerGrantForm{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:8px;align-items:center}.readerLocalNote{color:#64748b;font-size:13px;font-weight:750}@media(max-width:900px){body{min-width:0}.appShell,.mainGrid,.settingsGrid,.sectionGrid.two,.storyGrid,.coverDesignerGrid,.memberToolbar,.memberManagementLayout,.licenseGeneratorLayout,.licenseResultBar,.readerPublishPanel,.readerPublishForm,.readerToolbar,.readerStage,.readerGrantForm,.formGrid,.formGrid.compact{grid-template-columns:1fr}.readerImageFrame{min-height:420px}.memberTable{overflow-x:auto}.memberTableHead,.memberTableRow{min-width:720px}.memberDetailPanel{position:static}.sidebar{position:relative;height:auto}.appShell{display:block}.projectPanel{position:static}.heroBand,.directorHero{display:block}}
