.admin-shell{--admin-sidebar-w:260px;--admin-topbar-h:56px;background:var(--bg);height:100svh;color:var(--text);font-size:.875rem;display:flex;overflow:hidden}.admin-sidebar{width:var(--admin-sidebar-w);background:var(--sidebar-bg);border-right:1px solid var(--sidebar-border);z-index:1;flex-direction:column;flex-shrink:0;height:100%;display:flex;overflow:hidden;box-shadow:4px 0 24px #00000040}.admin-sidebar__brand{border-bottom:1px solid var(--sidebar-border);flex-direction:column;align-items:flex-start;gap:1rem;padding:1.25rem 1.25rem 1.5rem;display:flex}.admin-sidebar__logo-img{object-fit:contain;object-position:left;width:auto;height:2.25rem;display:block}.admin-sidebar__welcome{background:#ffffff0a;border:1px solid #ffffff14;border-radius:10px;flex-direction:column;gap:.25rem;width:100%;min-width:0;padding:.75rem .875rem;display:flex}.admin-sidebar__welcome small{letter-spacing:.03em;color:var(--sidebar-text-muted);font-size:.6875rem}.admin-sidebar__welcome strong{color:var(--sidebar-text-active);text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;font-weight:600;overflow:hidden}.admin-sidebar__nav{flex:1;padding:1rem .75rem;overflow:hidden}.admin-nav-group{margin-bottom:.25rem}.admin-nav-item,.admin-nav-subitem{width:100%;font:inherit;text-align:left;cursor:pointer;color:var(--sidebar-text);background:0 0;border:none;border-radius:8px;align-items:center;gap:.625rem;text-decoration:none;transition:background .15s,color .15s;display:flex}.admin-nav-item{padding:.625rem .875rem;font-weight:500}.admin-nav-item:hover,.admin-nav-subitem:hover{color:var(--sidebar-text-hover);background:#ffffff0f}.admin-nav-item--active{color:var(--sidebar-text-active);background:color-mix(in srgb, var(--color-mint-400) 16%, transparent);box-shadow:inset 2px 0 0 var(--color-mint-300)}.admin-nav-subitems{padding-left:1.875rem}.admin-nav-subitem{padding:.5rem .875rem;font-size:.8125rem}.admin-nav-subitem--active{color:var(--color-mint-300);font-weight:600}.admin-sidebar__footer{border-top:1px solid var(--sidebar-border);padding:.75rem}.admin-sidebar__logout{width:100%;font:inherit;color:var(--sidebar-text);cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:.625rem;padding:.625rem .875rem;transition:background .15s,color .15s;display:flex}.admin-sidebar__logout:hover{background:color-mix(in srgb, var(--color-mint-400) 12%, transparent);color:var(--color-mint-300)}.admin-main{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;overflow:hidden}.admin-topbar{height:var(--admin-topbar-h);background:var(--surface);border-bottom:1px solid var(--border);justify-content:flex-end;align-items:center;gap:.75rem;padding:0 1.5rem;display:flex;box-shadow:0 1px #00000026}.admin-topbar__user{border:1px solid var(--border);background:var(--surface-subtle);color:var(--text-h);border-radius:999px;align-items:center;gap:.5rem;padding:.375rem .75rem;font-size:.8125rem;font-weight:500;display:inline-flex}.admin-content{flex:1;min-height:0;padding:1.5rem;overflow-y:auto}.admin-page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;display:flex}.admin-page-header h1{color:var(--text-h);margin:0;font-size:1.5rem;font-weight:700}.admin-page-header p{color:var(--text-muted);margin:.25rem 0 0}.admin-page-header__actions{flex-wrap:wrap;gap:.5rem;display:flex}.admin-back-link{font:inherit;color:var(--text-muted);cursor:pointer;background:0 0;border:none;align-items:center;gap:.375rem;margin-bottom:.75rem;padding:0;font-size:.8125rem;display:inline-flex}.admin-back-link:hover{color:var(--accent)}.admin-card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:10px}.admin-toolbar{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem;display:flex}.admin-search{border:1px solid var(--border);background:var(--surface-subtle);min-width:240px;color:var(--text-muted);border-radius:8px;align-items:center;gap:.5rem;padding:.5rem .75rem;display:flex}.admin-search input{font:inherit;color:var(--text-h);background:0 0;border:none;outline:none;flex:1}.admin-table-wrap{overflow-x:auto}.admin-table{border-collapse:collapse;width:100%}.admin-table thead th{text-align:left;letter-spacing:.04em;text-transform:uppercase;color:var(--table-head-text);background:var(--table-head);white-space:nowrap;padding:.75rem 1rem;font-size:.6875rem;font-weight:700}.admin-table tbody td{border-bottom:1px solid var(--border);vertical-align:middle;padding:.875rem 1rem}.admin-table tbody tr:hover{background:var(--surface-subtle)}.admin-table__row--clickable{cursor:pointer}.admin-table__row--active,.admin-table__row--active:hover{background:var(--accent-bg)}.admin-table__edit-row td{background:var(--muted);border-bottom:1px solid var(--border);padding:1rem 1.25rem}.admin-question-edit{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:10px;flex-direction:column;gap:1.25rem;padding:1.25rem;display:flex}.admin-question-form{flex-direction:column;gap:1.25rem;display:flex}.admin-question-form__fields{border-top:1px solid var(--border);flex-direction:column;gap:1rem;padding-top:1.25rem;display:flex}.admin-question-form__mcq{flex-direction:column;gap:.75rem;display:flex}.admin-question-form__mcq-label{color:var(--text-h);margin:0;font-size:.8125rem;font-weight:600}.admin-question-form__actions{border-top:1px solid var(--border);padding-top:.25rem}.admin-question-edit__actions{border-top:1px solid var(--border);gap:.5rem;padding-top:.25rem;display:flex}.admin-table__primary{flex-direction:column;gap:.125rem;display:flex}.admin-table__primary strong{color:var(--text-h);font-size:.875rem}.admin-table__primary span{color:var(--text-muted);font-size:.75rem}.admin-badge{border-radius:999px;padding:.2rem .625rem;font-size:.75rem;font-weight:600;display:inline-flex}.admin-badge--success{background:var(--success-bg);color:var(--success-text)}.admin-badge--neutral{background:var(--muted);color:var(--neutral-text)}.admin-muted{color:var(--text-muted);font-size:.875rem}.admin-code{font-family:var(--mono,monospace);background:var(--muted);color:var(--text-h);border-radius:4px;padding:.125rem .375rem;font-size:.8125rem}.admin-row-confirm{flex-wrap:wrap;gap:.375rem;display:flex}.admin-actions{align-items:center;gap:.375rem;display:flex}.admin-icon-btn{cursor:pointer;width:32px;height:32px;color:var(--on-accent);border:none;border-radius:6px;justify-content:center;align-items:center;display:inline-flex}.admin-icon-btn--edit{background:var(--accent)}.admin-icon-btn--edit:hover{background:var(--accent-hover)}.admin-icon-btn--delete{background:var(--btn-neutral)}.admin-icon-btn--delete:hover{background:var(--danger-hover)}.admin-icon-btn--active{color:var(--primary);background:color-mix(in srgb, var(--primary) 12%, transparent)}.admin-responses-panel{border-top:1px solid var(--border);margin-top:1rem;padding-top:1rem}.admin-responses-panel__header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.75rem;display:flex}.admin-responses-panel__header h3{margin:0 0 .25rem;font-size:1rem}.admin-response-answers{flex-direction:column;gap:.75rem;display:flex}.admin-response-answer__prompt{color:var(--text-h);margin:0 0 .25rem;font-size:.8125rem;font-weight:600}.admin-response-answer__value{color:var(--text-muted);margin:0;font-size:.875rem;line-height:1.45}.admin-tabs{border-bottom:1px solid var(--border);gap:0;margin-bottom:1.25rem;display:flex;overflow-x:auto}.admin-tab{font:inherit;color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;padding:.75rem 1rem;font-size:.875rem;font-weight:500}.admin-tab--active{color:var(--accent);border-bottom-color:var(--accent)}.admin-form-section{padding:1.25rem}.admin-form-section+.admin-form-section{border-top:1px solid var(--border)}.admin-form-section h2{color:var(--text-h);margin:0 0 1rem;font-size:.9375rem;font-weight:600}.admin-form-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;display:grid}.admin-correct-checkboxes{flex-direction:column;gap:.5rem;display:flex}.admin-checkbox-row{color:var(--text-h);align-items:flex-start;gap:.5rem;font-size:.875rem;display:flex}.admin-checkbox-row input{margin-top:.2rem}.admin-field{flex-direction:column;gap:.375rem;display:flex}.admin-field label,.admin-field__label{color:var(--text-h);font-size:.8125rem;font-weight:600}.admin-field input,.admin-field select,.admin-field textarea{font:inherit;border:1px solid var(--border);background:var(--surface-subtle);color:var(--text-h);border-radius:8px;padding:.625rem .75rem}.admin-field textarea{resize:vertical;min-height:88px}.admin-field small{color:var(--text-muted);font-size:.75rem}.admin-type-toggle{gap:.375rem;display:inline-flex}.admin-type-toggle__btn{border:1px solid var(--border);background:var(--surface);font:inherit;color:var(--text);cursor:pointer;border-radius:6px;padding:.375rem .75rem;font-size:.8125rem;font-weight:500;transition:border-color .15s,color .15s,background .15s}.admin-type-toggle__btn:hover:not(.admin-type-toggle__btn--active){border-color:var(--border-strong);color:var(--text-h)}.admin-type-toggle__btn--active{border-color:var(--accent);background:var(--accent-bg);color:var(--accent-hover);font-weight:600}.admin-btn{font:inherit;cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:.375rem;padding:.625rem 1rem;font-size:.875rem;font-weight:600;display:inline-flex}.admin-btn--primary{background:var(--accent);color:var(--on-accent)}.admin-btn--primary:hover:not(:disabled){background:var(--accent-hover)}.admin-btn--secondary{background:var(--surface);border-color:var(--border);color:var(--text-h)}.admin-btn--danger{background:var(--surface);border-color:var(--danger-border);color:var(--danger)}.admin-btn:disabled{opacity:.6;cursor:not-allowed}.admin-empty{text-align:center;color:var(--text-muted);padding:3rem 1.5rem}.admin-login-page{background:linear-gradient(135deg, var(--login-gradient-from) 0%, var(--login-gradient-to) 100%);place-items:center;min-height:100svh;padding:1.5rem;display:grid}.admin-login-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;width:100%;max-width:420px;padding:2rem;box-shadow:0 8px 32px #0003}.admin-login-logo{object-fit:contain;width:100%;max-width:8rem;height:auto;margin:0 auto 1rem;display:block}.admin-login-card h1{color:var(--text-h);margin:0 0 .375rem;font-size:1.5rem}.admin-login-card>p{color:var(--text-muted);margin:0 0 1.5rem}.admin-inline-confirm{border:1px solid var(--accent-border);background:var(--accent-bg);border-radius:8px;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.8125rem;display:flex}.course-info-panel__hours{max-width:220px}.course-info-panel__meta{flex-wrap:wrap;gap:1rem;display:flex}.course-info-panel__level{min-width:180px}.course-info-panel__stats{flex-wrap:wrap;gap:1.25rem;margin:1.25rem 0 0;display:flex}.course-info-panel__stats div{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-subtle);min-width:132px;padding:.875rem 1.125rem}.course-info-panel__stats dt{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);margin:0 0 .25rem;font-size:.6875rem;font-weight:700}.course-info-panel__stats dd{color:var(--text-h);margin:0;font-size:1.125rem;font-weight:600}.course-info-panel__actions{margin-top:1.25rem}.admin-detail-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;display:grid}.admin-list-item{border:1px solid var(--border);background:var(--surface-subtle);border-radius:8px;padding:.875rem 1rem}.admin-list-item strong{color:var(--text-h);margin-bottom:.25rem;display:block}.admin-list-item p{color:var(--text-muted);margin:0;font-size:.8125rem}.admin-activation-box{border:1px dashed var(--border);text-align:center;background:var(--surface-subtle);border-radius:10px;padding:1.5rem}.admin-activation-box code{letter-spacing:.15em;color:var(--accent);margin:.75rem 0;font-size:2rem;display:block}.admin-live-banner .admin-activation-box{margin:0}.admin-live-banner__actions{flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:.75rem;display:flex}.admin-live-banner--muted{opacity:.92;border-style:dashed}.admin-modal-backdrop{z-index:1000;background:#0f172a73;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.admin-modal{width:min(100%,28rem);margin:0}.admin-card--compact{padding:.625rem .875rem}.admin-cohort-panel{flex-direction:column;gap:.5rem;display:flex}.admin-cohort-panel__heading{color:var(--text-h);margin:0;font-size:.8125rem;font-weight:600}.admin-course-header-cohort{flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin:.375rem 0 .75rem;display:flex}.admin-course-header-cohort__label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:600}.admin-cohort-panel__top{flex-wrap:wrap;align-items:center;gap:.5rem 1rem;display:flex}.admin-cohort-panel__top h2{color:var(--text-h);white-space:nowrap;margin:0;font-size:.8125rem;font-weight:600}.admin-cohort-panel__meta{flex-wrap:wrap;align-items:center;gap:.5rem .75rem;min-width:0;display:flex}.admin-cohort-panel__code{align-items:center;gap:.25rem;display:inline-flex}.admin-cohort-panel__copy{border:1px solid var(--border);background:var(--surface-subtle);width:28px;height:28px;color:var(--text-muted);border-radius:6px}.admin-cohort-panel__copy:hover{color:var(--accent);border-color:var(--accent-border);background:var(--accent-bg)}.admin-cohort-panel__meta .admin-muted{font-size:.75rem}.admin-cohort-panel__form{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.admin-cohort-panel__input{min-width:120px;max-width:200px;font:inherit;border:1px solid var(--border);background:var(--surface-subtle);color:var(--text-h);border-radius:6px;flex:1;padding:.375rem .5rem;font-size:.8125rem}.admin-cohort-panel__note{margin:0;font-size:.6875rem;line-height:1.3}.admin-invite-generate{flex-wrap:wrap;align-items:flex-end;gap:.75rem;display:flex}.admin-code--invite{letter-spacing:.04em;padding:.125rem .375rem;font-size:.8125rem;font-weight:700}.admin-live-duration{align-items:center;gap:.375rem;font-size:.8125rem;display:inline-flex}.admin-live-duration input{border:1px solid var(--border-input);width:3.25rem;height:32px;font:inherit;text-align:center;color:var(--text-h);background:var(--surface);appearance:textfield;border-radius:6px;padding:0 .375rem;font-size:.875rem;font-weight:600}.admin-live-duration input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.admin-live-duration input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.admin-live-duration input:disabled{background:var(--muted);color:var(--text-muted);border-color:var(--border)}.admin-live-duration span{color:var(--text-h);font-weight:600}.admin-live-duration input:focus{border-color:var(--accent);box-shadow:var(--focus-ring);outline:none}.admin-btn--live{min-width:0;height:32px;padding:0 .625rem;font-size:.75rem;line-height:1}.admin-btn--live.admin-btn--sm{height:32px;padding:0 .625rem}.admin-delete-confirm{flex-wrap:wrap;align-items:center;gap:.375rem;min-width:280px;display:flex}.admin-delete-confirm input{border:1px solid var(--border);min-width:140px;height:32px;font:inherit;color:var(--text-h);background:var(--surface);border-radius:6px;flex:1;padding:0 .5rem;font-size:.8125rem}.admin-delete-confirm input:focus{border-color:var(--danger);box-shadow:var(--focus-ring);outline:none}.admin-shell .material-preview{border:1px solid var(--border);background:var(--surface-subtle);border-radius:8px;min-height:280px;padding:1rem}.admin-shell .tiptap-editor{border-color:var(--border)}.admin-shell .tiptap-toolbar{background:var(--surface-subtle)}.admin-shell .tiptap-toolbar__btn--active{background:var(--accent-bg);border-color:var(--accent-border);color:var(--accent)}@media (width<=900px){.admin-shell{flex-direction:column;height:auto;min-height:100svh;overflow:visible}.admin-sidebar{width:100%;height:auto;overflow:visible}.admin-main,.admin-content{overflow:visible}.admin-sidebar__nav{flex-wrap:wrap;gap:.25rem;padding:.5rem;display:flex}.admin-nav-subitems{display:none}}.admin-ai-practice-toggle{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.admin-ai-practice-code-box{background:var(--color-surface-2,#f8fafc);border:1px solid var(--color-border,#e2e8f0);border-radius:.5rem;margin-top:1.25rem;padding:1rem 1.25rem}.admin-ai-practice-code{align-items:center;gap:.75rem;margin:.25rem 0;display:flex}.admin-ai-practice-code__value{letter-spacing:.25em;color:var(--color-primary,#4f46e5);background:var(--color-surface,#fff);border:2px dashed var(--color-primary,#4f46e5);border-radius:.375rem;padding:.4rem 1rem;font-family:Courier New,Courier,monospace;font-size:1.75rem;font-weight:700}.admin-btn--ghost{border:1px solid var(--color-border,#e2e8f0);color:var(--color-text-secondary,#64748b);background:0 0}.admin-btn--ghost:hover{background:var(--color-surface-2,#f1f5f9)}.admin-btn--sm{padding:.3rem .75rem;font-size:.8125rem}.login-page-container{min-height:calc(100svh - var(--header-h));background:radial-gradient(circle at 20% 30%,#8fc09a26 0%,#0000 60%),radial-gradient(circle at 80% 75%,#6282641a 0%,#0000 60%),#080b09;grid-template-columns:1fr;display:grid}@media (width>=900px){.login-page-container{height:calc(100svh - var(--header-h));grid-template-columns:1.1fr .9fr;overflow:hidden}}.login-showcase{color:#fff;background:0 0;flex-direction:column;justify-content:center;align-items:flex-start;padding:4rem;display:none;position:relative;overflow:hidden}@media (width>=900px){.login-showcase{display:flex}}.showcase-content{z-index:2;width:100%;max-width:520px;position:relative}.showcase-badge{background:#8fc09a0f;border:1px solid #8fc09a26;border-radius:9999px;align-items:center;gap:.5rem;width:fit-content;margin-bottom:1.5rem;padding:.4rem .875rem;display:inline-flex}.showcase-badge span{color:#a3ccac;letter-spacing:.02em;font-size:.75rem;font-weight:500}.showcase-badge svg{color:#8fc09a;flex-shrink:0}.showcase-title{color:#fff;letter-spacing:-.03em;margin-bottom:1.25rem;font-size:2.75rem;font-weight:700;line-height:1.15}.showcase-title span{color:#8fc09a;display:block}.showcase-desc{color:#88928a;margin-bottom:2.5rem;font-size:.9375rem;line-height:1.6}.showcase-features{flex-direction:column;width:100%;display:flex}.feature-item{border-top:1px solid #ffffff0a;align-items:center;gap:1rem;padding-block:1rem;display:flex}.feature-item:last-child{border-bottom:1px solid #ffffff0a}.feature-icon-wrapper{color:#8fc09a;background:#ffffff05;border:1px solid #ffffff0a;border-radius:.625rem;flex-shrink:0;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;display:flex}.feature-text-title{color:#fff;margin-bottom:.15rem;font-size:.9375rem;font-weight:600}.feature-text-desc{color:#7a857c;font-size:.8125rem}.login-form-panel{background:0 0;justify-content:center;align-items:center;padding:2rem;display:flex;position:relative}.login-form-panel:before{content:"";filter:blur(70px);pointer-events:none;z-index:1;background:radial-gradient(circle,#8fc09a38 0%,#0000 70%);width:460px;height:460px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.login-form-wrapper{z-index:2;width:100%;max-width:480px;animation:.5s cubic-bezier(.16,1,.3,1) fade-in-up;position:relative}@keyframes fade-in-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.login-form-card{-webkit-backdrop-filter:blur(32px);background:linear-gradient(155deg,#ffffff0d 0%,#fff0 35%),linear-gradient(#171e19 0%,#0d1210 100%);border:1px solid #8fc09a38;border-radius:1.5rem;flex-direction:column;gap:1.5rem;padding:2.75rem;display:flex;position:relative;box-shadow:0 40px 80px -20px #000000bf,0 12px 32px #00000073,0 0 0 1px #0000004d,0 0 60px #8fc09a14,inset 0 1px #ffffff1f}.login-form-card:before{content:"";border-radius:inherit;-webkit-mask-composite:xor;pointer-events:none;background:linear-gradient(155deg,#8fc09a73,#8fc09a00 40% 70%,#8fc09a26);padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.card-icon-header{color:#8fc09a;background:linear-gradient(155deg,#8fc09a2e,#8fc09a0a);border:1px solid #8fc09a40;border-radius:.75rem;justify-content:center;align-items:center;width:3rem;height:3rem;margin-bottom:.25rem;display:flex;box-shadow:0 4px 16px #8fc09a1f,inset 0 1px #ffffff14}.login-form-header{margin-bottom:.25rem}.login-form-header h1{letter-spacing:-.025em;color:#fff;margin-bottom:.375rem;font-size:1.875rem;font-weight:700}.login-form-header p{color:#88928a;font-size:.875rem;line-height:1.5}.login-input-group{flex-direction:column;gap:.5rem;display:flex}.login-input-group label{color:#fff;font-size:.8125rem;font-weight:600}.login-input-wrapper{align-items:center;width:100%;display:flex;position:relative}.login-input-icon{color:#627266;pointer-events:none;justify-content:center;align-items:center;transition:color .2s;display:flex;position:absolute;left:1rem}.login-input-field{color:#fff;background:#0003;border:1px solid #ffffff14;border-radius:.75rem;width:100%;padding:.875rem 1rem .875rem 2.75rem;font-size:.875rem;transition:all .2s}.login-input-field::placeholder{color:#48544c}.login-input-field:focus{background:#0000004d;border-color:#8fc09a;outline:none;box-shadow:0 0 0 3px #8fc09a26}.login-input-field:focus+.login-input-icon{color:#8fc09a}.login-btn-submit{color:#a3ccac;cursor:pointer;-webkit-backdrop-filter:blur(12px);background:linear-gradient(135deg,#8fc09a29 0%,#8fc09a0d 100%);border:1px solid #8fc09a4d;border-radius:.75rem;justify-content:center;align-items:center;gap:.625rem;width:100%;padding:.875rem 1.5rem;font-size:.875rem;font-weight:600;transition:all .2s;display:flex;box-shadow:0 8px 24px #8fc09a1a,inset 0 1px #ffffff1a}.login-btn-submit:hover:not(:disabled){background:linear-gradient(135deg,#8fc09a40 0%,#8fc09a1a 100%);border-color:#8fc09a73;transform:translateY(-1px);box-shadow:0 12px 28px #8fc09a26}.login-btn-submit:active:not(:disabled){transform:translateY(1px)}.login-btn-submit:disabled{opacity:.65;cursor:not-allowed}.login-btn-secondary{color:#fff;cursor:pointer;background:0 0;border:1px solid #ffffff14;border-radius:.75rem;width:100%;padding:.75rem 1.5rem;font-size:.875rem;font-weight:600;transition:all .2s}.login-btn-secondary:hover{background:#ffffff05;border-color:#ffffff26}.login-separator{text-align:center;color:#556257;align-items:center;margin-block:.25rem;font-size:.75rem;display:flex}.login-separator:before,.login-separator:after{content:"";border-bottom:1px solid #ffffff0d;flex:1}.login-separator:not(:empty):before{margin-right:.75em}.login-separator:not(:empty):after{margin-left:.75em}.login-dev-otp-card{background:#8fc09a0d;border:1px solid #8fc09a26;border-radius:.75rem;flex-direction:column;gap:.25rem;padding:.875rem 1.125rem;display:flex}.login-dev-otp-card span{text-transform:uppercase;letter-spacing:.08em;color:#7a857c;font-size:.6875rem;font-weight:700}.login-dev-otp-card code{letter-spacing:.125em;color:#8fc09a;background:0 0;padding:0;font-size:1.125rem;font-weight:700}.login-footnote{text-align:center;color:#7a857c;font-size:.8125rem}.login-footnote a{color:#8fc09a;font-weight:600;text-decoration:none}.login-footnote a:hover{text-decoration:underline}.login-spinner{border:2px solid #8fc09a40;border-top-color:#a3ccac;border-radius:50%;width:1.125rem;height:1.125rem;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}html[data-theme=light] .login-page-container{background:radial-gradient(circle at 20% 30%,#6282641f 0%,#0000 60%),radial-gradient(circle at 80% 75%,#8fc09a14 0%,#0000 60%),#f4f6f4}html[data-theme=light] .login-showcase{color:#1a251e}html[data-theme=light] .showcase-badge{background:#62826414;border:1px solid #62826433}html[data-theme=light] .showcase-badge span{color:#445a46}html[data-theme=light] .showcase-badge svg{color:#526f54}html[data-theme=light] .showcase-title{color:#1a251e}html[data-theme=light] .showcase-title span{color:#526f54}html[data-theme=light] .showcase-desc{color:#525e56}html[data-theme=light] .feature-item{border-top-color:#0000000f}html[data-theme=light] .feature-item:last-child{border-bottom-color:#0000000f}html[data-theme=light] .feature-icon-wrapper{color:#526f54;background:#6282640a;border-color:#62826426}html[data-theme=light] .feature-text-title{color:#1a251e}html[data-theme=light] .feature-text-desc{color:#525e56}html[data-theme=light] .login-form-panel:before{background:radial-gradient(circle,#62826414 0%,#0000 70%)}html[data-theme=light] .login-form-card{-webkit-backdrop-filter:blur(24px);background:#eef6f0e6;border:1px solid #6282642e;box-shadow:0 40px 80px -20px #526f5426,0 12px 32px #526f5414,inset 0 1px #fff9}html[data-theme=light] .login-form-card:before{background:linear-gradient(155deg,#62826440,#62826400 40%)}html[data-theme=light] .card-icon-header{color:#526f54;background:#6282640f;border:1px solid #6282642e;box-shadow:0 4px 16px #526f540f,inset 0 1px #fffc}html[data-theme=light] .login-form-header h1{color:#1a251e}html[data-theme=light] .login-form-header p{color:#525e56}html[data-theme=light] .login-input-group label{color:#1a251e}html[data-theme=light] .login-input-icon{color:#8fa093}html[data-theme=light] .login-input-field{color:#1a251e;background:#fff9;border-color:#62826433}html[data-theme=light] .login-input-field::placeholder{color:#8fa093}html[data-theme=light] .login-input-field:focus{background:#fff;border-color:#526f54;box-shadow:0 0 0 3px #526f5426}html[data-theme=light] .login-input-field:focus+.login-input-icon{color:#526f54}html[data-theme=light] .login-btn-submit{color:#445a46;background:linear-gradient(135deg,#526f541f 0%,#526f540a 100%);border:1px solid #526f5459;box-shadow:0 8px 24px #526f540a,inset 0 1px #ffffff80}html[data-theme=light] .login-btn-submit:hover:not(:disabled){background:linear-gradient(135deg,#526f5433 0%,#526f5414 100%);border-color:#526f5480;box-shadow:0 12px 28px #526f541a}html[data-theme=light] .login-btn-submit .login-spinner{border-color:#445a46 #526f5433 #526f5433}html[data-theme=light] .login-btn-secondary{color:#1a251e;border-color:#62826433}html[data-theme=light] .login-btn-secondary:hover{background:#6282640a;border-color:#6282644d}html[data-theme=light] .login-separator{color:#8fa093}html[data-theme=light] .login-separator:before,html[data-theme=light] .login-separator:after{border-bottom-color:#00000014}html[data-theme=light] .login-dev-otp-card{background:#6282640a;border-color:#62826426}html[data-theme=light] .login-dev-otp-card span{color:#525e56}html[data-theme=light] .login-dev-otp-card code{color:#526f54}html[data-theme=light] .login-footnote{color:#525e56}html[data-theme=light] .login-footnote a{color:#526f54}.quiz-session{min-height:calc(100svh - var(--header-h));flex-direction:column;gap:1.25rem;display:flex}.quiz-session__error-card{text-align:center;flex-direction:column;align-items:center;gap:1rem;max-width:28rem;margin:3rem auto;display:flex}.quiz-session__topbar{top:calc(var(--header-h) + .75rem);z-index:20;border:1px solid var(--border);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(14px);box-shadow:var(--shadow);flex-direction:column;gap:.875rem;padding:1rem 1.25rem;display:flex;position:sticky}.quiz-session__meta{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.quiz-session__meta h1{letter-spacing:-.01em;margin:0 0 .125rem;font-size:1.375rem}.quiz-session__meta p{color:var(--text-muted);margin:0;font-size:.8125rem}.quiz-session__meta-text{min-width:0}.quiz-session__topbar-right{flex-shrink:0;align-items:center;gap:.75rem;display:flex}.quiz-nav-toggle{border:1px solid var(--border);background:var(--surface);color:var(--text-h);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:.375rem;padding:.5rem .75rem;font-size:.8125rem;font-weight:600;display:none}.quiz-nav-toggle:hover{border-color:var(--accent-border);color:var(--accent)}.quiz-progress{flex-direction:column;gap:.5rem;display:flex}.quiz-progress__track{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:.25rem;display:grid}.quiz-progress__segment{background:var(--muted);cursor:pointer;border:none;border-radius:999px;height:6px;padding:0;transition:background .25s,transform .15s}.quiz-progress__segment:hover{transform:scaleY(1.4)}.quiz-progress__segment--answered{background:var(--accent)}.quiz-progress__segment--flagged{background:var(--warm)}.quiz-progress__segment--current,.quiz-progress__segment:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.quiz-progress__count{color:var(--text-muted);align-items:center;gap:.625rem;font-size:.75rem;font-weight:600;display:flex}.quiz-progress__count strong{color:var(--text-h);font-weight:700}.quiz-progress__dot{border-radius:999px;width:6px;height:6px;display:inline-block}.quiz-progress__dot--flag{background:var(--warm)}.quiz-timer{flex-shrink:0;justify-content:center;align-items:center;width:60px;height:60px;display:inline-flex;position:relative}.quiz-timer__ring{position:absolute;inset:0;transform:rotate(0)}.quiz-timer__ring-track{stroke:var(--muted)}.quiz-timer__ring-fill{stroke:var(--accent);transition:stroke-dashoffset 1s linear,stroke .6s}.quiz-timer--warm .quiz-timer__ring-fill{stroke:var(--warm)}.quiz-timer--critical .quiz-timer__ring-fill{stroke:var(--danger)}@media (prefers-reduced-motion:no-preference){.quiz-timer--critical .quiz-timer__ring-fill{animation:1.8s ease-in-out infinite quiz-timer-breathe}}@keyframes quiz-timer-breathe{0%,to{opacity:1}50%{opacity:.55}}.quiz-timer__face{color:var(--text-h);flex-direction:column;align-items:center;gap:.0625rem;display:flex}.quiz-timer__face svg{color:var(--text-muted)}.quiz-timer__time{font-variant-numeric:tabular-nums;font-size:.75rem;font-weight:700}.quiz-timer__label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);white-space:nowrap;font-size:.625rem;font-weight:600;position:absolute;bottom:-1.15rem;left:50%;transform:translate(-50%)}.quiz-session__body{flex:1;grid-template-columns:208px minmax(0,1fr);align-items:start;gap:1.25rem;display:grid}.quiz-nav-rail{top:calc(var(--header-h) + 6.5rem);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow);max-height:calc(100svh - var(--header-h) - 8rem);flex-direction:column;gap:.875rem;padding:1rem;display:flex;position:sticky;overflow-y:auto}.quiz-nav-rail__title{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin:0;font-size:.6875rem;font-weight:700}.quiz-nav-rail__grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem;display:grid}.quiz-nav-item{aspect-ratio:1;border:1px solid var(--border);background:var(--bg);width:100%;min-height:2.25rem;color:var(--text);font:inherit;cursor:pointer;border-radius:.5rem;justify-content:center;align-items:center;font-size:.8125rem;font-weight:600;transition:transform .15s,border-color .15s,background .15s,color .15s;display:inline-flex;position:relative}.quiz-nav-item:hover{border-color:var(--accent-border);transform:translateY(-1px)}.quiz-nav-item:active{transform:translateY(0)scale(.94)}.quiz-nav-item--answered{background:var(--accent-bg);border-color:var(--accent-border);color:var(--accent)}.quiz-nav-item--current{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 22%, transparent);color:var(--text-h)}.quiz-nav-item--flagged:after{content:"";background:var(--warm);border:1.5px solid var(--surface);border-radius:999px;width:8px;height:8px;position:absolute;top:-3px;right:-3px}.quiz-nav-rail__legend{border-top:1px solid var(--border);color:var(--text-muted);flex-direction:column;gap:.375rem;padding-top:.75rem;font-size:.75rem;display:flex}.quiz-nav-rail__legend-item{align-items:center;gap:.5rem;display:flex}.quiz-nav-rail__legend-swatch{border:1px solid var(--border);border-radius:999px;flex-shrink:0;width:.625rem;height:.625rem}.quiz-nav-rail__legend-swatch--answered{background:var(--accent);border-color:var(--accent)}.quiz-nav-rail__legend-swatch--current{background:var(--surface);border:2px solid var(--accent)}.quiz-nav-rail__legend-swatch--flagged{background:var(--warm);border-color:var(--warm)}.quiz-session__main{flex-direction:column;align-items:center;min-width:0;display:flex}.quiz-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);width:100%;max-width:720px;box-shadow:var(--shadow);padding:2rem 2.25rem 2.25rem;position:relative;overflow:hidden}.quiz-card:after{content:"";background:radial-gradient(circle, color-mix(in srgb, var(--accent) 16%, transparent) 0%, transparent 70%);filter:blur(24px);pointer-events:none;width:260px;height:260px;position:absolute;top:-35%;right:-10%}.quiz-card__eyebrow{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1.25rem;display:flex;position:relative}.quiz-card__eyebrow-left{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);align-items:center;gap:.625rem;font-size:.75rem;font-weight:700;display:flex}.quiz-card__badge{background:var(--accent-bg);color:var(--accent);text-transform:none;letter-spacing:.02em;border-radius:999px;align-items:center;padding:.2rem .625rem;font-size:.6875rem;font-weight:700;display:inline-flex}.quiz-flag-btn{border:1px solid var(--border);background:var(--surface);color:var(--text-muted);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:.375rem;padding:.375rem .75rem;font-size:.75rem;font-weight:600;transition:border-color .15s,background .15s,color .15s,transform .15s;display:inline-flex;position:relative}.quiz-flag-btn:hover{border-color:var(--warm-border);color:var(--warm)}.quiz-flag-btn:active{transform:scale(.95)}.quiz-flag-btn--active{border-color:var(--warm-border);background:var(--warm-bg);color:var(--warm)}.quiz-flag-btn--active svg{fill:currentColor}.quiz-card__prompt{color:var(--text-h);max-width:62ch;margin:0 0 .375rem;font-size:1.375rem;font-weight:700;line-height:1.4;position:relative}.quiz-card__hint{color:var(--text-muted);margin:0 0 1.25rem;font-size:.875rem;font-style:italic;position:relative}.quiz-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid;position:relative}.quiz-option{border:1.5px solid var(--border);border-radius:var(--radius);background:var(--bg);cursor:pointer;align-items:flex-start;gap:.75rem;padding:.875rem 1rem;font-size:.9375rem;line-height:1.45;transition:border-color .15s,background .15s,transform .12s,box-shadow .15s;display:flex;position:relative}.quiz-option:hover{border-color:var(--accent-border);box-shadow:0 6px 16px color-mix(in srgb, var(--accent) 10%, transparent);transform:translateY(-2px)}.quiz-option:active{transform:translateY(0)scale(.985)}.quiz-option input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.quiz-option:has(input:focus-visible){box-shadow:var(--focus-ring)}.quiz-option__indicator{border:1.5px solid var(--border-strong);color:#0000;background:var(--surface);flex-shrink:0;justify-content:center;align-items:center;width:1.25rem;height:1.25rem;margin-top:.05rem;transition:border-color .15s,background .15s,color .15s,transform .2s cubic-bezier(.34,1.56,.64,1);display:inline-flex}.quiz-option__indicator--radio{border-radius:999px}.quiz-option__indicator--checkbox{border-radius:.3125rem}.quiz-option__indicator svg{width:.8125rem;height:.8125rem;transition:transform .2s cubic-bezier(.34,1.56,.64,1);transform:scale(0)}.quiz-option__text{min-width:0;color:var(--text-h);flex:1}.quiz-option:has(input:checked){border-color:var(--accent);background:var(--accent-bg)}.quiz-option:has(input:checked) .quiz-option__indicator{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.quiz-option:has(input:checked) .quiz-option__indicator svg{transform:scale(1)}@media (prefers-reduced-motion:no-preference){.quiz-option:has(input:checked){animation:.25s quiz-option-pop}}@keyframes quiz-option-pop{0%{transform:scale(.985)}50%{transform:scale(1.015)}to{transform:scale(1)}}.quiz-card__answer{resize:vertical;width:100%;min-height:12rem;line-height:1.6;font:inherit;border-radius:var(--radius);border:1.5px solid var(--border);background:var(--bg);color:var(--text-h);flex:1;padding:1rem 1.125rem;font-size:.9375rem;transition:border-color .15s,box-shadow .15s}.quiz-card__answer:focus{border-color:var(--accent);box-shadow:var(--focus-ring);outline:none}.quiz-card__answer-meta{color:var(--text-muted);justify-content:flex-end;margin-top:.5rem;font-size:.75rem;display:flex}.quiz-session__footer{z-index:15;border:1px solid var(--border);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--surface) 94%, transparent);-webkit-backdrop-filter:blur(14px);box-shadow:var(--shadow);justify-content:space-between;align-items:center;gap:.75rem;margin-top:auto;padding:.875rem 1.25rem;display:flex;position:sticky;bottom:0}.quiz-nav-btn{border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);color:var(--text-h);font:inherit;cursor:pointer;align-items:center;gap:.375rem;padding:.625rem 1.125rem;font-size:.875rem;font-weight:600;transition:border-color .15s,transform .15s,background .15s;display:inline-flex}.quiz-nav-btn:hover:not(:disabled){border-color:var(--accent-border);transform:translateY(-1px)}.quiz-nav-btn:active:not(:disabled){transform:translateY(0)}.quiz-nav-btn:disabled{opacity:.45;cursor:not-allowed}.quiz-nav-btn--primary{background:var(--accent);color:var(--on-accent);box-shadow:0 4px 16px color-mix(in srgb, var(--accent) 30%, transparent);border:none}.quiz-nav-btn--primary:hover:not(:disabled){background:var(--accent-hover)}.quiz-session__footer-center{color:var(--text-muted);align-items:center;gap:.5rem;font-size:.8125rem;font-weight:600;display:flex}.quiz-nav-drawer-backdrop{z-index:60;background:color-mix(in srgb, var(--color-sage-950) 45%, transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);position:fixed;inset:0}.quiz-nav-drawer{z-index:61;background:var(--surface);border-radius:1.25rem 1.25rem 0 0;max-height:75svh;padding:1.25rem;position:fixed;inset:auto 0 0;overflow-y:auto;box-shadow:0 -12px 40px #00000040}.quiz-nav-drawer__header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.quiz-nav-drawer__header h2{margin:0;font-size:1rem}.quiz-nav-drawer__close{border:1px solid var(--border);background:var(--surface);width:2rem;height:2rem;color:var(--text-h);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.quiz-nav-drawer__grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:.625rem;display:grid}.quiz-review-backdrop{z-index:70;background:color-mix(in srgb, var(--color-sage-950) 55%, transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.quiz-review-modal{border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--surface);width:100%;max-width:32rem;max-height:85svh;padding:1.75rem;overflow-y:auto;box-shadow:0 24px 64px #00000040}.quiz-review-modal h2{margin:0 0 .375rem;font-size:1.25rem}.quiz-review-modal__subtitle{color:var(--text-muted);margin:0 0 1.25rem;font-size:.875rem}.quiz-review-modal__stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:.625rem;margin-bottom:1.25rem;display:grid}.quiz-review-stat{border-radius:var(--radius);border:1px solid var(--border);background:var(--surface-subtle);flex-direction:column;align-items:center;gap:.125rem;padding:.75rem .5rem;display:flex}.quiz-review-stat strong{color:var(--text-h);font-size:1.25rem}.quiz-review-stat span{text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);font-size:.6875rem;font-weight:600}.quiz-review-stat--warn strong{color:var(--warm)}.quiz-review-modal__list{flex-direction:column;gap:.5rem;max-height:40svh;margin-bottom:1.5rem;display:flex;overflow-y:auto}.quiz-review-row{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;align-items:center;gap:.75rem;padding:.625rem .75rem;font-size:.8125rem;transition:border-color .15s,background .15s;display:flex}.quiz-review-row:hover{border-color:var(--accent-border)}.quiz-review-row__index{background:var(--muted);width:1.5rem;height:1.5rem;color:var(--text-h);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:inline-flex}.quiz-review-row--answered .quiz-review-row__index{background:var(--accent);color:var(--on-accent)}.quiz-review-row__prompt{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-h);flex:1;overflow:hidden}.quiz-review-row__status{text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);flex-shrink:0;font-size:.6875rem;font-weight:700}.quiz-review-row--flagged .quiz-review-row__status{color:var(--warm)}.quiz-review-modal__actions{justify-content:flex-end;gap:.75rem;display:flex}.quiz-timeout-overlay{z-index:80;text-align:center;background:color-mix(in srgb, var(--bg) 92%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);flex-direction:column;justify-content:center;align-items:center;gap:1rem;display:flex;position:fixed;inset:0}.quiz-timeout-overlay h2{color:var(--text-h);margin:0}.quiz-timeout-overlay p{color:var(--text-muted);margin:0}.quiz-timeout-overlay__spinner{border:3px solid var(--muted);border-top-color:var(--accent);border-radius:999px;width:2.5rem;height:2.5rem}@media (prefers-reduced-motion:no-preference){.quiz-timeout-overlay__spinner{animation:.8s linear infinite quiz-spin}}@keyframes quiz-spin{to{transform:rotate(360deg)}}.quiz-complete{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.75rem;min-height:60svh;display:flex;position:relative;overflow:hidden}.quiz-complete__badge{background:var(--success-bg);width:4.5rem;height:4.5rem;color:var(--success-text);box-shadow:0 0 0 8px color-mix(in srgb, var(--success-text) 10%, transparent);border-radius:999px;justify-content:center;align-items:center;margin-bottom:.5rem;display:inline-flex}@media (prefers-reduced-motion:no-preference){.quiz-complete__badge{animation:.5s cubic-bezier(.34,1.56,.64,1) quiz-complete-pop}}@keyframes quiz-complete-pop{0%{opacity:0;transform:scale(0)}70%{opacity:1;transform:scale(1.08)}to{transform:scale(1)}}.quiz-complete h1{margin:0;font-size:1.5rem}.quiz-complete p{max-width:30rem;color:var(--text-muted);margin:0}.quiz-complete__score{color:var(--accent);margin-top:.25rem;font-size:.9375rem;font-weight:700}.quiz-complete__confetti{pointer-events:none;position:absolute;inset:0;overflow:hidden}.quiz-complete__confetti span{background:var(--accent);opacity:0;border-radius:2px;width:8px;height:8px;position:absolute;top:45%;left:50%}@media (prefers-reduced-motion:no-preference){.quiz-complete__confetti span{animation:1.1s ease-out forwards quiz-confetti-burst}}@keyframes quiz-confetti-burst{0%{opacity:1;transform:translate(-50%,-50%)rotate(0)translateY(0)}to{transform:translate(calc(-50% + var(--tx,0px)), calc(-50% + var(--ty,-140px))) rotate(var(--tr,180deg));opacity:0}}.quiz-skeleton{flex-direction:column;gap:1.25rem;width:100%;max-width:720px;margin:2rem auto;display:flex}.quiz-skeleton__block{border-radius:var(--radius-lg);background:linear-gradient(100deg, var(--muted) 30%, color-mix(in srgb, var(--muted) 50%, var(--surface)) 50%, var(--muted) 70%);background-size:200% 100%}@media (prefers-reduced-motion:no-preference){.quiz-skeleton__block{animation:1.4s ease-in-out infinite quiz-shimmer}}@keyframes quiz-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (width<=900px){.quiz-session__body{grid-template-columns:1fr}.quiz-nav-rail{display:none}.quiz-nav-toggle{display:inline-flex}}@media (width<=640px){.quiz-options{grid-template-columns:1fr}.quiz-card{padding:1.5rem 1.25rem 1.75rem}.quiz-card__prompt{font-size:1.1875rem}.quiz-session__footer{flex-wrap:wrap}.quiz-review-modal__stats{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=1400px){.quiz-card{max-width:760px}}.app-shell{background:var(--bg);flex-direction:column;min-height:100svh;display:flex}.app-main--flush{flex-direction:column;flex:1;min-height:100svh;display:flex}.app-main{flex:1;width:100%}.site-header{z-index:100;height:var(--header-h);border-bottom:1px solid var(--border);background:var(--surface);-webkit-backdrop-filter:blur(12px);transition:background .3s,border-color .3s;position:sticky;top:0}html[data-theme=light] .site-header{background:#eef6f0;border-color:#c8d6c966}html[data-theme=dark] .site-header{background:#0c0f0db3;border-color:#ffffff0a}.site-header__inner{align-items:center;gap:16px;height:100%;display:flex}.site-header__brand{flex-shrink:0;align-items:center;text-decoration:none;display:inline-flex}.site-header__logo{object-fit:contain;object-position:left center;width:auto;max-width:min(12rem,42vw);height:2.5rem;display:block}.site-header__nav{flex:1;align-items:center;gap:4px;display:flex}.site-header__link{border-radius:var(--radius);color:var(--text);padding:.5rem .75rem;font-size:.875rem;font-weight:500;text-decoration:none}.site-header__link:hover{background:var(--code-bg);color:var(--text-h)}.site-header__link.active{background:var(--accent-bg);color:var(--accent)}.site-header__brand:hover{opacity:.9}.page-back-link{color:var(--accent);align-items:center;gap:.25rem;margin-bottom:1rem;font-size:.875rem;font-weight:500;text-decoration:none;display:inline-flex}.page-back-link:hover{text-decoration:underline}.site-header .layout-container{width:100%;max-width:none;padding-inline:3rem}.site-header__actions{align-items:center;gap:16px;margin-left:auto;display:flex}.theme-toggle{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);width:36px;height:36px;color:var(--text-h);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.theme-toggle:hover{border-color:var(--accent-border);background:var(--accent-bg);color:var(--accent)}.theme-toggle:focus-visible{box-shadow:var(--focus-ring);outline:none}.theme-toggle--admin{background:var(--surface)}.site-header__user{border:1px solid var(--border);background:var(--code-bg);border-radius:999px;align-items:center;gap:8px;padding:4px 12px 4px 4px;display:flex}.site-header__avatar{background:var(--accent-bg);width:28px;height:28px;color:var(--accent);border-radius:50%;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:inline-flex}.site-header__user-text{flex-direction:column;gap:0;max-width:160px;display:flex}.site-header__email{color:var(--text-h);text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;overflow:hidden}.site-header__role{color:var(--accent);text-transform:uppercase;letter-spacing:.05em;font-size:.6875rem;font-weight:600}.site-header__logout{font:inherit;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);color:var(--text-h);cursor:pointer;padding:.5rem .875rem;font-size:.875rem;font-weight:500}.site-header__logout:hover{border-color:var(--accent-border)}.site-header__login{border-radius:var(--radius);-webkit-backdrop-filter:blur(8px);padding:.5rem 1.125rem;font-size:.875rem;font-weight:600;text-decoration:none;transition:all .2s}html[data-theme=light] .site-header__login{color:#445a46;background:linear-gradient(135deg,#526f541f 0%,#526f540a 100%);border:1px solid #526f5459;box-shadow:0 4px 12px #526f540a}html[data-theme=light] .site-header__login:hover{background:linear-gradient(135deg,#526f5433 0%,#526f5414 100%);border-color:#526f5473}html[data-theme=dark] .site-header__login{color:#8fc09a;background:linear-gradient(135deg,#8fc09a29 0%,#8fc09a0f 100%);border:1px solid #8fc09a47;box-shadow:0 4px 12px #8fc09a14}html[data-theme=dark] .site-header__login:hover{background:linear-gradient(135deg,#8fc09a40 0%,#8fc09a1a 100%);border-color:#8fc09a73}.site-header__loading{color:var(--text);font-size:.875rem}.page{width:100%;max-width:var(--container-max);padding:1.5rem var(--space-page) 2.5rem;flex-direction:column;align-items:stretch;gap:1.5rem;margin:0 auto;display:flex}.page--wide{max-width:var(--container-max)}.page--centered{width:100%;max-width:420px;min-height:calc(100svh - var(--header-h) - 2rem);justify-content:center;align-items:stretch;margin-inline:auto;padding-block:2rem}.page--centered .form-card{align-self:stretch;max-width:none}.page-header--centered{text-align:center;flex-direction:column;align-items:center}.page-header--centered p{max-width:none}.page-header{text-align:left;color:var(--text-h);flex-direction:column;gap:.375rem;display:flex}.page-header p{color:var(--text);max-width:36rem;font-size:.9375rem}.page-header--left{flex-direction:row;align-items:flex-start;gap:1rem}.page-header--left svg{color:var(--accent);flex-shrink:0;margin-top:.25rem}.page-header--left{align-items:center}.page-header--left>svg,.page-header--left>.page-header__icon{background:linear-gradient(155deg, color-mix(in srgb, var(--accent) 22%, transparent), color-mix(in srgb, var(--accent) 6%, transparent));border:1px solid var(--accent-border);width:3rem;height:3rem;color:var(--accent);box-shadow:0 4px 16px color-mix(in srgb, var(--accent) 14%, transparent);border-radius:.875rem;justify-content:center;align-items:center;margin-top:0;padding:.625rem;display:flex}.page-loading{padding:3rem var(--space-page);text-align:center;color:var(--text)}.form-card,.confirm-card,.highlight-card,.activation-card{text-align:left;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);width:100%;max-width:400px;box-shadow:var(--shadow);flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.page:not(.page--wide) .form-card{align-self:flex-start}.confirm-card,.highlight-card{max-width:100%}.highlight-card{background:var(--surface-subtle);border-color:var(--accent-border)}.form-footnote{color:var(--text);font-size:.875rem}.form-footnote a{color:var(--accent)}.confirm-actions{flex-wrap:wrap;gap:.75rem;display:flex}.btn-primary,.btn-secondary,.btn-link{font:inherit;cursor:pointer;border-radius:var(--radius)}.btn-primary{background:var(--accent);color:var(--on-accent);border:none;padding:.625rem 1rem;font-size:.875rem;font-weight:600}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{border:1px solid var(--border);background:var(--surface);color:var(--text-h);align-items:center;gap:.5rem;padding:.5rem .875rem;font-size:.875rem;font-weight:500;text-decoration:none;display:inline-flex}.btn-link{color:var(--accent);background:0 0;border:none;padding:0;font-size:.875rem;text-decoration:underline}.btn-danger{background:var(--danger);color:var(--on-accent);border-radius:var(--radius);font:inherit;cursor:pointer;border:none;padding:.5rem .875rem;font-size:.875rem;font-weight:600}.btn-danger-outline{border:1px solid var(--danger);color:var(--danger);border-radius:var(--radius);font:inherit;cursor:pointer;background:0 0;padding:.5rem .875rem;font-size:.875rem;font-weight:600}.inline-confirm{border:1px solid var(--danger-border);border-radius:var(--radius);background:var(--danger-bg);flex-wrap:wrap;align-items:center;gap:.5rem;padding:.75rem;font-size:.875rem;display:flex}.quiz-manager{grid-template-columns:minmax(240px,300px) minmax(0,1fr);align-items:start;gap:1rem;display:grid}.quiz-manager__sidebar{flex-direction:column;gap:1rem;display:flex}.quiz-manager__create,.quiz-manager__list{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow);padding:1.25rem}.quiz-manager__create h2,.quiz-manager__list h2{margin:0 0 1rem;font-size:1rem}.quiz-manager__create label{flex-direction:column;gap:.375rem;margin-bottom:.75rem;font-size:.875rem;font-weight:500;display:flex}.quiz-manager__create input,.quiz-manager__create select{font:inherit;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg);color:var(--text-h);padding:.625rem .75rem;font-size:.9375rem}.quiz-manager__item{text-align:left;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);cursor:pointer;width:100%;font:inherit;flex-direction:column;gap:.25rem;margin-bottom:.5rem;padding:.75rem;display:flex}.quiz-manager__item strong{color:var(--text-h);font-size:.9375rem}.quiz-manager__item span{color:var(--text);font-size:.8125rem}.quiz-manager__item--active{border-color:var(--accent-border);background:var(--accent-bg)}.quiz-manager__detail{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow);padding:1.25rem}.quiz-manager__empty{text-align:center;padding:2rem 1rem}.quiz-manager__header{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;padding-bottom:1rem;display:flex}.quiz-manager__header h2{margin:0;font-size:1.25rem}.quiz-manager__section{border-bottom:1px solid var(--border);padding:1rem 0}.quiz-manager__section:last-child{border-bottom:none;padding-bottom:0}.quiz-manager__section h3{margin:0 0 1rem;font-size:1rem}@media (width<=900px){.quiz-manager{grid-template-columns:1fr}}.form-card label,.quiz-question label{color:var(--text-h);flex-direction:column;gap:.375rem;font-size:.875rem;font-weight:500;display:flex}.form-card input,.form-card select,.form-card textarea,.quiz-question textarea:not(.quiz-question__answer){font:inherit;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg);color:var(--text-h);padding:.625rem .75rem;font-size:.9375rem}.dev-otp{background:var(--code-bg);border-radius:var(--radius);padding:.625rem .75rem;font-size:.8125rem}.section-block{text-align:left;width:100%;margin-bottom:2rem}.course-action-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;margin-bottom:2rem;display:grid}.course-action-cards .section-block{margin-bottom:0}.course-action-cards .section-block:has(.ai-practice--unlocked){grid-column:1/-1}@media (width<=768px){.course-action-cards{grid-template-columns:1fr}}.section-block h2{color:var(--text-h);letter-spacing:-.01em;margin-bottom:1rem;font-size:1.25rem;font-weight:700}.highlight-card h3{margin-bottom:.5rem;font-size:1.125rem}.enrolled-course-grid{grid-template-columns:repeat(auto-fill,minmax(320px,520px));gap:1rem;display:grid}.enrolled-course-card{border:1px solid var(--accent-border);border-radius:var(--radius-lg);background:linear-gradient(155deg, color-mix(in srgb, var(--accent) 10%, transparent) 0%, transparent 50%), var(--surface);max-width:520px;box-shadow:var(--shadow), 0 0 0 1px color-mix(in srgb, var(--accent) 8%, transparent);padding:1.5rem}.enrolled-course-card__title{color:var(--text-h);font-weight:700}.enrolled-course-card__header{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.75rem;display:flex}.enrolled-course-card__badge{border:1px solid var(--success-text);background:var(--success-bg);color:var(--success-text);border-radius:999px;padding:.2rem .625rem;font-size:.75rem;font-weight:600}.enrolled-course-card .course-meta span{border:1px solid var(--accent-border);background:var(--surface);color:var(--text-h);border-radius:999px;padding:.2rem .625rem;font-size:.75rem;font-weight:600}.enrolled-course-card__title{margin-bottom:.375rem;font-size:1.125rem}.enrolled-course-card__instructor{color:var(--text);margin-bottom:1rem;font-size:.875rem}.enrolled-course-card__insights{color:var(--text-h);flex-wrap:wrap;gap:.75rem 1.25rem;margin:0 0 1.25rem;padding:0;font-size:.875rem;list-style:none;display:flex}.enrolled-course-card__insights li{align-items:center;gap:.375rem;display:inline-flex}.enrolled-course-card__actions{flex-wrap:wrap;gap:.625rem;display:flex}.home-enroll-header{margin-bottom:1rem}.home-enroll-header__subtitle{margin-bottom:0}.home-enroll-form{border:1px solid var(--accent-border);border-radius:var(--radius-lg);background:linear-gradient(155deg, color-mix(in srgb, var(--accent) 8%, transparent) 0%, transparent 45%), var(--surface);max-width:640px;box-shadow:var(--shadow), 0 0 0 1px color-mix(in srgb, var(--accent) 6%, transparent);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.875rem;padding:1.5rem;display:grid}.home-enroll-form label{letter-spacing:.01em;color:var(--text-h);flex-direction:column;gap:.5rem;font-size:.8125rem;font-weight:600;display:flex}.home-enroll-form input{border:1px solid var(--border-input);border-radius:var(--radius);width:100%;font:inherit;letter-spacing:.04em;background:var(--bg);color:var(--text-h);padding:.75rem .875rem;font-size:.9375rem;font-weight:600;transition:border-color .15s,box-shadow .15s}.home-enroll-form input::placeholder{letter-spacing:normal;color:var(--text-muted);font-weight:400}.home-enroll-form input:focus{border-color:var(--accent);box-shadow:var(--focus-ring);outline:none}.home-enroll-form .btn-primary{box-shadow:0 4px 16px color-mix(in srgb, var(--accent) 25%, transparent);padding:.75rem 1.25rem;font-size:.9375rem;transition:transform .15s,box-shadow .15s,background .15s}.home-enroll-form .btn-primary:hover:not(:disabled){box-shadow:0 6px 20px color-mix(in srgb, var(--accent) 35%, transparent);transform:translateY(-1px)}.section-subtitle{color:var(--text);margin-bottom:1rem;font-size:.9375rem}.course-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem;display:grid}.course-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow);padding:1.5rem;transition:transform .18s,box-shadow .18s,border-color .18s;position:relative}.course-card:not(.course-card--locked):hover{border-color:var(--accent-border);box-shadow:0 12px 28px color-mix(in srgb, var(--accent) 14%, transparent), var(--shadow);transform:translateY(-3px)}.course-card--locked{background:color-mix(in srgb, var(--surface) 88%, transparent)}.course-card--locked h2,.course-card--locked p:not(.course-card__hint){opacity:.6}.course-card__header{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.75rem;display:flex}.course-card__icon{width:2.25rem;height:2.25rem;color:var(--accent);background:color-mix(in srgb, var(--accent) 14%, transparent);border:1px solid var(--accent-border);border-radius:.625rem;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.course-card--locked .course-card__icon{color:var(--text-muted);background:var(--muted);border-color:var(--border)}.course-card h2{color:var(--text-h);margin-bottom:.5rem;font-size:1.125rem;font-weight:700}.course-card p{color:var(--text)}.course-card__hint,.course-card__badge{margin-top:1rem;font-size:.8125rem;font-weight:600}.course-card__hint{color:var(--text-muted)}.course-card__badge{color:var(--accent)}.course-meta{flex-wrap:wrap;gap:.5rem;display:flex}.course-meta span{background:color-mix(in srgb, var(--accent) 14%, transparent);color:var(--accent);border:1px solid var(--accent-border);border-radius:999px;padding:.25rem .625rem;font-size:.75rem;font-weight:700}.course-meta span:nth-child(2){background:var(--muted);color:var(--text-h);border-color:var(--border)}.instructor{color:var(--text);margin-top:.625rem;font-size:.875rem;font-weight:500}body:has(.page):not(:has(.admin-shell)):before{content:"";inset:var(--header-h) 0 0 0;z-index:0;pointer-events:none;background:radial-gradient(640px circle at 12% 0%, color-mix(in srgb, var(--accent) 20%, transparent) 0%, transparent 60%), radial-gradient(560px circle at 92% 18%, color-mix(in srgb, var(--warm) 16%, transparent) 0%, transparent 60%), radial-gradient(720px circle at 50% 90%, color-mix(in srgb, var(--accent) 10%, transparent) 0%, transparent 65%);filter:blur(10px);position:fixed}body:has(.page):not(:has(.admin-shell)):after{content:"";inset:var(--header-h) 0 0 0;z-index:0;pointer-events:none;opacity:.5;background-image:linear-gradient(color-mix(in srgb, var(--text-h) 6%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--text-h) 6%, transparent) 1px, transparent 1px);background-size:42px 42px;position:fixed;-webkit-mask-image:radial-gradient(80% 60% at 50% 0,#000 0%,#0000 75%);mask-image:radial-gradient(80% 60% at 50% 0,#000 0%,#0000 75%)}.page{z-index:1;position:relative}.dashboard-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.dashboard-header h1{letter-spacing:-.02em;color:var(--text-h);margin-bottom:.375rem;font-size:2rem;font-weight:700}.dashboard-header p{color:var(--text);font-size:1rem}.dashboard-actions{align-items:center;gap:.75rem;display:flex}.stats-row{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;display:grid}.stat-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);color:var(--text-h);align-items:center;gap:.625rem;padding:1rem;font-size:.875rem;display:flex}.stats-row .stat-card:first-child{background:var(--color-lime-100);border-color:var(--color-lime-200)}.stats-row .stat-card:nth-child(2){background:var(--color-mint-100);border-color:var(--color-mint-200)}.stats-row .stat-card:nth-child(3){background:var(--color-sky-100,#e0f2fe);border-color:var(--color-sky-200,#bae6fd)}html[data-theme=dark] .stats-row .stat-card:first-child{background:color-mix(in srgb, var(--color-lime-500) 16%, var(--surface));border-color:var(--color-lime-800)}html[data-theme=dark] .stats-row .stat-card:nth-child(2){background:color-mix(in srgb, var(--color-mint-500) 16%, var(--surface));border-color:var(--color-mint-800)}html[data-theme=dark] .stats-row .stat-card:nth-child(3){background:color-mix(in srgb, var(--accent) 16%, var(--surface));border-color:color-mix(in srgb, var(--accent) 40%, var(--border))}.material-list{flex-direction:column;gap:.75rem;display:flex}.material-item{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);align-items:center;gap:.875rem;padding:1rem;display:flex}.material-item.locked{opacity:.7}.material-item p{color:var(--text);font-size:.8125rem}.material-item__icon{color:var(--accent)}.instructor-panel{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;display:grid}.instructor-tabs{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:.5rem;padding-bottom:.75rem;display:flex}.instructor-tabs__btn{font:inherit;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);cursor:pointer;padding:.5rem .875rem;font-size:.875rem;font-weight:500}.instructor-tabs__btn--active{background:var(--accent-bg);border-color:var(--accent-border);color:var(--accent)}.content-panels{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:start;gap:1rem;display:grid}.content-panel{max-width:none}.content-panel h2{margin:0;font-size:1.0625rem}.content-form{border-top:1px solid var(--border);flex-direction:column;gap:1rem;margin-top:1rem;padding-top:1rem;display:flex}.question-list{flex-direction:column;gap:.75rem;margin-top:.5rem;display:flex}.question-list__item{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);gap:.625rem;padding:.75rem;font-size:.875rem;display:flex}.question-list__index{color:var(--accent);font-weight:600}.question-list__item p{color:var(--text);margin-top:.25rem}.content-panel textarea{font:inherit;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg);color:var(--text-h);resize:vertical;min-height:120px;padding:.625rem .75rem;font-size:.9375rem}.content-panels--materials{grid-template-columns:minmax(0,2fr) minmax(280px,1fr)}.content-panel--wide{grid-column:1/-1}.material-meta-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;display:grid}.material-editor-layout{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;display:grid}.material-editor-layout__label{color:var(--text-h);margin-bottom:.5rem;font-size:.8125rem;font-weight:600;display:block}.material-preview{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg);min-height:280px;padding:1rem}.material-preview--saved{margin-top:1rem}.material-preview__empty{color:var(--text);font-size:.875rem}.material-preview__header{flex-direction:column;gap:.25rem;margin-bottom:.75rem;display:flex}.material-item--selectable{text-align:left;cursor:pointer;width:100%;font:inherit;transition:border-color .15s,background .15s}.material-item--selectable:hover,.material-item--selected{border-color:var(--accent-border);background:var(--accent-bg)}.tiptap-editor{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);overflow:hidden}.tiptap-editor--loading{color:var(--text);padding:1rem;font-size:.875rem}.tiptap-toolbar{border-bottom:1px solid var(--border);background:var(--code-bg);flex-wrap:wrap;gap:.375rem;padding:.5rem;display:flex}.tiptap-toolbar__btn{font:inherit;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text-h);cursor:pointer;padding:.375rem .625rem;font-size:.8125rem;font-weight:600}.tiptap-toolbar__btn--active{background:var(--accent-bg);border-color:var(--accent-border);color:var(--accent)}.tiptap-editor__body{position:relative}.tiptap-editor__hint{color:var(--text);pointer-events:none;margin:0;font-size:.9375rem;position:absolute;top:1rem;left:1rem;right:1rem}.tiptap-editor__content .ProseMirror{min-height:260px;color:var(--text-h);outline:none;padding:1rem;font-size:.9375rem;line-height:1.6}.rich-content h1,.markdown-viewer h1{margin:0 0 .75rem;font-size:1.5rem}.rich-content h2,.markdown-viewer h2{margin:1rem 0 .5rem;font-size:1.25rem}.rich-content p,.markdown-viewer p{margin:0 0 .75rem}.rich-content ul,.markdown-viewer ul{margin:0 0 .75rem;padding-left:1.25rem}.rich-content li,.markdown-viewer li{margin-bottom:.25rem}.rich-content pre,.markdown-viewer pre{border-radius:var(--radius);background:var(--code-bg);margin:0 0 .75rem;padding:.75rem;font-size:.8125rem;overflow-x:auto}.rich-content code,.markdown-viewer code{font-family:var(--mono);font-size:.875em}.rich-content strong,.markdown-viewer strong{font-weight:600}.activation-card{text-align:center;align-items:center;max-width:none}.activation-code{font-family:var(--mono);letter-spacing:.15em;color:var(--accent);border-radius:var(--radius-lg);background:var(--code-bg);padding:1rem 1.5rem;font-size:2rem}.engagement-table{flex-direction:column;gap:.5rem;display:flex}.engagement-row{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);grid-template-columns:2fr 1fr 1fr;gap:.75rem;padding:.75rem 1rem;font-size:.875rem;display:grid}.markdown-viewer{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);padding:1.5rem;font-size:.9375rem;line-height:1.6}.markdown-viewer pre{border-radius:var(--radius);background:var(--code-bg);padding:.75rem;font-size:.8125rem;overflow-x:auto}@media (width<=768px){.home-enroll-form{grid-template-columns:1fr}.site-header__inner{flex-wrap:wrap;height:auto;padding-block:.75rem}.site-header{height:auto}.site-header__nav{order:3;width:100%}.engagement-row{grid-template-columns:1fr}}.ai-practice{flex-direction:column;gap:1rem;display:flex}.ai-practice__header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.ai-practice__header h2{margin:0 0 .25rem}.ai-practice__subtitle{color:var(--text-muted);margin:0;font-size:.875rem}.ai-practice__counter{color:var(--text-muted);white-space:nowrap;border:1px solid var(--border);border-radius:99px;align-self:flex-start;padding:.25rem .625rem;font-size:.8125rem}.ai-chat{min-height:28rem}.ai-chat__thread{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-subtle,color-mix(in srgb, var(--bg) 60%, var(--surface)));flex-direction:column;flex:1;gap:1rem;min-height:20rem;max-height:min(60vh,32rem);padding:.75rem;display:flex;overflow-y:auto}.ai-chat__empty{text-align:center;color:var(--text-muted);margin:auto;font-size:.875rem}.ai-chat__exchange{flex-direction:column;gap:.75rem;display:flex}.ai-chat__message{flex-direction:column;gap:.35rem;max-width:92%;display:flex}.ai-chat__message--user{align-self:flex-end;align-items:flex-end}.ai-chat__message--assistant{align-self:flex-start;align-items:flex-start}.ai-chat__message-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-size:.6875rem;font-weight:600}.ai-chat__bubble{white-space:pre-wrap;word-break:break-word;border-radius:1rem;padding:.75rem .875rem;font-size:.9375rem;line-height:1.55}.ai-chat__message--user .ai-chat__bubble{background:var(--primary);color:var(--primary-contrast,#fff);border-bottom-right-radius:.25rem}.ai-chat__message--assistant .ai-chat__bubble{background:var(--surface);border:1px solid var(--border);border-bottom-left-radius:.25rem}.ai-chat__bubble--typing{color:var(--text-muted);font-style:italic}.ai-chat__bubble--error{border-color:color-mix(in srgb, #dc2626 40%, var(--border));background:color-mix(in srgb, #dc2626 6%, var(--surface))}.ai-chat__bubble--error p{color:var(--text-muted);margin:0 0 .625rem;font-size:.875rem}.ai-chat__retry-btn{padding:.35rem .75rem;font-size:.8125rem}.ai-chat__response-content{margin:0}.ai-chat__response-content p{margin:0 0 .5rem}.ai-chat__response-content p:last-child{margin-bottom:0}.ai-chat__response-content pre{background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:.5rem .75rem;font-size:.8125rem;overflow-x:auto}.ai-chat__response-content code{background:color-mix(in srgb, var(--primary) 8%, transparent);border-radius:3px;padding:.1em .3em;font-size:.8125rem}.ai-chat__response-content pre code{background:0 0;padding:0}.ai-chat__composer{align-items:flex-end;gap:.625rem;padding-top:.25rem;display:flex}.ai-chat__input{resize:vertical;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);min-height:4.5rem;max-height:12rem;color:var(--text);flex:1;padding:.75rem .875rem;font-size:.9375rem}.ai-chat__input:focus{border-color:var(--accent);outline:none}.ai-chat__send{flex-shrink:0;align-self:flex-end}.ai-practice__loading{color:var(--text-muted);padding:.5rem 0;font-size:.875rem}.ai-practice__unlock-form{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:.5rem;display:flex}.ai-practice__code-input{letter-spacing:.15em;text-transform:uppercase;border:2px solid var(--border);border-radius:var(--radius);background:var(--surface);min-width:180px;max-width:260px;color:var(--text);flex:1;padding:.55rem .875rem;font-family:Courier New,Courier,monospace;font-size:1.1rem;font-weight:600;transition:border-color .15s}.ai-practice__code-input:focus{border-color:var(--accent);outline:none}.ai-practice__limit-msg{color:var(--text-muted);margin:0;font-size:.875rem;font-style:italic}.ai-practice__footer{flex-direction:column;align-items:flex-start;gap:.875rem;margin-top:.5rem;display:flex}.ai-practice__exit-btn{margin-top:.75rem}.feedback-page__header{border-radius:var(--radius-lg);border:1px solid var(--accent-border);background:linear-gradient(155deg, color-mix(in srgb, var(--accent) 14%, transparent) 0%, transparent 55%), var(--surface);box-shadow:var(--shadow), 0 0 0 1px color-mix(in srgb, var(--accent) 6%, transparent);margin-bottom:2rem;padding:1.75rem 2rem;position:relative;overflow:hidden}.feedback-page__header:after{content:"";background:radial-gradient(circle, color-mix(in srgb, var(--warm) 22%, transparent) 0%, transparent 70%);filter:blur(20px);pointer-events:none;width:220px;height:220px;position:absolute;top:-40%;right:-8%}.feedback-page__header h1{letter-spacing:-.02em;color:var(--text-h);margin:0 0 .5rem;font-size:1.75rem;font-weight:700}.feedback-page__header p{max-width:42rem;color:var(--text);margin:0;font-size:.9375rem;line-height:1.5;position:relative}.feedback-form{flex-direction:column;gap:1.25rem;display:flex}.feedback-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:1.5rem 1.75rem;transition:border-color .15s,box-shadow .15s;position:relative}.feedback-section:hover{border-color:var(--accent-border)}.feedback-section h2{color:var(--text-h);align-items:center;gap:.625rem;margin:0 0 .5rem;font-size:1.0625rem;font-weight:700;display:flex}.feedback-section h2:before{content:"";background:var(--accent);width:.5rem;height:.5rem;box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 20%, transparent);border-radius:999px;flex-shrink:0;display:inline-block}.feedback-section__hint{color:var(--text-muted);margin:0 0 1.1rem;font-size:.875rem}.feedback-form__grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;display:grid}.feedback-form label{color:var(--text-h);flex-direction:column;gap:.4rem;font-size:.875rem;font-weight:600;display:flex}.feedback-form input[type=text],.feedback-form input[type=number],.feedback-textarea{border:1px solid var(--border-input);border-radius:var(--radius);width:100%;font:inherit;background:var(--bg);color:var(--text-h);padding:.65rem .85rem;font-weight:400;transition:border-color .15s,box-shadow .15s}.feedback-form input[type=text]:focus,.feedback-form input[type=number]:focus,.feedback-textarea:focus{border-color:var(--accent);box-shadow:var(--focus-ring);outline:none}.feedback-textarea{resize:vertical;min-height:5rem}.feedback-rating{grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem;display:grid}.feedback-rating__option{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-subtle);cursor:pointer;text-align:center;flex-direction:column;align-items:center;gap:.25rem;padding:.875rem .5rem;transition:border-color .15s,background .15s,transform .15s;display:flex}.feedback-rating__option:hover{border-color:var(--accent-border);transform:translateY(-1px)}.feedback-rating__option:has(input:checked){border-color:var(--accent);background:color-mix(in srgb, var(--accent) 16%, transparent);box-shadow:0 0 0 1px var(--accent)}.feedback-rating__option input{accent-color:var(--accent);margin:0}.feedback-rating__option span{color:var(--text-h);font-size:1.375rem;font-weight:700}.feedback-rating__option small{text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);font-size:.6875rem;font-weight:600}.feedback-likert{border:0;margin:0 0 1.25rem;padding:0}.feedback-likert:last-child{margin-bottom:0}.feedback-likert legend{color:var(--text-h);margin-bottom:.75rem;padding:0;font-size:.9375rem;font-weight:600}.feedback-likert__options{flex-wrap:wrap;gap:.5rem;display:flex}.feedback-likert__option{border:1px solid var(--border);color:var(--text);background:var(--surface-subtle);cursor:pointer;border-radius:999px;align-items:center;gap:.4rem;padding:.5rem .85rem;font-size:.8125rem;font-weight:500;transition:border-color .15s,background .15s,color .15s;display:inline-flex}.feedback-likert__option:hover{border-color:var(--accent-border)}.feedback-likert__option input{accent-color:var(--accent)}.feedback-likert__option:has(input:checked){border-color:var(--accent);background:var(--accent);color:var(--on-accent);font-weight:700}.feedback-choice-list{flex-direction:column;gap:.5rem;display:flex}.feedback-choice-list__item{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-subtle);color:var(--text);cursor:pointer;align-items:center;gap:.55rem;padding:.75rem .9rem;font-weight:500;transition:border-color .15s,background .15s;display:flex}.feedback-choice-list__item input{accent-color:var(--accent)}.feedback-choice-list__item:hover{border-color:var(--accent-border)}.feedback-choice-list__item:has(input:checked){border-color:var(--accent);background:color-mix(in srgb, var(--accent) 14%, transparent);color:var(--text-h);font-weight:700}.feedback-tools{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.5rem;display:grid}.feedback-tools__item{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-subtle);color:var(--text);cursor:pointer;align-items:center;gap:.5rem;padding:.6rem .75rem;font-size:.875rem;font-weight:500;transition:border-color .15s,background .15s;display:flex}.feedback-tools__item input{accent-color:var(--accent)}.feedback-tools__item:hover{border-color:var(--accent-border)}.feedback-tools__item:has(input:checked){border-color:var(--accent);background:color-mix(in srgb, var(--accent) 14%, transparent);color:var(--text-h);font-weight:700}.feedback-tools__other{margin-top:.75rem}.feedback-form__actions{flex-wrap:wrap;gap:.75rem;padding-top:.5rem;display:flex}.feedback-form__actions .btn-primary{box-shadow:0 4px 16px color-mix(in srgb, var(--accent) 25%, transparent);padding:.75rem 1.5rem}.feedback-card__done{color:var(--text-muted);margin:0}.feedback-thanks{text-align:center;border-radius:var(--radius-lg);border:1px solid var(--accent-border);background:linear-gradient(155deg, color-mix(in srgb, var(--accent) 14%, transparent) 0%, transparent 55%), var(--surface);max-width:28rem;box-shadow:var(--shadow);padding:2rem}.feedback-thanks h1{color:var(--text-h);margin-top:0;font-size:1.5rem;font-weight:700}@media (width<=640px){.feedback-rating{grid-template-columns:repeat(2,minmax(0,1fr))}}:root{--color-sage-50:#f2f5f2;--color-sage-100:#e3ebe3;--color-sage-200:#c8d6c9;--color-sage-300:#a3b8a5;--color-sage-400:#7d9980;--color-sage-500:#628264;--color-sage-600:#526f54;--color-sage-700:#445a46;--color-sage-800:#38493a;--color-sage-900:#2f3c31;--color-sage-950:#182019;--color-mint-50:#eef6f0;--color-mint-100:#d8e9dc;--color-mint-200:#b8d8c0;--color-mint-300:#8fc09a;--color-mint-400:#6aa878;--color-mint-500:#4f8f60;--color-mint-600:#3f7350;--color-mint-700:#345c42;--color-mint-800:#2c4a37;--color-mint-900:#253d2f;--color-mint-950:#122018;--color-peach-50:#faf4ed;--color-peach-100:#f5e8da;--color-peach-200:#ebd2b8;--color-peach-300:#ddb892;--color-peach-400:#cf9f70;--color-peach-500:#c08855;--color-peach-600:#a56f42;--color-peach-700:#875837;--color-peach-800:#6f4830;--color-peach-900:#5c3c29;--color-peach-950:#311e14;--color-terracotta-50:#f9f0e7;--color-terracotta-100:#f0e0cc;--color-terracotta-200:#e4c8a3;--color-terracotta-300:#d4a96c;--color-terracotta-400:#c9954f;--color-terracotta-500:#b8823a;--color-terracotta-600:#986830;--color-terracotta-700:#7a5228;--color-terracotta-800:#644425;--color-terracotta-900:#533922;--color-terracotta-950:#2e1d11;--color-lime-50:#f4f8e8;--color-lime-100:#e6f0c8;--color-lime-200:#d0e19a;--color-lime-300:#b4cc6a;--color-lime-400:#98b44a;--color-lime-500:#7c9938;--color-lime-600:#617a2d;--color-lime-700:#4d6126;--color-lime-800:#404f22;--color-lime-900:#37421f;--color-lime-950:#1c230f;--color-neutral-50:#f5f7f5;--color-neutral-100:#ecefec;--color-neutral-200:#d8ddd8;--color-neutral-300:#b8c0b9;--color-neutral-400:#919b93;--color-neutral-500:#737d75;--color-neutral-600:#5c645d;--color-neutral-700:#4b524c;--color-neutral-800:#3f4440;--color-neutral-900:#363a37;--color-neutral-950:#1c1f1d}html[data-theme=light]{--text:var(--color-neutral-700);--text-muted:var(--color-neutral-500);--text-h:var(--color-sage-950);--bg:var(--color-neutral-50);--surface:#fff;--surface-subtle:var(--color-mint-50);--muted:var(--color-neutral-100);--border:var(--color-neutral-200);--border-strong:var(--color-sage-300);--border-input:var(--color-neutral-300);--accent:var(--color-sage-600);--accent-hover:var(--color-sage-700);--accent-muted:var(--color-sage-400);--accent-bg:var(--color-mint-100);--accent-border:var(--color-sage-300);--accent-subtle:color-mix(in srgb, var(--color-sage-500) 14%, transparent);--on-accent:#fff;--focus-ring:0 0 0 3px color-mix(in srgb, var(--color-sage-500) 18%, transparent);--warm:var(--color-terracotta-500);--warm-hover:var(--color-terracotta-600);--warm-bg:var(--color-peach-100);--warm-border:var(--color-peach-300);--danger:var(--color-terracotta-700);--danger-hover:var(--color-terracotta-600);--danger-bg:var(--color-peach-50);--danger-border:var(--color-peach-300);--success-bg:var(--color-mint-100);--success-text:var(--color-mint-800);--neutral-bg:var(--color-neutral-100);--neutral-text:var(--color-neutral-700);--sidebar-bg:var(--color-sage-600);--sidebar-border:var(--color-sage-700);--sidebar-text:color-mix(in srgb, #fff 72%, var(--color-sage-100));--sidebar-text-muted:color-mix(in srgb, #fff 52%, var(--color-sage-200));--sidebar-text-hover:#fff;--sidebar-text-active:#fff;--sidebar-accent:var(--color-terracotta-400);--table-head:var(--color-sage-800);--table-head-text:#fff;--btn-neutral:var(--color-sage-600);--login-gradient-from:var(--color-sage-700);--login-gradient-to:var(--color-sage-900);--code-bg:var(--color-mint-50);--social-bg:var(--color-peach-50);--shadow:0 1px 3px color-mix(in srgb, var(--color-sage-900) 6%, transparent), 0 1px 2px color-mix(in srgb, var(--color-sage-900) 3%, transparent);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html[data-theme=dark]{--text:var(--color-neutral-300);--text-muted:var(--color-neutral-400);--text-h:var(--color-neutral-50);--bg:#0c100d;--surface:#161c17;--surface-subtle:#1d251e;--muted:#222b23;--border:#2a352b;--border-strong:var(--color-sage-600);--border-input:var(--color-sage-500);--accent:var(--color-mint-400);--accent-hover:var(--color-mint-300);--accent-muted:var(--color-sage-400);--accent-bg:color-mix(in srgb, var(--color-mint-500) 14%, transparent);--accent-border:var(--color-sage-600);--accent-subtle:color-mix(in srgb, var(--color-mint-400) 12%, transparent);--on-accent:var(--color-sage-950);--warm:var(--color-peach-400);--warm-hover:var(--color-peach-300);--warm-bg:color-mix(in srgb, var(--color-peach-500) 12%, transparent);--warm-border:var(--color-terracotta-700);--danger:var(--color-peach-300);--danger-hover:var(--color-peach-200);--danger-bg:color-mix(in srgb, var(--color-terracotta-500) 12%, transparent);--danger-border:var(--color-terracotta-800);--success-bg:color-mix(in srgb, var(--color-mint-500) 14%, transparent);--success-text:var(--color-mint-300);--neutral-bg:var(--color-sage-800);--neutral-text:var(--color-neutral-300);--sidebar-bg:#0a0d0b;--sidebar-border:#212a22;--sidebar-text:var(--color-neutral-300);--sidebar-text-muted:var(--color-neutral-500);--sidebar-text-hover:#fff;--sidebar-text-active:#fff;--sidebar-accent:var(--color-terracotta-400);--table-head:#202a21;--table-head-text:var(--color-neutral-300);--btn-neutral:var(--color-sage-500);--login-gradient-from:var(--color-sage-950);--login-gradient-to:var(--color-sage-950);--code-bg:var(--color-sage-800);--social-bg:var(--color-sage-900);--shadow:0 4px 16px #00000073, 0 1px 3px #0006;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root{--sans:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--heading:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, "Cascadia Code", Consolas, monospace;--container-max:1200px;--header-h:76px;--space-page:24px;--radius:8px;--radius-lg:12px;font:16px/1.5 var(--sans);color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,:before,:after{box-sizing:border-box}body{min-height:100svh;margin:0;overflow-x:hidden}#root{flex-direction:column;min-height:100svh;display:flex}.layout-container{width:100%;max-width:var(--container-max);padding-inline:var(--space-page);margin:0 auto}a{color:inherit}h1,h2,h3{font-family:var(--heading);color:var(--text-h);font-weight:600;line-height:1.25}h1{margin:0 0 .5rem;font-size:1.75rem}h2{margin:0 0 .5rem;font-size:1.25rem}h3{margin:0 0 .25rem;font-size:1rem}p{margin:0}code{font-family:var(--mono);background:var(--code-bg);color:var(--text-h);border-radius:4px;padding:.125rem .375rem;font-size:.875rem}
