:root{color:#e5edf7;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#08111f;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 0 0,#38bdf838,#0000 34rem),radial-gradient(circle at 100% 100%,#a855f733,#0000 30rem),#08111f;min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{grid-template-columns:minmax(16rem,22rem) minmax(0,1fr);gap:1.25rem;width:min(100%,92rem);min-height:100vh;margin:0 auto;padding:1.25rem;display:grid}.brand-panel,.workspace-panel,.panel{min-width:0}.app-shell.quiz-active{grid-template-columns:1fr}.quiz-active .brand-panel{display:none}.brand-panel,.panel{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0f172ac7;border:1px solid #94a3b82e;border-radius:2rem;box-shadow:0 1.5rem 5rem #0000004d}.brand-panel{text-align:center;flex-direction:column;justify-content:space-between;align-self:start;align-items:center;min-height:calc(100vh - 2.5rem);padding:1.5rem;display:flex;position:sticky;top:1.25rem}.brand-mark{color:#fff;background:linear-gradient(135deg,#22d3ee,#a855f7);border-radius:2rem;align-self:center;place-items:center;width:7rem;height:7rem;margin:0 auto;font-size:2.8rem;font-weight:800;display:grid}.brand-panel h2,.panel h1{color:#f8fafc;letter-spacing:-.04em;margin:.25rem 0 .5rem;line-height:1.05}.brand-panel h2{font-size:clamp(1.8rem,3vw,3rem)}.workspace-panel{align-items:start;display:grid}.panel{padding:clamp(1.25rem,3vw,2.5rem)}.panel h1{font-size:clamp(2rem,4vw,3.5rem)}.panel h2{color:#f8fafc;margin:0 0 .75rem}.eyebrow{color:#67e8f9;letter-spacing:.04em;text-transform:uppercase;margin:.5rem 0 0;font-size:1.3rem;font-weight:800}.lead{color:#b6c2d1;max-width:48rem;font-size:1rem;line-height:1.65}.service-status{color:#bae6fd;background:#0ea5e914;border:1px solid #67e8f933;border-radius:999px;align-items:center;gap:.5rem;margin:.25rem 0 0;padding:.55rem .85rem;font-size:.88rem;font-weight:800;display:inline-flex}.service-status:before{content:"";background:#22c55e;border-radius:999px;width:.55rem;height:.55rem;box-shadow:0 0 0 .25rem #22c55e1f}.status-card,.auth-card,.confirmation-card,.question-card,.feedback-card,.summary-columns section,.revision-table-wrap{background:#0206176b;border:1px solid #94a3b829;border-radius:1.35rem}.status-card{padding:1rem}.status-card span,.status-card strong{display:block}.status-card span{color:#94a3b8;font-size:.85rem}.status-card strong{color:#f8fafc;margin-top:.25rem}.auth-modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#020617b3;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.auth-card{gap:.85rem;width:min(100%,34rem);padding:1rem;display:grid;position:relative}.auth-card.pro{background:#78350f29;border-color:#fbbf2457}.auth-card strong,.auth-card span{display:block}.auth-card span{color:#94a3b8;margin-top:.25rem;font-size:.9rem;font-weight:700}.auth-fields,.auth-actions{flex-wrap:wrap;gap:.75rem;display:flex}.auth-fields input{flex:14rem}.auth-actions .primary-button,.auth-actions .secondary-button,.auth-card>.secondary-button{margin-top:0}.modal-close-button{color:#f8fafc;background:#0f172ae6;border:1px solid #94a3b838;border-radius:999px;place-items:center;width:2rem;height:2rem;font-size:1.25rem;line-height:1;display:grid;position:absolute;top:.75rem;right:.75rem}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;margin-top:1.5rem;display:grid}label{color:#dbe7f3;gap:.55rem;font-weight:700;display:grid}.field-label{align-items:center;gap:.25rem;display:inline-flex}.required-marker{color:#f87171}.field-error{color:#fca5a5;font-size:.82rem;font-weight:800}.field-hint{color:#94a3b8;font-size:.82rem;font-weight:600}label.wide{grid-column:1/-1}input,select,textarea{color:#f8fafc;background:#0f172ae0;border:1px solid #94a3b83d;border-radius:1rem;outline:none;width:100%;padding:.82rem .95rem}textarea{resize:vertical;min-height:5.5rem}input:focus,select:focus,textarea:focus{border-color:#38bdf8;box-shadow:0 0 0 4px #38bdf81f}input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:#f87171;box-shadow:0 0 0 4px #f871711f}.checkbox-card{background:#0f172a80;border:1px solid #94a3b833;border-radius:1rem;grid-template-columns:auto 1fr;align-content:center;padding:1rem}.checkbox-card input{width:auto}.checkbox-card .premium-badge{margin-left:.35rem}.preset-panel{gap:.75rem;display:grid}.preset-grid{grid-template-columns:repeat(3,minmax(9.5rem,1fr));gap:.75rem;display:grid}.preset-button{color:#dbe7f3;text-align:left;background:#0f172ab8;border:1px solid #94a3b838;border-radius:1rem;align-content:start;gap:.45rem;min-width:0;min-height:6.5rem;padding:.95rem;display:grid}.preset-button:hover,.preset-button:focus-visible,.preset-button.selected{border-color:#67e8f9;box-shadow:0 0 0 4px #67e8f91a}.preset-button.selected{background:#0ea5e92e}.preset-button.premium{background:#78350f29;border-color:#fbbf2452}.preset-button strong{color:#f8fafc;flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:.5rem;min-width:0;line-height:1.25;display:flex}.preset-button span{color:#94a3b8;overflow-wrap:anywhere;min-width:0;font-size:.86rem;font-weight:700;line-height:1.4}.premium-badge{letter-spacing:.04em;text-transform:uppercase;background:#fbbf242e;border-radius:999px;flex:none;padding:.25rem .5rem;color:#fde68a!important;font-size:.7rem!important}.price-tag,.selected-price-tag{background:#22c55e1f;border:1px solid #22c55e52;border-radius:999px;width:fit-content;padding:.3rem .65rem;font-weight:900;display:inline-flex;color:#86efac!important;font-size:.82rem!important}.selected-price-tag{font-size:1rem!important}.upgrade-card{color:#fde68a;background:#78350f2e;border:1px solid #fbbf2447;border-radius:1rem;gap:.6rem;margin-top:1rem;padding:1rem;display:grid}.upgrade-card span{color:#fef3c7;line-height:1.55}.upgrade-card .secondary-button{justify-self:start;margin-top:.25rem}.upgrade-actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.upgrade-actions .primary-button,.upgrade-actions .secondary-button{margin-top:.25rem}.confirmation-card{margin:1.5rem 0;padding:1.25rem}.confirmation-card dl{grid-template-columns:12rem 1fr;gap:.65rem 1rem;margin:0;display:grid}.confirmation-card dt{color:#94a3b8}.confirmation-card dd{color:#f8fafc;margin:0}.calibration-note{color:#fde68a;background:#fbbf241a;border:1px solid #fbbf2447;border-radius:1rem;margin:1rem 0 0;padding:.9rem 1rem;font-weight:800;line-height:1.55}.primary-button{color:#fff;background:linear-gradient(135deg,#06b6d4,#8b5cf6);border:0;border-radius:999px;justify-content:center;align-items:center;min-height:3rem;margin-top:1.25rem;padding:.85rem 1.4rem;font-weight:900;display:inline-flex;box-shadow:0 1rem 2rem #0ea5e933}.secondary-button{color:#dff8ff;background:#0f172ab3;border:1px solid #67e8f947;border-radius:999px;justify-content:center;align-items:center;min-height:3rem;margin-top:1.25rem;padding:.85rem 1.4rem;font-weight:900;display:inline-flex}.danger-button{color:#fecaca;background:#7f1d1d52;border:1px solid #f871716b;border-radius:999px;justify-content:center;align-items:center;min-height:3rem;margin-top:1.25rem;padding:.85rem 1.4rem;font-weight:900;display:inline-flex}.danger-button:hover,.danger-button:focus-visible{background:#b91c1c73;border-color:#f87171bf}.summary-actions{flex-wrap:wrap;align-items:center;gap:.85rem;display:flex}.primary-button:disabled,.danger-button:disabled,.option-card:disabled{cursor:not-allowed;opacity:.7}.quiz-actions{flex-wrap:wrap;align-items:center;gap:.85rem;display:flex}.end-test-confirmation{color:#fecaca;background:#7f1d1d2e;border:1px solid #f8717147;border-radius:1rem;gap:.25rem;margin-top:1rem;padding:.9rem 1rem;display:grid}.end-test-confirmation span{color:#fca5a5;line-height:1.5}.error-text{color:#fca5a5;font-weight:700}.result-callout{color:#dff8ff;background:#0ea5e91a;border:1px solid #38bdf83d;border-radius:1rem;margin:1.25rem 0 0;padding:1rem;font-weight:800}.session-header{justify-content:space-between;align-items:start;gap:1rem;display:flex}.difficulty-badge{color:#67e8f9;white-space:nowrap;background:#0891b21f;border:1px solid #38bdf857;border-radius:999px;padding:.6rem 1rem;font-weight:800}.session-badges{flex-wrap:wrap;justify-content:flex-end;gap:.6rem;display:flex}.timer-badge{color:#86efac;white-space:nowrap;background:#22c55e1f;border:1px solid #22c55e5c;border-radius:999px;padding:.6rem 1rem;font-weight:900}.timer-badge.warning{color:#fde68a;border-color:#fbbf2470}.timer-badge.danger{color:#fecaca;background:#f8717124;border-color:#f8717180}.progress-track{background:#94a3b82e;border-radius:999px;height:.6rem;margin:0 0 1.5rem;overflow:hidden}.progress-track span{border-radius:inherit;background:linear-gradient(90deg,#22d3ee,#a855f7);height:100%;display:block}.question-card,.feedback-card{padding:1.25rem}.question-text{color:#f8fafc;margin:0 0 1.25rem;font-size:1.15rem;line-height:1.6}.question-with-code .question-text{margin-bottom:1rem}.code-window{background:#020617;border:1px solid #94a3b838;border-radius:1rem;margin:0 0 1.25rem;overflow:hidden;box-shadow:inset 0 1px #ffffff0a,0 1rem 2rem #0003}.code-window-titlebar{background:#0f172af2;border-bottom:1px solid #94a3b829;align-items:center;gap:.45rem;padding:.65rem .9rem;display:flex}.code-window-titlebar strong{color:#94a3b8;letter-spacing:.08em;text-transform:uppercase;margin-left:.35rem;font-size:.78rem}.dot{border-radius:999px;width:.72rem;height:.72rem}.dot.red{background:#f87171}.dot.amber{background:#fbbf24}.dot.green{background:#34d399}.code-window pre{color:#dbeafe;white-space:pre-wrap;margin:0;padding:1rem;font-size:.95rem;line-height:1.6;overflow-x:auto}.code-window code{font-family:Cascadia Code,Fira Code,Consolas,monospace}.options-grid{gap:.85rem;display:grid}.option-card{color:#dbe7f3;text-align:left;background:#0f172abf;border:1px solid #94a3b82e;border-radius:1rem;grid-template-columns:auto 1fr;align-items:start;gap:.9rem;width:100%;padding:1rem;display:grid}.option-card span{color:#fff;background:#94a3b824;border-radius:.7rem;place-items:center;width:2rem;height:2rem;font-weight:900;display:grid}.option-card.selected{border-color:#67e8f9}.option-card.correct{background:#22c55e21;border-color:#22c55e}.option-card.incorrect{background:#ef444421;border-color:#ef4444}.feedback-card{margin-top:1rem;line-height:1.65}.feedback-card.correct{border-color:#22c55e5c}.feedback-card.incorrect{border-color:#ef444466}.pill-row{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.pill-row span{color:#c4b5fd;background:#6366f133;border-radius:999px;padding:.45rem .8rem;font-size:.88rem;font-weight:700}.score-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem;margin:2rem 0;display:grid}.score-grid div{background:#0f172ab3;border-radius:1.25rem;padding:1.25rem}.score-grid strong,.score-grid span{display:block}.score-grid strong{color:#f8fafc;font-size:2.25rem}.score-grid span{color:#94a3b8}.summary-columns{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.summary-columns section{padding:1.2rem}.summary-columns ul{color:#cbd5e1;padding-left:1.2rem;line-height:1.7}.revision-table-wrap{margin-top:1rem;padding:1.2rem;overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:42rem}th,td{text-align:left;border-bottom:1px solid #94a3b824;padding:.85rem}th{color:#67e8f9;text-transform:uppercase;font-size:.8rem}td{color:#dbe7f3}.revision-row-correct td{background:#22c55e1a}.revision-row-partial td{background:#fbbf241a}.revision-row-incorrect td{background:#ef44441a}.unanswered-answer{color:#fbbf24;font-weight:900;background:#fbbf2424!important}@media (width>=981px) and (width<=1180px){.app-shell{grid-template-columns:minmax(14rem,18rem) minmax(0,1fr)}.brand-panel h2{font-size:2rem}}@media (width<=980px){.app-shell,.form-grid,.summary-columns{grid-template-columns:1fr}.preset-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell{gap:1rem;width:100%}.brand-panel{gap:1rem;min-height:auto;position:static}.brand-mark{border-radius:1.5rem;width:5rem;height:5rem;font-size:2rem}.brand-panel h2{font-size:clamp(1.45rem,6vw,2rem)}}@media (width<=640px){.app-shell{padding:.75rem}.brand-panel,.panel{border-radius:1.25rem;padding:1rem}.panel h1{font-size:clamp(1.8rem,10vw,2.35rem)}.lead,.question-text{font-size:.98rem}.confirmation-card dl,.session-header{grid-template-columns:1fr;display:grid}.session-header{gap:.75rem;margin-bottom:1rem}.session-header h1{margin-bottom:.85rem}.session-badges{justify-content:flex-start;padding-top:.25rem}.difficulty-badge,.timer-badge{white-space:normal;padding:.55rem .85rem}.progress-track{margin-top:.75rem;margin-bottom:1.25rem}.score-grid{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;grid-template-columns:none;grid-auto-columns:minmax(8.25rem,1fr);grid-auto-flow:column;gap:.65rem;margin:1.25rem -1rem 1.5rem;padding:0 1rem .5rem;display:grid;overflow-x:auto}.score-grid div{scroll-snap-align:start;min-width:8.25rem;padding:.95rem}.score-grid strong{font-size:1.55rem}.option-card{grid-template-columns:1.8rem 1fr;gap:.75rem;padding:.85rem}.option-card span{width:1.8rem;height:1.8rem}.preset-grid{grid-template-columns:1fr}.preset-button{min-height:auto}.primary-button,.secondary-button,.danger-button{width:100%}}
