:root,[data-theme=light]{--color-bg:#f6f8fb;--color-surface:#fff;--color-surface-2:#f0f4f8;--color-border:#d8dee8;--color-text:#111827;--color-text-muted:#5b6472;--color-text-faint:#9ca3af;--color-text-inverse:#fff;--color-primary:#0f766e;--color-primary-dark:#115e59;--color-primary-highlight:#ccefed;--color-primary-alpha:#0f766e40;--color-cta:#f97316;--color-cta-dark:#ea580c;--color-cta-glow:#f9731661;--color-cta-glow-hover:#f973168c;--color-accent:#b45309;--color-danger:#b91c1c;--color-success:#166534;--status-completed-bg:#dcfce7;--status-completed-text:#166534;--status-generating-bg:#dbeafe;--status-generating-text:#1d4ed8;--status-failed-bg:#fee2e2;--status-failed-text:#991b1b;--badge-grade-bg:#e0f2f1;--badge-grade-text:#115e59;--badge-topic-bg:#fef3c7;--badge-topic-text:#92400e;--hero-bg:#fff;--hero-text:#111827;--hero-text-muted:#5b6472;--hero-eyebrow:#b45309;--hero-proof-bg:#0f766e14;--hero-proof-text:#115e59;--footer-bg:#101827;--footer-text:#e5e7eb;--footer-muted:#d1d5db;--header-bg:#fffffff0;--header-border:var(--color-border);--header-text:#111827;--shadow-sm:0 1px 3px #1118270f;--shadow-md:0 4px 12px #11182714;--shadow-lg:0 12px 35px #1118271a;--shadow-cta:0 4px 18px var(--color-cta-glow);--shadow-cta-hover:0 6px 28px var(--color-cta-glow-hover);--radius:8px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-full:9999px;--transition:.16s ease;--content-wide:1220px;--content-default:960px;--content-narrow:640px}[data-theme=dark]{--color-bg:#0f1117;--color-surface:#161b26;--color-surface-2:#1e2534;--color-border:#2d3748;--color-text:#e2e8f0;--color-text-muted:#94a3b8;--color-text-faint:#64748b;--color-text-inverse:#0f1117;--color-primary:#4db6ac;--color-primary-dark:#26a69a;--color-primary-highlight:#1a3a38;--color-primary-alpha:#4db6ac40;--color-cta:#fb923c;--color-cta-dark:#f97316;--color-cta-glow:#fb923c59;--color-cta-glow-hover:#fb923c80;--color-accent:#fbbf24;--color-danger:#f87171;--color-success:#4ade80;--status-completed-bg:#14532d;--status-completed-text:#86efac;--status-generating-bg:#1e3a5f;--status-generating-text:#93c5fd;--status-failed-bg:#450a0a;--status-failed-text:#fca5a5;--badge-grade-bg:#1a3a38;--badge-grade-text:#4db6ac;--badge-topic-bg:#3d2e00;--badge-topic-text:#fbbf24;--hero-bg:#0f1117;--hero-text:#e2e8f0;--hero-text-muted:#94a3b8;--hero-eyebrow:#fbbf24;--hero-proof-bg:#4db6ac1a;--hero-proof-text:#4db6ac;--footer-bg:#080c12;--footer-text:#cbd5e1;--footer-muted:#94a3b8;--header-bg:#0f1117f2;--header-border:#2d3748;--header-text:#e2e8f0;--shadow-sm:0 1px 3px #0000004d;--shadow-md:0 4px 12px #0006;--shadow-lg:0 12px 35px #00000080}@media (prefers-color-scheme:dark){:root:not([data-theme]){--color-bg:#0f1117;--color-surface:#161b26;--color-surface-2:#1e2534;--color-border:#2d3748;--color-text:#e2e8f0;--color-text-muted:#94a3b8;--color-text-faint:#64748b;--color-text-inverse:#0f1117;--color-primary:#4db6ac;--color-primary-dark:#26a69a;--color-primary-highlight:#1a3a38;--color-primary-alpha:#4db6ac40;--color-cta:#fb923c;--color-cta-dark:#f97316;--color-cta-glow:#fb923c59;--color-cta-glow-hover:#fb923c80;--color-accent:#fbbf24;--color-danger:#f87171;--color-success:#4ade80;--status-completed-bg:#14532d;--status-completed-text:#86efac;--status-generating-bg:#1e3a5f;--status-generating-text:#93c5fd;--status-failed-bg:#450a0a;--status-failed-text:#fca5a5;--badge-grade-bg:#1a3a38;--badge-grade-text:#4db6ac;--badge-topic-bg:#3d2e00;--badge-topic-text:#fbbf24;--hero-bg:#0f1117;--hero-text:#e2e8f0;--hero-text-muted:#94a3b8;--hero-eyebrow:#fbbf24;--hero-proof-bg:#4db6ac1a;--hero-proof-text:#4db6ac;--footer-bg:#080c12;--footer-text:#cbd5e1;--footer-muted:#94a3b8;--header-bg:#0f1117f2;--header-border:#2d3748;--header-text:#e2e8f0;--shadow-sm:0 1px 3px #0000004d;--shadow-md:0 4px 12px #0006;--shadow-lg:0 12px 35px #00000080}}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--color-bg);color:var(--color-text);transition:background var(--transition), color var(--transition);margin:0;font-family:Inter,Arial,sans-serif;line-height:1.55}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none!important}a:hover,a:focus,a:visited,a:active{text-decoration:none!important}h1,h2,h3,h4,h5,h6{letter-spacing:0;color:var(--color-text);margin:0;font-family:Outfit,Inter,Arial,sans-serif;line-height:1.05}p{margin:0}button,input,select,textarea{font:inherit}.site-header{z-index:50;background:var(--header-bg);border-bottom:1px solid var(--header-border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transition:background var(--transition), border-color var(--transition);justify-content:space-between;align-items:center;gap:18px;padding:12px clamp(18px,4vw,58px);display:flex;position:sticky;top:0}.theme-toggle-mobile{display:none}.site-logo{color:var(--color-text);white-space:nowrap;font-size:1.2rem;font-weight:800;text-decoration:none!important}.site-logo span{color:var(--color-accent)}.site-footer .site-logo{color:var(--footer-text)}.site-nav{color:var(--color-text);align-items:center;gap:14px;font-size:.92rem;font-weight:700;display:flex}.site-nav a{color:var(--color-text);transition:color var(--transition);padding:8px 4px;text-decoration:none!important}.site-nav a:hover{color:var(--color-primary)}.nav-cta{border-radius:var(--radius);background:var(--color-primary)!important;color:var(--color-text-inverse)!important;transition:background var(--transition)!important;padding:8px 14px!important;text-decoration:none!important}.nav-cta:hover{background:var(--color-primary-dark)!important;color:var(--color-text-inverse)!important}.theme-toggle{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);width:36px;height:36px;color:var(--color-text);cursor:pointer;transition:background var(--transition), border-color var(--transition), color var(--transition);flex-shrink:0;justify-content:center;align-items:center;margin-left:2px;padding:0;display:flex}.theme-toggle:hover{background:var(--color-surface-2);border-color:var(--color-primary);color:var(--color-primary)}.site-footer{background:var(--footer-bg);color:var(--footer-text);flex-wrap:wrap;justify-content:space-between;gap:32px;padding:34px clamp(18px,4vw,58px);display:flex}.site-footer p{max-width:420px;color:var(--footer-muted);margin-top:10px}.site-footer nav{flex-wrap:wrap;align-content:flex-start;gap:16px;display:flex}.site-footer nav a{color:var(--footer-text);transition:color var(--transition);text-decoration:none!important}.site-footer nav a:hover{color:var(--color-primary)}.site-menu-toggle{cursor:pointer;border-radius:var(--radius);width:38px;height:38px;color:var(--color-text);background:0 0;border:0;margin-left:auto;padding:8px;display:none}.site-menu-icon{background:var(--color-text);width:22px;height:2px;display:block;position:relative}.site-menu-icon:before,.site-menu-icon:after{content:"";background:var(--color-text);width:22px;height:2px;transition:transform .18s,opacity .18s,top .18s,bottom .18s;position:absolute;left:0}.site-menu-icon:before{top:-6px}.site-menu-icon:after{bottom:-6px}.site-nav.is-open{max-height:500px}.site-menu-toggle.is-open .site-menu-icon{background:0 0}.site-menu-toggle.is-open .site-menu-icon:before{top:0;transform:rotate(45deg)}.site-menu-toggle.is-open .site-menu-icon:after{bottom:0;transform:rotate(-45deg)}.btn{border-radius:var(--radius);cursor:pointer;white-space:nowrap;min-height:42px;transition:background var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition), transform var(--transition);border:1px solid #0000;justify-content:center;align-items:center;padding:10px 18px;font-size:.92rem;font-weight:800;display:inline-flex;text-decoration:none!important}.btn:disabled{cursor:not-allowed;opacity:.6}.btn-primary{background:linear-gradient(135deg, var(--color-cta) 0%, var(--color-cta-dark) 100%);color:var(--color-text-inverse);box-shadow:var(--shadow-cta);border-color:#0000}.btn-primary:hover{background:linear-gradient(135deg, #fb923c 0%, var(--color-cta) 100%);box-shadow:var(--shadow-cta-hover);color:var(--color-text-inverse);transform:translateY(-1px)}.btn-outline{background:var(--color-surface);border-color:var(--color-border);color:var(--color-text)}.btn-outline:hover{border-color:var(--color-primary);color:var(--color-primary-dark)}.btn-ghost{color:var(--color-primary-dark);background:0 0;border-color:#0000}.btn-ghost:hover{color:var(--color-primary);background:var(--color-primary-highlight)}.btn-sm{min-height:36px;padding:6px 12px;font-size:.85rem}.eyebrow{color:var(--color-accent);letter-spacing:.1em;text-transform:uppercase;font-size:.78rem;font-weight:900}.muted{color:var(--color-text-muted)}.home-hero{background:var(--hero-bg);border-bottom:1px solid var(--color-border);transition:background var(--transition), border-color var(--transition);justify-content:center;align-items:center;padding:clamp(48px,8vw,96px) clamp(18px,6vw,84px);display:flex}.hero-media{display:none}.hero-copy{text-align:center;width:min(760px,100%);color:var(--hero-text)}.hero-copy .eyebrow{color:var(--hero-eyebrow)}.hero-copy h1{max-width:680px;color:var(--hero-text);margin:12px auto 0;font-size:clamp(2rem,4.5vw,3.2rem);line-height:1.1}.hero-copy p{max-width:580px;color:var(--hero-text-muted);margin:16px auto 0;font-size:clamp(1rem,1.8vw,1.15rem);line-height:1.65}.hero-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin-top:28px;display:flex}.hero-proof{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:24px;display:flex}.hero-proof span{border-radius:var(--radius-sm);background:var(--hero-proof-bg);min-height:28px;color:var(--hero-proof-text);align-items:center;padding:5px 10px;font-size:.78rem;font-weight:900;display:inline-flex}.dashboard-hero{padding-bottom:42px}.fast-grade-grid{grid-template-columns:repeat(9,minmax(42px,1fr));gap:8px;max-width:620px;margin:26px auto 0;display:grid}.fast-grade-grid a{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);min-height:44px;color:var(--color-primary-dark);box-shadow:var(--shadow-sm);place-items:center;font-weight:900;display:grid}.activity-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;display:grid}.activity-grid article{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);min-height:92px;box-shadow:var(--shadow-sm);gap:4px;padding:16px;display:grid}.activity-grid strong{color:var(--color-primary-dark);font-size:1.7rem}.activity-grid span{color:var(--color-text-muted);font-size:.88rem}.page-shell,.generator-page,.preview-page,.admin-shell{width:min(var(--content-wide), calc(100% - 36px));margin:0 auto;padding:42px 0 70px}.page-hero{border-bottom:1px solid var(--color-border);padding:54px 0 38px}.compact-hero{max-width:820px}.page-hero h1,.generator-copy h1,.admin-hero h1{margin-top:8px;font-size:clamp(2rem,4vw,3.2rem)}.page-hero p,.generator-copy p,.admin-hero p{color:var(--color-text-muted);margin-top:14px;font-size:1.08rem}.quick-paths,.content-band,.feature-band,.topic-groups,.standard-grid,.path-grid{width:min(var(--content-wide), calc(100% - 36px));margin:0 auto;padding:54px 0}.section-heading{margin-bottom:24px}.section-heading h2{color:var(--color-text);font-size:clamp(1.7rem,3vw,2.4rem)}.section-heading p{color:var(--color-text-muted);margin-top:8px}.with-action{justify-content:space-between;align-items:flex-end;gap:18px;display:flex}.path-grid,.worksheet-grid,.feature-grid,.standard-grid,.topic-link-grid{gap:18px;display:grid}.path-grid{grid-template-columns:repeat(auto-fit,minmax(128px,1fr))}@media (min-width:800px){.path-grid{grid-template-columns:repeat(auto-fit,minmax(105px,1fr))}}.path-card,.standard-card,.worksheet-card,.feature-grid article,.topic-link-grid a,.auth-panel,.admin-panel,.resource-row,.user-row,.preview-toolbar,.loading-panel,.preview-placeholder{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-sm);color:var(--color-text)}.path-card{cursor:pointer;min-height:112px;transition:border-color var(--transition), box-shadow var(--transition), transform var(--transition), background var(--transition);flex-direction:column;justify-content:center;padding:18px;display:flex;text-decoration:none!important}.path-card:hover{border-color:var(--color-primary);box-shadow:0 6px 20px var(--color-cta-glow);background:var(--color-primary-highlight);transform:translateY(-3px)scale(1.02)}.path-card:active{transform:translateY(-1px)scale(1.01)}.path-card strong{color:var(--color-primary-dark);font-size:1.7rem}.path-card span,.path-card small{color:var(--color-text-muted)}.worksheet-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.worksheet-card{min-height:300px;transition:border-color var(--transition), box-shadow var(--transition), transform var(--transition);flex-direction:column;padding:12px;display:flex;position:relative}.card-preview{border:1px solid var(--color-border);background:var(--color-surface-2);border-radius:6px;height:156px;margin-top:10px;overflow:hidden}.card-preview .print-canvas{box-shadow:none}.card-preview .worksheet-title-block{margin:12px 0 14px}.card-preview .worksheet-title-block h1{font-size:1.15rem}.card-preview .print-header,.card-preview .answer-key-section{display:none}.select-check{z-index:4;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);width:fit-content;min-height:28px;color:var(--color-text);pointer-events:auto;align-items:center;gap:6px;margin-bottom:8px;padding:4px 8px;font-size:.78rem;font-weight:900;display:inline-flex;position:relative}.clickable-card:hover,.clickable-card:focus-within{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.card-hit-area{z-index:1;border-radius:inherit;position:absolute;inset:0;text-decoration:none!important}.card-hit-area:focus-visible{outline:3px solid var(--color-primary-highlight);outline-offset:3px}.worksheet-card>:not(.card-hit-area){z-index:2;position:relative}.worksheet-card>:not(.card-hit-area):not(.card-actions):not(.select-check){pointer-events:none}.worksheet-card .card-actions{z-index:3}.card-header,.card-meta,.card-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.badge{border-radius:var(--radius-sm);align-items:center;min-height:24px;padding:3px 8px;font-size:.75rem;font-weight:800;display:inline-flex}.badge-grade{background:var(--badge-grade-bg);color:var(--badge-grade-text)}.badge-topic{background:var(--badge-topic-bg);color:var(--badge-topic-text)}.card-title{color:var(--color-text);margin-top:12px;font-size:1.15rem}.card-description{color:var(--color-text-muted);flex:1;margin-top:8px;font-size:.9rem}.card-meta{color:var(--color-text-muted);margin:12px 0;font-size:.82rem}.card-actions{margin-top:auto}.card-icon-action,.card-actions .share-control{flex:1 1 0;width:auto;min-width:0}.card-actions .share-control{display:inline-flex}.card-actions .share-control .card-icon-action{width:100%}.card-icon-action{z-index:4;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);height:38px;color:var(--color-text);cursor:pointer;transition:background var(--transition), border-color var(--transition), color var(--transition);justify-content:center;align-items:center;display:inline-flex;position:relative;text-decoration:none!important}.card-icon-action:hover{border-color:var(--color-primary);color:var(--color-primary)}.card-icon-action svg,.share-popover svg{fill:currentColor;width:18px;height:18px}.share-control{z-index:5;position:relative}.share-popover{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);box-shadow:var(--shadow-md);gap:8px;padding:8px;display:flex;position:absolute;bottom:calc(100% + 8px);right:0}.share-popover a{width:34px;height:34px;color:var(--color-text);border-radius:var(--radius-sm);background:var(--color-surface-2);justify-content:center;align-items:center;display:inline-flex}.pwa-install-prompt{z-index:80;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-lg);align-items:center;gap:10px;padding:10px 12px;display:none;position:fixed;bottom:12px;left:12px;right:12px}.pwa-install-prompt span{flex:1;font-weight:900}.pwa-install-prompt button{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-primary);min-height:34px;color:var(--color-text-inverse);padding:6px 10px;font-weight:900}.pwa-install-prompt button:last-child{background:var(--color-surface-2);width:34px;color:var(--color-text);padding:0}.set-builder{gap:16px;display:grid}.set-builder-bar,.pagination{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;gap:14px;padding:12px;display:flex}.set-builder-bar span,.pagination span{color:var(--color-text-muted);font-size:.86rem;display:block}.pagination{justify-content:center;margin-top:22px}.worksheet-set-panel{margin-bottom:32px}.worksheet-set-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.set-preview{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface-2);max-height:520px;overflow:hidden}@media (max-width:1100px){.worksheet-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:640px){.fast-grade-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.worksheet-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.worksheet-card{min-height:250px;padding:9px}.card-preview{height:118px}.card-title{font-size:.88rem}.card-description,.card-meta{font-size:.72rem}.card-actions{flex-flow:wrap;gap:6px}.card-icon-action{height:32px;padding:0}.set-builder-bar,.pagination{flex-direction:column;align-items:stretch}.worksheet-set-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.set-preview{max-height:260px}}.feature-band{grid-template-columns:.9fr 1.2fr;align-items:start;gap:30px;display:grid}.feature-band>div:first-child h2{color:var(--color-text);font-size:clamp(1.8rem,3vw,2.8rem)}.feature-band>div:first-child p{color:var(--color-text-muted);margin-top:12px}.feature-grid{grid-template-columns:repeat(2,1fr)}.feature-grid article{padding:20px}.feature-grid h3{color:var(--color-text)}.feature-grid p{color:var(--color-text-muted);margin-top:8px}.filters-bar{grid-template-columns:minmax(220px,1.4fr) repeat(3,minmax(140px,1fr)) auto;gap:10px;margin:12px 0 28px;display:grid}.filters-bar input,.filters-bar select,.form-stack input,.form-stack select,.form-stack textarea,.compact-form input,.compact-form select{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);width:100%;min-height:42px;color:var(--color-text);transition:border-color var(--transition), background var(--transition);padding:10px 12px}.filters-bar input:focus,.filters-bar select:focus,.form-stack input:focus,.form-stack select:focus,.form-stack textarea:focus{outline:2px solid var(--color-primary);outline-offset:1px}.form-stack textarea{resize:vertical;min-height:88px}.generator-copy{max-width:860px;padding:46px 0 24px}.generator-layout{grid-template-columns:360px minmax(0,1fr);align-items:start;gap:24px;display:grid}.controls-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-md);padding:20px;position:sticky;top:86px}.form-stack{gap:14px;display:grid}.form-stack label{color:var(--color-text);gap:6px;font-weight:800;display:grid}.check-label{color:var(--color-text);align-items:center;font-weight:800;grid-template-columns:none!important;gap:8px!important;display:inline-flex!important}.check-label input{padding:0;width:18px!important;min-height:18px!important}.form-error{color:var(--color-danger);font-weight:800}.form-success{color:var(--color-primary-dark);font-weight:800}.field-help{color:var(--color-text-muted);margin-top:-8px;font-size:.88rem}.hidden-field{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden;width:1px!important}.generator-preview{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius);padding:20px;overflow:auto}.preview-placeholder{text-align:center;min-height:560px;color:var(--color-text-muted);place-content:center;display:grid}.preview-placeholder strong{color:var(--color-text);font-size:1.6rem;display:block}.preview-toolbar{z-index:20;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:22px;padding:14px 16px;display:flex;position:sticky;top:62px}.toolbar-actions,.row-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.preview-toolbar h1{color:var(--color-text);margin-top:4px;font-size:clamp(1.1rem,2.5vw,2rem)}.preview-container{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius);box-sizing:border-box;width:100%;padding:22px}.footer-copyright{flex-basis:100%;font-size:.82rem;max-width:none!important;margin-top:8px!important}.pdf-preview-frame{aspect-ratio:794/1123;background:#fff;border:0;width:min(100%,794px);min-height:720px;margin:0 auto;display:block;box-shadow:0 10px 30px #0000001f}@media (max-width:640px){.preview-container{padding:12px}.pdf-preview-frame{min-height:520px}}.email-share-panel,.contact-form{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-sm);margin-bottom:22px;padding:18px}.email-share-panel{max-width:720px}.print-canvas{box-sizing:border-box;color:#111827;background:#fff;width:794px;height:1123px;margin:0 auto;padding:40px 36px 48px;position:relative;overflow:hidden;box-shadow:0 10px 30px #0000001f}.print-canvas+.print-canvas{margin-top:24px}.print-canvas-subsequent{padding-top:40px}.page-continuation-label{color:#6b7280;border-bottom:1px solid #d1d5db;justify-content:space-between;align-items:center;margin-bottom:18px;padding-bottom:10px;font-size:.82rem;display:flex}.sheet-watermark{color:#1118271a;letter-spacing:0;pointer-events:none;-webkit-user-select:none;user-select:none;place-items:center;font-size:4.2rem;font-weight:900;display:grid;position:absolute;inset:0;transform:rotate(-28deg)}.print-canvas-letter{width:816px;height:1056px}.print-canvas-answer-key{padding-top:48px}@media (max-width:640px){.preview-toolbar{flex-direction:column;align-items:stretch;gap:10px;margin-bottom:12px;padding:12px;position:static}.preview-toolbar h1{font-size:1.1rem}.toolbar-actions{gap:6px}.toolbar-actions .btn{white-space:nowrap;flex:auto;min-width:70px;min-height:38px;padding:7px 10px;font-size:.82rem}}.print-header{border-bottom:2px solid #111827;flex-wrap:wrap;justify-content:space-between;gap:18px;padding-bottom:10px;font-size:.95rem;display:flex}.worksheet-title-block{text-align:center;margin:20px 0 24px}.worksheet-title-block p,.worksheet-title-block span{color:#424956;font-size:.9rem}.worksheet-title-block h1{color:#111827;margin:8px 0;font-size:2rem}.worksheet-question-list{grid-template-rows:repeat(5,1fr);grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px;height:820px;display:grid}.print-canvas-subsequent .worksheet-question-list{grid-template-rows:repeat(5,1fr);height:960px}.worksheet-question{break-inside:avoid;page-break-inside:avoid;flex-direction:row;align-items:flex-start;padding:8px 8px 8px 32px;display:flex;position:relative}.worksheet-question:nth-child(2n){padding-left:32px}.question-number{color:#111827;font-size:1.05rem;font-weight:900;position:absolute;top:8px;left:8px}.question-body{flex-direction:column;flex:1;justify-content:space-between;gap:8px;width:100%;height:100%;display:flex}.question-prompt{color:#111827;flex:1;font-size:1.12rem;line-height:1.42}.vertical-stack{text-align:right;color:#111827;width:fit-content;min-width:126px;margin:0 auto;font-family:Courier New,monospace;font-size:1.65rem;font-weight:800;line-height:1.2}.answer-line{border-top:2px solid #111827;height:24px;margin-top:5px}.long-answer-line{background:#9ca3af;flex-shrink:0;width:100%;height:2px;margin-top:auto}.answer-key-section{position:relative}.print-footer{color:#6b7280;border-top:1px solid #e5e7eb;justify-content:space-between;padding-top:8px;font-size:.72rem;display:flex;position:absolute;bottom:22px;left:36px;right:36px}.answer-key-section h2{color:#111827;margin-bottom:16px;font-size:1.4rem}.answer-key-grid{grid-template-columns:repeat(4,1fr);gap:10px 18px;margin-top:16px;display:grid}.auth-page{place-items:center;min-height:calc(100vh - 250px);padding:48px 18px;display:grid}.auth-panel{width:min(520px,100%);padding:26px}.auth-panel h1{color:var(--color-text);margin-top:8px;font-size:clamp(1.8rem,4vw,2.7rem)}.auth-panel .muted{color:var(--color-text-muted);margin:10px 0 20px}.segmented{background:var(--color-surface-2);border-radius:var(--radius);grid-template-columns:repeat(2,1fr);gap:6px;margin:18px 0;padding:5px;display:grid}.segmented button{cursor:pointer;min-height:38px;color:var(--color-text-muted);transition:background var(--transition), color var(--transition);background:0 0;border:0;border-radius:6px;font-weight:800}.segmented button.active{background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-sm)}.social-login-row{gap:10px;margin-top:14px;display:flex}.auth-secondary{flex-wrap:wrap;align-items:center;gap:10px;margin-top:14px;display:flex}.text-button{min-height:40px;color:var(--color-primary-dark);cursor:pointer;transition:color var(--transition);background:0 0;border:0;padding:0;font-weight:800}.text-button:hover{color:var(--color-primary)}.contact-layout{grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr);align-items:start;gap:28px;display:grid}.resource-list,.queue-list,.user-table{gap:10px;display:grid}.resource-row,.user-row{box-shadow:none;justify-content:space-between;align-items:center;gap:14px;padding:14px;display:flex}.resource-row h3,.user-row strong{color:var(--color-text);font-size:1rem}.resource-row p,.user-row span{color:var(--color-text-muted);font-size:.88rem;display:block}.admin-shell{width:min(1340px,100% - 36px)}.admin-hero{justify-content:space-between;gap:24px;padding:38px 0;display:flex}.stats-grid{grid-template-columns:repeat(4,130px);gap:10px;display:grid}.stats-grid span{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);text-align:center;min-height:88px;color:var(--color-text-muted);place-content:center;display:grid}.stats-grid strong{color:var(--color-primary-dark);font-size:1.9rem;display:block}.admin-message{color:var(--color-primary-dark);margin-bottom:16px;font-weight:900}.admin-grid{grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);gap:18px;display:grid}.admin-panel{box-shadow:none;padding:20px}.admin-panel h2{color:var(--color-text);margin-bottom:16px;font-size:1.4rem}.provider-box{border:1px solid var(--color-border);border-radius:var(--radius);gap:12px;padding:14px;display:grid}.provider-box legend{color:var(--color-primary-dark);text-transform:capitalize;padding:0 8px;font-weight:900}.compact-form{margin-bottom:18px}.user-row{grid-template-columns:minmax(180px,1fr) 120px 130px;display:grid}.wide-panel{grid-column:1/-1}.status-pill{border-radius:var(--radius-sm);align-items:center;min-height:26px;padding:3px 9px;font-size:.78rem;font-weight:900;display:inline-flex}.status-pill.completed{background:var(--status-completed-bg);color:var(--status-completed-text)}.status-pill.generating{background:var(--status-generating-bg);color:var(--status-generating-text)}.status-pill.failed{background:var(--status-failed-bg);color:var(--status-failed-text)}.topic-groups{gap:26px;display:grid}.topic-group h2{color:var(--color-text);margin-bottom:12px}.topic-link-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.topic-link-grid a,.standard-card{color:var(--color-text);transition:border-color var(--transition), box-shadow var(--transition), transform var(--transition);gap:8px;padding:18px;display:grid;text-decoration:none!important}.topic-link-grid a:hover,.standard-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-1px)}.topic-link-grid span,.standard-card p,.standard-card span{color:var(--color-text-muted)}.standard-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.topic-link-row{flex-wrap:wrap;gap:10px;margin:10px 0 28px;display:flex}.topic-link-row a{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-primary-dark);transition:border-color var(--transition), background var(--transition);border-radius:6px;padding:8px 11px;font-weight:800;text-decoration:none!important}.topic-link-row a:hover{border-color:var(--color-primary);background:var(--color-primary-highlight)}.grade-topic-band{padding-bottom:20px}.topic-card-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;display:grid}.topic-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);min-height:150px;box-shadow:var(--shadow-sm);transition:border-color var(--transition), box-shadow var(--transition), transform var(--transition);gap:10px;padding:18px;display:grid;text-decoration:none!important}.topic-card strong{color:var(--color-text);font-size:1.18rem}.topic-card small{color:var(--color-text-muted)}.topic-card:hover,.topic-card:focus-visible,.topic-card.active{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.prose-page{max-width:920px}.text-section,.faq-list{color:var(--color-text);gap:16px;font-size:1.06rem;display:grid}.text-section h2{color:var(--color-text);margin-top:8px;font-size:1.2rem}.faq-list article{border-bottom:1px solid var(--color-border);padding:20px 0}.faq-list p{color:var(--color-text-muted);margin-top:8px}@media (max-width:900px){.site-footer,.admin-hero,.with-action,.preview-toolbar,.feature-band{flex-direction:column;align-items:flex-start}.site-menu-toggle{display:block}.site-nav{background:var(--header-bg);border-bottom:1px solid var(--header-border);box-shadow:var(--shadow-md);gap:4px;max-height:0;padding:10px 16px 12px;transition:max-height .2s;display:grid;position:absolute;inset:100% 0 auto;overflow:hidden}.site-nav .theme-toggle{justify-self:start;width:44px;height:44px;margin:4px 0 0}.site-nav a{align-items:center;min-height:44px;padding:10px 2px;display:flex}.filters-bar,.generator-layout,.contact-layout,.admin-grid,.feature-band{grid-template-columns:1fr}.controls-panel,.preview-toolbar{position:static}.stats-grid{grid-template-columns:repeat(2,minmax(90px,1fr));width:100%}.user-row{grid-template-columns:1fr}}@media (max-width:640px){.site-header{grid-template-columns:44px 1fr 44px;gap:0;min-height:56px;padding:8px 14px;display:grid}.site-logo{justify-self:center;font-size:1.12rem}.theme-toggle-mobile{justify-self:start;width:38px;height:38px;margin:0;display:flex}.theme-toggle-desktop{display:none!important}.site-menu-toggle{justify-self:end;margin-left:0}.pwa-install-prompt{display:flex}.home-hero{padding:clamp(36px,8vw,56px) 18px}.quick-paths,.content-band,.feature-band,.topic-groups,.standard-grid,.path-grid,.page-shell,.generator-page,.preview-page,.admin-shell{width:min(100% - 24px, var(--content-wide))}.feature-grid{grid-template-columns:1fr}.answer-key-grid,.worksheet-question-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media print{body{background:#fff}.site-header,.site-footer,.preview-toolbar,.page-hero,.filters-bar,.newsletter-section,.toast-container,.product-breadcrumbs,.product-info-details,.premium-preview-sub-actions,.worksheet-set-panel>.section-heading,.library-band>.section-heading:not(:first-child),.worksheet-grid{display:none!important}.page-shell,.content-band,.library-band,.worksheet-set-panel{width:100%!important;box-shadow:none!important;background:#fff!important;border:0!important;margin:0!important;padding:0!important}.worksheet-set-grid{display:block}.set-preview{break-after:page;page-break-after:always;border:0;border-radius:0;max-height:none;overflow:visible}.set-preview>div{height:auto!important;overflow:visible!important}.set-preview>div>div{width:100%!important;transform:none!important}.preview-page,.preview-container{background:#fff;border:0;width:100%;margin:0;padding:0}.print-canvas{box-sizing:border-box!important;width:210mm!important;height:297mm!important;box-shadow:none!important;break-after:page!important;page-break-after:always!important;break-inside:avoid!important;page-break-inside:avoid!important;padding:.6in .7in .7in!important;overflow:hidden!important;transform:none!important}.print-canvas:last-child{break-after:avoid!important;page-break-after:avoid!important}.worksheet-question-list{height:740px!important}.print-canvas-subsequent .worksheet-question-list{height:880px!important}.preview-container>div,.preview-container>div>div{width:100%!important;height:auto!important;overflow:visible!important;transform:none!important}.worksheet-question{break-inside:avoid;page-break-inside:avoid}@page{size:A4 portrait;margin:0}}.toast-container{z-index:99999;pointer-events:none;flex-direction:column;gap:12px;width:calc(100% - 48px);max-width:380px;display:flex;position:fixed;bottom:24px;right:24px}.toast{pointer-events:auto;-webkit-backdrop-filter:blur(12px);background:#ffffffd9;border:1px solid #ffffff80;border-radius:12px;align-items:flex-start;gap:12px;padding:16px 20px;transition:all .3s;animation:.35s cubic-bezier(.16,1,.3,1) forwards toast-slide-in;display:flex;box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000000d}[data-theme=dark] .toast{background:#0f172ad9;border:1px solid #ffffff14;box-shadow:0 10px 25px -5px #0000004d,0 8px 10px -6px #0003}.toast-content{flex:1}.toast-title{color:var(--color-text);margin-bottom:2px;font-size:.95rem;font-weight:800}.toast-desc{color:var(--color-text-muted);font-size:.84rem;line-height:1.4}.toast-close{color:var(--color-text-muted);cursor:pointer;opacity:.6;background:0 0;border:0;padding:0;font-size:1.1rem;line-height:1;transition:opacity .2s}.toast-close:hover{opacity:1}.toast-success{border-left:4px solid var(--color-primary,#ff6b6b)}.toast-error{border-left:4px solid var(--color-danger,#ef4444)}.toast-info{border-left:4px solid #3b82f6}@keyframes toast-slide-in{0%{opacity:0;transform:translateY(20px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.newsletter-section{background:var(--color-surface);border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);text-align:center;padding:64px 24px;position:relative;overflow:hidden}.newsletter-container{z-index:2;max-width:680px;margin:0 auto;position:relative}.newsletter-section h2{letter-spacing:-.5px;color:var(--color-text);margin-bottom:12px;font-size:2.2rem;font-weight:900}.newsletter-section p{color:var(--color-text-muted);margin-bottom:28px;font-size:1.05rem}.newsletter-form{gap:12px;max-width:520px;margin:0 auto 24px;display:flex}.newsletter-form input{border:1px solid var(--color-border);background:var(--color-surface-2);min-height:48px;color:var(--color-text);box-shadow:var(--shadow-sm);border-radius:9999px;flex:1;padding:0 24px;font-size:.95rem;transition:all .25s}.newsletter-form input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-highlight);background:var(--color-surface);outline:none}.newsletter-form button{white-space:nowrap;border-radius:9999px;min-height:48px;padding:0 32px;font-size:.95rem;box-shadow:0 4px 10px #ff6b6b40}.newsletter-sig{color:var(--color-text-muted);border-top:1px dashed var(--color-border);max-width:480px;margin:0 auto;padding-top:16px;font-size:.88rem;line-height:1.5}.newsletter-sig-title{color:var(--color-text);margin-bottom:4px;font-weight:800}@media (max-width:640px){.newsletter-section{padding:48px 16px}.newsletter-section h2{font-size:1.7rem}.newsletter-form{flex-direction:column;gap:8px}.newsletter-form button{width:100%}}.product-details-page{width:min(var(--content-wide), calc(100% - 36px));margin:0 auto;padding:24px 0 70px}.product-breadcrumbs{color:var(--color-text-muted);letter-spacing:.02em;margin-bottom:24px;font-size:.82rem;font-weight:600}.product-breadcrumbs a{color:var(--color-text-muted);transition:color var(--transition)}.product-breadcrumbs a:hover{color:var(--color-primary)}.product-layout-container{grid-template-columns:1.25fr 1fr;align-items:start;gap:42px;display:grid}.product-media-gallery{position:sticky;top:96px}.premium-preview-card{box-shadow:none;background:0 0;border:none;flex-direction:column;gap:16px;padding:0;display:flex}.preview-canvas-wrapper{background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex;overflow:hidden}.premium-preview-sub-actions{border-top:1px solid var(--color-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:8px;display:flex}.answer-toggle-checkbox{cursor:pointer;color:var(--color-text);-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:.9rem;font-weight:800;display:inline-flex}.answer-toggle-checkbox input{width:18px;height:18px;accent-color:var(--color-primary)}.product-info-details{flex-direction:column;gap:28px;display:flex}.product-info-header{border-bottom:1px solid var(--color-border);padding-bottom:20px}.product-tag{background:var(--color-primary-alpha);color:var(--color-primary);text-transform:uppercase;letter-spacing:.05em;border-radius:999px;margin-bottom:12px;padding:4px 10px;font-size:.78rem;font-weight:900;display:inline-block}.product-title{color:var(--color-text);letter-spacing:-.02em;font-size:clamp(1.8rem,3vw,2.6rem);font-weight:900;line-height:1.15}.product-tagline{color:var(--color-text-muted);margin-top:12px;font-size:1.05rem;line-height:1.5}.product-specifications{background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);border-radius:12px;padding:24px}.product-specifications h2{border-bottom:1px solid var(--color-border);margin-bottom:18px;padding-bottom:8px;font-size:1.25rem;font-weight:800}.specs-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.spec-item{flex-direction:column;gap:4px;display:flex}.spec-label{text-transform:uppercase;color:var(--color-text-faint);letter-spacing:.05em;font-size:.78rem;font-weight:700}.spec-val{color:var(--color-text);font-size:.95rem;font-weight:800}.difficulty-indicator{text-transform:capitalize;border-radius:4px;padding:2px 8px;font-size:.78rem;font-weight:900;display:inline-block}.difficulty-indicator.practice{color:#4ade80;background:#4ade8026}.difficulty-indicator.regular{color:#818cf8;background:#6366f126}.difficulty-indicator.challenge{color:#fb923c;background:#fb923c26}.difficulty-indicator.olympiad{color:#f87171;background:#f8717126}.skills-covered{border-top:1px solid var(--color-border);margin-top:20px;padding-top:16px}.skills-covered h3{color:var(--color-text-muted);margin-bottom:10px;font-size:.92rem;font-weight:800}.skills-tags{flex-wrap:wrap;gap:8px;display:flex}.skill-tag{background:var(--color-surface-2);border:1px solid var(--color-border);color:var(--color-text);border-radius:6px;padding:4px 10px;font-size:.8rem;font-weight:700}.premium-buy-box{background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-md);border-radius:12px;flex-direction:column;gap:16px;padding:24px;display:flex}.pricing-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.pricing-tag{color:var(--color-success);font-size:1.15rem;font-weight:900}.price-strike{color:var(--color-text-faint);font-size:1.1rem;text-decoration:line-through}.price-actual{color:var(--color-text);font-size:2rem;font-weight:900;line-height:1}.discount-badge{background:var(--color-success);color:var(--color-text-inverse);border-radius:4px;padding:2px 8px;font-size:.78rem;font-weight:900}.buy-box-guarantee{color:var(--color-text-muted);margin-bottom:4px;font-size:.88rem;font-weight:600}.buy-box-actions{flex-direction:column;gap:12px;display:flex}.btn-lg-premium{border-radius:8px;gap:8px;min-height:52px;font-size:1.05rem}.premium-email-form{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:8px;margin-top:12px;padding:18px}.premium-email-form h3{margin-bottom:12px;font-size:1rem;font-weight:800}@media (max-width:1024px){.product-layout-container{grid-template-columns:1fr;gap:32px}.product-media-gallery{position:static}.premium-preview-card{max-width:720px;margin:0 auto}}@media (max-width:640px){.product-details-page{width:100%!important;padding:12px 8px 48px!important}.premium-preview-card,.preview-canvas-wrapper{padding:0!important}.specs-grid{grid-template-columns:1fr;gap:12px}.price-actual{font-size:1.7rem}}.buy-box-options-row{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);margin:2px 0;padding:12px 0}.premium-buybox-toggle{background:var(--color-surface-2);border:1px solid var(--color-border);cursor:pointer;width:100%;transition:border-color var(--transition), background var(--transition);border-radius:8px;align-items:center;gap:10px;padding:10px 14px;display:flex}.premium-buybox-toggle:hover{border-color:var(--color-primary);background:var(--color-primary-highlight)}
