:root{--glass-bg: rgba(255, 255, 255, .68);--glass-border: rgba(255, 255, 255, .76);--gradient-start: #0f766e;--gradient-mid: #118c82;--gradient-end: #3f7d57;--accent-amber: #a97932;--ink: #122927;--muted: #647a75;--teal: #0f766e;--teal-dark: #0a4f4a;--teal-soft: #d9efea;--green: #3f7d57;--green-soft: #e0eee4;--page-bg: #edf5f2;--line: rgba(15, 118, 110, .16);--shadow-color: rgba(15, 62, 58, .12)}body{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:radial-gradient(120% 110% at 14% 18%,rgba(37,99,235,.16),transparent 50%),radial-gradient(120% 110% at 82% 16%,rgba(34,197,94,.14),transparent 52%),radial-gradient(140% 120% at 70% 78%,rgba(245,158,11,.12),transparent 48%);background-attachment:fixed,fixed,fixed,fixed,fixed,fixed;padding-top:78px;color:var(--ink);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,Liberation Sans,sans-serif;line-height:1.6;overflow-x:hidden}.navbar{-webkit-backdrop-filter:saturate(180%) blur(10px);backdrop-filter:saturate(180%) blur(10px);background:linear-gradient(115deg,#0ea5e9f0,#2563ebf2,#22c55ef0);border-bottom:1px solid rgba(255,255,255,.25);box-shadow:0 10px 30px #00000052}.navbar .nav-link{color:#e2e8f0}.navbar .nav-link.active,.navbar .nav-link:hover{color:#fff}.navbar .navbar-links{gap:.25rem}@media(min-width:992px){.navbar .navbar-links{margin-left:clamp(.75rem,1.6vw,2.25rem)}}.credit-badge{border:1px solid rgba(15,23,42,.12);box-shadow:0 10px 26px #0f172a1f;font-weight:600;transition:transform .15s ease,box-shadow .2s ease}.credit-badge:hover{transform:translateY(-1px);box-shadow:0 16px 34px #0f172a24}.credit-badge:active{transform:translateY(0)}.credits-purchase-tooltip .credit-badge:disabled{pointer-events:none;transform:none;box-shadow:0 6px 16px #0f172a14}.credit-badge #creditsCount{font-variant-numeric:tabular-nums}.credits-modal{border:1px solid var(--glass-border);background:linear-gradient(150deg,#fffffff5,#ffffffd6);border-radius:1rem;box-shadow:0 30px 80px #0f172a73;-webkit-backdrop-filter:blur(14px) saturate(135%);backdrop-filter:blur(14px) saturate(135%)}.credits-modal .modal-header,.credits-modal .modal-footer{border-color:#94a3b859}.account-settings-modal{border:1px solid var(--glass-border);border-radius:1rem;background:linear-gradient(150deg,#fffffffa,#ffffffe6);box-shadow:0 30px 80px #0f172a73}.account-settings-modal .modal-header,.account-settings-modal .modal-footer{border-color:#94a3b859}.account-settings-modal{overflow:hidden}.account-settings-layout{display:grid;grid-template-columns:12rem minmax(0,1fr);min-height:34rem}.account-settings-nav{display:flex;flex-direction:column;gap:.35rem;padding:1.25rem .85rem;border-right:1px solid rgba(148,163,184,.28);background:#f1f5f980}.account-settings-nav-button{width:100%;padding:.7rem .85rem;border:0;border-radius:.7rem;background:transparent;color:var(--bs-secondary-color);font-weight:600;text-align:left;transition:color .15s ease,background-color .15s ease,box-shadow .15s ease}.account-settings-nav-button:hover:not(:disabled),.account-settings-nav-button:focus-visible{color:var(--bs-primary);background:rgba(var(--bs-primary-rgb),.08)}.account-settings-nav-button.active{color:var(--bs-primary);background:rgba(var(--bs-primary-rgb),.12);box-shadow:inset 3px 0 0 var(--bs-primary)}.account-settings-content{min-width:0;padding:1.5rem}.account-profile-summary{display:flex;align-items:center;gap:.9rem;padding:1rem;border:1px solid rgba(148,163,184,.28);border-radius:.85rem;background:#ffffff80}.account-profile-avatar{width:3.25rem;height:3.25rem;flex:0 0 3.25rem;border-radius:50%;object-fit:cover}.account-profile-initials{display:grid;place-items:center;color:var(--bs-primary);background:rgba(var(--bs-primary-rgb),.12);font-weight:700}.account-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;overflow:hidden;border:1px solid rgba(148,163,184,.28);border-radius:.85rem;background:#ffffff6b}.account-info-item{min-width:0;padding:.85rem 1rem;border-bottom:1px solid rgba(148,163,184,.22)}.account-info-item:nth-child(odd){border-right:1px solid rgba(148,163,184,.22)}.account-info-item:nth-last-child(-n+2){border-bottom:0}.account-info-item dt{margin-bottom:.2rem;color:var(--bs-secondary-color);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.account-info-item dd{margin:0;overflow-wrap:anywhere;font-size:.925rem}.account-billing-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.account-billing-stat{position:relative;padding:1rem;overflow:hidden;border:1px solid rgba(148,163,184,.28);border-radius:.85rem;background:#ffffff80}.account-billing-stat strong{display:block;margin-top:.25rem;font-size:1.3rem}.account-billing-stat-icon{position:absolute;top:.7rem;right:.8rem;color:rgba(var(--bs-primary-rgb),.35);font-size:1.2rem}.account-billing-table-wrap{border:1px solid rgba(148,163,184,.28);border-radius:.85rem}.account-billing-table{--bs-table-bg: transparent;font-size:.875rem}.account-billing-table thead th{border-bottom-color:#94a3b847;color:var(--bs-secondary-color);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.account-billing-table tbody tr:last-child td{border-bottom:0}@media(max-width:767.98px){.account-settings-layout{grid-template-columns:1fr;min-height:auto}.account-settings-nav{flex-direction:row;padding:.75rem;border-right:0;border-bottom:1px solid rgba(148,163,184,.28)}.account-settings-nav-button{text-align:center}.account-settings-nav-button.active{box-shadow:inset 0 -3px 0 var(--bs-primary)}.account-settings-content{padding:1.15rem}.account-info-grid,.account-billing-summary{grid-template-columns:1fr}.account-info-item,.account-info-item:nth-child(odd),.account-info-item:nth-last-child(-n+2){border-right:0;border-bottom:1px solid rgba(148,163,184,.22)}.account-info-item:last-child{border-bottom:0}}.account-danger-zone{padding:1rem;border:1px solid rgba(220,53,69,.3);border-radius:.75rem;background:#dc35450a}.credit-pack-btn{font-weight:600}.brand-gradient{background:linear-gradient(100deg,#f8fafc,#c7f9cc,#a5f3fc);-webkit-background-clip:text;background-clip:text;color:transparent}h1,h2,h3,h4,h5,h6,.navbar-brand{font-family:Poppins,Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;letter-spacing:.2px}.card.glass{position:relative;overflow:hidden;border:1px solid var(--glass-border);background:linear-gradient(150deg,#fffffff2,#ffffffd1);box-shadow:0 20px 60px #0f172a59,0 12px 26px #0ea5e91f;border-radius:1rem;-webkit-backdrop-filter:blur(14px) saturate(135%);backdrop-filter:blur(14px) saturate(135%)}.card.glass:before{content:"";position:absolute;inset:-20%;background:radial-gradient(circle at 20% 30%,rgba(14,165,233,.18),transparent 32%),radial-gradient(circle at 80% 70%,rgba(34,197,94,.16),transparent 30%),radial-gradient(circle at 50% 10%,rgba(245,158,11,.12),transparent 28%);opacity:0;transition:opacity .4s ease}.card.glass:hover:before{opacity:1}.card.glass>*{position:relative;z-index:1}.gradient-btn{background-image:linear-gradient(115deg,var(--gradient-start),var(--gradient-mid),var(--gradient-end));border:none;box-shadow:0 14px 32px #2563eb59,0 10px 26px #22c55e2e;color:#fff;transition:transform .15s ease,filter .2s ease,box-shadow .2s ease}.gradient-btn:hover{filter:brightness(.98);transform:translateY(-1px);box-shadow:0 18px 42px #2563eb59,0 14px 34px #22c55e33}.gradient-btn:active{transform:translateY(0);box-shadow:0 12px 20px #0f172a40}.btn-outline-secondary{border-color:#94a3b880;color:var(--ink)}.btn-outline-secondary:hover,.btn-outline-secondary:focus-visible{border-color:var(--gradient-start);color:var(--gradient-start)}.avatar-btn{width:40px;height:40px;padding:0;display:inline-flex;align-items:center;justify-content:center}.sticky-sidebar{top:86px}#editorWrapper{position:relative}.course-actions-panel{position:absolute;z-index:2;top:3rem;right:3rem;width:10.5rem}@media(min-width:992px){.course-details-column{padding-right:12rem}}.dropzone{border:1px dashed rgba(148,163,184,.6);border-radius:.9rem;padding:1.25rem;text-align:center;cursor:pointer;background:#ffffffbf;transition:border-color .2s ease,box-shadow .2s ease,transform .15s ease}.dropzone.dragover{background-color:#0ea5e90d;border-color:var(--gradient-start);box-shadow:0 12px 26px #0ea5e92e;transform:translateY(-1px)}.pref-badge{display:inline-block;padding:.15rem .5rem;font-size:.75rem;border-radius:999px;background:#0ea5e91a;color:var(--gradient-start);margin-right:.25rem}.task-meta-wrap{display:flex;align-items:center;gap:.25rem}.task-delete-btn{padding:0;margin:0}.module-tile{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:140px;padding:.65rem 1.75rem .65rem .9rem;border-radius:.8rem;border:1px solid rgba(148,163,184,.5);background:#ffffffb3;color:var(--ink);font-weight:600;font-size:.9rem;box-shadow:0 8px 18px #0f172a14;transition:transform .15s ease,box-shadow .2s ease,border-color .2s ease;cursor:pointer;-webkit-user-select:none;user-select:none}.module-tile:hover{transform:translateY(-1px);border-color:#2563eb80;box-shadow:0 14px 24px #2563eb26}.module-tile.active{border-color:#2563ebb3;background:#2563eb1f;color:#1d4ed8}.module-title{text-align:center;padding-right:.5rem}.module-delete{position:absolute;top:6px;right:6px;width:22px;height:22px;border-radius:50%;border:none;background:#f8fafce6;color:#dc2626;display:inline-flex;align-items:center;justify-content:center;font-size:.75rem;line-height:1;transition:background .15s ease,transform .15s ease}.module-delete:hover{background:#fee2e2e6;transform:scale(1.05)}.carousel-shell{display:flex;align-items:center;gap:.75rem}.carousel-track{display:flex;gap:1rem;overflow-x:auto;padding:.25rem .25rem .6rem;scroll-snap-type:x mandatory;scroll-padding:.5rem;scroll-behavior:smooth;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;flex:1 1 auto}.carousel-track::-webkit-scrollbar{height:8px}.carousel-track::-webkit-scrollbar-thumb{background:#94a3b899;border-radius:999px}.carousel-track::-webkit-scrollbar-track{background:#e2e8f080;border-radius:999px}.scroll-item{flex:0 0 auto;width:clamp(230px,28vw,320px);scroll-snap-align:start}.scroll-item .card{height:100%}.carousel-btn{width:38px;height:38px;border-radius:50%;border:1px solid rgba(148,163,184,.55);background:#ffffffe0;color:var(--ink);display:inline-flex;align-items:center;justify-content:center;box-shadow:0 10px 24px #0f172a1f;transition:transform .15s ease,box-shadow .2s ease,opacity .2s ease}.carousel-btn:hover{transform:translateY(-1px);box-shadow:0 14px 30px #0f172a29}.carousel-btn:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none}.module-card{padding:1rem;text-align:left;cursor:pointer;transition:transform .18s ease,box-shadow .2s ease,border-color .2s ease}.module-card:hover{transform:translateY(-2px);border-color:#2563eb73;box-shadow:0 18px 38px #2563eb26,0 10px 22px #0f172a1f}.module-card.locked{cursor:not-allowed;opacity:.6}.module-card.locked:hover{transform:none;border-color:#94a3b8;box-shadow:none}.module-card.done{border-color:#22c55e8c}.module-card[role=button]:focus-visible{outline:3px solid rgba(34,211,238,.45);outline-offset:3px}.task-card{padding:1rem;display:flex;flex-direction:column;min-height:180px}.card .task-card{box-shadow:none;border-color:#94a3b8}.card .task-card.done{border-color:#22c55e8c}.card .module-card{box-shadow:none;border-color:#94a3b8}.card .module-card.active{border-color:#2563ebb3}@media(max-width:576px){.carousel-btn{display:none}.scroll-item{width:80vw}}#moduleHeader{overflow:visible;z-index:1020}#moduleHeader:before{inset:0;border-radius:inherit}#moduleHeader .dropdown-menu{z-index:1025}.modal{--bs-modal-zindex: 1090}.modal-backdrop{--bs-backdrop-zindex: 1080;--bs-backdrop-bg: #020617;--bs-backdrop-opacity: .72}.difficulty-select{min-width:160px}#moduleHeader .module-settings-title,#moduleHeader .active-module-title-row,#moduleHeader #activeModuleName{min-width:0}#moduleHeader #activeModuleName{overflow-wrap:anywhere}#moduleHeader .module-rename-btn{display:inline-grid;flex:0 0 auto;width:2rem;height:2rem;padding:0;place-items:center;border-radius:50%}#moduleHeader .module-rename-btn.d-none{display:none}@media(max-width:767.98px){#moduleHeader .module-settings-layout{gap:.75rem!important}#moduleHeader .module-settings-title,#moduleHeader .module-settings-actions{width:100%;min-width:0}#moduleHeader .module-settings-actions{flex-direction:row!important;align-items:center!important;justify-content:space-between;gap:.75rem!important}#moduleHeader .difficulty-control{min-width:0;flex:1 1 auto}#moduleHeader .difficulty-label{display:none}#moduleHeader .difficulty-select{width:min(100%,11rem);min-width:0}#moduleHeader .creator-add-group{flex:0 0 auto}#moduleHeader #creatorAddBtn{display:grid;width:2.5rem;height:2.5rem;place-items:center;padding:0;border-color:var(--teal);border-radius:50%;color:#fff;background:var(--teal);box-shadow:0 8px 20px #0f766e3d}#moduleHeader #creatorAddBtn>i{margin-right:0!important}#moduleHeader #creatorAddBtn:after,#moduleHeader .creator-add-label{display:none}}.game-play-header-subtitle{font-size:.85rem}.gamePlayContainer{min-height:260px}.transfer-learning-game{max-width:880px}.transfer-game-description,.transfer-evaluation-text,.transfer-hint-text{white-space:pre-wrap}.transfer-game-answer{min-height:12rem;resize:vertical}.form-control,.form-select{background-color:#ffffffe6;border-color:#94a3b880;box-shadow:0 6px 18px #0f172a14}.form-control:focus,.form-select:focus{border-color:var(--gradient-mid);box-shadow:0 0 0 .2rem #2563eb1f,0 12px 28px #0ea5e929}.input-group .btn{box-shadow:none}.min-w-0{min-width:0}.math-text{min-width:0;max-width:100%;white-space:pre-wrap;overflow-wrap:anywhere}.math-text .katex{max-width:100%}.math-text .katex-display{max-width:100%;margin:.65rem 0;padding:.15rem .1rem .35rem;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;-webkit-overflow-scrolling:touch}.math-preview-authoring-hint{padding:.65rem .75rem;color:#334155;line-height:1.45;border:1px solid rgba(14,165,233,.2);border-radius:.65rem;background:#e0f2fe9e}.math-formula-helper{display:flex;min-height:2rem;align-items:center;justify-content:flex-start;margin-top:.15rem}.math-formula-trigger{display:inline-grid;width:2rem;height:2rem;place-items:center;padding:0;border:1px solid rgba(148,163,184,.5);border-radius:50%;color:var(--ink);background:#ffffffb8;font-size:.95rem;line-height:1;transition:color .15s ease,background-color .15s ease,transform .15s ease}.math-formula-trigger:hover,.math-formula-trigger:focus-visible{color:#fff;background:var(--teal);transform:translateY(-1px)}.math-formula-trigger:focus-visible{outline:3px solid rgba(15,118,110,.2);outline-offset:2px}.math-formula-catalog-content{max-height:min(88dvh,54rem);overflow:hidden;border-radius:1rem}.math-formula-catalog-body{max-height:min(68dvh,42rem);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.math-formula-catalog-section+.math-formula-catalog-section{margin-top:1.5rem}.math-formula-catalog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.math-formula-catalog-item{display:flex;min-width:0;flex-direction:column;gap:.35rem;padding:.8rem;border:1px solid rgba(148,163,184,.38);border-radius:.75rem;color:var(--ink);background:#ffffffc7;text-align:left;box-shadow:0 6px 16px #0f172a0f;transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease,transform .15s ease}.math-formula-catalog-item:hover,.math-formula-catalog-item:focus-visible{border-color:#0f766e8c;background:#d9efea8a;box-shadow:0 10px 22px #0f3e3a1a;transform:translateY(-1px)}.math-formula-catalog-item:focus-visible{outline:3px solid rgba(15,118,110,.18);outline-offset:2px}.math-formula-catalog-preview{display:grid;min-height:3.25rem;place-items:center;overflow-x:auto;font-size:1.05rem}.math-formula-catalog-code{display:block;color:#526b66;font-size:.72rem;overflow-wrap:anywhere;white-space:pre-wrap}@media(max-width:575.98px){.math-formula-catalog-modal .modal-dialog{margin:.5rem}.math-formula-catalog-content{max-height:calc(100dvh - 1rem)}.math-formula-catalog-body{max-height:calc(100dvh - 9.5rem);padding:.85rem}.math-formula-catalog-grid{grid-template-columns:minmax(0,1fr)}}.preview-button{width:2.15rem;min-width:2.15rem;aspect-ratio:1;display:inline-flex;align-items:center;justify-content:center}.flashcard-sources-button.btn-outline-primary{background:#0d6efd14}.flashcard-sources-modal-content{overflow:hidden;border-radius:1rem}.play-sources-modal-dialog{width:min(96vw,92rem);max-width:min(96vw,92rem)}.play-sources-modal-content{height:min(90vh,60rem);overflow:hidden;border-radius:1rem}.play-sources-modal-body{min-height:0;padding:1rem;overflow:hidden;background:#f8fafcd1}.play-sources-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(18rem,.85fr);gap:1rem;height:100%;min-height:0}.play-source-pane{display:flex;min-width:0;min-height:0;flex-direction:column;overflow:hidden;border:1px solid rgba(148,163,184,.35);border-radius:.85rem;background:#fffffff5}.play-source-pane-header{display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;gap:1rem;min-height:4.25rem;padding:.75rem 1rem;border-bottom:1px solid rgba(148,163,184,.28)}.play-source-controls{display:flex;align-items:center;justify-content:flex-end;gap:.5rem}.play-source-open-link{flex:0 0 auto;white-space:nowrap}.play-source-pdf-select{width:min(18rem,45vw)}.play-source-pdf-stage{position:relative;display:flex;min-height:0;flex:1 1 auto;align-items:center;justify-content:center;overflow:hidden;background:#e5e7eb}.play-source-pdf-status{max-width:24rem;padding:1rem;text-align:center}.play-source-pdf-frame{width:100%;height:100%;border:0;background:#fff}.play-source-excerpts-list{min-height:0;padding:1rem;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.play-source-excerpt-search{width:2rem;min-width:2rem;height:2rem;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:50%}.play-source-excerpt-search.is-found{color:var(--bs-success)!important;border-color:#19875473!important;background:#19875417!important}.play-source-excerpt-search.is-missing{color:var(--bs-danger)!important;border-color:#dc354573!important;background:#dc354514!important}@media(max-width:991.98px){.play-sources-modal-content{height:auto;max-height:92vh}.play-sources-modal-body{overflow-y:auto}.play-sources-layout{grid-template-columns:minmax(0,1fr);height:auto}.play-source-pdf-pane{min-height:min(60vh,34rem)}.play-source-excerpts-pane{max-height:55vh}}@media(max-width:575.98px){.play-sources-modal-dialog{width:auto;max-width:none;margin:.5rem}.play-sources-modal-body{padding:.65rem}.play-source-pane-header{align-items:stretch;flex-direction:column}.play-source-pdf-select{width:100%}.play-source-controls{width:100%;align-items:stretch;flex-direction:column}.play-source-pdf-pane{min-height:55vh}}.flashcard-source-text-row{border-color:#94a3b859!important;background:#f8fafcb8}.flashcard-source-text-list{max-height:min(50vh,32rem);padding-right:.35rem;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.flashcard-source-text{min-height:7rem;resize:vertical}@media(max-width:575.98px){.flashcard-source-text-list{max-height:42vh}}.math-preview-modal-content,.math-preview-content{overflow:hidden;border:1px solid var(--glass-border);border-radius:1rem;background:linear-gradient(150deg,#fffffffc,#f8fafcf5);box-shadow:0 30px 80px #0f172a61}.math-preview-modal-content .modal-header,.math-preview-content .modal-header{border-color:#94a3b84d}.math-preview-modal-body,.math-preview-body{min-width:0;background:radial-gradient(circle at 8% 8%,rgba(14,165,233,.08),transparent 34%),radial-gradient(circle at 92% 88%,rgba(34,197,94,.08),transparent 34%),#f8fafcbf}.math-preview-grid,.math-preview-question,.math-preview-options,.math-preview-options-list,.math-preview-option,.math-preview-option-content,.math-preview-question-content{min-width:0}.math-preview-side{min-width:0;overflow:hidden;border-color:#94a3b859;border-radius:.85rem;background:#fffffff0;box-shadow:0 14px 32px #0f172a1a}.math-preview-front{border-top:3px solid var(--gradient-start)}.math-preview-back{border-top:3px solid var(--gradient-end)}.math-preview-text,.math-preview-question-content{min-height:4.5rem;font-size:1.05rem;line-height:1.7}.math-preview-question-content{background:#ffffffe6}.math-preview-image-wrap{min-height:12rem;padding:.5rem;display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid rgba(148,163,184,.3);border-radius:.75rem;background:#f1f5f9c7}.math-preview-image{display:block;width:100%;height:auto;max-height:20rem;object-fit:contain}.math-preview-image-status{padding:1rem}.math-preview-option{background:#ffffffe6}.math-preview-option-correct{border-color:#1987548c!important;box-shadow:0 8px 20px #1987541a}.math-preview-correct-badge{flex:0 0 auto;white-space:nowrap}.math-preview-quiz-question,.math-preview-quiz-option,.math-preview-quiz-feedback,.math-preview-source-text,.math-preview-source-content{min-width:0;max-width:100%}.math-preview-text.math-text,.math-preview-question-content.math-text,.math-preview-option-content.math-text,.math-preview-quiz-question.math-text,.math-preview-quiz-feedback.math-text,.math-preview-source-text.math-text,.math-preview-source-content.math-text,.flashgame-card-content.math-text{overflow-x:auto}.math-preview-quiz-option.math-text{width:100%;overflow-x:auto;overflow-y:hidden}@media(max-width:575.98px){.math-preview-modal .modal-dialog{margin:.5rem}.math-preview-modal-body,.math-preview-body{padding:.8rem}.math-preview-side .card-body{padding:1rem}.math-preview-text,.math-preview-question-content{font-size:1rem}.math-preview-image-wrap{min-height:9rem}.math-text .katex-display{margin:.45rem 0}}.flashcard-image-control .btn{box-shadow:none}.flashcard-image-control .math-formula-helper{min-height:0;margin-top:0}.flashcard-image-upload-mobile{display:none}@media(max-width:767.98px){.flashcard-image-control .flashcard-image-upload-desktop{display:none!important}.flashcard-image-control .flashcard-image-upload-mobile{display:inline-block}.flashcard-image-control .flashcard-image-upload-toggle{width:2rem;height:2rem;padding:0}.flashcard-image-control .flashcard-image-upload-options{min-width:0;padding:.25rem;z-index:1030}.flashcard-image-control .flashcard-image-upload-options.show{display:flex}.flashcard-image-control .flashcard-image-upload-option{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;padding:0;border-radius:.35rem;font-size:1.1rem}}.flashcard-image-preview{display:flex;align-items:center;gap:.75rem;padding:.65rem;border:1px solid rgba(148,163,184,.35);border-radius:.75rem;background:#f8fafcc7}.flashcard-image-preview-thumb{width:5rem;height:3.75rem;flex:0 0 auto;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:.5rem;background:#e2e8f0bf}.flashcard-image-preview-thumb img{width:100%;height:100%;object-fit:cover}.alert-info{background-color:#dbeafed9;border:1px solid rgba(59,130,246,.25);color:#0f172a}.list-group-item{border-color:#94a3b859}.flashgame-root{display:flex;flex-direction:column;gap:1rem}.flashgame-card-outer{perspective:1200px}.flashgame-card-inner{position:relative;width:100%;min-height:230px;transform-style:preserve-3d;transition:transform .6s cubic-bezier(.4,.2,.2,1)}.flashgame-card-inner.is-flipped{transform:rotateY(180deg)}.flashgame-card-inner.has-image{min-height:560px}.flashgame-card-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:.9rem;padding:1.25rem 1.5rem;background:#fff;box-shadow:0 16px 40px #0f172a2e;display:flex;flex-direction:column;overflow:hidden}.flashgame-card-face.front{transform:rotateY(0) translateZ(1px)}.flashgame-card-face.back{transform:rotateY(180deg) translateZ(1px)}.flashgame-card-label{text-transform:uppercase;letter-spacing:.08em;font-size:.7rem;font-weight:600}.flashgame-card-content{margin-top:.5rem;font-size:.95rem;line-height:1.7;overflow-y:auto;max-height:260px;padding-right:.25rem}.flashgame-card-inner.has-image .flashgame-card-content{max-height:105px}.flashgame-card-image{flex:1 1 auto;width:calc(100% - .5rem);min-height:260px;margin:.75rem .25rem 0;padding:.45rem;display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid rgba(148,163,184,.28);border-radius:.75rem;background:#f8fafcbf}.flashgame-card-image img{display:block;width:100%;height:auto;max-height:340px;object-fit:contain}.flashgame-card-image-status{padding:1rem;text-align:center}@media(max-width:575.98px){.flashcard-image-control .d-flex{align-items:center!important;flex-direction:row}.flashgame-card-inner.has-image{min-height:570px}.flashgame-card-face{padding:1rem}}.flashgame-tags{min-height:1.5rem}.flashgame-stats span{font-size:.8rem}.guidedreading-root{display:flex;flex-direction:column;gap:1rem}.guidedreading-summary{font-size:1rem;line-height:1.75}.guidedreading-evaluation{border:1px solid rgba(99,102,241,.18);background:linear-gradient(135deg,#eef2ffb8,#fffffff0)}.guidedreading-evaluation .badge{white-space:nowrap}.quizgame-root{display:flex;flex-direction:column;gap:1rem}.auth-pane{max-width:520px}@media(min-width:992px){.auth-pane{max-width:470px}}.nav-pills .nav-link{border-radius:999px;border:1px solid transparent;color:var(--muted);background:#fffc;transition:all .2s ease}.nav-pills .nav-link.active{color:#fff;background-image:linear-gradient(120deg,var(--gradient-start),var(--gradient-mid),var(--gradient-end));box-shadow:0 12px 30px #2563eb47,0 10px 22px #22c55e29}.btn-google{width:100%;border-color:#94a3b880;background:#ffffffe6;color:var(--ink);box-shadow:0 10px 24px #0f172a1f}.btn-google:hover,.btn-google:focus-visible{border-color:var(--gradient-start);color:var(--gradient-start)}.form-check-label a{text-decoration:none}.auth-message{font-size:.9rem;margin-top:.75rem}.store-hero{position:relative;overflow:hidden}.store-hero:after{content:"";position:absolute;width:360px;height:360px;right:-80px;top:-120px;background:radial-gradient(circle at 30% 30%,rgba(34,197,94,.2),transparent 50%),radial-gradient(circle at 70% 70%,rgba(14,165,233,.18),transparent 45%);filter:blur(0px);opacity:.9}.store-hero>*{position:relative;z-index:1}.store-hero-layout{display:grid;grid-template-columns:minmax(0,7fr) minmax(20rem,5fr);grid-template-areas:"copy preview" "search preview";gap:1.5rem}.store-hero-copy{grid-area:copy;align-self:end}.store-hero-title{margin-bottom:.75rem;color:var(--teal-dark);font-family:Poppins,Inter,system-ui,sans-serif;font-size:clamp(1.9rem,3.2vw,2.65rem);font-weight:700;line-height:1.12;letter-spacing:-.035em;text-wrap:balance}@supports ((-webkit-background-clip: text) or (background-clip: text)){.store-hero-title{background:linear-gradient(110deg,var(--teal-dark) 0%,var(--teal) 34%,var(--gradient-mid) 62%,var(--green) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}}.store-hero-preview{grid-area:preview;min-width:0}.store-search{grid-area:search;align-self:start}.store-section-heading{padding:.55rem .9rem;font-size:1.1rem;line-height:1.2}.store-section-heading i{font-size:1.08em}.pill-soft{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .85rem;border-radius:999px;background:#0ea5e91f;color:var(--ink);border:1px solid rgba(14,165,233,.16);font-size:.9rem;letter-spacing:.1px}.store-search .form-control{background:#ffffffeb;box-shadow:0 12px 30px #0ea5e929}.store-search .form-control:focus{box-shadow:0 0 0 .2rem #2563eb1f,0 12px 28px #0ea5e92e}@media(max-width:991.98px){.store-hero-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"copy" "preview" "search"}}.store-highlight{background:linear-gradient(135deg,#2563eb14,#22c55e1f);border:1px solid rgba(255,255,255,.45)}.hero-flashcard-stage,.hero-flashcard-inner{min-height:290px}.hero-flashcard-face{padding:1.25rem;border:1px solid rgba(15,118,110,.12);box-shadow:0 16px 36px #0f3e3a29}.hero-flashcard-face.front{background:radial-gradient(circle at 92% 12%,rgba(217,239,234,.9),transparent 34%),#fff}.hero-flashcard-face.back{background:radial-gradient(circle at 8% 88%,rgba(224,238,228,.86),transparent 36%),#fff}.hero-flashcard-content{max-width:28rem;margin:auto 0;color:var(--ink);font-family:Poppins,Inter,system-ui,sans-serif;font-size:clamp(1.05rem,1.8vw,1.3rem);font-weight:600;line-height:1.45}.hero-flashcard-answer{margin-top:.75rem;color:var(--ink);font-size:.94rem;line-height:1.65}.hero-flashcard-hint,.hero-flashcard-status{color:var(--teal);font-size:.78rem;font-weight:600}.hero-flashcard-toggle{padding:0;border:0;background:transparent;color:var(--muted);font:inherit;text-align:left}.hero-flashcard-toggle:hover,.hero-flashcard-toggle:focus-visible{color:var(--teal-dark)}.hero-flashcard-toggle:focus-visible{border-radius:.25rem;outline:2px solid rgba(15,118,110,.32);outline-offset:.2rem}.hero-flashcard-dots{display:flex;justify-content:flex-end;gap:.25rem}.hero-flashcard-dot{width:.38rem;height:.38rem;border-radius:999px;background:#0f766e33;transition:width .25s ease,background-color .25s ease}.hero-flashcard-dot.is-active{width:1rem;background:var(--teal)}.hero-flashcard-choice{pointer-events:none;white-space:nowrap;transition:color .2s ease,background-color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease}.hero-flashcard-choice.is-selected{color:#fff;transform:translateY(-2px)}.hero-flashcard-choice.is-selected[data-hero-result=known]{border-color:var(--green);background:var(--green);box-shadow:0 8px 18px #3f7d5747}.hero-flashcard-choice.is-selected[data-hero-result=unsure]{border-color:var(--accent-amber);background:var(--accent-amber);box-shadow:0 8px 18px #a9793247}.hero-flashcard-choice.is-selected[data-hero-result=unknown]{border-color:#b65353;background:#b65353;box-shadow:0 8px 18px #b6535340}@media(max-width:575.98px){.hero-flashcard-stage,.hero-flashcard-inner{min-height:315px}.hero-flashcard-choice{padding-right:.35rem;padding-left:.35rem;font-size:.72rem}}.store-thumb{position:relative;height:200px;border-radius:.9rem;overflow:hidden;background:linear-gradient(145deg,#2563eb26,#22c55e1f)}.store-thumb img{width:100%;height:100%;object-fit:cover;display:block}.store-thumb-fallback{display:grid;place-items:center;color:#0f172a;font-size:1.3rem;background:radial-gradient(circle at 20% 20%,rgba(14,165,233,.16),transparent 40%),radial-gradient(circle at 80% 70%,rgba(34,197,94,.18),transparent 45%),linear-gradient(120deg,#ffffffe6,#ffffffd1)}.store-fallback-icon{font-size:1.9rem;color:var(--muted)}.store-price-badge{position:absolute;top:12px;right:12px;padding:.4rem .9rem;background:linear-gradient(120deg,var(--gradient-start),var(--gradient-mid));color:#fff;border-radius:999px;font-weight:700;box-shadow:0 10px 26px #2563eb3d}.store-thumb-badge{position:absolute;top:12px;left:12px;padding:.35rem .75rem;background:#ffffffe6;color:var(--ink);border-radius:999px;font-size:.85rem;border:1px solid rgba(255,255,255,.7)}.store-card h5{line-height:1.35}.store-chip{display:inline-flex;align-items:center;padding:.2rem .6rem;border-radius:.65rem;background:#0ea5e91f;color:var(--ink);font-size:.85rem;border:1px solid rgba(148,163,184,.35)}.store-modal .modal-header{border-bottom:1px solid rgba(148,163,184,.2)}.store-modal-carousel{border-radius:1rem;overflow:hidden;background:linear-gradient(145deg,#2563eb1f,#22c55e1f)}.store-modal-carousel .carousel-inner{border-radius:inherit}.store-modal-slide{height:clamp(220px,42vw,380px);min-height:220px;display:grid;place-items:center;background:linear-gradient(145deg,#2563eb1f,#22c55e1f);box-sizing:border-box;border-radius:1rem}.store-modal-slide img{width:100%;height:100%;object-fit:fill;display:block;border-radius:inherit}.store-modal-slide-fallback{background:#ffffffe6}.store-modal-carousel .carousel-indicators{margin-bottom:.85rem}.store-modal-carousel .carousel-indicators [data-bs-target]{width:.7rem;height:.7rem;border-radius:999px;background-color:#0f172a66}.store-modal-carousel .carousel-indicators .active{background-color:#2563ebe6}.store-modal-carousel .carousel-control-prev-icon,.store-modal-carousel .carousel-control-next-icon{filter:drop-shadow(0 6px 14px rgba(15,23,42,.35))}.store-modal-empty{gap:.45rem;padding:1rem;color:var(--muted);font-size:.9rem;text-align:center}.store-modal-empty-label{margin-top:.35rem}.store-modal-content{display:grid;gap:.85rem}.store-modal-meta{display:flex;flex-wrap:wrap;gap:.75rem}.store-modal-hint{margin-top:.8rem;padding:.55rem .75rem;border-radius:.65rem;background:#0f172a0a}@media(min-width:768px){.store-thumb{height:230px}}.dashboard-page main{max-width:1240px}.dashboard-header .display-6{letter-spacing:-.02em}.dashboard-state-card{min-height:280px;display:flex;flex-direction:column;justify-content:center}.dashboard-state-icon{font-size:2.5rem;line-height:1}.dashboard-metric-card,.dashboard-game-card{transition:transform .2s ease,box-shadow .2s ease}.dashboard-metric-card:hover,.dashboard-game-card:hover{transform:translateY(-2px)}.dashboard-metric-card{display:flex;flex-direction:column;gap:.25rem}.dashboard-metric-icon,.dashboard-game-icon{display:inline-grid;place-items:center;flex:0 0 auto;border-radius:.85rem}.dashboard-metric-icon{width:2.5rem;height:2.5rem;margin-bottom:.5rem;font-size:1.15rem}.dashboard-game-icon{width:3.25rem;height:3.25rem;font-size:1.45rem}.dashboard-icon-blue{color:#1d4ed8;background:#2563eb1f}.dashboard-icon-green{color:#15803d;background:#22c55e21}.dashboard-icon-amber{color:#b45309;background:#f59e0b24}.dashboard-icon-purple{color:#7e22ce;background:#a855f71f}.dashboard-metric-value{color:var(--ink);font-family:Poppins,Inter,sans-serif;font-size:clamp(1.75rem,4vw,2.25rem);font-weight:700;font-variant-numeric:tabular-nums;line-height:1.15}.dashboard-metric-value small{font-size:.55em;margin-left:.1rem}.dashboard-metric-label{color:#64748b;font-size:.9rem}.dashboard-game-card{display:flex;flex-direction:column;min-height:430px}.dashboard-total-badge{flex:0 0 auto;padding:.35rem .7rem;color:#475569;background:#f1f5f9e6;border:1px solid rgba(148,163,184,.3);border-radius:999px;font-size:.8rem;font-weight:600;white-space:nowrap}.dashboard-result-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.dashboard-result-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-result-item{display:flex;flex-direction:column;align-items:center;padding:1rem .5rem;border:1px solid rgba(148,163,184,.25);border-radius:.8rem;background:#f8fafcb8}.dashboard-result-value{font-family:Poppins,Inter,sans-serif;font-size:1.65rem;font-weight:700;font-variant-numeric:tabular-nums;line-height:1.2}.dashboard-result-label{display:flex;align-items:center;gap:.25rem;margin-top:.25rem;color:#64748b;font-size:.8rem}.result-known .dashboard-result-value,.result-known .dashboard-result-label i{color:#15803d}.result-unsure .dashboard-result-value,.result-unsure .dashboard-result-label i{color:#b45309}.result-unknown .dashboard-result-value,.result-unknown .dashboard-result-label i{color:#dc2626}.dashboard-distribution{display:flex;min-height:.65rem;overflow:hidden;background:#e2e8f0cc;border-radius:999px}.distribution-segment{width:0;min-width:0;transition:width .35s ease}.segment-known{background:#22c55e}.segment-unsure{background:#f59e0b}.segment-unknown{background:#ef4444}.dashboard-game-status{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;padding-top:1rem;border-top:1px solid rgba(148,163,184,.25);color:#64748b;font-size:.9rem}.dashboard-game-status span{display:inline-flex;align-items:center;gap:.4rem}.dashboard-game-status strong{color:var(--ink);font-variant-numeric:tabular-nums}.dashboard-accuracy{height:.7rem;background:#e2e8f0cc;border-radius:999px}.dashboard-accuracy .progress-bar{width:0;background:linear-gradient(90deg,var(--gradient-start),var(--gradient-end));border-radius:inherit;transition:width .35s ease}@media(max-width:575.98px){.dashboard-game-card{min-height:0}.dashboard-result-grid{gap:.45rem}.dashboard-result-item{padding:.8rem .25rem}.dashboard-result-value{font-size:1.35rem}.dashboard-result-label{font-size:.72rem}}body{position:relative;isolation:isolate;background-color:var(--page-bg);background-image:linear-gradient(rgba(15,118,110,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(15,118,110,.035) 1px,transparent 1px);background-size:64px 64px;background-attachment:fixed}.ambient-geometry{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none}.ambient-shape{--from-x: -22vw;--to-x: 122vw;--sway: 2.5rem;--rotation-start: 0deg;--rotation-mid: 210deg;--rotation-end: 420deg;--rest-x: 40vw;position:absolute;left:0;width:7rem;aspect-ratio:1;border:1px solid rgba(15,118,110,.18);background:#ffffff1a;transform:translate3d(var(--rest-x),0,0) rotate(var(--rotation-start));animation:ambient-cross 96s linear infinite;will-change:transform}.ambient-shape:nth-child(1){top:8%;width:clamp(5rem,8vw,8rem);border-radius:1.6rem;--sway: 3rem;--rest-x: 12vw;--rotation-start: 12deg;--rotation-end: 492deg;animation-duration:94s;animation-delay:-38s}.ambient-shape:nth-child(2){top:24%;width:clamp(8rem,13vw,13rem);border-radius:50%;border-color:#3f7d572e;background:#3f7d5706;--from-x: 120vw;--to-x: -25vw;--sway: 4.5rem;--rest-x: 72vw;--rotation-start: 0deg;--rotation-mid: -180deg;--rotation-end: -360deg;animation-duration:128s;animation-delay:-74s}.ambient-shape:nth-child(3){top:41%;width:clamp(3.5rem,6vw,6rem);border-radius:.7rem;border-color:#3f7d5733;--sway: 2rem;--rest-x: 32vw;--rotation-start: 45deg;--rotation-end: 765deg;animation-duration:86s;animation-delay:-12s}.ambient-shape:nth-child(4){top:58%;width:clamp(9rem,16vw,16rem);border-width:1px;border-radius:50%;border-color:#0f766e24;background:transparent;box-shadow:inset 0 0 0 2.4rem #ffffff09;--from-x: 125vw;--to-x: -28vw;--sway: 5rem;--rest-x: 57vw;--rotation-mid: -270deg;--rotation-end: -540deg;animation-duration:142s;animation-delay:-104s}.ambient-shape:nth-child(5){top:76%;width:clamp(4rem,7vw,7rem);border:0;background:#0f766e11;clip-path:polygon(50% 0,100% 100%,0 100%);--sway: 3.5rem;--rest-x: 80vw;--rotation-start: -12deg;--rotation-end: 528deg;animation-duration:103s;animation-delay:-61s}.ambient-shape:nth-child(6){top:14%;width:clamp(3rem,5vw,5rem);border:0;background:#3f7d5713;clip-path:polygon(25% 7%,75% 7%,100% 50%,75% 93%,25% 93%,0 50%);--from-x: 124vw;--to-x: -24vw;--sway: 2.5rem;--rest-x: 48vw;--rotation-start: 20deg;--rotation-mid: -340deg;--rotation-end: -700deg;animation-duration:89s;animation-delay:-25s}.ambient-shape:nth-child(7){top:67%;width:clamp(5rem,9vw,9rem);border-radius:2rem;border-color:#0f766e26;--sway: 4rem;--rest-x: 19vw;--rotation-start: -30deg;--rotation-end: 450deg;animation-duration:118s;animation-delay:-91s}.ambient-shape:nth-child(8){top:88%;width:clamp(2.5rem,4vw,4rem);border-radius:50%;border-color:#3f7d5738;background:#ffffff29;--from-x: 122vw;--to-x: -22vw;--sway: 2rem;--rest-x: 66vw;--rotation-mid: -210deg;--rotation-end: -420deg;animation-duration:78s;animation-delay:-47s}@keyframes ambient-cross{0%{transform:translate3d(var(--from-x),calc(0rem - var(--sway)),0) rotate(var(--rotation-start))}50%{transform:translate3d(50vw,var(--sway),0) rotate(var(--rotation-mid))}to{transform:translate3d(var(--to-x),0,0) rotate(var(--rotation-end))}}.ambient-formula{--from-x: -42vw;--to-x: 122vw;--sway: 2.5rem;--rotation-start: -8deg;--rotation-mid: 172deg;--rotation-end: 352deg;--rest-x: 34vw;position:absolute;left:0;width:max-content;color:#08524d29;font-size:clamp(.95rem,1.4vw,1.35rem);line-height:1;white-space:nowrap;-webkit-user-select:none;user-select:none;transform:translate3d(var(--rest-x),0,0) rotate(var(--rotation-start));animation:ambient-cross 112s linear infinite;will-change:transform}.ambient-formula .katex{font-size:1em}.ambient-formula--1{top:6%;--rest-x: 18vw;animation-duration:112s;animation-delay:-67s}.ambient-formula--2{top:21%;color:#3f7d572b;font-size:clamp(.9rem,1.25vw,1.2rem);--from-x: 124vw;--to-x: -38vw;--rest-x: 69vw;--sway: 3.5rem;--rotation-start: 12deg;--rotation-mid: -168deg;--rotation-end: -348deg;animation-duration:137s;animation-delay:-103s}.ambient-formula--3{top:38%;--rest-x: 46vw;--sway: 2rem;--rotation-start: -18deg;--rotation-mid: 252deg;--rotation-end: 522deg;animation-duration:92s;animation-delay:-29s}.ambient-formula--4{top:56%;color:#3f7d572e;font-size:clamp(1rem,1.5vw,1.45rem);--from-x: 124vw;--to-x: -38vw;--rest-x: 24vw;--sway: 4rem;--rotation-start: 16deg;--rotation-mid: -164deg;--rotation-end: -344deg;animation-duration:119s;animation-delay:-74s}.ambient-formula--5{top:75%;--from-x: -58vw;--rest-x: 61vw;--sway: 3rem;--rotation-start: -10deg;--rotation-mid: 170deg;--rotation-end: 350deg;animation-duration:146s;animation-delay:-118s}.ambient-formula--6{top:91%;color:#3f7d572b;--from-x: 124vw;--to-x: -42vw;--rest-x: 77vw;--sway: 2rem;--rotation-start: 8deg;--rotation-mid: -262deg;--rotation-end: -532deg;animation-duration:103s;animation-delay:-46s}.static-panel-decor{position:relative;overflow:hidden;isolation:isolate}.static-panel-decor:after{content:"";position:absolute;z-index:0;width:clamp(7rem,13vw,11rem);aspect-ratio:1;border:1px solid rgba(15,118,110,.13);background:#ffffff1f;pointer-events:none}.static-panel-decor--rounded:after{top:-4.5rem;right:-3.5rem;border-radius:2rem;transform:rotate(24deg)}.static-panel-decor--circle:after{right:-3.5rem;bottom:-4.5rem;border-radius:50%;box-shadow:inset 0 0 0 1.5rem #d9efea38}.static-panel-decor--diamond:after{top:-4.75rem;right:-3rem;border-radius:1.4rem;background:#3f7d570b;transform:rotate(45deg)}.static-panel-decor--arc:after{right:-5rem;bottom:-5.75rem;width:clamp(9rem,17vw,14rem);border-width:1.2rem;border-color:#0f766e13;border-radius:50%;background:transparent}.static-panel-decor>*:not(.static-panel-formula){position:relative;z-index:1}.card.glass>.static-panel-formula{position:absolute;z-index:0}.static-panel-formula{max-width:72%;color:#08524d1b;font-size:clamp(1rem,1.8vw,1.65rem);line-height:1;white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none}.static-panel-formula .katex{font-size:1em}.static-panel-formula--top-right{top:1.15rem;right:1.25rem;transform:rotate(8deg)}.static-panel-formula--bottom-right{right:1.25rem;bottom:1.1rem;transform:rotate(-9deg)}.static-panel-formula--bottom-left{bottom:1.1rem;left:1.25rem;transform:rotate(7deg)}.navbar{background:#08413deb;border-bottom-color:#ffffff21;box-shadow:0 10px 30px #08302d29;backdrop-filter:blur(18px) saturate(120%);-webkit-backdrop-filter:blur(18px) saturate(120%)}.brand-gradient{background:none;color:#f2fbf8;-webkit-text-fill-color:currentColor}.navbar .nav-link{border-radius:.65rem;color:#eefaf6b8;transition:color .2s ease,background-color .2s ease}.navbar .nav-link:hover,.navbar .nav-link:focus-visible{color:#fff;background-color:#ffffff14}.navbar .nav-link.active{color:#fff;background-color:#ffffff21}.login-label-mobile{display:none}a,button,input,select,textarea,[role=button]{touch-action:manipulation}@media(pointer:coarse){input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:max(16px,1em)}}@media(max-width:991.98px){body:not(.app-page){padding-top:calc(78px + env(safe-area-inset-top));padding-right:env(safe-area-inset-right);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left)}body:not(.app-page)>.navbar{padding-top:env(safe-area-inset-top);padding-right:max(.75rem,env(safe-area-inset-right));padding-left:max(.75rem,env(safe-area-inset-left))}body.app-page{padding-top:calc(4.25rem + env(safe-area-inset-top));padding-bottom:calc(5.25rem + env(safe-area-inset-bottom))}#editorWrapper{padding-top:2.75rem}.course-actions-panel{position:static;width:100%}#saveStatus:not(:empty){margin-bottom:.75rem}.course-action-buttons{position:fixed;z-index:1025;top:calc(4.75rem + env(safe-area-inset-top));right:max(1rem,env(safe-area-inset-right));flex-direction:row!important}.course-action-buttons .btn{display:inline-flex;width:2.75rem!important;height:2.75rem;flex:0 0 2.75rem;align-items:center;justify-content:center;padding:0;border-radius:50%;box-shadow:0 10px 24px #08302d38}.course-action-buttons .btn>i,.course-action-buttons .btn>.spinner-border{margin-right:0!important}.course-action-buttons .course-action-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}body.app-page>.site-footer{display:none}.app-navbar.navbar{min-height:calc(4rem + env(safe-area-inset-top));padding:env(safe-area-inset-top) .75rem 0;background:#08413df7;backdrop-filter:none;-webkit-backdrop-filter:none}.app-navbar>.container-fluid{min-height:4rem;padding-right:max(.25rem,env(safe-area-inset-right));padding-left:max(.25rem,env(safe-area-inset-left));flex-wrap:nowrap}.app-navbar .navbar-brand{position:relative;z-index:1;margin-right:0;padding:.35rem 0;font-size:1.2rem}.app-navbar .navbar-toggler{display:none}.app-navbar .navbar-collapse{display:contents!important}.app-navbar .navbar-links{position:fixed;z-index:1035;right:0;bottom:0;left:0;display:flex;flex-direction:row;justify-content:space-around;height:calc(4.5rem + env(safe-area-inset-bottom));margin:0!important;padding:.45rem max(.75rem,env(safe-area-inset-right)) env(safe-area-inset-bottom) max(.75rem,env(safe-area-inset-left));border-top:1px solid rgba(15,118,110,.16);background:#f6faf8e6;box-shadow:0 -12px 32px #08302d1f;backdrop-filter:blur(22px) saturate(160%);-webkit-backdrop-filter:blur(22px) saturate(160%)}.app-navbar .navbar-links .nav-item{display:flex;flex:1 1 0;justify-content:center;min-width:0}.app-navbar .navbar-links .nav-link{display:grid;width:min(100%,5rem);min-height:3.5rem;place-items:center;padding:.45rem;border-radius:1rem;color:#627873;font-size:1.45rem;line-height:1;-webkit-tap-highlight-color:transparent}.app-navbar .navbar-links .nav-link:hover,.app-navbar .navbar-links .nav-link:focus-visible{color:var(--teal-dark);background:#0f766e14}.app-navbar .navbar-links .nav-link.active{color:var(--teal-dark);background:#0f766e21;box-shadow:inset 0 0 0 1px #0f766e14}.app-navbar .navbar-links .nav-link>i{margin-right:0!important}.app-navbar .nav-label,.app-navbar .login-label-desktop{display:none}.app-navbar .login-label-mobile{display:inline}.app-navbar .navbar-account{z-index:1;margin-left:auto!important}.app-navbar .navbar-account .credit-badge:not(.d-none){display:inline-flex!important;min-height:2.5rem;align-items:center;padding:.35rem .7rem;border-color:#ffffffb8;background:#fffffff0;box-shadow:0 8px 20px #08302d29}.app-navbar .navbar-account .credit-badge>.d-sm-inline{display:none!important}.app-navbar #loginBtn{min-height:2.5rem;padding:.4rem .9rem;font-size:.9rem;font-weight:600}.app-navbar .avatar-btn{width:2.5rem;height:2.5rem}.app-navbar .mobile-course-picker-btn{position:fixed;z-index:1034;right:max(1rem,env(safe-area-inset-right));bottom:calc(5.25rem + env(safe-area-inset-bottom));display:grid;width:3rem;height:3rem;place-items:center;padding:0;border-color:#ffffffb8;border-radius:50%;color:#fff;background:#08413df0;box-shadow:0 12px 28px #08302d3d;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}}.card.glass,.credits-modal,.account-settings-modal,.math-preview-modal-content,.math-preview-content,.modal-content,.offcanvas,.dropdown-menu{border:1px solid var(--glass-border);background:var(--glass-bg);box-shadow:inset 0 1px #ffffffb3,0 18px 48px var(--shadow-color);backdrop-filter:blur(20px) saturate(112%);-webkit-backdrop-filter:blur(20px) saturate(112%)}.card.glass{border-color:#ffffffc7;border-radius:1.15rem}.card.glass:before{display:none}.offcanvas,.modal-content{background-color:#f8fcfae0}.list-group-item,.dropdown-item{background-color:#ffffff7a}.list-group-item-action{transition:color .2s ease,background-color .2s ease}.list-group-item-action:hover,.list-group-item-action:focus{color:var(--teal-dark);background-color:#0f766e14}.list-group-item.active{color:#fff;border-color:var(--teal);background-color:var(--teal)}.list-group-item.active .course-list-meta{color:#fff!important}.gradient-btn,.btn-primary{--bs-btn-color: #fff;--bs-btn-bg: var(--teal);--bs-btn-border-color: var(--teal);--bs-btn-hover-color: #fff;--bs-btn-hover-bg: var(--teal-dark);--bs-btn-hover-border-color: var(--teal-dark);--bs-btn-active-color: #fff;--bs-btn-active-bg: #083f3b;--bs-btn-active-border-color: #083f3b;--bs-btn-disabled-bg: #6d9994;--bs-btn-disabled-border-color: #6d9994;background-image:none;box-shadow:0 8px 22px #0f766e33;transition:transform .15s ease,background-color .2s ease,border-color .2s ease,box-shadow .2s ease}.gradient-btn:hover,.btn-primary:hover{filter:none;transform:translateY(-1px);box-shadow:0 12px 26px #0a4f4a38}.gradient-btn:active,.btn-primary:active{transform:translateY(0);box-shadow:0 5px 14px #0a4f4a33}.btn-success{--bs-btn-bg: var(--green);--bs-btn-border-color: var(--green);--bs-btn-hover-bg: #326947;--bs-btn-hover-border-color: #326947;--bs-btn-active-bg: #28563a;--bs-btn-active-border-color: #28563a}.btn-outline-primary{--bs-btn-color: var(--teal);--bs-btn-border-color: rgba(15, 118, 110, .55);--bs-btn-hover-color: #fff;--bs-btn-hover-bg: var(--teal);--bs-btn-hover-border-color: var(--teal);--bs-btn-active-bg: var(--teal-dark);--bs-btn-active-border-color: var(--teal-dark)}.btn-outline-secondary{border-color:#124a454d;color:#365c58}.btn-outline-secondary:hover,.btn-outline-secondary:focus-visible{border-color:var(--teal);color:var(--teal-dark);background-color:#0f766e12}a{color:var(--teal)}a:hover{color:var(--teal-dark)}.text-primary{color:var(--teal)!important}.text-success{color:var(--green)!important}.text-secondary,.text-muted{color:var(--muted)!important}.bg-primary,.text-bg-primary{background-color:var(--teal)!important}.text-bg-success{background-color:var(--green)!important}.form-control,.form-select,.dropzone,.btn-google,.carousel-btn{background-color:#ffffffad;border-color:#0f766e33;box-shadow:0 6px 18px #0f3e3a0f}.form-control:focus,.form-select:focus{border-color:var(--teal);box-shadow:0 0 0 .2rem #0f766e1f}.form-check-input:checked{border-color:var(--teal);background-color:var(--teal)}.form-check-input:focus{border-color:var(--teal);box-shadow:0 0 0 .2rem #0f766e1f}.dropzone:hover,.dropzone.dragover{border-color:var(--teal);background-color:#ffffffc7;box-shadow:0 10px 24px #0f766e1a}.alert-info,.math-preview-authoring-hint{color:#174b47;border-color:#0f766e33;background-color:#d9efeab8}.nav-pills .nav-link{color:#52706b;background:#ffffff7a}.nav-pills .nav-link.active{color:#fff;background:var(--teal);box-shadow:0 8px 22px #0f766e2e}.module-tile.active,.card .module-card.active{color:var(--teal-dark);border-color:#0f766e94;background-color:#0f766e1a}.module-tile:hover,.module-card:hover{border-color:#0f766e6b;box-shadow:0 12px 28px #0f3e3a1a}.pref-badge,.pill-soft,.store-chip{color:var(--teal-dark);border-color:#0f766e29;background:#d9efeab8}.store-hero:after{width:18rem;height:18rem;top:-10rem;right:-5rem;border:1px solid rgba(15,118,110,.15);border-radius:2.5rem;background:#ffffff1f;transform:rotate(20deg)}.store-highlight,.store-thumb,.store-modal-carousel,.store-modal-slide{background:#d9efea94}.store-thumb-fallback{background:#e8f4f0eb}.store-price-badge{background:var(--teal);box-shadow:0 8px 22px #0f766e33}.store-modal-carousel .carousel-indicators .active{background-color:var(--teal)}.dashboard-icon-blue,.dashboard-icon-purple{color:var(--teal);background:#0f766e1c}.dashboard-icon-green{color:var(--green);background:#3f7d571f}.dashboard-icon-amber{color:#6d7650;background:#7b8b5a1f}.dashboard-accuracy .progress-bar{background:var(--teal)}.learning-notes,.dashboard-note-item{background:#ffffffb8}.learning-note-math-hint{padding:.55rem .65rem;color:#174b47;border:1px solid rgba(15,118,110,.2);border-radius:.6rem;background:#d9efea94}.learning-note-math-preview,.dashboard-note-editor-preview{min-width:0;padding:.75rem;overflow:hidden;border:1px solid rgba(148,163,184,.35);border-radius:.7rem;background:#f8fafcd1}.learning-note-math-preview-content,.dashboard-note-editor-preview{overflow-wrap:anywhere}.dashboard-note-item{width:100%;min-height:13rem;color:inherit;font:inherit;box-shadow:0 .45rem 1.25rem #0f172a12;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.dashboard-note-item:hover,.dashboard-note-item:focus-visible{color:inherit;transform:translateY(-2px);box-shadow:0 .8rem 1.7rem #0f172a1f}.dashboard-note-item:focus-visible{outline:3px solid rgba(13,110,253,.3);outline-offset:3px}.learning-note-content,.dashboard-note-content{white-space:pre-wrap;overflow-wrap:anywhere}.dashboard-note-item .dashboard-note-content{max-height:7.5rem;overflow:hidden}.dashboard-note-item .dashboard-note-content .katex-display{margin:.35rem 0}.dashboard-note-open-hint{display:flex;align-items:center;justify-content:space-between;gap:1rem;color:var(--bs-primary);font-size:.8rem;font-weight:600}.dashboard-notes-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}.dashboard-note-context{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.dashboard-note-modal-dialog{width:min(96vw,96rem);max-width:min(96vw,96rem)}.dashboard-note-modal-content{height:min(92vh,64rem);overflow:hidden;border-radius:1rem}.dashboard-note-modal-body{min-height:0;overflow:hidden;background:#f8fafce0}.dashboard-note-modal-loading{display:flex;height:100%;min-height:18rem;align-items:center;justify-content:center;flex-direction:column;gap:1rem;color:var(--bs-secondary-color)}.dashboard-note-modal-layout{display:grid;grid-template-columns:minmax(20rem,.9fr) minmax(32rem,1.4fr);gap:1rem;height:100%;min-height:0}.dashboard-note-detail-pane{min-width:0;min-height:0;padding:1.25rem;overflow-y:auto;border:1px solid rgba(148,163,184,.35);border-radius:.85rem;background:#fffffff5;scrollbar-gutter:stable}.dashboard-note-target-block{padding:.85rem 1rem;border:1px solid rgba(148,163,184,.3);border-radius:.75rem;background:#f8fafce6}.dashboard-note-target-block.is-question{border-color:#0d6efd3d;background:#0d6efd0e}.dashboard-note-target-block.is-answer{border-color:#1987543d;background:#1987540e}.dashboard-note-target-text,.dashboard-note-modal-note{overflow-wrap:anywhere}.dashboard-note-modal-note{min-height:6rem;padding:.85rem 1rem;white-space:pre-wrap;border:1px solid rgba(148,163,184,.35);border-radius:.75rem;background:#f8fafccc}.dashboard-note-image-wrap{display:flex;min-height:3rem;align-items:center;justify-content:center}.dashboard-note-image-wrap img{max-height:20rem;object-fit:contain}.dashboard-note-answer-option{display:grid;grid-template-columns:2rem minmax(0,1fr);align-items:start;gap:.75rem;padding:.75rem;border:1px solid rgba(148,163,184,.32);border-radius:.7rem;background:#f8fafcd9}.dashboard-note-answer-option.is-correct{border-color:#19875466;background:#19875414}.dashboard-note-answer-marker{display:inline-flex;width:2rem;height:2rem;align-items:center;justify-content:center;border-radius:50%;background:#94a3b829;font-size:.8rem;font-weight:700}.dashboard-note-answer-option.is-correct .dashboard-note-answer-marker{color:#fff;background:var(--bs-success)}.dashboard-note-sources-pane{display:grid;grid-template-rows:minmax(20rem,1.45fr) minmax(12rem,.8fr);gap:1rem;min-width:0;min-height:0}.dashboard-note-sources-pane.has-no-pdf{grid-template-rows:minmax(0,1fr)}.dashboard-note-source-link{display:flex;align-items:flex-start;gap:.6rem;min-width:0;padding:.65rem .75rem;color:inherit;text-decoration:none;border:1px solid rgba(148,163,184,.3);border-radius:.65rem;background:#f8fafcd9}a.dashboard-note-source-link:hover{color:var(--bs-primary);border-color:#0d6efd59}.dashboard-note-source-link span{min-width:0;overflow-wrap:anywhere}.dashboard-note-source-excerpt{padding:.8rem;border:1px solid rgba(148,163,184,.3);border-radius:.7rem;background:#f8fafcd1}.dashboard-note-source-excerpt+.dashboard-note-source-excerpt{margin-top:.75rem}@media(max-width:1199.98px){.dashboard-note-modal-content{height:auto;max-height:94vh}.dashboard-note-modal-body{overflow-y:auto}.dashboard-note-modal-layout{grid-template-columns:minmax(0,1fr);height:auto}.dashboard-note-detail-pane{max-height:none;overflow:visible}.dashboard-note-sources-pane{grid-template-rows:minmax(30rem,60vh) minmax(12rem,auto)}}@media(max-width:575.98px){.dashboard-note-modal-dialog{width:auto;max-width:none;margin:.5rem}.dashboard-note-modal-content{max-height:calc(100vh - 1rem)}.dashboard-note-sources-pane{grid-template-rows:minmax(24rem,65vh) minmax(12rem,auto)}.dashboard-note-modal-content .modal-footer{align-items:stretch}#dashboardNoteModalStatus{width:100%}}.math-preview-modal-body,.math-preview-body{background:#edf5f2b8}@media(max-width:767.98px){body{background-size:48px 48px}.ambient-shape{opacity:.72}.ambient-formula{color:#08524d21;font-size:.9rem}.ambient-formula--5,.ambient-formula--6{display:none}.static-panel-formula{max-width:62%;color:#08524d14;font-size:.95rem}.static-panel-decor:after{opacity:.72}}@media(prefers-reduced-motion:reduce){.ambient-shape,.ambient-formula{animation:none}*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.site-footer{position:relative;z-index:1;flex-shrink:0;overflow:hidden;width:100%;margin-top:auto;border-color:#0f766e2e!important;background:linear-gradient(120deg,#ffffff94,#d9efea80);box-shadow:0 -14px 40px #0f3e3a14;backdrop-filter:blur(18px) saturate(135%);-webkit-backdrop-filter:blur(18px) saturate(135%)}.site-footer:before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,rgba(15,118,110,.5),transparent)}.site-footer .container{position:relative;z-index:1}.site-footer a{display:inline-flex;align-items:center;padding:.32rem .62rem;border:1px solid transparent;border-radius:999px;color:var(--muted);font-weight:600;text-decoration:none;transition:color .2s ease,background-color .2s ease,border-color .2s ease,transform .2s ease}.site-footer a:hover,.site-footer a:focus-visible{color:var(--teal-dark);border-color:#0f766e29;background:#ffffff8f;transform:translateY(-1px)}.legal-hero{padding:clamp(2rem,5vw,4rem)}.legal-hero-badge{letter-spacing:.08em;text-transform:uppercase}.legal-content{max-width:920px}.legal-card .card-body{padding:clamp(1.25rem,3vw,2rem)}.legal-card a{overflow-wrap:anywhere}.legal-card h3{margin-top:1.5rem}
