@font-face{font-family:Playfair Display;font-style:italic;font-weight:400;font-display:swap;src:url(../media/35161b7740c25d33-s.05wv8sp_ts~44.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Playfair Display;font-style:italic;font-weight:400;font-display:swap;src:url(../media/391e53907fa6d8ec-s.09se41kx.zlna.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display;font-style:italic;font-weight:400;font-display:swap;src:url(../media/ae8872c8a32e309c-s.05txd3dlozf45.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display;font-style:italic;font-weight:400;font-display:swap;src:url(../media/70e3db2de7f94926-s.p.0~0iy9faq3424.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display;font-style:italic;font-weight:700;font-display:swap;src:url(../media/35161b7740c25d33-s.05wv8sp_ts~44.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Playfair Display;font-style:italic;font-weight:700;font-display:swap;src:url(../media/391e53907fa6d8ec-s.09se41kx.zlna.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display;font-style:italic;font-weight:700;font-display:swap;src:url(../media/ae8872c8a32e309c-s.05txd3dlozf45.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display;font-style:italic;font-weight:700;font-display:swap;src:url(../media/70e3db2de7f94926-s.p.0~0iy9faq3424.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400;font-display:swap;src:url(../media/65c558afe41e89d6-s.113htgw8u-emy.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400;font-display:swap;src:url(../media/14e23f9b59180572-s.08.c8psu~gif9.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b49b0d9b851e4899-s.0yfy_qj1.2qn0.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2a65768255d6b625-s.p.14by5b4al-y~f.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display;font-style:normal;font-weight:700;font-display:swap;src:url(../media/65c558afe41e89d6-s.113htgw8u-emy.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Playfair Display;font-style:normal;font-weight:700;font-display:swap;src:url(../media/14e23f9b59180572-s.08.c8psu~gif9.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display;font-style:normal;font-weight:700;font-display:swap;src:url(../media/b49b0d9b851e4899-s.0yfy_qj1.2qn0.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display;font-style:normal;font-weight:700;font-display:swap;src:url(../media/2a65768255d6b625-s.p.14by5b4al-y~f.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display Fallback;src:local(Times New Roman);ascent-override:97.25%;descent-override:22.56%;line-gap-override:0.0%;size-adjust:111.26%}.playfair_display_3a9dd5d0-module__7goibW__className{font-family:Playfair Display,Playfair Display Fallback}.playfair_display_3a9dd5d0-module__7goibW__variable{--font-playfair:"Playfair Display", "Playfair Display Fallback"}
@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.0bjc5tiuqdqro.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.0m6w47a4e5dy9.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.11u06r12fd6v_.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.0wxq9webf.ew4.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.067x_6k0k23tk.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.16ipb6fqu393i.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.0q-301v4kxxnr.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_c15e96cb-module__0bjUvq__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_c15e96cb-module__0bjUvq__variable{--font-inter:"Inter", "Inter Fallback"}
:root{--bg:#070503;--bg-mesh:#0d0a06;--glass-bg:#120d08bf;--glass-border:#ffffff12;--glass-border-strong:#ffffff21;--surface-2:#ffffff0d;--surface-hover:#ffffff14;--text:#f0e8d4;--text-2:#bfb19a;--muted:#726050;--accent:#f59e0b;--accent-2:#fb923c;--accent-strong:#d97706;--accent-glow:#f59e0b2e;--accent-glow-md:#f59e0b52;--ok:#34d399;--error:#f87171;--ring:#f59e0b73;--font-heading:var(--font-playfair,"Georgia", serif);--font-body:var(--font-inter,system-ui, sans-serif);--t-fast:.14s ease;--t-base:.22s ease;--header-h:52px}*{box-sizing:border-box}html,body{min-height:100%;font-family:var(--font-body);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;padding-top:var(--header-h);background-image:radial-gradient(130vw 80vh at 15% -5%,#f59e0b17 0%,#0000 55%),radial-gradient(80vw 70vh at 90% 95%,#fb923c0f 0%,#0000 55%),radial-gradient(60vw 50vh at 5% 85%,#64280a1a 0%,#0000 60%);margin:0}h1,h2,h3,h4{font-family:var(--font-heading)}button,input,textarea,select{font:inherit}.app{height:calc(100vh - var(--header-h));grid-template-columns:260px 1fr 330px;gap:16px;padding:16px;display:grid}.panel{background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(16px);border-radius:20px;box-shadow:0 2px 4px #0006,0 16px 48px #0009,inset 0 1px #ffffff0a}.sidebar,.ai{padding:18px;overflow-y:auto}.sidebar{flex-direction:column;display:flex}.brand{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-size:.72rem;font-weight:600;font-family:var(--font-body);margin:0 0 2px}.book-title{color:var(--text);margin:4px 0 18px;font-size:1.2rem;line-height:1.3}.chapters{flex-direction:column;flex:1;gap:3px;margin-bottom:12px;display:flex;overflow-y:auto}.chapter-btn{text-align:left;width:100%;color:var(--text-2);cursor:pointer;transition:background var(--t-fast), border-color var(--t-fast), color var(--t-fast);background:0 0;border:1px solid #0000;border-radius:10px;padding:9px 12px;font-size:.9rem}.chapter-btn:hover{background:var(--surface-2);color:var(--text)}.chapter-btn.active{color:var(--text);background:#f59e0b17;border-color:#f59e0b59}.button-row{flex-wrap:wrap;gap:6px;display:flex}.sidebar-word-count{border-top:1px solid var(--glass-border);background:#ffffff06;border-radius:0 0 18px 18px;flex-direction:column;gap:5px;margin:auto -18px -18px;padding:12px 18px 14px;display:flex}.sidebar-word-count-row{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.sidebar-word-label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted,#666);font-size:.72rem;font-family:var(--font-body);white-space:nowrap}.sidebar-word-value{color:var(--text-2);font-variant-numeric:tabular-nums;font-size:.8rem;font-weight:600}.sidebar-word-value.word-count-over{color:#ef4444}.sidebar-word-track{background:#ffffff12;border-radius:2px;height:3px;margin-top:2px;overflow:hidden}.sidebar-word-fill{background:var(--ok,#4ade80);border-radius:2px;height:100%;transition:width .4s}.sidebar-word-fill.warning{background:#f59e0b}.sidebar-word-fill.over{background:#ef4444}.btn{border:1px solid var(--glass-border);cursor:pointer;background:var(--surface-2);color:var(--text-2);font-size:.88rem;font-weight:500;font-family:var(--font-body);white-space:nowrap;transition:background var(--t-fast), border-color var(--t-fast), color var(--t-fast), box-shadow var(--t-fast);border-radius:10px;align-items:center;gap:6px;padding:9px 14px;text-decoration:none;display:inline-flex}.btn:hover{background:var(--surface-hover);border-color:var(--glass-border-strong);color:var(--text)}.btn.primary{background:linear-gradient(135deg, var(--accent), var(--accent-2));color:#1a0d00;box-shadow:0 4px 16px var(--accent-glow);border-color:#0000;font-weight:600}.btn.primary:hover{box-shadow:0 6px 28px var(--accent-glow-md);background:linear-gradient(135deg, var(--accent-strong), var(--accent));color:#1a0d00;border-color:#0000}.btn:disabled{opacity:.35;cursor:not-allowed}.editor-panel{flex-direction:column;display:flex;overflow:hidden}.editor-topbar{border-bottom:1px solid var(--glass-border);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:13px 20px;display:flex}.editor-topbar-title{font-family:var(--font-heading);color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:1rem;overflow:hidden}.export-menu-wrapper{position:relative}.export-menu{background:var(--panel-bg,#1c1007);border:1px solid var(--glass-border);z-index:200;border-radius:10px;min-width:200px;position:absolute;top:calc(100% + 6px);right:0;overflow:hidden;box-shadow:0 8px 32px #00000073}.export-menu-item{text-align:left;width:100%;color:var(--text-2);cursor:pointer;transition:background var(--t-fast), color var(--t-fast);background:0 0;border:none;padding:10px 14px;font-size:.88rem;display:block}.export-menu-item:hover:not(:disabled){color:var(--text);background:#f59e0b1f}.export-menu-item:disabled{opacity:.5;cursor:default}.export-menu-item+.export-menu-item{border-top:1px solid var(--glass-border)}.editor-canvas{transition:background var(--t-base);flex:1;padding:36px 52px;overflow-y:auto}.editor-canvas .ProseMirror{max-width:680px;min-height:80vh;font-family:var(--font-heading);color:var(--text);caret-color:var(--accent);outline:none;margin:0 auto;padding:48px 0 80px;font-size:1.1rem;line-height:1.95}.editor-canvas .ProseMirror p{margin:0 0 1.4rem}.canvas-light{background:#fff}.canvas-light .ProseMirror{color:#1a1008;caret-color:#d97706}.canvas-sepia{background:#f5e6c0}.canvas-sepia .ProseMirror{color:#2d1a06;caret-color:#a0641a}.canvas-theme-switcher{border:1px solid var(--glass-border);background:#ffffff0a;border-radius:20px;flex-shrink:0;align-items:center;gap:7px;padding:5px 10px;display:flex}.canvas-theme-switcher span{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:.72rem;font-weight:600;font-family:var(--font-body);margin-right:2px}.theme-dot{cursor:pointer;width:15px;height:15px;transition:transform var(--t-fast), box-shadow var(--t-fast), border-color var(--t-fast);border:2px solid #0000;border-radius:50%;flex-shrink:0;padding:0;position:relative}.theme-dot:hover{transform:scale(1.2)}.theme-dot[data-theme=dark]{background:#1c1208;border-color:#fff3}.theme-dot[data-theme=light]{background:#fff;border-color:#0003}.theme-dot[data-theme=sepia]{background:#f5e6c0;border-color:#00000026}.theme-dot.active{box-shadow:0 0 0 2px #f59e0b59;border-color:var(--accent)!important}.editor-toolbar{border-bottom:1px solid var(--glass-border);background:#ffffff04;flex-wrap:wrap;flex-shrink:0;align-items:center;gap:2px;padding:6px 16px;display:flex}.toolbar-btn{width:28px;height:26px;color:var(--text-2);cursor:pointer;font-size:.82rem;font-weight:700;font-family:var(--font-body);transition:background var(--t-fast), color var(--t-fast);background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.toolbar-btn:hover{background:var(--surface-2);color:var(--text)}.toolbar-btn.active{color:var(--accent);background:#f59e0b24}.toolbar-btn-h{letter-spacing:.02em;width:auto;padding:0 7px;font-size:.78rem}.toolbar-sep{background:var(--glass-border);flex-shrink:0;width:1px;height:18px;margin:0 5px}.canvas-light .editor-toolbar,.canvas-sepia .editor-toolbar{background:#00000008;border-bottom-color:#0000001a}.canvas-light .toolbar-btn{color:#4a3820}.canvas-light .toolbar-btn:hover{color:#1a1008;background:#00000012}.canvas-light .toolbar-btn.active{color:#a05a10;background:#b464141f}.canvas-light .toolbar-sep{background:#0000001f}.canvas-sepia .toolbar-btn{color:#5a3820}.canvas-sepia .toolbar-btn:hover{color:#2d1a06;background:#00000012}.canvas-sepia .toolbar-btn.active{color:#8a4e10;background:#a0641426}.canvas-sepia .toolbar-sep{background:#0000001a}.panel-tabs{border-bottom:1px solid var(--glass-border);flex-shrink:0;gap:2px;padding:10px 12px;display:flex}.panel-tab{color:var(--text-2);font-size:.78rem;font-weight:600;font-family:var(--font-body);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:color var(--t-fast), border-color var(--t-fast);background:0 0;border:none;border-bottom:2px solid #0000;border-radius:6px 6px 0 0;flex:1;padding:7px 4px}.panel-tab:hover{color:var(--text)}.panel-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.tab-badge{background:var(--accent);color:#1a1208;vertical-align:middle;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;margin-left:4px;font-size:.65rem;font-weight:700;display:inline-flex}.characters-list{flex-direction:column;flex:1;gap:0;padding:8px 0 0;display:flex;overflow-y:auto}.char-item{text-align:left;flex-direction:column;align-items:flex-start;gap:2px;padding:9px 14px;display:flex}.char-name{color:var(--text);font-size:.88rem;font-weight:600}.char-role{color:var(--muted);font-size:.74rem;font-style:italic}.char-edit{border-top:1px solid var(--glass-border);background:#ffffff05;flex-direction:column;gap:8px;padding:10px 14px 14px;display:flex}.empty-chars{color:var(--muted);padding:16px 14px;font-size:.82rem}.notes-panel{flex:1;padding:12px 14px;overflow-y:auto}.note-card{background:#f59e0b0f;border:1px solid #f59e0b2e;border-radius:8px;margin-bottom:10px;padding:10px 12px;position:relative}.note-excerpt-btn{text-align:left;width:100%;color:var(--text-2);cursor:pointer;transition:color var(--t-fast);white-space:nowrap;text-overflow:ellipsis;background:0 0;border:none;padding:0 0 6px;font-size:.82rem;font-style:italic;display:block;overflow:hidden}.note-excerpt-btn:hover{color:var(--accent)}.note-text{color:var(--text);margin:0 0 8px;font-size:.85rem;line-height:1.5}.note-remove-btn{color:var(--muted);cursor:pointer;transition:color var(--t-fast);background:0 0;border:none;padding:0;font-size:.74rem}.note-remove-btn:hover{color:#f87171}.muted-hint{color:var(--muted);margin-top:6px;font-size:.78rem;line-height:1.5}.note-annotation{cursor:help;background:#f59e0b2e;border-bottom:2px solid #f59e0b99;border-radius:2px}.canvas-light .note-annotation{background:#b478001f;border-bottom-color:#b478008c}.canvas-sepia .note-annotation{background:#8c5a001f;border-bottom-color:#8c5a0080}.note-input-row{border-top:1px solid var(--glass-border);flex-shrink:0;align-items:center;gap:6px;width:100%;margin-top:2px;padding:6px 0 2px;display:flex}.note-input{border:1px solid var(--glass-border);height:26px;color:var(--text);font-size:.82rem;font-family:var(--font-body);transition:border-color var(--t-fast);background:#ffffff0d;border-radius:6px;outline:none;flex:1;padding:0 8px}.note-input:focus{border-color:#f59e0b80}.note-input::placeholder{color:var(--muted)}.label{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:.75rem;font-weight:600;font-family:var(--font-body);margin-bottom:6px;display:block}.input,.textarea,.select{border:1px solid var(--glass-border);width:100%;color:var(--text);transition:border-color var(--t-fast), box-shadow var(--t-fast);background:#ffffff0a;border-radius:10px;outline:none;padding:10px 12px}.input::placeholder,.textarea::placeholder{color:var(--muted)}.input:focus,.textarea:focus,.select:focus{border-color:#f59e0b8c;box-shadow:0 0 0 3px #f59e0b1a}.select option{color:var(--text);background:#1a1208}.textarea{resize:vertical;min-height:130px}.stack{flex-direction:column;gap:14px;display:flex}.progress-wrap{border:1px solid var(--glass-border);background:#ffffff08;border-radius:10px;padding:12px}.progress-track{background:#ffffff12;border-radius:999px;width:100%;height:5px;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--accent), var(--accent-2));height:100%;box-shadow:0 0 12px var(--accent-glow);transition:width .24s}.progress-caption{color:var(--muted);margin:8px 0 0;font-size:.84rem}.status{color:var(--muted);font-size:.88rem}.status.ok{color:var(--ok)}.usage-page{flex-direction:column;gap:16px;max-width:1140px;margin:0 auto;padding:28px 24px;display:flex}.usage-panel{padding:24px 28px}.usage-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.usage-title{margin:0;font-size:1.6rem}.usage-actions{flex-wrap:wrap;gap:8px;display:flex}.usage-controls{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.budget-row{gap:8px;display:flex}.usage-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px;display:grid}.usage-card{border:1px solid var(--glass-border);background:#ffffff08;border-radius:14px;flex-direction:column;gap:10px;padding:18px 20px;display:flex}.usage-card h2{letter-spacing:.09em;text-transform:uppercase;color:var(--muted);font-size:.72rem;font-weight:600;font-family:var(--font-body);margin:0 0 2px}.usage-stat{border-bottom:1px solid var(--glass-border);justify-content:space-between;align-items:baseline;gap:8px;padding:4px 0;display:flex}.usage-stat:last-child{border-bottom:none}.usage-stat-label{color:var(--text-2);font-size:.78rem;font-family:var(--font-body);white-space:nowrap}.usage-stat-value{color:var(--text);font-size:1.15rem;font-weight:700;font-family:var(--font-heading);text-align:right}.usage-stat--accent .usage-stat-value{color:var(--accent)}.usage-stat--ok .usage-stat-value{color:var(--ok)}.usage-stat--danger .usage-stat-value{color:var(--error)}.usage-table-wrap{max-width:100%;padding:16px 20px;overflow-x:auto}.usage-table-wrap h2{margin:0 0 14px}.usage-chart-wrap{border:1px solid var(--glass-border);background:#ffffff05;border-radius:14px;margin-bottom:16px;padding:20px 24px}.usage-chart-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;display:flex}.usage-chart-head h2{margin:0;font-size:1.1rem}.chart-mode-switch{gap:6px;display:flex}.usage-chart-legend{flex-wrap:wrap;gap:12px;margin-bottom:12px;display:flex}.legend-item{color:var(--text-2);align-items:center;gap:6px;font-size:.82rem;display:inline-flex}.legend-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.usage-chart-canvas{border:1px solid var(--glass-border);background:#ffffff05;border-radius:10px;width:100%;height:260px;padding:8px}.usage-chart-canvas svg{width:100%;height:100%}.usage-chart-axis{color:var(--muted);justify-content:space-between;margin-top:6px;font-size:.8rem;display:flex}.usage-table{border-collapse:collapse;table-layout:auto;width:100%}.usage-table th{border-bottom:1px solid var(--glass-border-strong);text-align:left;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);white-space:nowrap;padding:8px 12px;font-size:.72rem;font-weight:600}.usage-table td{border-bottom:1px solid var(--glass-border);color:var(--text-2);word-break:break-word;padding:10px 12px;font-size:.9rem}.usage-td-model{word-break:break-all;max-width:200px;font-size:.82rem}.usage-table tr:last-child td{border-bottom:none}.landing-page{flex-direction:column;gap:20px;max-width:1140px;margin:0 auto;padding:32px 24px;display:flex}.landing-hero,.landing-section{padding:52px 56px}.landing-hero{position:relative;overflow:hidden}.landing-hero:before{content:"";pointer-events:none;background:radial-gradient(75% 85% at 0 10%,#f59e0b1f 0%,#0000 65%),radial-gradient(50% 60% at 100% 90%,#fb923c12 0%,#0000 60%);position:absolute;inset:0}.landing-kicker{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;font-size:.75rem;font-weight:600;font-family:var(--font-body);background:#f59e0b14;border:1px solid #f59e0b59;border-radius:999px;align-items:center;gap:8px;margin:0 0 20px;padding:5px 16px;display:inline-flex}.landing-hero h1{background:linear-gradient(135deg, var(--text) 0%, #f0d090 50%, var(--accent-2) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;max-width:22ch;margin:0 0 18px;padding-bottom:.12em;font-size:clamp(2rem,4.5vw,3.4rem);line-height:1.18}.hero-brand-title{font-family:var(--font-heading);letter-spacing:.18em;background:linear-gradient(135deg,#c8903a 0%,#f5e08a 30%,#ffd35a 55%,#e8b84b 75%,#a0621a 100%);-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 28px #f59e0b59);text-shadow:none;-webkit-background-clip:text;background-clip:text;margin:0 0 22px;font-size:clamp(2.8rem,7vw,5.5rem);font-weight:700;line-height:1}.landing-hero p{color:var(--text-2);max-width:58ch;font-size:1.1rem;line-height:1.75;font-family:var(--font-body);margin:0 0 28px}.landing-actions{flex-wrap:wrap;gap:10px;display:flex}.hero-inner{align-items:center;gap:48px;display:flex}.hero-text{flex:1}.hero-icon{flex-shrink:0;justify-content:center;align-items:center;display:flex}.hero-icon img{filter:drop-shadow(0 0 40px #f59e0b59)}.kicker-icon{vertical-align:middle;margin-right:4px;display:inline-block}.landing-fireplace{border-radius:20px;justify-content:center;align-items:center;min-height:260px;display:flex;position:relative;overflow:hidden}.fireplace-bg{position:absolute;inset:0}.fireplace-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:linear-gradient(#0a08058c 0%,#0a0805bf 100%);position:absolute;inset:0}.fireplace-content{z-index:1;text-align:center;padding:52px 40px;position:relative}.fireplace-tagline{color:#f0d090;font-size:clamp(1.2rem,2.5vw,1.9rem);font-style:italic;font-family:var(--font-heading);text-shadow:0 2px 16px #0009;margin:0;line-height:1.5}.landing-section{padding:40px 48px}.landing-section h2{margin:0 0 28px;font-size:1.7rem}.landing-features{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.landing-features article{border:1px solid var(--glass-border);transition:border-color var(--t-base), box-shadow var(--t-base), transform var(--t-base);background:#ffffff08;border-radius:16px;padding:24px 20px}.landing-features article:hover{box-shadow:0 8px 32px #0006, 0 0 28px var(--accent-glow);border-color:#f59e0b47;transform:translateY(-3px)}.feature-icon{margin-bottom:12px;font-size:1.7rem;display:block}.landing-features h3{color:var(--text);margin:0 0 8px;font-size:1.05rem}.landing-features p{color:var(--text-2);font-size:.9rem;line-height:1.65;font-family:var(--font-body);margin:0}.pricing-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.pricing-card{border:1px solid var(--glass-border);transition:border-color var(--t-base);background:#ffffff08;border-radius:18px;padding:32px 28px}.pricing-card.featured{background:#f59e0b0d;border-color:#f59e0b73;position:relative;overflow:hidden;box-shadow:0 0 48px #f59e0b1a,0 12px 40px #00000059}.pricing-card.featured:before{content:"";background:linear-gradient(90deg, transparent, var(--accent), var(--accent-2), transparent);height:2px;position:absolute;top:0;left:0;right:0}.plan-name{letter-spacing:.1em;text-transform:uppercase;color:var(--accent);font-size:.75rem;font-weight:600;font-family:var(--font-body);margin:0 0 10px}.plan-price{color:var(--text);margin:0 0 20px;font-size:2rem;font-weight:700}.pricing-card ul{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.pricing-card li{color:var(--text-2);font-size:.92rem;font-family:var(--font-body);align-items:center;gap:10px;display:flex}.pricing-card li:before{content:"✓";color:var(--ok);flex-shrink:0;font-size:.82rem;font-weight:700}.auth-page{background-image:radial-gradient(80vw 60vh at 50% -5%,#f59e0b1a 0%,#0000 60%);place-items:center;min-height:100vh;padding:16px;display:grid}.auth-panel{width:min(480px,100%);padding:36px 40px}.auth-panel h1{margin:8px 0 6px;font-size:1.8rem}.auth-brand{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-size:.72rem;font-weight:600;font-family:var(--font-body);margin-bottom:4px;display:inline-block}.dashboard-page{flex-direction:column;gap:16px;max-width:1140px;margin:0 auto;padding:28px 24px;display:flex}.dashboard-hero{padding:36px 44px}.dashboard-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.dashboard-head h1{margin:4px 0 6px;font-size:2rem}.dashboard-head-actions{flex-direction:column;align-items:flex-end;gap:10px;display:flex}.create-book-form{align-items:center;gap:8px;display:flex}.create-book-form .input{width:auto;min-width:220px}.dashboard-list-panel{padding:28px 36px}.book-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.book-card{border:1px solid var(--glass-border);transition:border-color var(--t-base), box-shadow var(--t-base), transform var(--t-base);background:#ffffff08;border-radius:18px;flex-direction:column;display:flex;overflow:hidden}.book-card:hover{box-shadow:0 10px 36px #00000080, 0 0 28px var(--accent-glow);border-color:#f59e0b4d;transform:translateY(-4px)}.book-card-main{text-align:left;cursor:pointer;width:100%;color:inherit;background:0 0;border:none;flex:1;padding:22px 20px 16px}.book-card-main .plan-name{margin-bottom:8px;font-size:.72rem}.book-card-main h2{color:var(--text);margin:0 0 10px;font-size:1.15rem}.book-card-main p{color:var(--text-2);font-size:.88rem;font-family:var(--font-body);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 6px;display:-webkit-box;overflow:hidden}.book-card-actions{border-top:1px solid var(--glass-border);background:#ffffff05;gap:6px;padding:12px 16px;display:flex}.book-word-count{margin-top:8px}.book-word-count-row{color:var(--muted);justify-content:space-between;margin-bottom:4px;font-size:.72rem;display:flex}.book-word-track{background:#ffffff14;border-radius:2px;height:4px;overflow:hidden}.book-word-fill{background:var(--ok,#4ade80);border-radius:2px;height:100%;transition:width .3s}.book-word-fill.warning{background:#f59e0b}.book-word-fill.over{background:#ef4444}.word-count-over{color:#ef4444;font-weight:600}.book-limit-warning{color:#f59e0b;margin-top:6px;font-size:.8rem}.link-accent{color:var(--accent,#a78bfa);text-decoration:underline}.empty-state{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:56px 0;display:flex}.empty-state h2{color:var(--text-2);margin:0;font-size:1.5rem}.empty-state p{color:var(--muted);font-family:var(--font-body);margin:0}.app-footer{text-align:center;margin-top:8px;padding:20px 24px}.app-footer p{color:var(--muted,#555);font-size:.75rem;font-family:var(--font-body);letter-spacing:.03em;margin:0}.footer-link{color:var(--muted,#555);text-underline-offset:3px;text-decoration:underline;transition:color .15s}.footer-link:hover{color:var(--text-2)}.privacy-page{max-width:780px;margin:0 auto;padding:32px 24px}.privacy-content{padding:48px 52px}.privacy-content h1{margin:0 0 6px;font-size:2rem}.privacy-updated{color:var(--muted);font-size:.8rem;font-family:var(--font-body);margin:0 0 36px}.privacy-content h2{font-size:1.05rem;font-family:var(--font-body);color:var(--text);letter-spacing:.01em;margin:32px 0 10px;font-weight:700}.privacy-content p,.privacy-content li{color:var(--text-2);font-size:.9rem;line-height:1.8;font-family:var(--font-body)}.privacy-content ul{flex-direction:column;gap:6px;margin:8px 0 0;padding-left:20px;display:flex}.privacy-content a{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.privacy-content section{border-bottom:1px solid var(--glass-border);padding-bottom:24px}.privacy-content section:last-child{border-bottom:none;padding-bottom:0}@media (max-width:600px){.privacy-content{padding:28px 20px}}.game-panel{margin-top:0}.game-panel-header{text-align:center;margin-bottom:20px}.level-badge{background:var(--surface-2);border:1px solid var(--glass-border);border-radius:14px;margin-bottom:28px;padding:18px 22px}.level-badge-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.level-badge-left{align-items:baseline;gap:6px;display:flex}.level-badge-lv{font-size:.75rem;font-family:var(--font-body);color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.level-badge-number{font-size:2.4rem;font-family:var(--font-heading);font-weight:700;line-height:1}.level-badge-right{flex-direction:column;align-items:flex-end;gap:4px;display:flex}.level-badge-rank{font-size:1.1rem;font-family:var(--font-heading);letter-spacing:.02em;font-weight:600}.level-badge-xp{font-size:.8rem;font-family:var(--font-body);color:var(--muted)}.level-xp-track{background:#ffffff12;border-radius:999px;height:7px;overflow:hidden}.level-xp-fill{border-radius:999px;height:100%;transition:width .5s}.level-badge-compact{background:var(--surface-2);border:1px solid var(--glass-border);border-radius:999px;align-items:center;gap:8px;width:fit-content;margin-bottom:20px;padding:8px 16px;display:flex}.level-badge-num{font-size:.9rem;font-family:var(--font-heading);font-weight:700}.level-badge-title{font-size:.9rem;font-family:var(--font-body);font-weight:500}.missions-panel{flex-direction:column;gap:28px;display:flex}.missions-group{flex-direction:column;gap:12px;display:flex}.missions-group-title{font-size:.72rem;font-family:var(--font-body);text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin:0 0 4px;font-weight:700}.missions-list{flex-direction:column;gap:10px;display:flex}.mission-card{background:var(--surface-2);border:1px solid var(--glass-border);transition:border-color var(--t-fast);border-radius:12px;padding:14px 16px}.mission-card.completed{opacity:.7;border-color:#6ee7b74d}.mission-card-top{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px;display:flex}.mission-card-info{flex-direction:column;gap:3px;display:flex}.mission-card-title{font-size:.9rem;font-family:var(--font-body);color:var(--text);font-weight:600}.mission-card-desc{font-size:.8rem;font-family:var(--font-body);color:var(--text-2)}.mission-card-xp{font-size:.78rem;font-family:var(--font-body);color:var(--accent);background:var(--accent-glow);border:1px solid #f59e0b33;border-radius:999px;flex-shrink:0;padding:3px 9px;font-weight:700}.mission-progress-track{background:#ffffff12;border-radius:999px;height:5px;margin-bottom:6px;overflow:hidden}.mission-progress-fill{background:var(--accent);border-radius:999px;height:100%;transition:width .4s}.mission-card.completed .mission-progress-fill{background:#6ee7b7}.mission-progress-label{font-size:.74rem;font-family:var(--font-body);color:var(--muted)}.mission-done{color:#6ee7b7;font-weight:600}.char-bio-wordcount{font-size:.75rem;font-family:var(--font-body);color:var(--muted);text-align:right;transition:color var(--t-fast);margin:0}.char-bio-wordcount.qualified{color:#6ee7b7;font-weight:600}@media (max-width:600px){.level-badge-number{font-size:1.9rem}.level-badge-rank{font-size:.95rem}}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#f59e0b4d}@media (max-width:1100px){.app{grid-template-columns:1fr}.editor-canvas .ProseMirror{min-height:44vh}.usage-grid{grid-template-columns:repeat(2,1fr)}.usage-head{flex-direction:column;align-items:flex-start}.budget-row{flex-direction:column}.usage-chart-head{flex-direction:column;align-items:flex-start}.chart-mode-switch{flex-wrap:wrap}.landing-features,.pricing-grid{grid-template-columns:1fr}.hero-inner{flex-direction:column-reverse;gap:28px}.hero-icon img{width:120px!important;height:120px!important}.landing-hero,.landing-section{padding:36px 28px}.landing-hero h1{font-size:1.9rem}.dashboard-head{flex-direction:column}.dashboard-head-actions{align-items:flex-start}}@media (max-width:680px){.usage-grid{grid-template-columns:1fr}}.app-header{height:var(--header-h);z-index:300;-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--glass-border);background:#070503eb;justify-content:space-between;align-items:center;padding:0 20px;display:flex;position:fixed;top:0;left:0;right:0}.app-header-brand{font-family:var(--font-heading);color:var(--accent);letter-spacing:.01em;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:1.1rem;font-weight:700;display:flex}.app-header-brand-icon{flex-shrink:0;display:block}.app-header-nav{align-items:center;gap:4px;display:flex}.app-header-link{color:var(--text-2);font-size:.84rem;font-family:var(--font-body);transition:background var(--t-fast), color var(--t-fast);border-radius:8px;align-items:center;gap:6px;padding:5px 12px;text-decoration:none;display:flex}.app-header-link:hover{background:var(--surface-hover);color:var(--text)}.app-header-user{border:1px solid var(--glass-border);background:var(--surface-2);color:var(--text-2);font-size:.84rem;font-family:var(--font-body);transition:background var(--t-fast), border-color var(--t-fast), color var(--t-fast);border-radius:999px;align-items:center;gap:8px;margin-left:6px;padding:4px 12px 4px 4px;text-decoration:none;display:flex}.app-header-user:hover{color:var(--text);background:var(--accent-glow);border-color:#f59e0b66}.app-header-avatar{background:linear-gradient(135deg, var(--accent), var(--accent-2));border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex;overflow:hidden}.app-header-avatar img{object-fit:cover;width:100%;height:100%}.app-header-initials{color:#fff;font-size:.65rem;font-weight:700;font-family:var(--font-body);line-height:1}.app-header-username{text-overflow:ellipsis;white-space:nowrap;max-width:140px;overflow:hidden}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.profile-page{flex-direction:column;gap:28px;max-width:540px;margin:40px auto;padding:0 20px 80px;display:flex}.profile-heading{font-family:var(--font-heading);color:var(--text);margin:0;font-size:1.8rem;font-weight:700}.profile-avatar-section{flex-direction:column;align-items:center;gap:12px;display:flex}.profile-avatar-wrap{width:88px;height:88px;position:relative}.profile-avatar-img{object-fit:cover;border:2px solid var(--glass-border-strong);border-radius:50%;width:88px;height:88px}.profile-avatar-initials{background:linear-gradient(135deg, var(--accent), var(--accent-2));color:#fff;width:88px;height:88px;font-size:1.6rem;font-weight:700;font-family:var(--font-body);border-radius:50%;justify-content:center;align-items:center;display:flex}.profile-avatar-btn{border:2px solid var(--bg);background:var(--accent);color:#fff;cursor:pointer;width:28px;height:28px;transition:background var(--t-fast);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;bottom:0;right:0}.profile-avatar-btn:hover{background:var(--accent-strong)}.profile-email{color:var(--muted);margin:0;font-size:.88rem}.profile-form{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:14px;flex-direction:column;gap:16px;padding:24px;display:flex}.profile-row{flex-direction:column;gap:6px;display:flex}.profile-label{color:var(--text-2);font-size:.82rem;font-family:var(--font-body)}.profile-msg{border-radius:8px;margin:0;padding:8px 12px;font-size:.84rem}.profile-msg.ok{color:var(--ok);background:#34d3991f}.profile-msg.err{color:var(--error);background:#f871711f}.profile-actions{flex-wrap:wrap;gap:10px;display:flex}.profile-danger{background:#f871710a;border:1px solid #f8717140;border-radius:14px;flex-direction:column;gap:14px;padding:24px;display:flex}.profile-danger-title{font-family:var(--font-heading);color:var(--error);margin:0;font-size:1rem}.profile-danger-desc{color:var(--text-2);margin:0;font-size:.86rem;line-height:1.6}.profile-delete-confirm{flex-direction:column;gap:12px;display:flex}.btn-danger{color:var(--error);background:#f8717114;border-color:#f8717159}.btn-premium{border-color:color-mix(in srgb, var(--accent) 50%, transparent);color:var(--accent);background:color-mix(in srgb, var(--accent) 7%, transparent)}.btn-premium:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 16%, transparent);border-color:var(--accent)}.upgrade-modal-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:2000;background:#000000a6;justify-content:center;align-items:center;padding:20px;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.upgrade-modal{background:var(--surface);border:1px solid var(--border);text-align:center;border-radius:18px;width:100%;max-width:460px;padding:36px 32px 28px;animation:.2s slideUp;position:relative;box-shadow:0 24px 60px #00000080}@keyframes slideUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.upgrade-modal-close{color:var(--text-2);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px 8px;font-size:1rem;line-height:1;position:absolute;top:12px;right:14px}.upgrade-modal-close:hover{background:var(--border);color:var(--text)}.upgrade-modal-icon{color:var(--accent);margin-bottom:14px}.upgrade-modal-title{color:var(--text);margin:0 0 8px;font-size:1.35rem}.upgrade-modal-desc{color:var(--text-2);font-family:var(--font-body);margin:0 0 24px;font-size:.95rem;line-height:1.6}.upgrade-modal-plans{text-align:left;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:24px;display:grid}.upgrade-plan-card{background:var(--bg);border:1px solid var(--border);border-radius:12px;padding:14px 16px}.upgrade-plan-card.featured{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, var(--bg))}.upgrade-plan-name{align-items:center;gap:5px;font-weight:700;display:flex;color:var(--text)!important;margin-bottom:2px!important;font-size:.9rem!important}.upgrade-price{color:var(--accent)!important;margin-bottom:8px!important;font-size:1.15rem!important;font-weight:700!important}.upgrade-feature{color:var(--text-2)!important;margin-bottom:3px!important;font-size:.8rem!important}.upgrade-yes{color:#4ade80!important}.upgrade-missing{opacity:.5;text-decoration:line-through;color:var(--text-2)!important}.btn-danger:hover:not(:disabled){color:#fff;background:#f871712e;border-color:#f871718c}.profile-credits-section{flex-direction:column;gap:16px;display:flex}.profile-section-title{font-family:var(--font-heading);color:var(--text);margin:0;font-size:1.1rem;font-weight:700}.credits-card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:14px;flex-direction:column;gap:10px;padding:20px;display:flex}.credits-card-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.credits-plan-badge{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);background:var(--accent-glow);border:1px solid #f59e0b4d;border-radius:999px;padding:3px 10px;font-size:.72rem;font-weight:700}.credits-counter{color:var(--text);font-size:.9rem;font-weight:600;font-family:var(--font-heading)}.credits-bar-track{background:#ffffff12;border-radius:999px;width:100%;height:8px;overflow:hidden}.credits-bar-fill{background:linear-gradient(90deg, var(--accent), var(--accent-2));border-radius:999px;height:100%;transition:width .4s}.credits-bar-fill.warn{background:linear-gradient(90deg,#f59e0b,#ef4444)}.credits-bar-fill.danger{background:var(--error)}.credits-used-label{color:var(--muted);margin:0;font-size:.78rem}.plan-cards{grid-template-columns:1fr 1fr;gap:12px;display:grid}.plan-card{background:var(--glass-bg);border:1px solid var(--glass-border);transition:border-color var(--t-fast);border-radius:14px;flex-direction:column;gap:10px;padding:20px;display:flex}.plan-card.active{background:var(--accent-glow);border-color:#f59e0b73}.plan-card-header{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.plan-card-name{color:var(--text);font-size:.92rem;font-weight:700}.plan-card-price{color:var(--accent);font-size:1rem;font-weight:700;font-family:var(--font-heading)}.plan-card-desc{color:var(--text-2);margin:0;font-size:.82rem}.plan-card-current{color:var(--ok);align-items:center;gap:5px;font-size:.78rem;font-weight:600;display:inline-flex}.subscription-dates{color:var(--text-muted);flex-direction:column;gap:3px;margin-top:8px;font-size:.78rem;display:flex}.subscription-dates strong{color:var(--text);font-weight:600}@media (max-width:480px){.plan-cards{grid-template-columns:1fr}}
