.assessment-hub,.quiz-builder,.essay-builder,.essay-detail{gap:18px;min-width:0;display:grid}.assessment-hub-header,.builder-header,.assessment-section-title,.assessment-actions,.assessment-row,.builder-footer,.live-controls,.live-quiz-host>header{align-items:center;display:flex}.assessment-hub-header,.builder-header,.builder-footer,.live-quiz-host>header{justify-content:space-between}.assessment-hub-header h3,.builder-header h3,.essay-brief h4,.essay-editor h4,.essay-grading h4{font-size:24px;line-height:1.15}.assessment-hub-header p,.builder-header p,.assessment-section-title span,.assessment-row-copy span,.assessment-row-copy small{color:var(--muted);font-size:13px;font-weight:800}.assessment-actions,.builder-footer>div{gap:9px}.assessment-template-strip,.assessment-list-section,.quiz-builder,.essay-builder,.essay-detail{background:var(--panel-strong);border:1px solid var(--border-soft);border-radius:18px;padding:18px}.assessment-section-title{justify-content:space-between;gap:10px;margin-bottom:13px}.assessment-section-title>div{gap:2px;margin-right:auto;display:grid}.assessment-template-list{grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;display:grid}.assessment-template-list button{background:var(--row);border:1px solid var(--border-soft);color:var(--ink);cursor:pointer;text-align:left;border-radius:8px;align-items:flex-start;gap:9px;min-height:86px;padding:12px;display:flex}.assessment-template-list button:hover,.assessment-row:hover{border-color:color-mix(in srgb, var(--accent) 38%, var(--border-soft))}.assessment-template-list span,.assessment-row-copy{gap:4px;min-width:0;display:grid}.assessment-template-list small{color:var(--muted);font-size:11px;line-height:1.35}.assessment-columns{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);align-items:start;gap:16px;display:grid}.assessment-list{gap:8px;display:grid}.assessment-row{border:1px solid var(--border-soft);color:var(--ink);text-align:left;background:0 0;border-radius:8px;gap:12px;width:100%;min-height:78px;padding:11px}button.assessment-row{cursor:pointer}.assessment-kind-icon{color:#fff;border-radius:8px;flex:none;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.assessment-kind-icon.theme-pulse,.assessment-kind-icon.theme-spark,.assessment-kind-icon.theme-focus{background:#3f63d9}.assessment-kind-icon.theme-contrast{background:#24314d}.assessment-kind-icon.essay{background:#3f63d9}.assessment-row-copy{flex:1}.assessment-row-copy strong{line-height:1.2}.assessment-row-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;display:flex}.builder-header{gap:12px}.builder-header>div{flex:1}.builder-header>span{color:var(--muted);font-size:12px;font-weight:900}.builder-steps{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;display:grid}.builder-steps button{border:0;border-bottom:3px solid var(--border-soft);color:var(--muted);font:inherit;background:0 0;align-items:center;gap:7px;min-width:0;padding:9px 4px;font-size:12px;font-weight:900;display:flex}.builder-steps button.active,.builder-steps button.complete{border-color:var(--accent);color:var(--ink);cursor:pointer}.builder-steps b{background:var(--surface-soft);border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex}.builder-steps button.active b,.builder-steps button.complete b{background:var(--accent);color:#fff}.builder-stage{min-height:380px}.builder-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;display:grid}.builder-form-grid label,.question-explanation,.essay-grading label{color:var(--muted);gap:6px;font-size:12px;font-weight:900;display:grid}.builder-form-grid .wide,.question-explanation,.theme-picker,.youtube-clip-editor,.game-toggle-grid{grid-column:1/-1}.builder-form-grid input,.builder-form-grid textarea,.builder-form-grid select,.youtube-clip-editor input,.question-explanation textarea,.rubric-builder input,.essay-editor textarea,.essay-grading input,.essay-grading textarea{background:var(--row);border:1px solid var(--border-soft);color:var(--ink);font:inherit;border-radius:8px;outline:0;width:100%;padding:11px 12px}.builder-form-grid input:focus,.builder-form-grid textarea:focus,.builder-form-grid select:focus,.essay-editor textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 14%, transparent)}.form-error,.quiz-error{background:color-mix(in srgb, #3f63d9 10%, var(--panel-strong));border:1px solid color-mix(in srgb, #3f63d9 32%, var(--border-soft));color:#aac4f5;border-radius:8px;padding:10px 12px;font-size:13px;font-weight:850}.question-editor-list{gap:14px;display:grid}.question-editor{border:1px solid var(--border-soft);border-radius:8px;gap:13px;padding:14px;display:grid}.question-editor>header{justify-content:space-between;align-items:center;display:flex}.question-editor>header>span{font-weight:950}.question-editor>header>div,.markdown-toolbar{gap:5px;display:flex}.question-editor>header button,.markdown-toolbar button{border:1px solid var(--border-soft);color:var(--ink);cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.option-editor-grid,.preview-options,.quiz-option-grid,.host-option-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.option-editor-grid label{border:1px solid var(--border-soft);border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:7px;display:grid}.option-editor-grid label.correct{border-color:#3f63d9}.option-editor-grid label>input[type=text],.option-editor-grid label>input:not([type]){color:var(--ink);font:inherit;background:0 0;border:0;outline:0;min-width:0}.option-editor-grid label>span,.preview-options b{background:var(--surface-soft);border-radius:5px;justify-content:center;align-items:center;width:26px;height:26px;font-size:11px;display:inline-flex}.option-editor-grid label>button,.add-option,.add-question-button{color:var(--muted);cursor:pointer;background:0 0;border:0}.add-option,.add-question-button{border:1px dashed var(--border-soft);font:inherit;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:46px;padding:10px;font-size:12px;font-weight:900;display:flex}.manual-answer-note,.builder-helper{background:var(--surface-soft);color:var(--muted);border-radius:8px;padding:11px;font-size:12px;font-weight:800}.question-image-picker,.essay-upload{border:1px dashed var(--border-soft);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:74px;display:flex!important}.question-media-choice{border:0;flex-wrap:wrap;gap:7px;padding:0;display:flex}.question-media-choice legend{width:100%;margin-bottom:7px;font-size:12px;font-weight:900}.question-media-choice legend span{color:var(--muted);margin-left:4px;font-weight:750}.question-media-choice button{background:var(--row);border:1px solid var(--border-soft);color:var(--muted);cursor:pointer;font:inherit;border-radius:8px;align-items:center;gap:6px;padding:9px 12px;font-size:12px;font-weight:850;display:inline-flex}.question-media-choice button.active{background:color-mix(in srgb, var(--accent) 9%, var(--panel-strong));border-color:var(--accent);color:var(--ink)}.question-image-picker>span{gap:2px;display:grid}.question-image-picker small{color:var(--muted);font-size:11px}.question-image-preview{aspect-ratio:16/9;border-radius:8px;max-height:420px;position:relative;overflow:hidden}.question-image-preview img,.quiz-question-image,.live-host-stage main>img{object-fit:cover;width:100%;height:100%}.question-image-preview button{position:absolute;bottom:8px;right:8px}.toggle-label{grid-template-columns:auto 1fr;align-items:center;display:flex!important}.toggle-label input{width:auto}.theme-picker{border:0;flex-wrap:wrap;gap:8px;padding:0;display:flex}.theme-picker legend{color:var(--muted);margin-bottom:7px;font-size:12px;font-weight:900}.theme-swatch{background:var(--row);color:var(--ink);cursor:pointer;font:inherit;text-transform:capitalize;border:2px solid #0000;border-radius:8px;align-items:center;gap:7px;padding:8px 11px;font-size:12px;font-weight:900;display:flex}.theme-swatch span{border-radius:50%;width:18px;height:18px}.theme-swatch.theme-pulse span{background:#aac4f5}.theme-swatch.theme-spark span,.theme-swatch.theme-focus span{background:#3f63d9}.theme-swatch.theme-contrast span{background:#24314d}.theme-swatch.active{border-color:var(--accent)}.youtube-clip-editor,.game-toggle-grid{border:1px solid var(--border-soft);border-radius:8px;grid-template-columns:minmax(0,1fr) 140px 140px;gap:10px;padding:12px;display:grid}.youtube-clip-editor label{color:var(--muted);gap:6px;font-size:12px;font-weight:900;display:grid}.game-toggle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.game-toggle-grid legend{color:var(--muted);padding:0 6px;font-size:12px;font-weight:900}.game-toggle-grid label{background:var(--surface-soft);color:var(--ink);border-radius:8px;align-items:center;gap:8px;padding:10px;font-size:13px;font-weight:850;display:flex}.quiz-preview{color:#fff;border-radius:12px;gap:22px;min-height:390px;padding:32px;display:grid}.theme-pulse{--quiz-primary:#3f63d9;--quiz-secondary:#3f63d9;--quiz-bg:#3f63d9;--quiz-option-a:#df2348;--quiz-option-b:#1f78d1;--quiz-option-c:#d69b00;--quiz-option-d:#188a0d;--quiz-option-e:#7b4fd7;--quiz-option-f:#e85c1f}.theme-spark{--quiz-primary:#3f63d9;--quiz-secondary:#3f63d9;--quiz-bg:#3f63d9;--quiz-option-a:#e53888;--quiz-option-b:#1d72d8;--quiz-option-c:#e0a000;--quiz-option-d:#179c69;--quiz-option-e:#8055e8;--quiz-option-f:#cf4d2e}.theme-focus{--quiz-primary:#3f63d9;--quiz-secondary:#aac4f5;--quiz-bg:#3f63d9;--quiz-option-a:#d8334a;--quiz-option-b:#2878c8;--quiz-option-c:#c89305;--quiz-option-d:#14874a;--quiz-option-e:#7357d9;--quiz-option-f:#d65d21}.theme-contrast{--quiz-primary:#24314d;--quiz-secondary:#3f63d9;--quiz-bg:#24314d;--quiz-option-a:#c51f3d;--quiz-option-b:#195bb2;--quiz-option-c:#aa7600;--quiz-option-d:#0d6d3d;--quiz-option-e:#5d43b8;--quiz-option-f:#b84b22}.quiz-preview,.quiz-intro,.quiz-waiting,.quiz-player,.quiz-results,.live-host-empty,.live-quiz-host{background:var(--quiz-bg)}.quiz-preview h4{margin:8px 0;font-size:38px;line-height:1.05}.quiz-preview dl{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;display:grid}.quiz-intro dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;width:100%;margin:0;display:grid}.quiz-preview dl div,.quiz-intro dl div{background:#ffffff1f;border-radius:8px;gap:4px;padding:11px;display:grid}.quiz-preview dt,.quiz-intro dt{opacity:.75;font-size:11px}.quiz-preview dd,.quiz-intro dd{margin:0;font-weight:950}.preview-options span{background:#ffffff1f;border-radius:8px;align-items:center;gap:8px;padding:12px;display:flex}.builder-footer{border-top:1px solid var(--border-soft);margin-top:4px;padding-top:14px}.essay-builder-layout,.essay-detail-layout{grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);align-items:start;gap:18px;display:grid}.rubric-builder,.essay-brief,.essay-editor,.essay-grading{border:1px solid var(--border-soft);border-radius:8px;gap:12px;padding:15px;display:grid}.rubric-builder>div{grid-template-columns:minmax(120px,.7fr) minmax(0,1fr) 80px;gap:7px;display:grid}.essay-brief p{color:var(--muted);white-space:pre-wrap;line-height:1.65}.essay-brief dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.essay-brief dl div{background:var(--surface-soft);border-radius:8px;gap:3px;padding:10px;display:grid}.essay-brief dt{color:var(--muted);font-size:11px;font-weight:850}.essay-brief dd{margin:0;font-weight:900}.essay-brief ul{gap:7px;margin:0;padding:0;list-style:none;display:grid}.essay-brief li{align-items:center;gap:7px;display:flex}.rubric-row{border-top:1px solid var(--border-soft);justify-content:space-between;align-items:center;padding-top:9px;display:flex}.rubric-row span{gap:2px;display:grid}.rubric-row small{color:var(--muted)}.essay-editor textarea{resize:vertical;min-height:300px;line-height:1.6}.word-counter{color:var(--muted);text-align:right;font-size:12px;font-weight:850}.deliverable-checklist{gap:8px;display:grid}.deliverable-checklist label{align-items:center;gap:7px;font-weight:800;display:flex}.essay-upload{min-height:54px}.attached-file{background:var(--surface-soft);border-radius:7px;padding:9px;font-size:12px;font-weight:850}.essay-actions{justify-content:flex-end;gap:8px;display:flex}.essay-grading>header{justify-content:space-between;align-items:center;display:flex}.essay-grading form{border-top:1px solid var(--border-soft);gap:10px;padding-top:12px;display:grid}.essay-grading form>div{justify-content:space-between;display:flex}.essay-grading pre{background:var(--surface-soft);font:inherit;white-space:pre-wrap;border-radius:8px;max-height:260px;padding:12px;line-height:1.55;overflow:auto}.essay-grading label{grid-template-columns:minmax(0,1fr) 80px auto;align-items:center}.essay-grading label:has(textarea){grid-template-columns:1fr}.released-feedback{background:color-mix(in srgb, #3f63d9 10%, var(--panel-strong));border:1px solid color-mix(in srgb, #3f63d9 28%, var(--border-soft));border-radius:8px;padding:14px}.released-feedback strong{font-size:26px}.quiz-intro,.quiz-waiting,.quiz-player,.quiz-results,.live-host-empty,.live-quiz-host{color:#fff;border-radius:16px;min-height:clamp(520px,100dvh - 190px,700px);padding:22px;position:relative;overflow:hidden}.quiz-surface{min-width:0;position:relative}.quiz-surface:fullscreen{background:var(--quiz-bg,#3f63d9);width:100vw;height:100dvh;padding:clamp(14px,2vw,28px)}.quiz-surface:fullscreen>.quiz-intro,.quiz-surface:fullscreen>.quiz-waiting,.quiz-surface:fullscreen>.quiz-player,.quiz-surface:fullscreen>.quiz-results,.quiz-surface:fullscreen>.quiz-submitted{border-radius:0;height:100%;min-height:0}.quiz-back{color:#fff;cursor:pointer;font:inherit;background:#ffffff1f;border:1px solid #fff3;border-radius:8px;align-items:center;gap:6px;padding:9px 11px;font-size:12px;font-weight:900;display:inline-flex}.quiz-intro-content,.live-host-empty>div,.quiz-waiting>div,.quiz-submitted>div{text-align:center;align-content:center;gap:16px;max-width:760px;min-height:0;margin:0 auto;display:grid}.quiz-intro{grid-template-rows:auto minmax(0,1fr);display:grid}.quiz-intro-content{align-self:center;justify-items:center;width:min(760px,100%);padding:20px 0 42px}.quiz-intro-content h3,.live-host-empty h3,.quiz-waiting h3{margin:0;font-size:50px;line-height:1}.quiz-intro-content p,.live-host-empty p,.quiz-waiting p{opacity:.84;margin:0;font-size:16px}.quiz-start,.quiz-player-action button,.live-controls button{color:#24314d;cursor:pointer;font:inherit;background:#fff;border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:13px 18px;font-weight:950;display:inline-flex}.quiz-start{justify-self:center;min-width:190px}.quiz-integrity-summary{text-align:left;background:#ffffff1f;border:1px solid #fff3;border-radius:8px;align-items:center;gap:10px;width:100%;padding:11px 13px;display:flex}.quiz-integrity-summary>span{gap:2px;display:grid}.quiz-integrity-summary small{opacity:.82;font-size:12px;line-height:1.35}.quiz-player>header{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;display:grid}.quiz-progress{background:#ffffff29;border-radius:99px;height:8px;overflow:hidden}.quiz-progress span{background:#fff;height:100%;transition:width .25s;display:block}.quiz-player-status{justify-content:flex-end;align-items:center;gap:9px;display:flex}.quiz-player-status>strong{align-items:center;gap:6px;min-width:62px;display:flex}.quiz-player-status>strong.urgent{color:#3f63d9}.quiz-sound-toggle{color:#fff;cursor:pointer;background:#ffffff1f;border:1px solid #fff3;border-radius:8px;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.quiz-player main{align-self:center;gap:clamp(10px,1.5dvh,18px);width:min(92%,1280px);max-width:1280px;margin:0 auto;padding:clamp(18px,3dvh,34px) 0;display:grid}.quiz-player{grid-template-rows:auto minmax(0,1fr);display:grid}.question-number{opacity:.78;text-align:center;font-size:12px;font-weight:900}.quiz-player main>h3{text-align:center;text-wrap:balance;max-width:1100px;margin:0 auto;font-size:clamp(34px,4vw,56px);line-height:1.08}.quiz-question-image,.quiz-youtube-clip{aspect-ratio:16/9;object-fit:cover;border-radius:12px;justify-self:center;width:min(820px,100%);max-height:min(34dvh,360px)}.quiz-youtube-clip{background:#ffffff1a;border:1px solid #ffffff2e;position:relative;overflow:hidden}.quiz-youtube-clip iframe{border:0;width:100%;height:100%}.quiz-youtube-clip span{color:#fff;background:#24314dc7;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:900;position:absolute;bottom:10px;left:10px}.quiz-option-grid button{background:var(--quiz-option-a);color:#fff;cursor:pointer;font:inherit;text-align:left;border:3px solid #0000;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;min-height:clamp(104px,13dvh,150px);padding:clamp(16px,2vw,24px);font-size:16px;font-weight:900;display:grid}.quiz-option-grid button:nth-child(2){background:var(--quiz-option-b)}.quiz-option-grid button:nth-child(3){background:var(--quiz-option-c)}.quiz-option-grid button:nth-child(4){background:var(--quiz-option-d)}.quiz-option-grid button:nth-child(5){background:var(--quiz-option-e)}.quiz-option-grid button:nth-child(6){background:var(--quiz-option-f)}.quiz-option-grid button.selected{border-color:#fff;box-shadow:0 0 0 3px #fff3}.quiz-option-grid button.correct{background:#3f63d9}.quiz-option-grid button.incorrect{background:#aac4f5}.quiz-option-grid button b{background:#24314d29;border-radius:6px;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.quiz-short-answer{color:#24314d;font:inherit;resize:vertical;background:#fff;border:0;border-radius:8px;padding:15px;line-height:1.55}.answer-feedback{text-align:center;background:#ffffff1f;border:1px solid #fff3;border-radius:8px;gap:5px;padding:13px;display:grid}.answer-feedback.correct{background:#3f63d9}.answer-feedback.incorrect,.answer-feedback.review{background:#aac4f5}.quiz-player-action{justify-content:center;display:flex}.quiz-player-action button:disabled{cursor:not-allowed;opacity:.45}.quiz-secure-label{justify-content:flex-end;min-width:105px!important}.quiz-feedback-overlay{z-index:15;background:#121b33b8;justify-content:center;align-items:center;padding:24px;display:flex;position:absolute;inset:0}.quiz-feedback-card{background:var(--panel-strong);border:1px solid var(--border-soft);color:var(--ink);text-align:center;z-index:2;border-radius:18px;place-items:center;gap:11px;width:min(100%,620px);max-width:620px;max-height:min(86dvh,760px);padding:clamp(26px,4vw,44px);display:grid;overflow:auto;box-shadow:0 28px 90px #0f172a57}.quiz-feedback-card>small{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:12px;font-weight:900}.quiz-feedback-card>h3{margin:0;font-size:clamp(32px,4vw,48px);line-height:1}.quiz-feedback-card>p{color:var(--muted);margin:0;font-size:16px;line-height:1.55}.quiz-feedback-icon{background:color-mix(in srgb, #3f63d9 14%, var(--panel-strong));color:#3f63d9;border-radius:999px;justify-content:center;align-items:center;width:68px;height:68px;display:flex}.quiz-feedback-overlay.incorrect .quiz-feedback-icon{background:color-mix(in srgb, #aac4f5 18%, var(--panel-strong));color:#3f63d9}.quiz-feedback-overlay.review .quiz-feedback-icon{background:var(--surface-soft);color:var(--muted)}.quiz-correct-answer{background:var(--surface-soft);border:1px solid var(--border-soft);border-radius:10px;gap:3px;width:100%;padding:12px 16px;display:grid}.quiz-correct-answer span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:850}.quiz-correct-answer strong{font-size:20px}.quiz-feedback-next{background:var(--ink);color:var(--panel-strong);cursor:pointer;font:inherit;border:0;border-radius:9px;justify-content:center;align-items:center;gap:8px;margin-top:4px;padding:13px 18px;font-weight:950;display:inline-flex}.quiz-confetti{pointer-events:none;position:absolute;inset:0;overflow:hidden}.quiz-confetti i{animation:quiz-confetti-fall 2.1s cubic-bezier(.16,.72,.25,1) var(--confetti-delay) both;background:var(--confetti-color);box-shadow:0 0 8px color-mix(in srgb, var(--confetti-color) 65%, transparent);height:16px;left:var(--confetti-x);transform:rotate(var(--confetti-rotate));border-radius:2px;width:10px;position:absolute;top:-20px}:root[data-reduced-animations=true] .quiz-confetti{display:none}.quiz-damage-flash{pointer-events:none;z-index:30;background:radial-gradient(circle,#be123c0f 24%,#b91c1c94 100%);animation:.52s cubic-bezier(.16,.75,.3,1) both quiz-damage-flash;position:absolute;inset:0;box-shadow:inset 0 0 0 clamp(12px,2.2vw,34px) #dc26267a,inset 0 0 110px #7f1d1d9e}:root[data-reduced-animations=true] .quiz-damage-flash{display:none}@keyframes quiz-confetti-fall{0%{opacity:0;transform:translate3d(0, -12px, 0) rotate(var(--confetti-rotate))}8%{opacity:1}78%{opacity:1}to{opacity:0;transform:translate3d(var(--confetti-drift), 92dvh, 0) rotate(720deg)}}@keyframes quiz-damage-flash{0%{opacity:0}10%{opacity:1}32%{opacity:.72}to{opacity:0}}.quiz-integrity-overlay{z-index:20;background:#0f172ab8;justify-content:center;align-items:center;padding:20px;display:flex;position:absolute;inset:0}.quiz-integrity-overlay>div{background:var(--panel-strong);border:1px solid var(--border-soft);color:var(--ink);text-align:center;border-radius:14px;place-items:center;gap:10px;max-width:480px;padding:28px;display:grid;box-shadow:0 24px 70px #0f172a47}.quiz-integrity-overlay>div>svg{color:#b45309}.quiz-integrity-overlay span{color:#b45309;text-transform:uppercase;font-size:12px;font-weight:900}.quiz-integrity-overlay h3{font-size:28px}.quiz-integrity-overlay p{color:var(--muted);line-height:1.55}.quiz-integrity-overlay button{background:var(--ink);color:var(--panel-strong);cursor:pointer;font:inherit;border:0;border-radius:8px;align-items:center;gap:7px;padding:11px 15px;font-weight:900;display:inline-flex}.quiz-auto-submit-note{background:#ffffff1f;border:1px solid #fff3;border-radius:8px;max-width:560px;padding:10px 12px}.quiz-submitted .quiz-auto-submit-note{background:var(--surface-soft);border-color:var(--border-soft)}.quiz-submitted{background:var(--panel-strong);border:1px solid var(--border-soft);border-radius:16px;align-content:center;min-height:560px;padding:30px;display:grid}.quiz-submitted>div{color:var(--ink);margin-top:0}.quiz-submitted h3{font-size:38px}.quiz-submitted p{color:var(--muted);line-height:1.6}.quiz-results{grid-template-columns:minmax(0,1fr) minmax(300px,.58fr);gap:20px;display:grid}.quiz-results>.quiz-back{position:absolute;top:22px;left:22px}.result-summary{text-align:center;align-content:center;justify-items:center;gap:10px;min-height:550px;display:grid}.result-summary h3{font-size:42px}.result-summary>strong{font-size:64px;line-height:1}.scoreboard{background:#ffffff1a;border:1px solid #ffffff2e;border-radius:10px;align-self:center;gap:8px;padding:15px;display:grid}.scoreboard h4{font-size:22px}.scoreboard>div{background:#ffffff1a;border-radius:8px;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:9px;padding:11px;display:grid}.scoreboard em{font-style:normal;font-weight:950}.compact-scoreboard{justify-self:center;width:100%;max-width:620px}.compact-scoreboard h4{font-size:16px}.quiz-waiting>.scoreboard{width:100%;max-width:620px;margin:18px auto 0}.live-host-empty{min-height:560px}.live-quiz-host{gap:16px;display:grid}.live-quiz-host>header{gap:14px}.live-quiz-host>header>div{flex:1}.live-status{text-transform:capitalize;background:#ffffff1f;border-radius:8px;align-items:center;gap:6px;padding:8px 10px;font-size:12px;display:flex}.live-host-stage{grid-template-columns:230px minmax(0,1fr);gap:16px;min-height:450px;display:grid}.live-host-stage aside,.live-host-stage main{background:#ffffff17;border:1px solid #ffffff29;border-radius:10px;padding:18px}.live-host-stage aside{align-content:start;gap:12px;display:grid}.live-host-stage aside>strong{letter-spacing:4px;font-size:42px}.live-host-stage aside>p{opacity:.74;font-size:12px;line-height:1.5}:root[data-theme=dark] .quiz-start,:root[data-theme=dark] .quiz-player-action button,:root[data-theme=dark] .live-controls button,:root[data-theme=dark] .quiz-short-answer{background:var(--panel-strong);color:var(--ink);border:1px solid var(--soft-line)}:root[data-theme=dark] .quiz-progress span{background:var(--accent)}.live-host-stage aside>div{align-items:center;gap:7px;display:flex}.live-host-stage main{align-content:center;gap:15px;display:grid}.live-host-stage main>h4{text-align:center;font-size:34px;line-height:1.12}.host-option-grid div{background:#ffffff1f;border-radius:8px;gap:9px;padding:13px;display:flex}.host-lobby{text-align:center;justify-items:center;gap:10px;display:grid}.live-controls{justify-content:center;gap:8px}.live-controls button.danger{color:#fff;background:#aac4f5}@media (max-width:1100px){.assessment-template-list{grid-template-columns:repeat(2,minmax(0,1fr))}.assessment-columns,.essay-builder-layout,.essay-detail-layout,.quiz-results{grid-template-columns:1fr}.quiz-results{padding-top:70px}.result-summary{min-height:360px}}@media (max-width:760px){.assessment-hub-header,.builder-header,.builder-footer{flex-direction:column;align-items:flex-start}.assessment-actions,.builder-footer>div{width:100%;display:flex}.assessment-actions button,.builder-footer>div button{flex:1;justify-content:center}.assessment-template-list,.builder-form-grid,.youtube-clip-editor,.game-toggle-grid,.option-editor-grid,.preview-options,.quiz-option-grid,.quiz-preview dl,.essay-brief dl,.rubric-builder>div,.live-host-stage{grid-template-columns:1fr}.builder-steps span{display:none}.builder-steps button{justify-content:center}.assessment-row{flex-wrap:wrap;align-items:flex-start}.assessment-row-actions{justify-content:flex-start;width:100%;padding-left:56px}.quiz-preview{min-height:320px;padding:20px}.quiz-preview h4{font-size:30px}.quiz-intro,.quiz-waiting,.quiz-player,.quiz-results,.live-host-empty,.live-quiz-host{min-height:calc(100dvh - 150px);padding:14px}.quiz-intro-content{margin-top:0;padding:20px 0}.quiz-intro dl{gap:6px}.quiz-intro dl div{padding:9px 6px}.quiz-intro-content h3,.live-host-empty h3,.quiz-waiting h3{font-size:36px}.quiz-player main{margin-top:28px}.quiz-player main>h3{font-size:26px}.quiz-option-grid button{min-height:68px}.result-summary h3{font-size:32px}.result-summary>strong{font-size:50px}.live-controls{grid-template-columns:repeat(2,1fr);display:grid}}@media (prefers-reduced-motion:reduce){.quiz-progress span,.quiz-option-grid button{transition:none}.quiz-confetti,.quiz-damage-flash{display:none}}
.module-page-header{align-items:end;gap:var(--space-4,18px);justify-content:space-between;margin-bottom:18px;display:flex}.module-label{color:var(--accent);text-transform:uppercase;margin-bottom:5px;font-size:12px;font-weight:950;display:block}.module-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.module-tabs{border-bottom:1px solid var(--soft-line);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:18px;padding-bottom:10px;display:flex}.module-tabs button{color:var(--muted);cursor:pointer;font:inherit;background:0 0;border:1px solid #0000;border-radius:999px;padding:10px 13px;font-weight:900}.module-tabs button:hover,.module-tabs button.active{background:var(--panel);border-color:var(--soft-line);color:var(--ink);box-shadow:0 8px 18px #8ca9ff12}.module-tabs button.active:after{display:none}.module-filter-bar{align-items:center;gap:12px;margin-bottom:18px;display:grid}.module-search-control,.module-date-control,.module-select-control{background:var(--panel);border:1px solid var(--soft-line);border-radius:18px;align-items:center;gap:9px;min-height:48px;padding:12px 14px;display:flex}.module-search-control input,.module-date-control input,.module-select-control select{appearance:none;color:var(--ink);font:inherit;background:0 0;border:0;outline:0;width:100%;min-width:0;font-weight:850}.module-pill-filters{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.module-pill-filters button{background:var(--panel);border:1px solid var(--soft-line);color:var(--muted);cursor:pointer;font:inherit;border-radius:999px;padding:11px 13px;font-size:13px;font-weight:900}.module-pill-filters button.active,.module-pill-filters button:hover{background:var(--ink);border-color:var(--ink);color:var(--panel)}.app-modal{width:min(860px,100vw - 32px);max-width:860px}.app-modal-form{grid-template-columns:repeat(3,minmax(0,1fr))}.app-modal-form .wide{grid-column:1/-1}.registration-modal{max-width:680px}.registration-summary{gap:12px;display:grid}.registration-summary>strong{font-size:32px;line-height:1}.registration-summary>span,.registration-summary p{color:var(--muted);margin:0;font-weight:850}.engagement-header{justify-content:space-between;align-items:end;gap:18px;margin-bottom:18px;display:flex}.page-subtitle{color:var(--muted);margin:2px 0 0;font-size:16px;font-weight:850}.engagement-controls{grid-template-columns:190px minmax(260px,1fr) 190px 170px;align-items:center;gap:12px;margin-bottom:18px;display:grid}.engagement-controls label{background:var(--panel);border:1px solid var(--soft-line);border-radius:18px;align-items:center;gap:9px;padding:12px 14px;display:flex}.engagement-controls input,.engagement-controls select{color:var(--ink);font:inherit;background:0 0;border:0;outline:0;width:100%;min-width:0;font-weight:850}.engagement-map-layout{grid-template-columns:minmax(620px,1fr) minmax(320px,.36fr);align-items:stretch;gap:18px;display:grid}.campus-map-card{min-height:620px}.campus-map-topline{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.campus-map-canvas{background:radial-gradient(circle at 18% 20%, color-mix(in srgb, var(--pastel-green) 42%, transparent), transparent 24%), radial-gradient(circle at 82% 74%, color-mix(in srgb, var(--pastel-blue) 36%, transparent), transparent 26%), linear-gradient(145deg, var(--panel-strong), color-mix(in srgb, var(--pastel-yellow) 22%, var(--panel)));border:1px solid var(--soft-line);border-radius:28px;height:540px;position:relative;overflow:hidden}.map-shape{border:1px solid color-mix(in srgb, var(--ink) 9%, transparent);color:color-mix(in srgb, var(--ink) 62%, var(--muted));border-radius:22px;justify-content:center;align-items:center;font-size:12px;font-weight:950;display:flex;position:absolute}.map-block-a{background:color-mix(in srgb, var(--pastel-blue) 62%, var(--panel));width:210px;height:132px;top:12%;left:8%}.map-block-b{background:color-mix(in srgb, var(--pastel-green) 58%, var(--panel));width:190px;height:170px;top:25%;left:36%}.map-lab{background:color-mix(in srgb, #8ca9ff1a 72%, var(--panel));width:210px;height:150px;top:16%;right:14%}.map-ground{background:color-mix(in srgb, var(--pastel-green) 52%, var(--panel));border-radius:999px;width:270px;height:180px;bottom:12%;left:9%}.map-auditorium{background:color-mix(in srgb, var(--accent-soft) 54%, var(--panel));width:230px;height:150px;bottom:13%;right:13%}.map-path{border:1px solid var(--soft-line);background:#ffffffb8;border-radius:999px;position:absolute}.main-path{height:22px;top:52%;left:13%;right:12%;transform:rotate(-5deg)}.cross-path{width:22px;top:16%;bottom:16%;left:50%;transform:rotate(8deg)}.campus-event-pin{background:var(--ink);border:4px solid var(--panel);color:var(--panel);cursor:pointer;z-index:4;border-radius:999px 999px 999px 8px;justify-content:center;align-items:center;width:38px;height:38px;transition:transform .16s,box-shadow .16s;display:flex;position:absolute;transform:translate(-50%,-100%)rotate(-45deg);box-shadow:0 14px 28px #8ca9ff38}.campus-event-pin .pin-count{font-size:12px;font-weight:950;transform:rotate(45deg)}.pin-label{background:var(--panel);border:1px solid var(--soft-line);color:var(--ink);opacity:0;pointer-events:none;border-radius:14px;gap:2px;min-width:142px;padding:9px 10px;font-size:12px;line-height:1.15;transition:opacity .14s,transform .14s;display:grid;position:absolute;top:-8px;left:30px;transform:rotate(45deg)translateY(4px);box-shadow:0 14px 28px #8ca9ff24}.pin-label small{color:var(--muted);font-size:10px;font-weight:850}.campus-event-pin:hover .pin-label{opacity:1;transform:rotate(45deg)translateY(0)}.campus-event-pin.grouped{background:var(--accent)}.campus-event-pin:hover{transform:translate(-50%,-104%)rotate(-45deg);box-shadow:0 18px 34px #8ca9ff47}.engagement-side-panel{grid-template-rows:minmax(320px,auto);gap:18px;display:grid}.selected-event-card{align-content:start;gap:14px;display:grid}.selected-event-card h2{margin:0;font-size:clamp(28px,3vw,44px);line-height:.95}.selected-event-card p{color:var(--muted);margin:0;font-weight:800;line-height:1.5}.event-detail-grid{gap:8px;display:grid}.event-detail-grid span,.event-meta-strip span,.event-meta-strip a,.event-meta-strip button{color:var(--muted);align-items:center;gap:7px;font-size:12px;font-weight:900;display:flex}.event-meta-strip{flex-wrap:wrap;gap:8px;display:flex}.event-meta-strip span,.event-meta-strip a,.event-meta-strip button{background:var(--row);border:1px solid var(--soft-line);color:var(--ink);cursor:pointer;font:inherit;border-radius:999px;padding:8px 10px;font-size:12px;font-weight:900;text-decoration:none}.conflict-note{background:color-mix(in srgb, var(--pastel-red) 54%, var(--panel));border:1px solid color-mix(in srgb, var(--warning) 28%, var(--soft-line));color:var(--warning);border-radius:16px;padding:12px;font-size:12px;font-weight:900}.event-actions,.tracker-actions{flex-wrap:wrap;gap:8px;display:flex}.event-actions button{background:var(--ink);color:var(--panel);cursor:pointer;border:0;border-radius:999px;padding:10px 14px;font-weight:900}.event-actions button+button{background:var(--warning)}.event-actions.club-actions button:first-child{background:var(--accent)}.event-list-compact{gap:8px;display:grid}.event-list-compact button,.upcoming-event-card{background:var(--row);border:1px solid var(--soft-line);color:var(--ink);cursor:pointer;text-align:left;border-radius:17px;gap:4px;padding:12px;display:grid}.event-list-compact button.active,.event-list-compact button:hover,.upcoming-event-card:hover{background:var(--panel-strong);box-shadow:0 10px 22px #8ca9ff14}.event-list-compact span,.upcoming-event-card small,.upcoming-event-card em{color:var(--muted);font-size:12px;font-style:normal;font-weight:850}.engagement-lower-grid{grid-template-columns:minmax(0,1fr) minmax(300px,.34fr) minmax(300px,.34fr);gap:18px;margin-top:18px;display:grid}.upcoming-event-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.upcoming-event-card{min-height:150px}.upcoming-event-card .status{justify-self:start}.approval-event-list,.club-activity-list{gap:8px;display:grid}.club-activity-list button{background:var(--row);border:1px solid var(--soft-line);color:var(--ink);cursor:pointer;text-align:left;border-radius:17px;gap:5px;padding:12px;display:grid}.club-activity-list button:hover{background:var(--panel-strong);box-shadow:0 10px 22px #8ca9ff14}.club-activity-list .status{justify-self:start}.club-activity-list small,.club-activity-list em{color:var(--muted);font-size:12px;font-style:normal;font-weight:850}.approval-event-row{border-bottom:1px solid var(--soft-line);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 0;display:grid}.approval-event-row:last-child{border-bottom:0}.engagement-modal{width:min(840px,100vw - 32px);max-width:840px}.engagement-form{grid-template-columns:repeat(3,minmax(0,1fr))}.engagement-form .wide{grid-column:1/-1}.engagement-controls{grid-template-columns:172px minmax(260px,1fr) minmax(420px,1.1fr) 170px 190px}.engagement-pill-filters{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.engagement-pill-filters button{background:var(--panel);border:1px solid var(--soft-line);color:var(--muted);cursor:pointer;font:inherit;border-radius:999px;padding:11px 13px;font-size:13px;font-weight:900}.engagement-pill-filters button.active,.engagement-pill-filters button:hover{background:var(--ink);border-color:var(--ink);color:var(--panel)}.engagement-date-control,.engagement-select-control,.engagement-search{min-height:48px}.campus-map-canvas{aspect-ratio:16/10;background-position:50%;background-repeat:no-repeat;background-size:contain;height:auto;min-height:500px}.campus-map-canvas.has-image{background-color:var(--panel-strong)}.campus-map-canvas.fallback{background:radial-gradient(circle at 12% 20%, color-mix(in srgb, var(--pastel-green) 40%, transparent), transparent 20%), radial-gradient(circle at 82% 76%, color-mix(in srgb, var(--pastel-blue) 36%, transparent), transparent 24%), linear-gradient(145deg, color-mix(in srgb, var(--panel-strong) 90%, var(--pastel-yellow)), var(--panel))}.campus-map-canvas.placing{cursor:crosshair}.map-zone{border:1px solid color-mix(in srgb, var(--ink) 9%, transparent);color:color-mix(in srgb, var(--ink) 62%, var(--muted));justify-content:center;align-items:center;font-size:12px;font-weight:950;display:flex;position:absolute}.zone-ground{background:color-mix(in srgb, var(--pastel-green) 56%, var(--panel));border-radius:999px;width:28%;height:32%;top:54%;left:8%}.zone-block{background:color-mix(in srgb, var(--pastel-blue) 62%, var(--panel));border-radius:24px;width:26%;height:28%;top:22%;left:30%}.zone-labs{background:color-mix(in srgb, #8ca9ff1a 72%, var(--panel));border-radius:24px;width:24%;height:26%;top:16%;right:12%}.zone-hall{background:color-mix(in srgb, var(--accent-soft) 54%, var(--panel));border-radius:24px;width:24%;height:27%;bottom:12%;right:12%}.map-route{border:1px solid var(--soft-line);background:#ffffffb8;border-radius:999px;position:absolute}:root[data-theme=dark] .map-path,:root[data-theme=dark] .map-route{background:#8ca9ff2e;border-color:#aac4f53d}.route-main{height:20px;top:52%;left:12%;right:11%;transform:rotate(-5deg)}.route-cross{width:20px;top:14%;bottom:14%;left:57%;transform:rotate(8deg)}.campus-event-pin{box-shadow:none;color:var(--ink);background:0 0;border:0;border-radius:0;justify-content:flex-start;align-items:center;gap:8px;width:auto;min-width:160px;height:auto;padding:0;display:flex;transform:translate(-16px,-28px)}.campus-event-pin:hover{box-shadow:none;transform:translate(-16px,-31px)}.pin-dot{background:var(--accent);border:4px solid var(--panel);color:var(--panel);border-radius:999px;flex:none;justify-content:center;align-items:center;width:28px;height:28px;font-size:11px;font-weight:950;display:flex;box-shadow:0 12px 24px #8ca9ff38}.pin-name{background:color-mix(in srgb, var(--panel) 94%, transparent);border:1px solid var(--soft-line);color:var(--ink);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;max-width:170px;padding:8px 11px;font-size:12px;font-weight:950;overflow:hidden;box-shadow:0 10px 22px #8ca9ff1f}.pin-preview{background:var(--panel);border:1px solid var(--soft-line);color:var(--ink);opacity:0;pointer-events:none;z-index:8;border-radius:18px;gap:5px;min-width:230px;padding:13px;transition:opacity .14s,transform .14s;display:grid;position:absolute;top:34px;left:34px;transform:translateY(5px);box-shadow:0 18px 36px #8ca9ff2e}.pin-preview strong{font-size:14px}.pin-preview small,.pin-preview em,.pin-preview b{color:var(--muted);font-size:12px;font-style:normal;font-weight:850}.campus-event-pin:hover .pin-preview{opacity:1;transform:translateY(0)}.draft-map-pin{z-index:7;align-items:center;gap:8px;display:flex;position:absolute;transform:translate(-14px,-28px)}.draft-map-pin i{background:var(--ink);border:4px solid var(--panel);border-radius:999px;width:28px;height:28px;box-shadow:0 12px 24px #8ca9ff38}.draft-map-pin strong{background:var(--ink);color:var(--panel);border-radius:999px;padding:8px 10px;font-size:12px}.today-flip-card{min-height:260px}.today-card-controls{gap:6px;display:flex}.today-card-controls button{background:var(--row);border:1px solid var(--soft-line);color:var(--ink);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.today-flip-content{background:linear-gradient(135deg, color-mix(in srgb, var(--pastel-blue) 54%, var(--panel-strong)), transparent 58%), var(--row);border:1px solid var(--soft-line);color:var(--ink);cursor:pointer;text-align:left;border-radius:22px;gap:10px;width:100%;min-height:188px;padding:18px;display:grid}.today-flip-content strong{font-size:24px;line-height:1}.today-flip-content span,.today-flip-content p,.today-flip-content em,.today-flip-content b{color:var(--muted);margin:0;font-size:13px;font-style:normal;font-weight:850}.today-flip-content b{color:var(--accent)}.engagement-bottom-layout{grid-template-columns:minmax(0,1fr) minmax(280px,.36fr);gap:18px;margin-top:18px;display:grid}.engagement-hero-grid{grid-template-columns:minmax(520px,1fr) minmax(260px,.38fr);align-items:stretch;gap:18px;margin-bottom:18px;display:grid}.engagement-event-hero{color:#fff;background:radial-gradient(circle at 82% 16%,#ffffff2e,#0000 28%),linear-gradient(135deg,#aac4f5,#3f63d9);border-radius:32px;grid-template-rows:minmax(0,1fr) auto;height:320px;padding:38px 40px 26px;display:grid;position:relative;overflow:hidden;box-shadow:0 24px 48px #8ca9ff38}.engagement-event-slide{color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;align-self:start;gap:0;min-height:0;padding:0;animation:.62s cubic-bezier(.22,1,.36,1) engagementSlideFade;display:grid}.event-hero-category{color:#ffffffc2;text-transform:uppercase;margin-bottom:20px;font-size:12px;font-weight:950}.engagement-event-hero h2{-webkit-line-clamp:2;line-clamp:2;letter-spacing:0;-webkit-box-orient:vertical;max-width:720px;margin:0 0 18px;font-size:clamp(34px,4vw,58px);line-height:1.02;display:-webkit-box;overflow:hidden}.engagement-event-hero p{color:#ffffffe0;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;max-width:720px;margin:0;font-weight:780;line-height:1.5;display:-webkit-box;overflow:hidden}.event-hero-meta{max-height:24px}.engagement-hero-controls{justify-content:space-between;align-items:end;gap:16px;display:flex}.engagement-hero-controls .carousel-dots{margin-top:0}.engagement-hero-controls .today-card-controls button{color:#fff;background:#ffffff38;border-color:#ffffff3d}.engagement-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.engagement-summary-card{align-content:center;min-height:154px;display:grid}.engagement-summary-card span{color:var(--muted);font-size:12px;font-weight:950}.engagement-summary-card strong{font-size:42px;line-height:1}.engagement-summary-card small{color:var(--muted);font-size:12px;font-weight:850}@keyframes engagementSlideFade{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.engagement-event-slide{animation:none}}.approval-queue-card{grid-column:1/-1}.upcoming-event-list{gap:8px;max-height:360px;padding-right:4px;display:grid;overflow:auto}.upcoming-event-row{background:var(--row);border:1px solid var(--soft-line);color:var(--ink);cursor:pointer;text-align:left;border-radius:16px;grid-template-columns:auto minmax(0,1fr) auto auto auto;align-items:center;gap:12px;padding:12px;display:grid}.upcoming-event-row:hover{background:var(--panel-strong)}.event-date-chip,.event-type-chip,.event-reg-dot{background:var(--panel);border:1px solid var(--soft-line);color:var(--muted);border-radius:999px;padding:8px 10px;font-size:12px;font-weight:900}.event-reg-dot{cursor:pointer;font:inherit;color:var(--accent)}.club-activity-strip{gap:8px;display:grid}.club-activity-strip button{background:var(--row);border:1px solid var(--soft-line);color:var(--ink);cursor:pointer;text-align:left;border-radius:17px;gap:4px;padding:12px;display:grid}.club-activity-strip button:hover{background:var(--panel-strong)}.club-activity-strip span,.club-activity-strip small{color:var(--muted);font-size:12px;font-weight:850}.engagement-career-field{gap:8px;display:grid}.campus-map-canvas.mini{aspect-ratio:16/7;min-height:240px}.engagement-map-layout{background:#17233f;border:1px solid #8ca9ff57;border-radius:32px;grid-template-columns:minmax(0,1fr) minmax(360px,.34fr);align-items:stretch;gap:0;min-height:700px;margin-top:8px;display:grid;overflow:hidden;box-shadow:0 28px 72px #506cb42e}.campus-map-card{box-shadow:none;color:#edf3ff;background:radial-gradient(circle at 32% 18%,#aac4f52e,#0000 28%),#17233f;border:0;grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:700px;padding:26px;display:grid}.campus-map-card .card-title,.campus-map-card .title-with-icon{color:#edf3ff}.campus-map-card .meta-pill{color:#edf3ffc7;background:#edf3ff1a;border-color:#edf3ff2e}.campus-map-canvas{background:linear-gradient(135deg,#edf3ff14,#0000 42%),#111a30;border:1px solid #edf3ff1f;border-radius:28px;min-height:610px;box-shadow:inset 0 0 0 1px #edf3ff0a}.campus-map-canvas.has-image{background:radial-gradient(circle at 62% 42%,#8ca9ff29,#0000 24%),#101827}.campus-map-image{filter:grayscale()contrast(1.14)brightness(.5);object-fit:cover;object-position:center;opacity:.88;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;transform:scale(1.18)}.campus-map-canvas:after{content:"";pointer-events:none;z-index:1;background:linear-gradient(90deg,#111a3075,#0000 26% 72%,#111a305c),radial-gradient(circle at 50% 48%,#0000 0 42%,#111a302e 72%);position:absolute;inset:0}.campus-event-pin{color:#edf3ff;z-index:4;min-width:0;transform:translate(-18px,-18px)}.campus-event-pin:hover{transform:translate(-18px,-22px)}.pin-dot{color:#17233f;background:#8ca9ff;border:3px solid #edf3fff0;width:34px;height:34px;box-shadow:0 0 0 7px #8ca9ff2e,0 14px 30px #00000052}.campus-event-pin.grouped .pin-dot{background:#fff2c6}.campus-event-pin.active .pin-dot{background:#fff2c6;box-shadow:0 0 0 8px #fff2c638,0 18px 34px #00000061}.pin-name{color:#edf3ff;background:#111a30db;border-color:#edf3ff2e;max-width:190px;box-shadow:0 14px 34px #0000003d}.campus-event-pin:not(.active) .pin-name{opacity:0;transform:translate(-6px)}.campus-event-pin:hover .pin-name,.campus-event-pin.active .pin-name{opacity:1;transform:translate(0)}.pin-preview{color:#edf3ff;z-index:9;background:#111a30f5;border-color:#edf3ff24;min-width:260px;left:42px;box-shadow:0 24px 56px #00000057}.pin-preview small,.pin-preview em,.pin-preview b{color:#edf3ffad}.engagement-side-panel{background:#fcfdfff5;border-left:1px solid #8ca9ff3d;padding:24px;display:grid}.selected-event-card{box-shadow:none;background:0 0;border:0;align-content:center;min-height:100%;padding:0}.selected-event-card h2{font-size:clamp(34px,3.4vw,56px);line-height:1}.selected-event-card p{font-size:15px;line-height:1.6}.event-detail-grid{gap:10px;margin-top:8px}.event-detail-grid span{color:#17233fbd;font-size:14px}.event-meta-strip{margin-top:10px}.event-meta-strip span,.event-meta-strip a,.event-meta-strip button{color:#17233f;background:#8ca9ff1f;border-color:#8ca9ff47}.event-meta-strip button{color:#fff;background:#17233f;justify-content:center;min-width:132px}:root[data-theme=dark] .engagement-side-panel{background:#111a30f5;border-left-color:#8ca9ff3d}:root[data-theme=dark] .selected-event-card{background:0 0;border:0}:root[data-theme=dark] .event-detail-grid span{color:#edf3ffc2}:root[data-theme=dark] .event-meta-strip span,:root[data-theme=dark] .event-meta-strip a,:root[data-theme=dark] .event-meta-strip button{color:#edf3ff;background:#8ca9ff29;border-color:#aac4f547}:root[data-theme=dark] .event-meta-strip button{color:#101827;background:#8ca9ff}@media (max-width:1180px){.engagement-map-layout{grid-template-columns:1fr}.engagement-side-panel{border-top:1px solid #8ca9ff3d;border-left:0}.campus-map-card,.engagement-map-layout{min-height:0}.campus-map-canvas{min-height:520px}}@media (max-width:720px){.campus-map-card,.engagement-side-panel{padding:18px}.campus-map-canvas{border-radius:22px;min-height:420px}.campus-map-image{transform:scale(1.28)}.pin-name,.pin-preview{display:none}.selected-event-card h2{font-size:32px}}.academic-progress-line i{background:var(--accent);border-radius:inherit;height:100%;display:block}.faculty-review-actions{gap:6px;display:flex}.faculty-feed-grid{grid-template-columns:minmax(0,1fr);gap:18px;margin-top:18px;display:grid}.mini-chart{grid-template-columns:repeat(8,1fr);align-items:end;gap:8px;height:188px;margin-top:12px;display:grid}.bar{background:repeating-linear-gradient(-45deg, var(--panel-strong), var(--panel-strong) 6px, var(--line) 6px, var(--line) 11px);border-radius:18px 18px 8px 8px;min-height:34px}.bar:nth-child(2n){background:var(--line)}.bar.accent{background:var(--accent)}
.chat-workspace{background:0 0;border:0;border-radius:0;grid-template-columns:minmax(300px,.32fr) minmax(0,1fr);gap:18px;height:calc(100dvh + -1*clamp(132px,4.2vw + 92px,160px));min-height:0;display:grid;overflow:hidden}.chat-sidebar{background:color-mix(in srgb, var(--panel-strong) 94%, transparent);border:1px solid var(--soft-line);transform-origin:0;border-radius:22px;grid-template-rows:auto auto auto minmax(0,1fr);min-width:0;padding:20px 14px 14px;display:grid;overflow:hidden}.chat-list-head{justify-content:space-between;align-items:center;gap:12px;padding:0 6px 16px;display:flex}.chat-list-head h1{margin:0;font-size:28px;line-height:1}.chat-list-head p{color:var(--muted);margin:5px 0 0;font-size:11px;font-weight:800}.chat-list-actions{align-items:center;gap:6px;display:flex}.chat-icon-button,.chat-mobile-back,.chat-member-head button,.chat-search>button,.chat-send-button{appearance:none;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;width:38px;height:38px;padding:0;transition:background-color .16s,color .16s,transform .18s;display:inline-flex;position:relative}.chat-icon-button:hover,.chat-icon-button.active,.chat-mobile-back:hover,.chat-member-head button:hover,.chat-search>button:hover{background:var(--row);transform:translateY(-1px)}.chat-icon-button>span{background:var(--accent);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:17px;height:17px;font-size:10px;font-weight:950;display:flex;position:absolute;top:-1px;right:-1px}.chat-search{background:var(--row);border:1px solid var(--soft-line);border-radius:14px;align-items:center;gap:9px;min-height:46px;padding:0 8px 0 12px;transition:background-color .18s,border-color .18s,box-shadow .18s;display:flex}.chat-search:focus-within{background:color-mix(in srgb, var(--panel-strong) 80%, var(--row));border-color:color-mix(in srgb, var(--ui-icon) 50%, var(--soft-line));box-shadow:0 10px 26px #8ca9ff1f}.chat-search input,.chat-composer textarea{color:var(--ink);font:inherit;background:0 0;border:0;outline:0;width:100%;min-width:0;font-weight:750}.chat-filter-tabs{scrollbar-width:none;gap:6px;margin:10px -2px 0;padding:0 2px 4px;display:flex;overflow-x:auto}.chat-filter-tabs::-webkit-scrollbar{display:none}.chat-filter-tabs button{border:1px solid var(--soft-line);color:var(--muted);font:inherit;background:0 0;border-radius:999px;flex:none;align-items:center;gap:5px;min-height:34px;padding:0 11px;font-size:11px;font-weight:900;display:inline-flex}.chat-filter-tabs button.active{background:color-mix(in srgb, var(--palette-blue) 9%, var(--panel-strong));border-color:color-mix(in srgb, var(--palette-blue) 26%, var(--soft-line));color:var(--ink)}.chat-filter-tabs button span{background:var(--palette-blue);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:17px;height:17px;padding:0 4px;font-size:9px;display:inline-flex}.chat-composer textarea{resize:none;min-height:22px;max-height:112px;line-height:1.4;overflow-y:auto}.chat-thread-list{grid-auto-rows:min-content;align-content:start;gap:4px;min-height:0;margin-top:12px;padding-right:3px;display:grid;overflow-y:auto}.chat-list-label{color:var(--muted);text-transform:uppercase;padding:10px 10px 5px;font-size:11px;font-weight:950}.chat-thread,.chat-user,.chat-mention-row{appearance:none;color:var(--ink);cursor:pointer;font:inherit;text-align:left;transform-origin:50%;background:0 0;border:1px solid #0000;border-radius:13px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;padding:10px;transition:background-color .16s,box-shadow .18s,transform .18s;display:grid}.chat-thread-copy{min-width:0}.chat-thread-rail{align-self:stretch;justify-items:end;min-width:46px;display:grid}.chat-thread-rail time,.chat-thread-rail small{color:var(--muted);white-space:nowrap;margin:0;font-size:9px;font-style:normal;font-weight:850}.chat-thread-rail i{background:var(--palette-blue);border-radius:999px;align-self:end;width:9px;height:9px}.chat-thread.unread .chat-thread-copy strong,.chat-thread.unread .chat-thread-rail time{color:var(--ink)}.chat-thread:hover,.chat-user:hover,.chat-user.selected,.chat-mention-row:hover{background:var(--row)}.chat-thread:not(.active):hover,.chat-user:hover,.chat-mention-row:hover{transform:translate(3px)}.chat-thread.active{background:var(--panel-strong);border-color:color-mix(in srgb, var(--line) 72%, transparent);box-shadow:0 8px 22px #8ca9ff14}.chat-thread.active .chat-avatar{border-color:color-mix(in srgb, var(--ui-icon) 42%, var(--soft-line))}.chat-thread strong,.chat-thread small,.chat-user strong,.chat-user small,.chat-mention-row strong,.chat-mention-row small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.chat-thread strong,.chat-user strong,.chat-mention-row strong{font-size:14px}.chat-thread small,.chat-user small,.chat-mention-row small{color:var(--muted);margin-top:3px;font-size:12px;font-weight:750}.chat-avatar{background:var(--row);border:1px solid var(--soft-line);color:var(--ink);border-radius:999px;flex:none;justify-content:center;align-items:center;width:42px;height:42px;font-size:11px;font-weight:950;display:inline-flex}.chat-mention-row{grid-template-columns:auto minmax(0,1fr) auto}.chat-mention-row>svg{color:var(--accent)}.chat-mention-row time{color:var(--muted);font-size:10px;font-weight:850}.chat-main{background:color-mix(in srgb, var(--panel-strong) 96%, transparent);border:1px solid var(--soft-line);border-radius:22px;grid-template-rows:auto minmax(0,1fr) auto;min-width:0;transition:border-color .18s,box-shadow .18s;display:grid;position:relative;overflow:hidden}.chat-main.is-empty{grid-template-rows:minmax(0,1fr)}.chat-main-head{border-bottom:1px solid var(--soft-line);grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:11px;min-height:78px;padding:13px clamp(20px,4vw,46px);animation:.26s cubic-bezier(.2,.8,.2,1) chatPaneIn;display:grid;position:relative}.chat-mobile-back{display:none}.chat-title-copy{min-width:0}.chat-title-copy h1{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:18px;line-height:1.15;overflow:hidden}.chat-title-copy p{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:3px 0 0;font-size:12px;font-weight:750;overflow:hidden}.chat-head-actions,.chat-rename-group{align-items:center;gap:4px;display:flex}.chat-rename-group input{background:var(--row);border:1px solid var(--soft-line);color:var(--ink);font:inherit;border-radius:10px;width:min(320px,100%);min-width:0;height:38px;padding:0 10px;font-size:16px;font-weight:850}.chat-rename-group button{appearance:none;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:999px;flex:0 0 34px;justify-content:center;align-items:center;height:34px;display:inline-flex}.chat-rename-group button:hover{background:var(--row)}.chat-rename-group button:disabled{cursor:default;opacity:.4}.chat-message-panel{flex-direction:column;gap:3px;min-height:0;padding:24px clamp(16px,4vw,46px);animation:.3s cubic-bezier(.2,.8,.2,1) chatMessagesIn;display:flex;overflow-y:auto}.chat-day-pill{background:var(--row);color:var(--muted);border-radius:999px;margin:16px auto 8px;padding:6px 10px;font-size:11px;font-weight:900;animation:.22s both chatPillIn}.chat-message-entry{display:contents}.chat-message-entry:first-child .chat-day-pill{margin-top:0}.chat-message-row{justify-content:flex-start;align-items:end;gap:8px;scroll-margin-block:100px;transition:background-color .22s,transform .18s;animation:.22s cubic-bezier(.2,.8,.2,1) both chatBubbleIn;display:flex}.chat-message-row.mine{justify-content:flex-end;animation-name:chatBubbleInMine}.chat-message-row.grouped-with-previous{margin-top:-1px}.chat-avatar-spacer{flex:0 0 42px;width:42px}.chat-message-row.highlighted{background:color-mix(in srgb, var(--accent) 10%, transparent);border-radius:18px;padding:8px}.chat-bubble-wrap{gap:4px;max-width:min(72%,590px);display:grid}.chat-message-row.mine .chat-bubble-wrap{justify-items:end}.chat-bubble{background:var(--row);color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:18px 18px 18px 5px;padding:10px 13px;font-size:14px;font-weight:700;line-height:1.45;transition:background-color .18s,box-shadow .18s,transform .18s}.chat-message-row:hover .chat-bubble{transform:translateY(-1px);box-shadow:0 10px 24px #8ca9ff14}.chat-message-row.mine .chat-bubble{background:var(--ink);color:var(--panel-strong);border-radius:18px 18px 5px}.chat-message-row.grouped-with-next:not(.mine) .chat-bubble{border-bottom-left-radius:6px}.chat-message-row.grouped-with-previous:not(.mine) .chat-bubble{border-top-left-radius:6px}.chat-message-row.mine.grouped-with-next .chat-bubble{border-bottom-right-radius:6px}.chat-message-row.mine.grouped-with-previous .chat-bubble{border-top-right-radius:6px}.chat-bubble mark{background:color-mix(in srgb, var(--accent) 18%, transparent);color:inherit;border-radius:5px;padding:1px 3px;font-weight:950}.chat-bubble-wrap small{color:var(--muted);font-size:10px;font-weight:750}.chat-read-receipt{align-items:center;gap:4px;display:inline-flex}.chat-sender-label{padding-left:10px}.chat-read-receipt.seen{color:var(--accent);font-weight:900}.chat-composer{background:var(--row);border:1px solid var(--soft-line);border-radius:22px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;min-height:50px;margin:12px clamp(20px,4vw,46px) 18px;padding:6px 7px 6px 14px;transition:border-color .18s,box-shadow .18s,transform .18s;animation:.26s cubic-bezier(.2,.8,.2,1) chatComposerIn;display:grid;position:relative}.chat-emoji-button{appearance:none;color:var(--muted);background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;width:36px;height:36px;padding:0;transition:background-color .16s,color .16s;display:inline-flex}.chat-emoji-button:hover,.chat-emoji-button[aria-expanded=true]{background:color-mix(in srgb, var(--panel-strong) 72%, transparent);color:var(--ink)}.chat-emoji-menu{background:var(--panel-strong);border:1px solid var(--soft-line);box-shadow:var(--shadow-soft);z-index:4;border-radius:16px;grid-template-columns:repeat(6,36px);gap:4px;padding:8px;animation:.16s cubic-bezier(.2,.8,.2,1) chatPopoverIn;display:grid;position:absolute;bottom:calc(100% + 8px);left:0}.chat-emoji-menu button{appearance:none;background:0 0;border:0;border-radius:9px;justify-content:center;align-items:center;width:36px;height:36px;padding:0;font-size:20px;transition:background-color .14s,transform .14s;display:inline-flex}.chat-emoji-menu button:hover{background:var(--row);transform:scale(1.08)}.chat-composer:focus-within{border-color:color-mix(in srgb, var(--ui-icon) 45%, var(--soft-line));transform:translateY(-1px);box-shadow:0 12px 30px #8ca9ff1f}.chat-send-button{background:var(--ink);color:var(--panel-strong)}.chat-send-button:not(:disabled):hover{transform:translateY(-1px)scale(1.03)}.chat-send-button:disabled{cursor:default;opacity:.35}.mention-menu{background:var(--panel-strong);border:1px solid var(--soft-line);box-shadow:var(--shadow-soft);transform-origin:0 100%;border-radius:13px;min-width:230px;padding:6px;animation:.16s cubic-bezier(.2,.8,.2,1) chatPopoverIn;display:grid;position:absolute;bottom:calc(100% + 8px);left:0}.mention-menu button{appearance:none;color:var(--ink);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;border-radius:9px;padding:8px 10px;font-size:13px;font-weight:850}.mention-menu button:hover{background:var(--row)}.chat-member-popover{background:var(--panel-strong);border:1px solid var(--soft-line);box-shadow:var(--shadow-soft);z-index:12;transform-origin:100% 0;border-radius:16px;gap:10px;width:min(340px,100vw - 40px);max-height:480px;padding:12px;animation:.18s cubic-bezier(.2,.8,.2,1) chatPopoverIn;display:grid;position:absolute;top:66px;right:18px}.chat-member-head{justify-content:space-between;align-items:center;display:flex}.chat-member-list{max-height:280px;display:grid;overflow-y:auto}.chat-member-list.current-members{border-bottom:1px solid var(--soft-line);gap:4px;padding-bottom:8px}.chat-user.static{cursor:default}.chat-user.static:hover{background:0 0}.chat-icon-button.danger{color:#b91c1c}.chat-composer textarea:disabled{color:var(--muted);background:#f1f5f9}.chat-member-popover .primary-pill:disabled{cursor:default;opacity:.45}.chat-empty-main{color:var(--muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:100%;padding:24px;animation:.26s cubic-bezier(.2,.8,.2,1) chatPaneIn;display:flex}.chat-empty-main>svg{color:var(--accent)}.chat-empty-main h2,.chat-empty-main p{margin:0}.chat-status{background:var(--panel-strong);border:1px solid var(--soft-line);box-shadow:var(--shadow-soft);color:var(--ink);z-index:8;border-radius:12px;padding:9px 12px;font-size:12px;font-weight:850;animation:.2s both chatToastIn;position:absolute;bottom:78px;left:50%;transform:translate(-50%)}@keyframes chatPaneIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes chatMessagesIn{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}@keyframes chatBubbleIn{0%{opacity:0;transform:translate(-10px)translateY(4px)scale(.98)}to{opacity:1;transform:translate(0)translateY(0)scale(1)}}@keyframes chatBubbleInMine{0%{opacity:0;transform:translate(10px)translateY(4px)scale(.98)}to{opacity:1;transform:translate(0)translateY(0)scale(1)}}@keyframes chatPillIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes chatComposerIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes chatPopoverIn{0%{opacity:0;transform:translateY(-4px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes chatToastIn{0%{opacity:0;transform:translate(-50%)translateY(8px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@media (max-width:820px){.chat-workspace{background:var(--panel-strong);height:calc(100dvh - 78px - env(safe-area-inset-bottom));border:0;border-radius:0;grid-template-columns:1fr;gap:0;min-height:0;margin:-12px;overflow:hidden}.chat-sidebar,.chat-main{grid-area:1/1}.chat-sidebar{background:0 0;border:0;border-radius:0;padding:14px 12px 0;transition:opacity .19s,transform .22s,visibility .19s;display:grid}.chat-list-head{padding:0 4px 12px}.chat-list-head h1{font-size:24px}.chat-list-head p{display:none}.chat-search{background:color-mix(in srgb, var(--accent) 7%, var(--row));border:0;border-radius:12px;min-height:43px}.chat-filter-tabs{margin:8px -12px 2px;padding:0 12px 8px}.chat-filter-tabs button{min-height:36px}.chat-thread-list{gap:0;margin:0 -12px;padding:0 12px}.chat-thread{border:0;border-bottom:1px solid color-mix(in srgb, var(--soft-line) 72%, transparent);border-radius:0;gap:11px;min-height:68px;padding:9px 2px}.chat-thread.active{border-color:color-mix(in srgb, var(--soft-line) 72%, transparent);box-shadow:none;background:0 0}.chat-thread:hover,.chat-thread:not(.active):hover{background:var(--row);transform:none}.chat-avatar{width:48px;height:48px}.chat-thread strong{font-size:14px}.chat-thread small{margin-top:4px;font-size:11px}.chat-main{background:color-mix(in srgb, var(--accent) 4%, var(--panel-strong));opacity:0;pointer-events:none;visibility:hidden;border:0;border-radius:0;transition:opacity .19s,transform .22s,visibility .19s;transform:translate(18px)}.chat-workspace.mobile-chat-open .chat-sidebar{opacity:0;pointer-events:none;visibility:hidden;transform:translate(-18px)}.chat-workspace.mobile-chat-open .chat-main{opacity:1;pointer-events:auto;visibility:visible;transform:translate(0)}.chat-mobile-back{display:inline-flex}.chat-main-head{grid-template-columns:auto auto minmax(0,1fr) auto;padding-inline:10px}.chat-bubble-wrap{max-width:86%}.chat-message-panel{padding-inline:12px}}@media (prefers-reduced-motion:reduce){.chat-main-head,.chat-message-panel,.chat-day-pill,.chat-message-row,.chat-composer,.mention-menu,.chat-emoji-menu,.chat-member-popover,.chat-empty-main,.chat-status{animation:none}.chat-icon-button,.chat-mobile-back,.chat-member-head button,.chat-search,.chat-thread,.chat-user,.chat-mention-row,.chat-main,.chat-message-row,.chat-bubble,.chat-composer,.chat-emoji-button,.chat-emoji-menu button,.chat-sidebar{transition:none}.chat-thread:not(.active):hover,.chat-user:hover,.chat-mention-row:hover,.chat-message-row:hover .chat-bubble,.chat-composer:focus-within,.chat-send-button:not(:disabled):hover,.chat-icon-button:hover,.chat-icon-button.active,.chat-mobile-back:hover,.chat-member-head button:hover,.chat-search>button:hover{transform:none}}
.image-crop-backdrop{z-index:120;background:#24314d9e;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.image-crop-dialog{background:var(--panel-strong);border:1px solid var(--soft-line);box-shadow:var(--shadow-strong);border-radius:8px;gap:16px;width:100%;max-width:760px;max-height:calc(100dvh - 40px);padding:20px;display:grid;overflow-y:auto}.image-crop-head,.image-crop-actions,.image-crop-controls{justify-content:space-between;align-items:center;gap:12px;display:flex}.image-crop-head h2,.image-crop-head p,.image-crop-error{margin:0}.image-crop-head p{color:var(--muted);margin-top:4px;font-size:13px;font-weight:750}.image-crop-head>button,.image-crop-reset{border:1px solid var(--soft-line);color:var(--ink);cursor:pointer;font:inherit;background:0 0;justify-content:center;align-items:center;font-weight:850;display:inline-flex}.image-crop-head>button{border-radius:50%;flex:none;width:38px;height:38px}.image-crop-stage{background:var(--row);cursor:grab;touch-action:none;border-radius:6px;width:100%;max-height:min(58dvh,520px);margin-inline:auto;position:relative;overflow:hidden}.image-crop-stage.dragging{cursor:grabbing}.image-crop-canvas{outline:0;width:100%;height:100%;display:block}.image-crop-canvas:focus-visible{box-shadow:inset 0 0 0 3px var(--accent)}.image-crop-grid{pointer-events:none;position:absolute;inset:0}.image-crop-grid i{background:#ffffffc2;position:absolute;box-shadow:0 0 1px #24314db3}:root[data-theme=dark] .image-crop-grid i{background:#edf3ff6b;box-shadow:0 0 1px #000000b3}.image-crop-grid i:first-child,.image-crop-grid i:nth-child(2){width:1px;top:0;bottom:0}.image-crop-grid i:first-child{left:33.333%}.image-crop-grid i:nth-child(2){left:66.666%}.image-crop-grid i:nth-child(3),.image-crop-grid i:nth-child(4){height:1px;left:0;right:0}.image-crop-grid i:nth-child(3){top:33.333%}.image-crop-grid i:nth-child(4){top:66.666%}.image-crop-controls label{flex:1;gap:7px;font-size:13px;font-weight:850;display:grid}.image-crop-reset{border-radius:999px;gap:7px;min-height:42px;padding:0 16px}.image-crop-actions .secondary-pill{border:1px solid var(--soft-line);color:var(--ink);cursor:pointer;font:inherit;background:0 0;border-radius:999px;min-height:42px;padding:0 18px;font-weight:850}.image-crop-error{color:#aac4f5;font-size:13px;font-weight:800}@media (max-width:640px){.image-crop-backdrop{padding:10px}.image-crop-dialog{max-height:calc(100dvh - 20px);padding:14px}.image-crop-controls{flex-direction:column;align-items:stretch}.image-crop-reset{align-self:flex-start}}
.user-avatar{background-position:50%;background-repeat:no-repeat;background-size:cover;flex:none;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.profile-workspace{gap:22px;display:grid}.profile-layout{grid-template-columns:minmax(280px,.38fr) minmax(0,1fr);gap:20px;display:grid}.profile-photo-card,.profile-details-card{align-content:start;gap:18px;padding:24px;display:grid}.profile-photo-card{text-align:center;align-content:center;align-self:stretch;justify-items:center;min-height:100%}.profile-install-card{background:radial-gradient(circle at 96% 10%, color-mix(in srgb, var(--accent-2) 18%, transparent) 0, transparent 30%), var(--panel-strong);border-color:color-mix(in srgb, var(--accent) 18%, var(--soft-line));grid-column:1/-1;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:18px;display:grid}.profile-demo-card{justify-content:space-between;align-items:center;gap:18px;padding:18px 20px;display:flex}.profile-demo-card h2,.profile-demo-card p{margin:0}.profile-demo-card p{color:var(--muted);margin-top:4px;font-size:13px}.profile-demo-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.profile-demo-actions a{text-decoration:none}.profile-demo-footer{background:var(--surface-soft);border:1px solid var(--border-soft);color:var(--muted);border-radius:14px;grid-column:1/-1;justify-content:space-between;align-items:center;gap:18px;padding:12px 14px;display:flex}.profile-demo-footer>div{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.profile-demo-footer>div strong{color:var(--ink);font-size:13px}.profile-demo-footer>div span{font-size:12px}.profile-demo-footer nav{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.profile-demo-footer :where(a,button){color:var(--muted);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:8px;align-items:center;gap:5px;padding:8px 9px;font-size:12px;font-weight:850;text-decoration:none;display:inline-flex}.profile-demo-footer :where(a,button):hover{background:var(--panel-strong);color:var(--ink)}.profile-install-icon{background:color-mix(in srgb, var(--accent) 10%, var(--panel));border:1px solid color-mix(in srgb, var(--accent) 20%, var(--soft-line));color:var(--accent);border-radius:15px;justify-content:center;align-items:center;width:46px;height:46px;display:inline-flex}.profile-install-copy{gap:6px;min-width:0;display:grid}.profile-install-card h2,.profile-install-card p{margin:0}.profile-install-card p,.profile-install-card small{color:var(--muted);font-size:13px}.profile-install-guidance{background:color-mix(in srgb, var(--row) 58%, transparent);border-radius:10px;max-width:72ch;margin-top:3px;padding:8px 10px;font-weight:750;line-height:1.45;display:block}.profile-install-button{appearance:none;background:var(--ink);border:1px solid var(--ink);cursor:pointer;min-height:44px;color:var(--panel-strong);box-shadow:0 10px 24px color-mix(in srgb, var(--ink) 16%, transparent);white-space:nowrap;border-radius:14px;flex:none;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-family:inherit;font-size:13px;font-weight:900;display:inline-flex}.profile-install-button:hover:not(:disabled),.profile-install-button:focus-visible{border-color:color-mix(in srgb, var(--accent) 44%, var(--line));transform:translateY(-1px)}.profile-install-button:focus-visible{box-shadow:0 0 0 4px var(--accent-soft);outline:0}.profile-install-button:disabled{cursor:not-allowed;opacity:.55}.profile-identity-summary{gap:7px;display:grid}.profile-identity-summary p{line-height:1.55}.profile-change-trigger{justify-content:center;min-width:170px}.profile-status-banner{background:color-mix(in srgb, var(--accent) 8%, var(--panel-strong));border:1px solid color-mix(in srgb, var(--accent) 24%, var(--soft-line));color:var(--ink);border-radius:14px;padding:11px 14px;font-size:13px;font-weight:800}.profile-avatar-options{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.profile-avatar-options button{appearance:none;background:var(--row);border:1px solid var(--soft-line);cursor:pointer;border-radius:16px;width:62px;height:62px;padding:3px;transition:border-color .16s,box-shadow .16s,transform .16s;position:relative;overflow:visible}.profile-avatar-options button:hover:not(:disabled){transform:translateY(-2px)}.profile-avatar-options button.selected{border-color:var(--avatar-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--avatar-accent) 22%, transparent)}.profile-avatar-options button:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 32%, transparent);outline-offset:3px}.profile-avatar-options img{object-fit:cover;border-radius:12px;width:54px;height:54px;display:block}.profile-avatar-options button>span{background:var(--ink);border:2px solid var(--panel-strong);color:var(--panel-strong);border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex;position:absolute;bottom:-5px;right:-5px}.profile-display-name-field{text-align:left;gap:7px;width:100%;display:grid}.profile-display-name-field>span{justify-content:space-between;align-items:center;display:flex}.profile-display-name-field small{color:var(--muted);line-height:1.45}.profile-display-name-field input{background:var(--panel-strong);border:1px solid var(--soft-line);color:var(--ink);font:inherit;border-radius:14px;min-height:46px;padding:0 14px}.profile-change-backdrop{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:119;background:#1820337a;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0;overflow-y:auto}.profile-change-dialog{background:var(--panel-strong);border:1px solid var(--soft-line);box-shadow:var(--shadow-strong);border-radius:26px;gap:20px;width:100%;max-width:560px;max-height:calc(100vh - 48px);padding:26px;display:grid;overflow-y:auto}.profile-change-head,.profile-change-actions,.profile-change-preview{align-items:center;display:flex}.profile-change-head{justify-content:space-between;gap:18px}.profile-change-head>div,.profile-change-preview>div,.profile-change-section-head{gap:4px;display:grid}.profile-change-head h2,.profile-change-head p,.profile-change-preview strong,.profile-change-preview span{margin:0}.profile-change-head p,.profile-change-preview span,.profile-change-section-head small{color:var(--muted)}.profile-change-head p,.profile-change-section-head small{font-size:13px;line-height:1.45}.profile-change-close{appearance:none;background:var(--row);border:1px solid var(--soft-line);color:var(--ink);border-radius:50%;flex:none;justify-content:center;align-items:center;width:38px;height:38px;padding:0;display:inline-flex}.profile-change-close:hover:not(:disabled){border-color:color-mix(in srgb, var(--accent) 40%, var(--soft-line));color:var(--accent)}.profile-change-preview{background:var(--row);border:1px solid var(--soft-line);border-radius:20px;gap:16px;padding:16px}.profile-change-preview .profile-photo-large{border-width:3px;width:80px;height:80px;font-size:24px}.profile-change-preview strong{color:var(--ink);font-size:18px;font-weight:950}.profile-change-section{border-top:1px solid var(--soft-line);gap:14px;padding-top:18px;display:grid}.profile-change-section .profile-avatar-options{justify-content:flex-start}.profile-change-upload{justify-self:start}.profile-change-section>.profile-upload-note{margin-top:-7px;font-size:12px;font-weight:750}.profile-change-actions{border-top:1px solid var(--soft-line);justify-content:flex-end;gap:10px;padding-top:18px}.profile-change-status{color:var(--muted);min-height:18px;font-size:13px;font-weight:750}.profile-setup-backdrop{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:color-mix(in srgb, var(--page) 76%, #1f26388a);z-index:115;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0;overflow-y:auto}.profile-setup-dialog{background:var(--panel-strong);border:1px solid var(--soft-line);border-radius:var(--radius-xl,28px);box-shadow:var(--shadow-strong);gap:18px;width:100%;max-width:460px;padding:28px;display:grid}.profile-setup-dialog>header{align-items:center;gap:13px;display:flex}.profile-setup-dialog h1,.profile-setup-dialog p{margin:0}.profile-setup-dialog header p{color:var(--accent);letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:900}.profile-setup-dialog>p{color:var(--muted);line-height:1.55}.profile-setup-icon{background:var(--row);border:1px solid var(--soft-line);color:var(--accent);border-radius:15px;justify-content:center;align-items:center;width:46px;height:46px;display:inline-flex}.profile-setup-avatar-stage{place-items:center;gap:12px;display:grid}.profile-setup-avatar-stage>img,.profile-setup-avatar-stage>svg{background:var(--row);border:5px solid var(--panel-strong);box-shadow:0 0 0 1px var(--soft-line), var(--shadow-soft);object-fit:cover;border-radius:50%;width:150px;height:150px}.profile-photo-upload-button{appearance:none;background:var(--row);border:1px solid var(--soft-line);color:var(--ink);border-radius:999px;align-items:center;gap:7px;min-height:38px;padding:0 14px;font-weight:800;display:inline-flex}.profile-setup-error{background:color-mix(in srgb, var(--danger,#b42318) 9%, var(--panel-strong));color:var(--danger,#b42318);border-radius:12px;padding:10px 12px;font-size:13px}.profile-setup-submit{justify-content:center;width:100%}.profile-photo-large{border:5px solid var(--panel-strong);box-shadow:0 0 0 1px var(--soft-line), var(--shadow-soft);border-radius:50%;width:132px;height:132px;font-size:38px;font-weight:900}.profile-photo-card h2,.profile-photo-card p,.profile-details-card h2{margin:0}.profile-card-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.profile-edit-button{appearance:none;background:var(--row);border:1px solid var(--soft-line);color:var(--ink);border-radius:999px;justify-content:center;align-items:center;width:34px;height:34px;padding:0;display:inline-flex}.profile-edit-button:hover{border-color:color-mix(in srgb, var(--accent) 38%, var(--soft-line));color:var(--accent)}.profile-photo-card p,.profile-detail-row small,.profile-upload-note{color:var(--muted)}.profile-details-list{gap:0;display:grid}.profile-privacy-card{grid-column:1/-1}.profile-account-card{grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto;align-items:center}.profile-sign-out-button{border:1px solid color-mix(in srgb, var(--danger,#b42318) 30%, var(--line));color:var(--danger,#b42318);font:inherit;background:0 0;border-radius:13px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:10px 16px;font-size:13px;font-weight:850;display:inline-flex}.profile-sign-out-button:hover:not(:disabled){background:color-mix(in srgb, var(--danger,#b42318) 7%, var(--panel))}.profile-sign-out-button:disabled{cursor:wait;opacity:.58}.profile-privacy-card>div:first-child h2{align-items:center;gap:8px;display:flex}.profile-color-mode{background:var(--panel);border:1px solid var(--line);border-radius:16px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:6px;display:grid}.profile-color-mode button{color:var(--muted);text-align:left;background:0 0;border:1px solid #0000;border-radius:12px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;min-height:54px;padding:8px 12px;display:grid}.profile-color-mode button:hover{background:color-mix(in srgb, var(--accent) 6%, var(--panel-strong));border-color:color-mix(in srgb, var(--accent) 22%, var(--line));color:var(--ink)}.profile-color-mode button.active{background:var(--panel-strong);border-color:color-mix(in srgb, var(--accent) 32%, var(--line));color:var(--ink);box-shadow:0 8px 20px #506cb41a}.profile-color-mode button>span{gap:1px;display:grid}.profile-color-mode small{color:var(--muted);font-size:11px}.profile-theme-picker{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;display:grid}.profile-theme-picker button{appearance:none;background:var(--panel-strong);border:1px solid var(--soft-line);color:var(--ink);cursor:pointer;text-align:left;border-radius:14px;align-items:center;gap:11px;min-height:68px;padding:10px;display:flex}.profile-theme-picker button:hover,.profile-theme-picker button.active{border-color:color-mix(in srgb, var(--accent) 58%, var(--line))}.profile-theme-picker button.active{background:color-mix(in srgb, var(--accent-soft) 62%, var(--panel));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 32%, transparent)}.profile-theme-picker button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.profile-theme-picker button:disabled{cursor:wait;opacity:.62}.profile-theme-picker button>span:last-child{gap:3px;display:grid}.profile-theme-picker small{color:var(--muted);font-size:11px;line-height:1.25}.profile-theme-shape{background:color-mix(in srgb, var(--accent-soft) 72%, var(--panel));border:1px solid color-mix(in srgb, var(--accent) 24%, var(--line));border-radius:10px;flex:none;justify-content:center;align-items:end;gap:4px;width:46px;height:38px;padding:7px;display:flex}.profile-theme-shape i{background:var(--accent);opacity:.82;border-radius:3px;width:11px;height:12px;display:block}.profile-theme-shape i:last-child{height:20px}.profile-theme-shape.clay{box-shadow:3px 4px 8px color-mix(in srgb, var(--accent) 20%, transparent), inset 0 1px 1px #ffffffb8;border-radius:15px}.profile-theme-shape.neumorphic{box-shadow:4px 4px 7px color-mix(in srgb, var(--ink) 15%, transparent), -3px -3px 7px #ffffffa3;border-color:#0000}.profile-theme-shape.minimal{box-shadow:none;border-radius:4px}.profile-theme-shape.bohemian{border-radius:14px 7px 16px 9px}.profile-theme-shape.school-default{border-style:dashed}.profile-edit-card{grid-column:1/-1}.profile-inline-field{background:var(--panel-strong);border:1px solid var(--line);color:var(--ink);font:inherit;text-align:right;border-radius:14px;outline:0;width:100%;max-width:min(420px,100%);min-height:40px;padding:10px 12px;font-weight:850}textarea.profile-inline-field{resize:vertical;min-height:78px;line-height:1.45}.profile-detail-actions{justify-content:flex-end;align-items:center;gap:10px;padding-top:16px;display:flex}.profile-field{color:var(--muted);gap:7px;font-size:13px;font-weight:900;display:grid}.profile-field input,.profile-field textarea{background:var(--panel-strong);border:1px solid var(--line);color:var(--ink);font:inherit;border-radius:16px;outline:0;padding:12px 13px}.profile-field textarea{resize:vertical;min-height:92px}.profile-setting-row{border-top:1px solid var(--soft-line);cursor:pointer;justify-content:space-between;align-items:center;gap:24px;padding-top:18px;display:flex}.profile-setting-row>span{gap:5px;display:grid}.profile-setting-row small{color:var(--muted);line-height:1.45}.profile-toggle{flex:none;width:46px;height:26px;display:inline-flex;position:relative}.profile-toggle input{opacity:0;width:1px;height:1px;position:absolute}.profile-toggle i{background:var(--soft-line);border:1px solid color-mix(in srgb, var(--ink) 10%, transparent);cursor:pointer;border-radius:999px;transition:background-color .16s;position:absolute;inset:0}.profile-toggle i:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .16s;position:absolute;top:3px;left:3px;box-shadow:0 1px 4px #24314d40}.profile-toggle input:checked+i{background:var(--accent)}.profile-toggle input:checked+i:after{transform:translate(20px)}.profile-toggle input:focus-visible+i{outline:2px solid var(--accent);outline-offset:3px}.profile-toggle input:disabled+i{cursor:wait;opacity:.6}.profile-cookie-settings-button{background:var(--panel);border:1px solid var(--line);color:var(--ink);cursor:pointer;font:inherit;border-radius:13px;justify-content:center;align-self:start;align-items:center;min-height:42px;padding:9px 14px;font-size:13px;font-weight:750;display:inline-flex}.profile-cookie-settings-button:hover,.profile-cookie-settings-button:focus-visible{background:color-mix(in srgb, var(--accent) 7%, var(--panel-strong));border-color:color-mix(in srgb, var(--accent) 34%, var(--line))}.profile-cookie-settings-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}:root[data-theme=dark] .app-shell .profile-workspace :where(.primary-pill,.profile-install-button){background:var(--accent);border-color:color-mix(in srgb, var(--accent) 72%, #fff);box-shadow:0 8px 22px color-mix(in srgb, var(--accent) 18%, transparent);color:#0b0b0c}:root[data-theme=dark] .app-shell .profile-workspace :where(.primary-pill,.profile-install-button):hover:not(:disabled){background:color-mix(in srgb, var(--accent) 88%, #fff);border-color:color-mix(in srgb, var(--accent) 62%, #fff)}:root[data-theme=dark] .app-shell .profile-workspace .ghost-pill,:root[data-theme=dark] .profile-cookie-settings-button{color:#f5f5f6;background:#1b1b1d;border-color:#ffffff2e}:root[data-theme=dark] .profile-color-mode{background:#0d0d0e;border-color:#ffffff2e}:root[data-theme=dark] .profile-color-mode button{color:#f1f1f2c2}:root[data-theme=dark] .profile-color-mode button:hover{color:#fff;background:#1c1c1e;border-color:#fff3}:root[data-theme=dark] .profile-color-mode button.active{border-color:color-mix(in srgb, var(--accent) 72%, #ffffff3d);color:#fff;background:#29292c;box-shadow:0 8px 22px #00000057}:root[data-theme=dark] .profile-color-mode button.active small{color:#ffffffb8}:root[data-theme=dark] .profile-theme-picker button{color:#f3f3f4;background:#19191b;border-color:#ffffff26}:root[data-theme=dark] .profile-theme-picker button:hover{border-color:color-mix(in srgb, var(--accent) 42%, #ffffff2e);background:#202023}:root[data-theme=dark] .profile-theme-picker button.active{background:color-mix(in srgb, var(--accent) 15%, #1a1a1c);border-color:color-mix(in srgb, var(--accent) 72%, #fff3);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 28%, transparent)}:root[data-theme=dark] .profile-toggle i{background:#353538;border-color:#ffffff38}:root[data-theme=dark] .profile-toggle i:after{background:#f5f5f6;box-shadow:0 1px 5px #00000085}:root[data-theme=dark] .profile-toggle input:checked+i{background:var(--accent);border-color:color-mix(in srgb, var(--accent) 74%, #fff)}:root[data-theme=dark] .profile-toggle input:checked+i:after{background:#111113}.profile-detail-row{border-bottom:1px solid var(--soft-line);justify-content:space-between;align-items:center;gap:16px;padding:15px 0;display:flex}.profile-detail-row:last-child{border-bottom:0}.profile-detail-row span{text-align:right;font-weight:850}.profile-guardian-row{border-bottom:1px solid var(--soft-line);justify-content:space-between;align-items:center;gap:16px;padding:15px 0;display:flex}.profile-guardian-row:last-child{border-bottom:0}.profile-guardian-row div{gap:4px;display:grid}.profile-guardian-row strong{color:var(--ink);font-size:14px;font-weight:950}.profile-guardian-row small{color:var(--muted);font-size:12px;font-weight:850}.profile-guardian-row span{color:var(--ink);text-align:right;font-size:13px;font-weight:850}.profile-status{color:var(--muted);min-height:18px;font-size:13px;font-weight:750}.profile-ticket-card{gap:14px}.profile-support-grid{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.profile-support-grid .profile-ticket-card{min-width:0}.profile-raised-tickets-card{grid-template-rows:auto minmax(0,1fr) auto}.profile-ticket-count{background:var(--accent-soft);border:1px solid color-mix(in srgb, var(--accent) 22%, var(--soft-line));color:var(--accent);border-radius:999px;flex:none;justify-content:center;align-items:center;min-width:30px;height:30px;padding:0 9px;font-size:12px;font-weight:950;display:inline-flex}.profile-ticket-form{gap:10px;display:grid}.profile-ticket-form label{color:var(--muted);gap:6px;font-size:12px;font-weight:850;display:grid}.profile-ticket-form input,.profile-ticket-form select,.profile-ticket-form textarea{background:var(--panel-strong);border:1px solid var(--line);color:var(--ink);font:inherit;border-radius:10px;width:100%;padding:10px}.profile-ticket-upload{align-items:center;gap:8px;width:fit-content;display:flex!important}.profile-ticket-upload input{border:0;padding:0}.profile-ticket-list{border-top:1px solid var(--line);gap:0;display:grid}.profile-ticket-row{border-bottom:1px solid var(--soft-line);justify-content:space-between;align-items:center;gap:14px;min-width:0;padding:14px 0;display:flex}.profile-ticket-row:last-child{border-bottom:0}.profile-ticket-copy{gap:3px;min-width:0;display:grid}.profile-ticket-copy strong{color:var(--ink);overflow-wrap:anywhere;font-size:14px;font-weight:900}.profile-ticket-copy small{color:var(--muted);font-size:12px;line-height:1.4}.profile-ticket-row>.status{text-transform:none;flex:none}.profile-ticket-empty{background:var(--row);border:1px dashed var(--soft-line);color:var(--muted);text-align:center;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-height:170px;padding:24px;font-size:13px;display:flex}.profile-ticket-empty strong{color:var(--ink);font-size:14px}.profile-ticket-error{background:color-mix(in srgb, var(--danger,#b42318) 7%, var(--row));border-color:color-mix(in srgb, var(--danger,#b42318) 24%, var(--soft-line));color:var(--danger,#b42318)}.profile-ticket-link{color:var(--accent);justify-self:start;align-items:center;gap:6px;font-size:13px;font-weight:900;text-decoration:none;display:inline-flex}.profile-ticket-link:hover{text-decoration:underline}@media (max-width:760px){.profile-demo-card{flex-direction:column;align-items:flex-start}.profile-layout{grid-template-columns:1fr}.profile-demo-footer{flex-direction:column;align-items:flex-start}.profile-support-grid{grid-template-columns:1fr}.profile-photo-card,.profile-details-card{padding:18px}.profile-account-card{grid-template-columns:1fr;align-items:stretch}.profile-install-card{grid-template-columns:auto minmax(0,1fr);align-items:stretch}.profile-install-button{grid-column:1/-1;justify-content:center;width:100%}.profile-theme-picker{grid-template-columns:1fr}.profile-color-mode button{min-height:50px;padding-inline:10px}.profile-setup-backdrop{align-items:flex-start;padding:12px}.profile-setup-dialog{border-radius:22px;margin-block:12px;padding:21px}.profile-change-backdrop{align-items:flex-start;padding:12px}.profile-change-dialog{border-radius:22px;max-height:calc(100vh - 48px);margin-block:12px;padding:20px}.profile-change-section .profile-avatar-options{justify-content:center}.profile-ticket-row{align-items:flex-start}}@media (prefers-reduced-motion:reduce){.profile-avatar-options button{transition:none}}@media (max-width:380px){.profile-color-mode{grid-template-columns:1fr}}
.reports-workspace{gap:18px;display:grid}.reports-view-tabs{border-bottom:1px solid var(--soft-line);flex-wrap:wrap;align-items:center;gap:8px;padding-bottom:10px;display:flex}.reports-view-tabs button{color:var(--muted);cursor:pointer;font:inherit;background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;gap:7px;min-height:42px;padding:10px 14px;font-size:13px;font-weight:900;display:inline-flex}.reports-view-tabs button.active,.reports-view-tabs button:hover{background:var(--panel);border-color:var(--soft-line);color:var(--ink);box-shadow:0 8px 18px #8ca9ff12}.reports-summary-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.reports-summary-row article,.reports-signal-card{background:var(--panel);border:1px solid var(--soft-line);box-shadow:var(--shadow-soft);border-radius:20px;gap:8px;padding:18px;display:grid}.reports-summary-row span,.reports-summary-row small,.reports-signal-card span,.reports-signal-card p{color:var(--muted);margin:0;font-size:13px;font-weight:850;line-height:1.35}.reports-summary-row strong,.reports-signal-card strong{color:var(--ink);font-size:clamp(26px,3vw,38px);line-height:1}.reports-layout{grid-template-columns:minmax(0,1fr) minmax(320px,.36fr);align-items:start;gap:18px;display:grid}.reports-layout.single-column{grid-template-columns:minmax(0,1fr)}.reports-demo-builder{gap:18px;display:grid}.reports-demo-builder-head{align-items:center;gap:12px;display:flex}.reports-demo-builder-head>span:last-child{gap:4px;display:grid}.reports-demo-builder-head strong{color:var(--ink);font-size:18px}.reports-demo-builder-head small,.reports-demo-topic-grid small{color:var(--muted);font-size:12px;font-weight:750;line-height:1.4}.reports-demo-brand-mark{background:var(--ink);color:var(--panel);border-radius:12px;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex}.reports-demo-date-grid{grid-template-columns:repeat(2,minmax(0,220px));gap:12px;display:grid}.reports-demo-date-grid label{color:var(--muted);gap:7px;font-size:12px;font-weight:900;display:grid}.reports-demo-date-grid input{background:var(--panel);border:1px solid var(--line);color:var(--ink);font:inherit;border-radius:12px;min-height:44px;padding:9px 12px}.reports-demo-topics{border:0;min-width:0;margin:0;padding:0}.reports-demo-topics legend{color:var(--ink);margin-bottom:10px;font-size:13px;font-weight:950}.reports-demo-topic-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.reports-demo-topic-grid label{background:var(--row);border:1px solid var(--soft-line);cursor:pointer;border-radius:16px;align-items:start;gap:10px;min-height:92px;padding:13px;transition:border-color .16s,box-shadow .16s,transform .16s;display:flex}.reports-demo-topic-grid label.selected{border-color:color-mix(in srgb, var(--accent) 42%, var(--soft-line));box-shadow:0 8px 22px #4064b414}.reports-demo-topic-grid input{accent-color:var(--accent);margin:3px 0 0}.reports-demo-topic-grid span{gap:5px;display:grid}.reports-demo-topic-grid strong{color:var(--ink);font-size:13px}.reports-demo-actions{justify-content:flex-end;align-items:center;gap:12px;display:flex}.reports-demo-actions .form-error{margin-right:auto}.reports-live-shell{gap:16px;display:grid}.reports-report-toolbar{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:14px;padding:14px 16px;display:grid}.reports-report-tabs{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.reports-report-tabs button{color:var(--muted);cursor:pointer;font:inherit;background:0 0;border:1px solid #0000;border-radius:12px;min-height:40px;padding:9px 13px;font-size:13px;font-weight:900}.reports-report-tabs button.active{background:color-mix(in srgb, var(--report-accent) 10%, var(--panel));border-color:color-mix(in srgb, var(--report-accent) 30%, var(--soft-line));color:var(--ink)}.reports-report-filters{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.reports-report-filters label{color:var(--muted);gap:5px;font-size:11px;font-weight:900;display:grid}.reports-report-filters input[type=date]{background:var(--panel);border:1px solid var(--soft-line);color:var(--ink);font:inherit;border-radius:10px;min-height:38px;padding:7px 9px}.reports-color-control input{background:var(--panel);border:1px solid var(--soft-line);cursor:pointer;border-radius:10px;width:48px;height:38px;padding:4px}.reports-style-options{position:relative}.reports-style-options summary{background:var(--panel);border:1px solid var(--soft-line);color:var(--muted);cursor:pointer;border-radius:10px;align-items:center;min-height:38px;padding:8px 11px;font-size:12px;font-weight:900;display:inline-flex}.reports-style-options[open] .reports-color-control{background:var(--panel);border:1px solid var(--soft-line);box-shadow:var(--shadow-soft);z-index:5;border-radius:12px;width:132px;padding:10px;position:absolute;top:calc(100% + 7px);right:0}.reports-live-report{gap:22px;padding:clamp(20px,2.5vw,32px);display:grid}.reports-live-report-head{justify-content:space-between;align-items:center;gap:20px;display:flex}.reports-live-brand{align-items:center;gap:12px;display:flex}.reports-live-brand>img{object-fit:contain;width:38px;height:38px}.reports-live-brand>span,.reports-live-period,.reports-data-viewer>header>span,.reports-chart-panel header>span{gap:3px;display:grid}.reports-live-brand strong{color:var(--ink);font-size:19px}.reports-live-brand small,.reports-live-period small,.reports-data-viewer header small,.reports-chart-panel header small{color:var(--muted);font-size:12px;font-weight:750}.reports-live-period{text-align:right}.reports-live-period strong{color:var(--ink);font-size:13px}.reports-live-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.reports-live-kpis article{background:var(--panel);border:1px solid var(--soft-line);border-radius:16px;gap:7px;padding:15px;display:grid}.reports-live-kpis small,.reports-live-kpis span{color:var(--muted);font-size:11px;font-weight:800}.reports-live-kpis strong{color:var(--ink);font-size:28px;line-height:1}.reports-live-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.reports-chart-panel{border:1px solid var(--soft-line);border-radius:18px;gap:14px;min-height:248px;padding:17px;display:grid}.reports-chart-panel header{justify-content:space-between;align-items:start;gap:12px;display:flex}.reports-chart-panel header strong{color:var(--ink);font-size:14px}.reports-chart-panel header>b{color:var(--report-accent);font-size:18px}.reports-vertical-bars{border-bottom:1px solid var(--soft-line);justify-content:space-around;align-items:end;gap:10px;height:166px;padding:14px 8px 0;display:flex}.reports-vertical-bars>span{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;max-width:38px;height:100%;display:flex}.reports-vertical-bars i{background:color-mix(in srgb, var(--report-accent) 28%, var(--panel));border-radius:7px 7px 3px 3px;width:100%;min-height:8px;display:block}.reports-attendance-chart .reports-vertical-bars>span:last-child i{background:var(--report-accent)}.reports-coverage-chart .reports-vertical-bars i{background:color-mix(in srgb, var(--positive) 28%, var(--panel))}.reports-coverage-chart .reports-vertical-bars>span:last-child i{background:var(--positive)}.reports-vertical-bars small{color:var(--muted);margin-top:7px;font-size:10px;font-weight:850}.reports-vertical-bars.coverage i{height:calc((var(--value,97) - 80) * 1%)}.reports-workforce-visual{grid-template-columns:150px minmax(0,1fr);align-items:center;gap:24px;display:grid}.reports-workforce-donut{aspect-ratio:1;background:conic-gradient(var(--report-accent) 0 72%, #0ea5a4 72% 84%, #f59e0b 84% 100%);border-radius:50%;justify-content:center;align-items:center;display:flex;position:relative}.reports-workforce-donut:after{background:var(--panel);border-radius:inherit;content:"";position:absolute;inset:22px}.reports-workforce-donut span{text-align:center;z-index:1;display:grid;position:relative}.reports-workforce-donut strong{color:var(--ink);font-size:25px}.reports-workforce-donut small{color:var(--muted);font-size:10px;font-weight:800}.reports-chart-legend{gap:12px;display:grid}.reports-chart-legend>span{grid-template-columns:9px minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.reports-chart-legend i{background:var(--report-accent);border-radius:50%;width:9px;height:9px}.reports-chart-legend>span:nth-child(2) i{background:#0ea5a4}.reports-chart-legend>span:nth-child(3) i{background:#f59e0b}.reports-chart-legend small,.reports-chart-legend strong{color:var(--muted);font-size:11px;font-weight:850}.reports-horizontal-bars{gap:12px;display:grid}.reports-horizontal-bars>span{grid-template-columns:104px minmax(0,1fr) 18px;align-items:center;gap:10px;display:grid}.reports-horizontal-bars small,.reports-horizontal-bars strong{color:var(--muted);font-size:10px;font-weight:850}.reports-horizontal-bars>span>i{background:color-mix(in srgb, var(--report-accent) 8%, var(--row));border-radius:999px;height:8px;display:block;overflow:hidden}.reports-horizontal-bars b{background:var(--report-accent);border-radius:inherit;height:100%;display:block}.reports-data-viewer{gap:14px;min-width:0;padding:0;display:grid;overflow:hidden}.reports-data-viewer>header{justify-content:space-between;align-items:center;gap:14px;padding:18px 18px 0;display:flex}.reports-data-viewer>header strong{color:var(--ink);font-size:16px}.reports-data-scroll{overflow-x:auto}.reports-data-viewer table{border-collapse:collapse;width:100%;min-width:920px}.reports-data-viewer th,.reports-data-viewer td{border-top:1px solid var(--soft-line);color:var(--muted);text-align:left;white-space:nowrap;padding:12px 16px;font-size:12px;font-weight:750}.reports-data-viewer th{background:color-mix(in srgb, var(--report-accent) 5%, var(--row));color:var(--ink);font-size:11px;font-weight:950}.reports-data-viewer td strong{color:var(--ink)}.reports-data-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}@media (max-width:980px){.reports-demo-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reports-report-toolbar,.reports-data-pair{grid-template-columns:1fr}.reports-live-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:620px){.reports-demo-date-grid,.reports-demo-topic-grid{grid-template-columns:1fr}.reports-demo-actions,.reports-live-report-head,.reports-report-filters{flex-direction:column;align-items:stretch}.reports-live-period{text-align:left}.reports-live-kpis,.reports-live-chart-grid{grid-template-columns:1fr}.reports-workforce-visual{grid-template-columns:120px minmax(0,1fr)}}.reports-list-card{min-width:0}.reports-side-stack{gap:18px;display:grid}.reports-table-head,.reports-table-row{grid-template-columns:minmax(260px,1.3fr) minmax(120px,.58fr) minmax(100px,.45fr) minmax(90px,.45fr) minmax(92px,.4fr);align-items:center;gap:14px;display:grid}.reports-table-head{color:var(--muted);padding:6px 14px 10px;font-size:12px;font-weight:950}.reports-row-list,.reports-audit-list{gap:10px;display:grid}.reports-table-row,.reports-audit-row{background:var(--row);border:1px solid var(--soft-line);border-radius:18px;padding:14px}.reports-table-row>span:not(.row-main){color:var(--muted);font-size:13px;font-weight:850}.reports-table-row small,.reports-audit-row small{color:var(--muted);margin-top:4px;font-size:12px;font-weight:850;line-height:1.35;display:block}.reports-signal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.reports-signal-card.warning{background:linear-gradient(180deg, color-mix(in srgb, var(--warning) 9%, var(--panel)), var(--panel));border-color:color-mix(in srgb, var(--warning) 24%, var(--soft-line))}.reports-signal-card.positive{background:linear-gradient(180deg, color-mix(in srgb, var(--positive) 9%, var(--panel)), var(--panel));border-color:color-mix(in srgb, var(--positive) 24%, var(--soft-line))}.reports-audit-row{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.student-reports-workspace{gap:18px;display:grid}.student-reports-workspace.embedded{margin-top:18px}.student-report-composer,.student-report-card{gap:16px;display:grid}.student-report-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.student-report-form-grid.text-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.student-report-form-grid label{color:var(--muted);gap:7px;font-size:.82rem;font-weight:800;display:grid}.student-report-form-grid input,.student-report-form-grid select,.student-report-form-grid textarea{background:var(--panel);border:1px solid var(--line);color:var(--ink);font:inherit;resize:vertical;border-radius:8px;outline:0;min-height:42px;padding:10px 12px}.student-report-sliders{gap:10px;display:grid}.student-report-slider{grid-template-columns:minmax(150px,.8fr) minmax(160px,1fr) 52px;align-items:center;gap:12px;display:grid}.student-report-slider span{gap:3px;min-width:0;display:grid}.student-report-slider strong{color:var(--ink)}.student-report-slider small,.student-report-slider em{color:var(--muted);font-style:normal}.student-report-slider input[type=range]{accent-color:var(--accent);width:100%}.student-report-list{gap:14px;display:grid}.student-report-card-head{justify-content:space-between;align-items:start;gap:12px;display:flex}.student-report-card-head h3{letter-spacing:0;margin:2px 0;font-size:1.15rem}.student-report-card-head p{color:var(--muted);margin:0}.student-report-notes{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.student-report-notes section{background:var(--panel);border:1px solid var(--soft-line);border-radius:8px;gap:6px;padding:12px;display:grid}.student-report-notes p{color:var(--muted);margin:0;line-height:1.45}.decision-row{grid-template-columns:auto minmax(0,1fr) auto}.report-card-setup-card{gap:16px;margin-top:18px;display:grid}.report-card-setup-card>.card-title{justify-content:space-between;align-items:center;gap:12px;display:flex}.report-card-setup-card>.card-title span{align-items:center;gap:8px;display:inline-flex}.report-card-template-summary{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.report-card-template-tile{background:var(--panel);border:1px solid var(--soft-line);box-shadow:var(--shadow-soft);color:var(--ink);cursor:pointer;text-align:left;border-radius:8px;gap:8px;min-height:150px;padding:16px;display:grid}.report-card-template-tile.active,.report-card-template-tile:hover{border-color:var(--accent)}.report-card-template-tile span,.report-card-template-tile small{color:var(--muted);font-size:12px;font-weight:850;line-height:1.35}.report-card-template-tile strong{font-size:1rem}.report-card-config-list{gap:12px;display:grid}.report-card-checkbox{color:var(--muted);align-items:center;gap:8px;min-height:38px;font-size:.84rem;font-weight:850;display:inline-flex}.report-card-checkbox input{accent-color:var(--accent);width:18px;height:18px}.report-card-preview-row{grid-template-columns:minmax(0,1fr) auto}.compact-select-label{color:var(--muted);gap:7px;margin:12px 0;font-size:.82rem;font-weight:850;display:grid}.compact-select-label select{background:var(--panel);border:1px solid var(--line);color:var(--ink);font:inherit;border-radius:8px;min-height:42px;padding:10px 12px}
