:root{color-scheme:dark;--font-peyda: "Peyda", sans-serif;--font-playfair: "Playfair Display", Georgia, serif;--font-site: var(--font-playfair);--font-sans: var(--font-site);--font-display: var(--font-site);--font-body: var(--font-site);--font-mono: var(--font-site);--text-xs: .75rem;--text-sm: .875rem;--text-md: 1rem;--text-lg: 1.125rem;--text-xl: clamp(1.25rem, 2vw, 1.5rem);--text-2xl: clamp(1.75rem, 4vw, 2.75rem);--text-hero: clamp(3.3rem, 10vw, 8.75rem);--leading-tight: .94;--leading-copy: 1.7;--tracking-label: .13em;--ink-950: #02040d;--ink-900: #050816;--ink-850: #080d1d;--ink-800: #0c1328;--ink-700: #121d38;--paper-100: #f5f9ff;--paper-200: #dce9f8;--paper-400: #99acc2;--cyan-300: #72edf2;--cyan-400: #35d7e3;--cyan-500: #10b8ca;--blue-400: #6897ff;--violet-400: #a899ff;--gold-300: #f5d98c;--gold-400: #dcb760;--green-300: #70e5b3;--red-300: #ff929e;--orange-300: #ffc47b;--color-page: var(--ink-950);--color-surface: var(--ink-850);--color-surface-raised: var(--ink-800);--color-text: var(--paper-100);--color-text-muted: var(--paper-400);--color-primary: var(--cyan-300);--color-primary-strong: var(--cyan-400);--color-achievement: var(--gold-300);--color-focus: #ffdb70;--color-success: var(--green-300);--color-warning: var(--orange-300);--color-danger: var(--red-300);--color-disabled: #5f6c7b;--color-border: rgb(190 220 255 / 14%);--color-border-strong: rgb(114 237 242 / 32%);--chart-1: var(--cyan-300);--chart-2: var(--blue-400);--chart-3: var(--violet-400);--chart-4: var(--gold-300);--chart-5: var(--green-300);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--radius-sm: .55rem;--radius-md: .9rem;--radius-lg: 1.35rem;--radius-xl: 2rem;--radius-pill: 999px;--border-hairline: 1px solid var(--color-border);--shadow-sm: 0 .75rem 2rem rgb(0 0 0 / 20%);--shadow-lg: 0 1.5rem 5rem rgb(0 0 0 / 45%);--glow-cyan: 0 0 3rem rgb(53 215 227 / 15%);--blur-glass: 18px;--duration-fast: .12s;--duration-normal: .22s;--duration-slow: .65s;--ease-standard: cubic-bezier(.2, .75, .25, 1);--ease-emphasized: cubic-bezier(.16, 1, .3, 1);--z-base: 0;--z-header: 30;--z-drawer: 60;--z-modal: 90;--z-toast: 120;--content-max: 80rem;--copy-max: 66ch}html:lang(fa){--font-site: var(--font-peyda)}html[data-theme=light] body.dashboard-body,html[data-theme=light] body[data-shell=auth]{--ink-950: #f4f8fc;--ink-900: #edf3f9;--ink-850: #ffffff;--ink-800: #f6f9fd;--ink-700: #e7eef7;--paper-100: #132238;--paper-200: #2a3b52;--paper-400: #5d6e84;--cyan-300: #087f91;--cyan-400: #006f82;--cyan-500: #005e70;--blue-400: #315fc7;--violet-400: #6252b3;--gold-300: #936f12;--gold-400: #76590d;--green-300: #08794f;--red-300: #b42c43;--orange-300: #a85b05;--color-page: var(--ink-950);--color-surface: var(--ink-850);--color-surface-raised: var(--ink-800);--color-text: var(--paper-100);--color-text-muted: var(--paper-400);--color-primary: var(--cyan-300);--color-primary-strong: var(--cyan-400);--color-achievement: var(--gold-300);--color-focus: #005e70;--color-success: var(--green-300);--color-warning: var(--orange-300);--color-danger: var(--red-300);--color-disabled: #718096;--color-border: rgb(19 34 56 / 15%);--color-border-strong: rgb(8 127 145 / 38%);--shadow-sm: 0 .75rem 2rem rgb(23 42 68 / 10%);--shadow-lg: 0 1.5rem 5rem rgb(23 42 68 / 17%);--glow-cyan: 0 0 3rem rgb(8 127 145 / 12%)}html[data-theme=light] body.dashboard-body--student{color-scheme:light;--ink-950: #f6f8ff;--ink-900: #f1f5ff;--ink-850: #ffffff;--ink-800: #f8faff;--ink-700: #e8eefc;--paper-100: #26324a;--paper-200: #3b4962;--paper-400: #5c6a82;--cyan-300: #176b73;--cyan-400: #0e5962;--cyan-500: #084b53;--gold-300: #795b16;--gold-400: #664a0d;--green-300: #176846;--red-300: #a52e3c;--orange-300: #805000;--color-page: #f6f8ff;--color-surface-section: #f1f5ff;--color-surface: #ffffff;--color-surface-raised: #f8faff;--color-text: #26324a;--color-text-muted: #5c6a82;--color-marble-background: #f6f8ff;--color-marble-blue: #d3e2ff;--color-marble-periwinkle: #a9b8ff;--color-marble-mineral: #c7b8f8;--color-marble-lavender: #d5c8ff;--color-marble-cyan: #cdeff5;--color-marble-brand: #788bff;--opacity-marble: .82;--color-primary: #176b73;--color-primary-strong: #0e5962;--color-focus: #075d64;--color-focus-ring: #075d64;--color-achievement: #795b16;--color-success: #176846;--color-warning: #805000;--color-danger: #a52e3c;--color-disabled: #6c777a;--color-border: #d5dff0;--color-border-strong: #7d8cad;--color-control-surface: #f8faff;--color-control-disabled-surface: #e9eef9;--color-control-hover: #edf2fc;--color-progress-track: #e1e9f8;--color-danger-surface: #f9e9e7;--color-danger-border: #c77c7e;--color-button-default-bg: #176b73;--color-button-default-fg: #ffffff;--color-button-default-hover: #0e5962;--color-button-secondary-bg: #edf2fc;--color-button-secondary-fg: #26324a;--color-button-secondary-border: #d5dff0;--color-button-outline-bg: transparent;--color-button-outline-fg: #3b4962;--color-button-outline-border: #7d8cad;--color-button-ghost-bg: transparent;--color-button-ghost-fg: #3b4962;--color-button-destructive-bg: #f9e9e7;--color-button-destructive-fg: #842634;--color-button-destructive-hover: #f3d9d6;--color-border-soft: #e4eaf6;--shadow-sm: 0 .25rem 1rem rgb(45 65 105 / 7%);--shadow-lg: 0 1rem 2.5rem rgb(45 65 105 / 12%);--shadow-dashboard-card: 0 .35rem 1.1rem rgb(45 65 105 / 7%);--shadow-dashboard-rail: 0 .2rem 1rem rgb(45 65 105 / 6%);--shadow-dashboard-dock: 0 .5rem 1.5rem rgb(45 65 105 / 14%);--glow-cyan: 0 0 2rem rgb(23 107 115 / 8%);--color-meteor: #657d79;--color-meteor-glow: rgb(23 107 115 / 18%);--opacity-meteor: .2;--opacity-meteor-static: .06;--opacity-nebula: .24}html[data-theme=dark] body.dashboard-body--student{--ink-950: #000;--ink-900: #030405;--ink-850: #050607;--ink-800: #090b0f;--ink-700: #101318;--paper-100: #f5f7fb;--paper-400: #a6afbc;--cyan-300: #9be9f0;--cyan-400: #45d5e1;--color-page: var(--ink-950);--color-surface: var(--ink-850);--color-surface-raised: var(--ink-800);--color-text: var(--paper-100);--color-text-muted: var(--paper-400);--color-primary: var(--cyan-300);--color-primary-strong: var(--cyan-400);--color-focus: #ffdf78;--color-border: rgb(245 247 251 / 10%);--color-border-strong: rgb(155 233 240 / 40%);--color-danger-surface: #48191e;--color-danger-border: rgb(255 146 158 / 42%);--color-control-surface: var(--color-surface-raised);--color-control-hover: color-mix( in srgb, var(--color-button-default-bg) 12%, var(--color-surface-raised) );--color-button-default-bg: #765619;--color-button-default-fg: #fff8e8;--color-button-default-hover: #927024;--color-button-secondary-bg: #292a2e;--color-button-secondary-fg: #ececef;--color-button-secondary-border: rgb(210 211 216 / 20%);--color-button-outline-bg: transparent;--color-button-outline-fg: #dedfe3;--color-button-outline-border: rgb(190 192 198 / 44%);--color-button-ghost-bg: transparent;--color-button-ghost-fg: #c7c9ce;--color-button-destructive-bg: var(--color-danger-surface);--color-button-destructive-fg: #ffd5d8;--color-button-destructive-hover: #5c2027;--shadow-sm: 0 .6rem 1.6rem rgb(0 0 0 / 36%);--shadow-lg: 0 1.4rem 4rem rgb(0 0 0 / 58%);--shadow-dashboard-card: 0 1rem 2.25rem rgb(0 0 0 / 48%), 0 0 1.25rem color-mix(in srgb, var(--color-button-default-bg) 8%, transparent);--shadow-dashboard-rail: 0 0 2.5rem color-mix(in srgb, var(--color-button-default-bg) 6%, transparent), inset -1px 0 color-mix(in srgb, var(--color-button-outline-fg) 10%, transparent);--color-meteor: color-mix(in srgb, var(--color-primary) 68%, var(--color-text-muted));--color-meteor-glow: color-mix(in srgb, var(--color-primary) 45%, transparent);--opacity-meteor: .68;--opacity-meteor-static: .14;--opacity-nebula: .26}*,*:before,*:after{box-sizing:border-box}html{min-width:20rem;overflow-x:clip;scroll-behavior:smooth;background:var(--color-page)}body{min-height:100vh;margin:0;overflow-x:hidden;background:radial-gradient(circle at 78% 5%,rgb(53 215 227 / 11%),transparent 32rem),radial-gradient(circle at 8% 52%,rgb(104 151 255 / 8%),transparent 28rem),linear-gradient(160deg,var(--ink-950),var(--ink-900) 46%,#060b19);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-md);line-height:var(--leading-copy);text-rendering:optimizeLegibility}body:before{position:fixed;z-index:-1;inset:0;background-image:radial-gradient(circle,rgb(255 255 255 / 44%) 0 1px,transparent 1.4px),radial-gradient(circle,rgb(114 237 242 / 25%) 0 1px,transparent 1.4px);background-position:0 0,3rem 2rem;background-size:8rem 8rem,11rem 11rem;content:"";-webkit-mask-image:linear-gradient(to bottom,black,transparent 80%);mask-image:linear-gradient(to bottom,black,transparent 80%);opacity:.3;pointer-events:none}html[data-theme=dark] body.dashboard-body--student:before{display:none}html[lang=fa] body{font-family:var(--font-sans)}html[lang=fa] h1,html[lang=fa] h2,html[lang=fa] h3{font-family:var(--font-sans);letter-spacing:0}input[type=email],input[type=url],[data-ltr]{direction:ltr;text-align:start;unicode-bidi:isolate}button,input,select,textarea{color:inherit;font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:var(--color-primary);text-underline-offset:.22em}a:hover{color:var(--paper-100)}button{cursor:pointer}button:disabled,input:disabled,select:disabled{cursor:not-allowed}img,svg{display:block;max-width:100%}h1,h2,h3,p{margin-block-start:0}h1,h2,h3{font-family:var(--font-display);font-weight:560;line-height:1.1;letter-spacing:-.025em}p{max-width:var(--copy-max)}::selection{background:var(--cyan-400);color:var(--ink-950)}:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}[hidden]{display:none!important}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.skip-link{position:fixed;z-index:var(--z-toast);inset-block-start:var(--space-3);inset-inline-start:var(--space-3);transform:translateY(-180%);border-radius:var(--radius-pill);background:var(--color-focus);color:var(--ink-950);padding:var(--space-3) var(--space-5);font-weight:800}.skip-link:focus{transform:none}.locale-status{position:fixed;z-index:var(--z-toast);inset-block-end:var(--space-5);inset-inline:var(--space-5);max-width:42rem;margin-inline:auto;border:1px solid var(--color-danger);border-radius:var(--radius-md);background:var(--ink-800);color:var(--paper-100);padding:var(--space-4);box-shadow:var(--shadow-lg)}.container{width:min(100% - clamp(2rem,8vw,8rem),var(--content-max));margin-inline:auto}.section{padding-block:clamp(var(--space-16),9vw,8rem)}.eyebrow{display:inline-flex;align-items:center;gap:var(--space-2);margin-block-end:var(--space-5);color:var(--color-primary);font-size:var(--text-xs);font-weight:800;letter-spacing:var(--tracking-label);text-transform:uppercase}.eyebrow:before{width:1.75rem;height:1px;background:currentcolor;content:""}html[lang=fa] .eyebrow{letter-spacing:0}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}.button,.icon-button{display:inline-flex;position:relative;min-height:2.75rem;align-items:center;justify-content:center;gap:var(--space-2);border:1px solid transparent;border-radius:var(--radius-pill);background:transparent;color:var(--color-text);font-weight:750;line-height:1;text-decoration:none;cursor:pointer;transition:transform var(--duration-fast) var(--ease-standard),border-color var(--duration-normal),background var(--duration-normal),color var(--duration-normal),box-shadow var(--duration-normal),opacity var(--duration-normal)}.button{padding:.85rem 1.35rem}.button--sm{min-height:2rem;border-radius:var(--radius-sm);gap:.375rem;padding:0 .75rem;font-size:.8125rem}.button--md{min-height:2.5rem;border-radius:var(--radius-md);gap:var(--space-2);padding:0 1rem;font-size:var(--text-sm)}.button--lg{min-height:3rem;border-radius:var(--radius-lg);gap:.625rem;padding:0 1.5rem;font-size:var(--text-md)}.button--icon{width:2.5rem;min-width:2.5rem;min-height:2.5rem;border-radius:var(--radius-md);gap:0;padding:0}.button svg,.button__icon{width:1rem;height:1rem;flex:0 0 auto;pointer-events:none}.icon-button{width:2.75rem;padding:0;border-color:var(--color-border)}.button:hover,.icon-button:hover{transform:translateY(-1px)}.button--primary{background:var(--color-primary);color:var(--ink-950);box-shadow:0 .75rem 2.5rem #35d7e32e}.button--secondary,.button--ghost{border-color:var(--color-border-strong);background:#72edf212}.button--danger{border-color:#ff929e66;background:#ff929e1a;color:var(--color-danger)}.button:disabled,.button[aria-disabled=true]{transform:none;border-color:transparent;background:#5f6c7b2e;color:var(--color-disabled);box-shadow:none}body.dashboard-body--student .button--default{background:var(--color-primary);color:var(--ink-950)}body.dashboard-body--student .button--outline{border-color:var(--color-border-strong);background:transparent;color:var(--color-text)}body.dashboard-body--student .button--ghost{background:transparent;color:var(--color-text)}body.dashboard-body--student .button--destructive{border-color:var(--color-danger-border, rgb(255 146 158 / 40%));background:var(--color-danger-surface, rgb(255 146 158 / 10%));color:var(--color-danger)}body.dashboard-body--student .button:disabled,body.dashboard-body--student .icon-button:disabled,body.dashboard-body--student .button[aria-disabled=true]{border-color:var(--color-border);background:color-mix(in srgb,var(--color-disabled) 16%,transparent);color:var(--color-disabled);box-shadow:none;cursor:not-allowed;opacity:.68}body.dashboard-body--student a.button[aria-disabled=true]{pointer-events:none}body.dashboard-body--student .button:active,body.dashboard-body--student .icon-button:active{transform:scale(.98)}.card{position:relative;overflow:hidden;border:var(--border-hairline);border-radius:var(--radius-lg);background:linear-gradient(145deg,#121d38db,#080d1deb);box-shadow:var(--shadow-sm)}.card--glass{background:#080d1db8;-webkit-backdrop-filter:blur(var(--blur-glass));backdrop-filter:blur(var(--blur-glass))}.card__body{padding:clamp(var(--space-5),4vw,var(--space-8))}.badge{display:inline-flex;align-items:center;gap:var(--space-2);border:var(--border-hairline);border-radius:var(--radius-pill);background:#ffffff0a;color:var(--color-text-muted);padding:var(--space-1) var(--space-3);font-size:var(--text-xs);font-weight:750}.badge:before{width:.45rem;height:.45rem;border-radius:50%;background:currentcolor;content:""}.badge--success{color:var(--color-success)}.badge--warning{color:var(--color-warning)}.badge--danger{color:var(--color-danger)}.badge--gold{color:var(--color-achievement)}.field{display:grid;gap:var(--space-2)}.field label,.field__label{color:var(--paper-200);font-size:var(--text-sm);font-weight:700}.field input,.field textarea,.field select,.search-field{width:100%;min-height:3rem;border:var(--border-hairline);border-radius:var(--radius-md);background:#02040d94;color:var(--color-text);padding:.75rem .9rem}.field input::placeholder,.field textarea::placeholder{color:#7689a1}.field [aria-invalid=true]{border-color:var(--color-danger)}.field__hint,.field__error{color:var(--color-text-muted);font-size:var(--text-xs)}.field__error{color:var(--color-danger)}.checkbox{display:flex;align-items:flex-start;gap:var(--space-3)}.checkbox input{width:1.1rem;height:1.1rem;margin-block-start:.3rem;accent-color:var(--cyan-400)}.segmented,.tabs{display:inline-flex;gap:var(--space-1);border:var(--border-hairline);border-radius:var(--radius-pill);background:#02040d85;padding:var(--space-1)}.segmented button,.tabs [role=tab]{min-height:2.4rem;border:0;border-radius:var(--radius-pill);background:transparent;color:var(--color-text-muted);padding-inline:var(--space-4)}.segmented [aria-pressed=true],.tabs [aria-selected=true]{background:var(--ink-700);color:var(--color-text)}.breadcrumbs ol,.pagination,.list-reset{display:flex;align-items:center;gap:var(--space-2);padding:0;margin:0;list-style:none}.breadcrumbs{color:var(--color-text-muted);font-size:var(--text-sm)}.breadcrumbs li:not(:last-child):after{margin-inline-start:var(--space-2);color:#61748d;content:"/"}.pagination button{width:2.5rem;height:2.5rem;border:var(--border-hairline);border-radius:var(--radius-sm);background:transparent;color:inherit}.pagination [aria-current=page]{border-color:var(--color-primary);background:#72edf21f}[dir=rtl] [data-directional-icon]{transform:scaleX(-1)}.table-wrap{overflow-x:auto;border:var(--border-hairline);border-radius:var(--radius-lg)}.data-table{width:100%;border-collapse:collapse;text-align:start}.data-table th,.data-table td{padding:var(--space-4) var(--space-5);border-block-end:var(--border-hairline);white-space:nowrap}.data-table th{color:var(--color-text-muted);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase}.data-table tr:last-child td{border-block-end:0}.modal{width:min(100% - 2rem,36rem);border:var(--border-hairline);border-radius:var(--radius-xl);background:var(--ink-800);color:var(--color-text);padding:0;box-shadow:var(--shadow-lg)}.modal::backdrop{background:#000208c7;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal__header,.modal__body,.modal__footer{padding:var(--space-6)}.modal__header,.modal__footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.modal__header{border-block-end:var(--border-hairline)}.modal__footer{border-block-start:var(--border-hairline);justify-content:flex-end}.drawer{position:fixed;z-index:var(--z-drawer);inset-block:0;inset-inline-end:0;width:min(28rem,100%);overflow-y:auto;border:0;border-inline-start:var(--border-hairline);background:var(--ink-800);box-shadow:var(--shadow-lg);transform:translate(105%);transition:transform var(--duration-normal) var(--ease-emphasized)}[dir=rtl] .drawer{transform:translate(-105%)}.drawer[data-open=true]{transform:none}.toast-region{position:fixed;z-index:var(--z-toast);inset-block-end:var(--space-5);inset-inline-end:var(--space-5);display:grid;width:min(24rem,calc(100% - 2rem));gap:var(--space-3)}.toast{border:var(--border-hairline);border-inline-start:3px solid var(--color-primary);border-radius:var(--radius-md);background:var(--ink-700);padding:var(--space-4);box-shadow:var(--shadow-lg)}.skeleton{overflow:hidden;border-radius:var(--radius-sm);background:var(--ink-700);color:transparent}.skeleton:after{display:block;width:45%;height:100%;animation:shimmer 1.5s infinite;background:linear-gradient(90deg,transparent,rgb(255 255 255 / 8%),transparent);content:""}.spinner{width:1.25rem;height:1.25rem;animation:spin .8s linear infinite;border:2px solid rgb(114 237 242 / 25%);border-block-start-color:var(--color-primary);border-radius:50%}.tooltip{position:relative}.tooltip:after{position:absolute;z-index:var(--z-drawer);inset-block-end:calc(100% + var(--space-2));inset-inline-start:50%;width:max-content;max-width:14rem;transform:translate(-50%);border-radius:var(--radius-sm);background:var(--paper-100);color:var(--ink-950);padding:var(--space-2) var(--space-3);content:attr(data-tooltip);font-size:var(--text-xs);opacity:0;pointer-events:none;transition:opacity var(--duration-fast)}.tooltip:hover:after,.tooltip:focus-visible:after{opacity:1}.state-panel{display:grid;min-height:13rem;place-items:center;border:1px dashed var(--color-border-strong);border-radius:var(--radius-lg);color:var(--color-text-muted);padding:var(--space-8);text-align:center}.state-panel--error{border-color:#ff929e6b}.state-panel--success{border-color:#70e5b36b}.permission-editor__list{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-block:var(--space-4)}.permission-editor__detail{min-width:0}.permission-editor__group{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);margin-block:var(--space-4);padding:var(--space-4)}.permission-editor__option{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:var(--space-3);margin-block:var(--space-3);cursor:pointer}.permission-editor__option small{grid-column:2;color:var(--color-text-muted)}.permission-editor__option input:disabled{cursor:not-allowed}.impersonation-banner{position:sticky;inset-block-start:0;z-index:var(--z-drawer);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-5);background:#7e1736;color:#fff;border-block-end:3px solid #ffc857}.impersonation-banner[hidden]{display:none}@keyframes shimmer{to{transform:translate(225%)}}@keyframes spin{to{transform:rotate(1turn)}}.site-header{position:absolute;z-index:var(--z-header);inset:0 0 auto;display:flex;width:min(100% - clamp(2rem,6vw,6rem),90rem);min-height:5.25rem;align-items:center;justify-content:space-between;gap:var(--space-5);margin-inline:auto}.brand{display:inline-flex;align-items:center;gap:var(--space-3);color:inherit;font-family:var(--font-display);font-size:var(--text-lg);font-weight:700;text-decoration:none}.brand__logo{display:block;inline-size:clamp(6rem,12vw,10rem);block-size:2.25rem;border-radius:.35rem;object-fit:cover;object-position:center 48%}.header-actions{display:flex;align-items:center;gap:var(--space-3)}.language-select{min-height:2.75rem;border:var(--border-hairline);border-radius:var(--radius-pill);background:#02040d75;color:var(--color-text);padding-inline:var(--space-4)}body[data-shell=public]{background:#000}body[data-shell=public]:before{opacity:.12}body[data-shell=public] .site-header{border-block-end:0;background:transparent}.public-hero{position:relative;isolation:isolate;display:flex;min-height:100svh;align-items:center;justify-content:center;overflow:hidden;padding-block:clamp(5rem,11vw,9rem);background:#000}.public-hero:after{position:absolute;z-index:-1;inset:0;background:linear-gradient(to bottom,transparent 72%,rgb(0 0 0 / 30%));content:"";pointer-events:none}.hero-shader{position:absolute;z-index:-2;inset:0;display:block;width:100%;height:100%;opacity:1}.public-hero__copy{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;text-align:center}.public-hero h1{max-width:16ch;margin-block:0 var(--space-6);color:#fff;font-size:clamp(2.5rem,5vw,4.8rem);font-weight:760;letter-spacing:-.075em;line-height:.84;transform:translateY(-8.5rem);text-wrap:balance}.public-hero h1 span{display:block;color:inherit}.hero-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:center;margin-block-start:var(--space-7, 1.75rem)}.liquid-button{position:relative;min-height:3.5rem;overflow:hidden;border-color:#ffffff7f;background:linear-gradient(145deg,#ffffff38,#ffffff0a),#0000003d;color:#fff;padding-inline:2rem;box-shadow:inset 1px 1px 1px #ffffff61,inset -1px -1px 1px #00000073,0 0 2rem #ffffff1a;-webkit-backdrop-filter:blur(16px) saturate(150%);backdrop-filter:blur(16px) saturate(150%)}.liquid-button:before{position:absolute;inset:-100% 35%;transform:rotate(22deg);background:linear-gradient(to right,transparent,rgb(255 255 255 / 35%),transparent);content:"";transition:transform .55s var(--ease-emphasized)}.liquid-button:hover:before{transform:translate(220%) rotate(22deg)}body[data-shell=public] .section{border-block-start:1px solid rgb(255 255 255 / 9%)}.neon-flow{position:relative;isolation:isolate;overflow:clip;background:#000}.neon-flow-section{position:relative;isolation:isolate;width:100%;max-width:none;min-height:100svh;margin-inline:0;overflow:hidden;padding-inline:max(clamp(1rem,4vw,4rem),calc((100% - var(--content-max)) / 2))}.neon-flow__stage{position:absolute;z-index:0;inset:0 0 auto;width:100%;height:100%;overflow:hidden;pointer-events:auto;touch-action:none}.neon-flow__canvas{position:absolute;inset:0;display:block;width:100%!important;height:100%!important;opacity:0;transition:opacity .5s ease}.neon-flow-section[data-neon-ready=true] .neon-flow__canvas{opacity:.72}.neon-flow__content{position:relative;z-index:1}.neon-flow-section>:not(.neon-flow__stage){position:relative;z-index:1}body[data-shell=public] .cta-panel{border-color:#ffffff21;border-radius:0;background:linear-gradient(145deg,#ffffff0f,#ffffff03);box-shadow:none}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:var(--space-8);margin-block-end:var(--space-10)}.section-heading h2{max-width:15ch;margin:0;font-size:var(--text-2xl)}.section-heading p{margin:0;color:var(--color-text-muted)}.feature-grid{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:clamp(2rem,4vw,4rem);padding-block:var(--space-10)}.gradient-card{position:relative;width:min(100%,20rem);height:25rem;flex:0 1 20rem;color:#fff;transition:transform .5s var(--ease-emphasized)}.gradient-card:hover{transform:translateY(-.25rem)}.gradient-card__panel,.gradient-card__glow{position:absolute;inset-block:0;inset-inline-start:3.125rem;width:50%;transform:skew(15deg);border-radius:var(--radius-md);background:linear-gradient(315deg,var(--gradient-from),var(--gradient-to));transition:inset-inline-start .5s var(--ease-emphasized),width .5s var(--ease-emphasized),transform .5s var(--ease-emphasized)}.gradient-card__glow{filter:blur(30px)}.gradient-card:hover :is(.gradient-card__panel,.gradient-card__glow),.gradient-card:focus-within :is(.gradient-card__panel,.gradient-card__glow){inset-inline-start:1.25rem;width:calc(100% - 5.625rem);transform:skew(0)}.gradient-card__blobs{position:absolute;z-index:2;inset:0;pointer-events:none}.gradient-card__blobs span{position:absolute;width:0;height:0;border-radius:var(--radius-md);background:#ffffff1a;opacity:0;box-shadow:0 5px 15px #00000014;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:gradient-card-blob 2s ease-in-out infinite;transition:all .5s var(--ease-emphasized)}.gradient-card__blobs span:first-child{inset-block-start:0;inset-inline-start:0}.gradient-card__blobs span:last-child{inset-inline-end:0;inset-block-end:0;animation-delay:-1s}.gradient-card:hover .gradient-card__blobs span:first-child,.gradient-card:focus-within .gradient-card__blobs span:first-child{inset-block-start:-3.125rem;inset-inline-start:3.125rem;width:6.25rem;height:6.25rem;opacity:1}.gradient-card:hover .gradient-card__blobs span:last-child,.gradient-card:focus-within .gradient-card__blobs span:last-child{inset-inline-end:3.125rem;inset-block-end:-3.125rem;width:6.25rem;height:6.25rem;opacity:1}.gradient-card__content{position:absolute;z-index:3;inset-block-start:50%;inset-inline-start:0;width:calc(100% - 1.5rem);transform:translateY(-50%);border:1px solid rgb(255 255 255 / 10%);border-radius:var(--radius-md);background:#ffffff0d;padding:1.5rem 2.5rem;box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:inset-inline-start .5s var(--ease-emphasized),padding .5s var(--ease-emphasized)}.gradient-card:hover .gradient-card__content,.gradient-card:focus-within .gradient-card__content{inset-inline-start:-1.5625rem;padding-block:3.75rem}.feature-card__index{color:#ffffffb8;font-family:var(--font-mono);font-size:var(--text-xs)}.gradient-card h3{margin-block:var(--space-5) var(--space-3);font-size:var(--text-xl)}.gradient-card p{min-height:7.5rem;margin-block:0 var(--space-4);color:#ffffffb8;line-height:1.7}.gradient-card__content>a{display:inline-block;border:1px solid transparent;border-radius:var(--radius-sm);background:#fff;color:#050816;padding:.65rem .9rem;font-weight:800;text-decoration:none;transition:background var(--duration-normal),border-color var(--duration-normal),box-shadow var(--duration-normal)}.gradient-card__content>a:hover,.gradient-card__content>a:focus-visible{border-color:#ff005866;background:#ffcf4d;box-shadow:var(--shadow-md)}@keyframes gradient-card-blob{0%,to{transform:translateY(10px)}50%{transform:translate(-10px)}}.mission-line{position:relative;display:grid;grid-template-columns:repeat(5,1fr);gap:var(--space-4);padding-block-start:var(--space-8)}.mission-line:before{position:absolute;inset-block-start:0;inset-inline:5% 5%;height:1px;background:linear-gradient(90deg,var(--cyan-400),var(--blue-400),var(--gold-400));content:""}.mission-step{position:relative;padding-block-start:var(--space-4)}.mission-step:before{position:absolute;inset-block-start:calc(var(--space-8) * -1 - .25rem);inset-inline-start:0;width:.55rem;height:.55rem;border-radius:50%;background:var(--color-primary);box-shadow:0 0 1rem currentcolor;content:""}.mission-step strong{display:block;font-family:var(--font-display)}.mission-step span{color:var(--color-text-muted);font-size:var(--text-sm)}.folder-story{direction:ltr;display:grid;width:min(100%,var(--content-max));min-height:calc(100svh - 2 * var(--space-16));grid-template-columns:minmax(34rem,1.25fr) minmax(19rem,.75fr);align-items:center;gap:clamp(2rem,5vw,6rem);margin-inline:auto}.folder-gallery{--gallery-spread: 7.25rem;position:relative;width:100%;min-width:0;height:37rem}.folder-gallery__scene{position:relative;width:min(100%,43rem);height:34rem;margin-inline:auto;perspective:75rem}.folder-gallery__back{position:absolute;z-index:1;inset:auto 50% 2rem;width:20rem;height:14rem;transform:translate(-50%);filter:drop-shadow(0 1.5rem 2rem rgb(0 0 0 / 75%));transition:opacity .42s ease,transform .52s var(--ease-emphasized)}.folder-gallery__back span:first-child{position:absolute;inset:0 auto auto 0;width:8rem;height:2.6rem;border:1px solid rgb(255 255 255 / 10%);border-block-end:0;border-radius:.8rem .8rem 0 0;background:linear-gradient(to top,#1e1e1e,#2a2a2a)}.folder-gallery__back span:nth-child(2){position:absolute;inset:2rem 0 0;border:1px solid rgb(255 255 255 / 10%);border-radius:0 .8rem .8rem;background:linear-gradient(#1e1e1e,#090909);box-shadow:inset 0 0 2.5rem #000c}.folder-gallery__back span:last-child{position:absolute;inset:2.65rem .5rem .5rem;border-radius:.5rem;background:#000;box-shadow:inset 0 .75rem 1.5rem #000}.folder-gallery__photos{position:absolute;z-index:2;inset:auto 50% 3.2rem;width:0;height:0}.folder-gallery__photo{--photo-x: calc(var(--offset) * .22rem);--photo-y: calc(var(--offset) * -.3rem);--photo-rotate: calc(var(--offset) * 3deg);--photo-scale: calc(1 - var(--photo-index) * .012);position:absolute;z-index:calc(var(--photo-index) + 3);inset:auto auto 0;width:14rem;height:18rem;overflow:hidden;border:1px solid rgb(255 255 255 / 20%);border-radius:.8rem;transform:translate3d(calc(-50% + var(--photo-x) + var(--drag-x, 0px)),calc(var(--photo-y) + var(--drag-y, 0px)),0) rotate(var(--photo-rotate)) scale(var(--photo-scale));transform-origin:bottom center;box-shadow:0 1.25rem 2.5rem #0000008c;pointer-events:none;touch-action:none;transition:transform .62s cubic-bezier(.2,.8,.2,1);-webkit-user-select:none;user-select:none}.folder-gallery__photo img{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none}.folder-gallery[data-open=true] .folder-gallery__photo{--photo-x: calc(var(--offset) * var(--gallery-spread));--photo-y: -8.2rem;--photo-rotate: 0deg;--photo-scale: 1.03;z-index:calc(var(--photo-index) + 10);cursor:grab;pointer-events:auto}.folder-gallery[data-open=true] .folder-gallery__photo:hover,.folder-gallery[data-open=true] .folder-gallery__photo:focus-visible{z-index:30;outline:2px solid rgb(103 232 249 / 65%);outline-offset:.2rem}.folder-gallery[data-open=true] .folder-gallery__photo.is-dragging{z-index:40;cursor:grabbing;transition:none}.folder-gallery__front{position:absolute;z-index:5;inset:auto 50% 0;display:flex;width:21.25rem;height:11rem;transform:translate(-50%);transform-origin:bottom center;align-items:flex-end;justify-content:center;overflow:hidden;border:1px solid rgb(255 255 255 / 20%);border-radius:1rem;background:linear-gradient(#2a2a2a,#101010);color:#ffffffe5;padding:0 2rem 2rem;box-shadow:inset 0 2px #ffffff1a,0 -1.25rem 2.5rem #000000bf;cursor:pointer;transition:opacity .42s ease,transform .52s var(--ease-emphasized)}.folder-gallery__front:before{position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,rgb(255 255 255 / 45%),transparent);content:""}.folder-gallery__front span{border:1px solid rgb(255 255 255 / 9%);border-radius:.5rem;background:#000000d1;padding:.65rem 1.2rem;box-shadow:inset 0 1px #000;font-size:var(--text-sm);font-weight:650;letter-spacing:.025em}.folder-gallery__front:hover,.folder-gallery__front:focus-visible{transform:translate(-50%) translateY(.6rem) rotateX(-25deg)}.folder-gallery[data-open=true] :is(.folder-gallery__back,.folder-gallery__front){opacity:0;pointer-events:none}.folder-gallery[data-open=true] .folder-gallery__back,.folder-gallery[data-open=true] .folder-gallery__front{transform:translate(-50%) scale(.9)}.folder-gallery__hint{position:absolute;inset:auto 50% 0;transform:translate(-50%,2rem);border:1px solid rgb(255 255 255 / 10%);border-radius:var(--radius-pill);background:#ffffff0d;color:#ffffff85;padding:.75rem 1.25rem;font-size:var(--text-xs);font-weight:650;letter-spacing:.12em;opacity:0;pointer-events:none;text-transform:uppercase;white-space:nowrap;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:opacity .35s ease,transform .45s var(--ease-emphasized)}.folder-gallery[data-open=true] .folder-gallery__hint{transform:translate(-50%);opacity:1;pointer-events:auto}.folder-story__copy{direction:ltr;max-width:34rem}.folder-story__copy h2{max-width:11ch;margin-block:var(--space-3) var(--space-5);font-size:clamp(2.4rem,4.6vw,5rem);line-height:.98;text-wrap:balance}.folder-story__copy>p:not(.eyebrow){max-width:36rem;margin-block:0 var(--space-7);color:var(--color-text-muted);font-size:var(--text-lg);line-height:1.75}[dir=rtl] .folder-story__copy{direction:rtl;text-align:right}.cta-panel{display:grid;grid-template-columns:1fr auto;align-items:center;gap:var(--space-8);border-color:var(--color-border-strong);padding:clamp(var(--space-8),6vw,var(--space-16))}.cta-panel h2{max-width:18ch;margin:0;font-size:var(--text-2xl)}.site-footer{position:relative;isolation:isolate;width:100%;overflow:hidden;border-block-start:1px solid rgb(255 255 255 / 10%);background:radial-gradient(circle at 18% 0%,rgb(34 211 238 / 10%),transparent 28rem),radial-gradient(circle at 82% 100%,rgb(168 85 247 / 9%),transparent 30rem),#02030a;color:var(--color-text-muted);font-size:var(--text-sm)}.site-footer__glow{position:absolute;z-index:-1;inset:-1px 8% auto;height:1px;background:linear-gradient(90deg,transparent,#22d3ee,#8b5cf6,#fb7185,transparent);box-shadow:0 0 2rem #22d3ee73}.site-footer__inner,.site-footer__bottom{width:min(100% - clamp(2rem,8vw,8rem),var(--content-max));margin-inline:auto}.site-footer__inner{display:grid;grid-template-columns:minmax(14rem,1.25fr) minmax(9rem,.55fr) minmax(18rem,1fr);gap:clamp(2.5rem,7vw,7rem);padding-block:clamp(3.5rem,7vw,6rem)}.site-footer__brand p{max-width:24rem;margin-block:var(--space-5) 0;color:#ffffff94;font-size:var(--text-lg);line-height:1.65}.site-footer__nav{display:grid;align-content:start;gap:var(--space-3)}.site-footer__nav p,.site-footer__action>p{margin:0 0 var(--space-2);color:#ffffffeb;font-family:var(--font-display);font-weight:700}.site-footer__nav a{width:fit-content;color:var(--color-text-muted);text-decoration:none;transition:color var(--duration-normal),transform var(--duration-normal)}.site-footer__nav a:hover,.site-footer__nav a:focus-visible{transform:translate(.2rem);color:var(--color-primary)}[dir=rtl] .site-footer__nav a:hover,[dir=rtl] .site-footer__nav a:focus-visible{transform:translate(-.2rem)}.site-footer__action{align-self:start;border:1px solid rgb(255 255 255 / 10%);border-radius:var(--radius-lg);background:linear-gradient(145deg,#ffffff12,#ffffff05);padding:var(--space-6);box-shadow:inset 0 1px #ffffff12;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.site-footer__action>div{display:flex;flex-wrap:wrap;gap:var(--space-3)}.site-footer__bottom{display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);border-block-start:1px solid rgb(255 255 255 / 8%);padding-block:var(--space-6);color:#ffffff6b}.dashboard-body{background:radial-gradient(circle at 78% 5%,rgb(53 215 227 / 10%),transparent 30rem),radial-gradient(circle at 8% 52%,rgb(104 151 255 / 7%),transparent 28rem),var(--color-page)}.dashboard-body--student{isolation:isolate}html[data-theme=dark] body.dashboard-body--student{background:var(--color-page)}html[data-theme=dark] body.dashboard-body--student .student-dashboard-hero{background:color-mix(in srgb,var(--color-surface) 74%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}html[data-theme=dark] body.dashboard-body--student .dashboard-header,html[data-theme=dark] body.dashboard-body--student .dashboard-rail{background:radial-gradient(ellipse at 100% 0%,color-mix(in srgb,var(--color-button-default-bg) 7%,transparent),transparent 28rem),var(--color-surface);box-shadow:var(--shadow-dashboard-rail)}html[data-theme=dark] body.dashboard-body--student .dashboard-header{background:var(--color-surface)}html[data-theme=dark] body.dashboard-body--student .dashboard-nav a[aria-current=page]{border:1px solid color-mix(in srgb,var(--color-button-default-bg) 30%,transparent);background:color-mix(in srgb,var(--color-button-default-bg) 13%,var(--color-surface-raised));color:var(--color-text);box-shadow:inset 3px 0 var(--color-button-default-bg),0 .5rem 1.5rem #0000002e}html[data-theme=dark] body.dashboard-body--student .dashboard-nav a:hover{background:var(--color-control-hover)}html[data-theme=dark] body.dashboard-body--student .dashboard-nav a{color:var(--color-button-ghost-fg)}html[data-theme=dark] body.dashboard-body--student .dashboard-nav a[aria-current=page]{box-shadow:inset 2px 0 var(--color-button-default-bg)}html[data-theme=dark][dir=rtl] body.dashboard-body--student .dashboard-nav a[aria-current=page]{box-shadow:inset -3px 0 var(--color-button-default-bg),0 .5rem 1.5rem #0000002e}html[data-theme=dark] body.dashboard-body--student .dashboard-nav a[aria-current=page]>span:first-child{border-color:color-mix(in srgb,var(--color-button-default-bg) 46%,transparent);background:color-mix(in srgb,var(--color-button-default-bg) 18%,var(--color-surface));color:#f5d98c}html[data-theme=dark] body.dashboard-body--student .dashboard-header select,html[data-theme=dark] body.dashboard-body--student .field input,html[data-theme=dark] body.dashboard-body--student .field textarea,html[data-theme=dark] body.dashboard-body--student .field select,html[data-theme=dark] body.dashboard-body--student .search-field,html[data-theme=dark] body.dashboard-body--student .segmented,html[data-theme=dark] body.dashboard-body--student .tabs{border-color:var(--color-border);background:var(--color-control-surface);color:var(--color-text)}html[data-theme=dark] body.dashboard-body--student .field input::placeholder,html[data-theme=dark] body.dashboard-body--student .field textarea::placeholder{color:var(--color-text-muted);opacity:.82}html[data-theme=dark] body.dashboard-body--student .segmented [aria-pressed=true],html[data-theme=dark] body.dashboard-body--student .tabs [aria-selected=true]{background:var(--color-page);color:var(--color-text)}html[data-theme=dark] body.dashboard-body--student .modal,html[data-theme=dark] body.dashboard-body--student .drawer,html[data-theme=dark] body.dashboard-body--student .toast,html[data-theme=dark] body.dashboard-body--student [role=listbox],html[data-theme=dark] body.dashboard-body--student [role=menu]{border-color:var(--color-border);background:var(--color-surface-raised);color:var(--color-text)}html[data-theme=dark] body.dashboard-body--student .button--primary,html[data-theme=dark] body.dashboard-body--student .button--default{background:var(--color-button-default-bg);color:var(--color-button-default-fg);box-shadow:0 .55rem 1.5rem color-mix(in srgb,var(--color-primary) 12%,transparent)}html[data-theme=dark] body.dashboard-body--student .button--secondary{border-color:var(--color-border);background:var(--color-button-secondary-bg);color:var(--color-button-secondary-fg)}html[data-theme=dark] body.dashboard-body--student .button--outline{border-color:var(--color-border-strong);background:var(--color-button-outline-bg);color:var(--color-button-outline-fg)}html[data-theme=dark] body.dashboard-body--student .button--ghost{background:var(--color-button-ghost-bg);color:var(--color-button-ghost-fg)}html[data-theme=dark] body.dashboard-body--student .button--destructive,html[data-theme=dark] body.dashboard-body--student .button--danger{border-color:var(--color-danger-border);background:var(--color-button-destructive-bg);color:var(--color-button-destructive-fg)}html[data-theme=dark] body.dashboard-body--student .button--primary:hover,html[data-theme=dark] body.dashboard-body--student .button--default:hover{background:var(--color-button-default-hover)}html[data-theme=dark] body.dashboard-body--student .button--secondary:hover,html[data-theme=dark] body.dashboard-body--student .button--outline:hover,html[data-theme=dark] body.dashboard-body--student .button--ghost:hover{background:var(--color-control-hover)}html[data-theme=dark] body.dashboard-body--student .button--secondary{border-color:var(--color-button-secondary-border)}html[data-theme=dark] body.dashboard-body--student .button--outline{border-color:var(--color-button-outline-border)}html[data-theme=dark] body.dashboard-body--student .button--destructive:hover,html[data-theme=dark] body.dashboard-body--student .button--danger:hover{background:var(--color-button-destructive-hover)}html[data-theme=dark] body.dashboard-body--student .tooltip:after{background:var(--color-surface-raised);color:var(--color-text);box-shadow:var(--shadow-sm)}html[data-theme=light] body.dashboard-body--student{background:var(--color-page)}html[data-theme=light] body.dashboard-body--student:before{display:none}html[data-theme=light] body.dashboard-body--student .dashboard-header,html[data-theme=light] body.dashboard-body--student .dashboard-rail{border-color:var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-dashboard-rail)}html[data-theme=light] body.dashboard-body--student .dashboard-header{background:color-mix(in srgb,var(--color-surface) 96%,transparent)}html[data-theme=light] body.dashboard-body--student .dashboard-rail{background:var(--color-surface-section)}html[data-theme=light] body.dashboard-body--student .dashboard-header__orbit{border-color:color-mix(in srgb,var(--color-primary) 8%,transparent);background:radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--color-primary) 3%,transparent),transparent 46%);box-shadow:none;opacity:.36}html[data-theme=light] body.dashboard-body--student .dashboard-nav a{color:var(--color-text-muted)}html[data-theme=light] body.dashboard-body--student .dashboard-nav a:hover{background:var(--color-control-hover);color:var(--color-text)}html[data-theme=light] body.dashboard-body--student .dashboard-nav a[aria-current=page]{border:1px solid color-mix(in srgb,var(--color-primary) 24%,var(--color-border));background:color-mix(in srgb,var(--color-primary) 8%,var(--color-surface));color:var(--color-primary-strong);box-shadow:inset 2px 0 var(--color-primary)}html[data-theme=light][dir=rtl] body.dashboard-body--student .dashboard-nav a[aria-current=page]{box-shadow:inset -2px 0 var(--color-primary)}html[data-theme=light] body.dashboard-body--student .dashboard-nav a[aria-current=page]>span:first-child{border-color:color-mix(in srgb,var(--color-primary) 25%,var(--color-border));background:color-mix(in srgb,var(--color-primary) 10%,var(--color-surface));color:var(--color-primary-strong)}html[data-theme=light] body.dashboard-body--student .dashboard-header select,html[data-theme=light] body.dashboard-body--student .field input,html[data-theme=light] body.dashboard-body--student .field textarea,html[data-theme=light] body.dashboard-body--student .field select,html[data-theme=light] body.dashboard-body--student .search-field,html[data-theme=light] body.dashboard-body--student .segmented,html[data-theme=light] body.dashboard-body--student .tabs{border-color:var(--color-border-strong);background:var(--color-control-surface);color:var(--color-text);color-scheme:light}html[data-theme=light] body.dashboard-body--student .field input::placeholder,html[data-theme=light] body.dashboard-body--student .field textarea::placeholder{color:var(--color-text-muted);opacity:1}html[data-theme=light] body.dashboard-body--student .field input:hover,html[data-theme=light] body.dashboard-body--student .field textarea:hover,html[data-theme=light] body.dashboard-body--student .field select:hover,html[data-theme=light] body.dashboard-body--student .search-field:hover{border-color:color-mix(in srgb,var(--color-primary) 58%,var(--color-border))}html[data-theme=light] body.dashboard-body--student .field input:focus-visible,html[data-theme=light] body.dashboard-body--student .field textarea:focus-visible,html[data-theme=light] body.dashboard-body--student .field select:focus-visible,html[data-theme=light] body.dashboard-body--student .search-field:focus-visible,html[data-theme=light] body.dashboard-body--student .dashboard-header select:focus-visible{border-color:var(--color-focus);outline:2px solid color-mix(in srgb,var(--color-focus) 36%,transparent);outline-offset:2px;box-shadow:0 0 0 1px var(--color-control-surface)}html[data-theme=light] body.dashboard-body--student .field input:disabled,html[data-theme=light] body.dashboard-body--student .field textarea:disabled,html[data-theme=light] body.dashboard-body--student .field select:disabled{border-color:var(--color-border);background:var(--color-control-disabled-surface);color:var(--color-disabled)}html[data-theme=light] body.dashboard-body--student .field :is(input,textarea,select)[aria-invalid=true]{border-color:var(--color-danger);background:color-mix(in srgb,var(--color-danger) 4%,var(--color-control-surface))}html[data-theme=light] body.dashboard-body--student .segmented [aria-pressed=true],html[data-theme=light] body.dashboard-body--student .tabs [aria-selected=true]{background:color-mix(in srgb,var(--color-primary) 10%,var(--color-surface));color:var(--color-primary-strong)}html[data-theme=light] body.dashboard-body--student .modal,html[data-theme=light] body.dashboard-body--student .drawer,html[data-theme=light] body.dashboard-body--student .toast,html[data-theme=light] body.dashboard-body--student [role=listbox],html[data-theme=light] body.dashboard-body--student [role=menu]{border-color:var(--color-border);background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-lg)}html[data-theme=light] body.dashboard-body--student .button--primary,html[data-theme=light] body.dashboard-body--student .button--default{background:var(--color-button-default-bg);color:var(--color-button-default-fg);box-shadow:0 .25rem .75rem #176b7329}html[data-theme=light] body.dashboard-body--student .button--primary:hover,html[data-theme=light] body.dashboard-body--student .button--default:hover{background:var(--color-button-default-hover)}html[data-theme=light] body.dashboard-body--student .button--secondary{border-color:var(--color-button-secondary-border);background:var(--color-button-secondary-bg);color:var(--color-button-secondary-fg)}html[data-theme=light] body.dashboard-body--student .button--outline{border-color:var(--color-button-outline-border);background:var(--color-button-outline-bg);color:var(--color-button-outline-fg)}html[data-theme=light] body.dashboard-body--student .button--ghost{background:var(--color-button-ghost-bg);color:var(--color-button-ghost-fg)}html[data-theme=light] body.dashboard-body--student .button--secondary:hover,html[data-theme=light] body.dashboard-body--student .button--outline:hover,html[data-theme=light] body.dashboard-body--student .button--ghost:hover,html[data-theme=light] body.dashboard-body--student .icon-button:hover{background:var(--color-control-hover)}html[data-theme=light] body.dashboard-body--student .button--destructive,html[data-theme=light] body.dashboard-body--student .button--danger{border-color:var(--color-danger-border);background:var(--color-button-destructive-bg);color:var(--color-button-destructive-fg)}html[data-theme=light] body.dashboard-body--student .button--destructive:hover,html[data-theme=light] body.dashboard-body--student .button--danger:hover{background:var(--color-button-destructive-hover)}html[data-theme=light] body.dashboard-body--student .tooltip:after{border:1px solid var(--color-border);background:var(--color-surface-raised);color:var(--color-text);box-shadow:var(--shadow-sm)}html[data-theme=light] body.dashboard-body--student .quick-access-dock{border-color:var(--color-border-strong);background:color-mix(in srgb,var(--color-surface) 96%,transparent);box-shadow:var(--shadow-dashboard-dock),inset 0 1px 0 var(--color-surface)}html[data-theme=light] body.dashboard-body--student .quick-access-dock:before{border-color:color-mix(in srgb,var(--color-primary) 20%,transparent);opacity:.42}html[data-theme=light] body.dashboard-body--student .quick-access-dock__toolbar{border-color:var(--color-border-soft)}html[data-theme=light] body.dashboard-body--student .quick-access-dock__item[aria-current=page]{color:var(--color-primary-strong)}html[data-theme=light] body.dashboard-body--student .student-dashboard-hero{border-color:var(--color-border);background:color-mix(in srgb,var(--color-surface) 95%,transparent);box-shadow:var(--shadow-dashboard-card)}html[data-theme=light] body.dashboard-body--student .card,html[data-theme=light] body.dashboard-body--student .metric,html[data-theme=light] body.dashboard-body--student .student-dashboard-card{border-color:var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-dashboard-card)}html[data-theme=light] body.dashboard-body--student .student-dashboard-grid .student-dashboard-card{background:var(--color-surface)}html[data-theme=light] body.dashboard-body--student .student-dashboard-progress{background:var(--color-progress-track)}html[data-theme=light] body.dashboard-body--student .badge,html[data-theme=light] body.dashboard-body--student .student-dashboard-card .badge{border-color:var(--color-border);background:var(--color-surface-raised)}html[data-theme=light] body.dashboard-body--student .student-dashboard-nebula{background:radial-gradient(ellipse 44% 58% at 4% 12%,color-mix(in srgb,var(--color-marble-periwinkle) 48%,transparent),transparent 100%),radial-gradient(ellipse 52% 64% at 104% 68%,color-mix(in srgb,var(--color-marble-blue) 76%,transparent),transparent 100%),radial-gradient(ellipse 42% 52% at 48% 108%,color-mix(in srgb,var(--color-marble-lavender) 43%,transparent),transparent 100%),radial-gradient(ellipse 36% 42% at 73% 22%,color-mix(in srgb,var(--color-marble-cyan) 35%,transparent),transparent 100%),var(--color-page);filter:none;opacity:1}html[data-theme=light] body.dashboard-body--student .student-dashboard-nebula--ready{opacity:1}html[data-theme=light] body.dashboard-body--student .student-meteors-host{position:relative;isolation:isolate;overflow:hidden}html[data-theme=light] body.dashboard-body--student .student-meteors-host>:not(.student-meteors){position:relative;z-index:1}html[data-theme=light] body.dashboard-body--student .student-meteors{display:block}html[data-theme=light] body.dashboard-body--student .student-meteors__streak{filter:saturate(.45)}.dashboard-header{position:sticky;inset-block-start:0;width:100%;min-height:4.5rem;border-block-end:var(--border-hairline);background:color-mix(in srgb,var(--color-surface) 88%,transparent);padding-inline:var(--space-5);-webkit-backdrop-filter:blur(var(--blur-glass));backdrop-filter:blur(var(--blur-glass))}.dashboard-header__context{display:flex;min-width:0;align-items:center;gap:var(--space-4)}.dashboard-header__context p{overflow:hidden;margin:0;color:var(--color-text-muted);font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap}.dashboard-header__identity{display:none}.dashboard-sidebar-toggle{width:2.5rem;min-width:2.5rem;min-height:2.5rem;border-radius:var(--radius-md);font-size:1rem}body.dashboard-body--student .dashboard-header{isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr) minmax(10rem,24rem) minmax(0,1fr);align-items:center;gap:var(--space-4);box-shadow:0 1px color-mix(in srgb,var(--color-border) 76%,transparent)}body.dashboard-body--student .dashboard-header>:not(.dashboard-header__orbit){position:relative;z-index:1}body.dashboard-body--student .dashboard-header__orbit{position:absolute;z-index:0;inset-block-start:50%;inset-inline-start:52%;width:min(42rem,66vw);aspect-ratio:2.75;transform:translate(-50%,-50%) rotate(-9deg);border:1px solid color-mix(in srgb,var(--color-primary) 19%,transparent);border-radius:50%;background:radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--color-primary) 9%,transparent),transparent 46%),linear-gradient(90deg,transparent,color-mix(in srgb,var(--color-primary) 7%,transparent),transparent);box-shadow:0 0 3rem color-mix(in srgb,var(--color-primary) 9%,transparent);opacity:.7;pointer-events:none;animation:student-header-orbit 12s var(--ease-standard) infinite alternate}body.dashboard-body--student .dashboard-header__context{justify-self:start;gap:var(--space-2)}body.dashboard-body--student .dashboard-header__context [data-route-context]{display:none}body.dashboard-body--student .dashboard-header__brand{transition:color var(--duration-normal),transform var(--duration-fast) var(--ease-standard)}body.dashboard-body--student .dashboard-header__brand:hover{color:var(--color-primary);transform:translateY(-1px)}body.dashboard-body--student .dashboard-header__brand .brand__logo{inline-size:8rem;block-size:1.95rem}body.dashboard-body--student .dashboard-header__identity{display:inline-flex;min-width:0;max-width:100%;align-items:center;justify-self:center;gap:var(--space-2);border-inline:1px solid color-mix(in srgb,var(--color-border) 70%,transparent);color:var(--color-text);padding-inline:var(--space-5)}body.dashboard-body--student .dashboard-header__identity p{overflow:hidden;max-width:100%;margin:0;font-family:var(--font-display);font-size:var(--text-sm);font-weight:700;line-height:1.2;text-align:center;text-overflow:ellipsis;white-space:nowrap}body.dashboard-body--student .dashboard-header__actions{justify-self:end;gap:var(--space-2)}body.dashboard-body--student .dashboard-header__actions select,body.dashboard-body--student .dashboard-sidebar-toggle{min-height:2.5rem;border-color:color-mix(in srgb,var(--color-border) 88%,transparent);background:color-mix(in srgb,var(--color-surface-raised) 74%,transparent);transition:transform var(--duration-fast) var(--ease-standard),border-color var(--duration-normal),background var(--duration-normal),box-shadow var(--duration-normal)}body.dashboard-body--student .dashboard-header__actions select:hover,body.dashboard-body--student .dashboard-header__actions select:focus-visible,body.dashboard-body--student .dashboard-sidebar-toggle:hover,body.dashboard-body--student .dashboard-sidebar-toggle:focus-visible{border-color:var(--color-border-strong);background:color-mix(in srgb,var(--color-primary) 10%,var(--color-surface-raised));box-shadow:0 0 1.25rem color-mix(in srgb,var(--color-primary) 12%,transparent)}body.dashboard-body--student .dashboard-sidebar-toggle[data-sidebar-state=collapsed]{border-color:color-mix(in srgb,var(--color-primary) 58%,var(--color-border));background:color-mix(in srgb,var(--color-primary) 14%,var(--color-surface-raised));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-primary) 18%,transparent)}body.dashboard-body--student .dashboard-sidebar-toggle__icon{display:block;transition:transform var(--duration-normal) var(--ease-standard)}body.dashboard-body--student .dashboard-sidebar-toggle[data-sidebar-state=collapsed] .dashboard-sidebar-toggle__icon{transform:rotate(-90deg)}body.dashboard-body--student .quick-access-dock{--quick-access-dock-safe-left: env(safe-area-inset-left, 0px);--quick-access-dock-safe-right: env(safe-area-inset-right, 0px);--quick-access-dock-safe-top: env(safe-area-inset-top, 0px);--quick-access-dock-safe-bottom: env(safe-area-inset-bottom, 0px);position:fixed;z-index:18;display:grid;width:max-content;min-width:min(12rem,calc(100vw - 2rem));max-width:min(30rem,calc(100vw - 2rem));overflow:visible;border:1px solid color-mix(in srgb,var(--color-border-strong) 78%,transparent);border-radius:1.2rem;background:color-mix(in srgb,var(--color-surface-raised) 88%,transparent);box-shadow:0 1rem 2.5rem #0000002e,inset 0 1px #ffffff24;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);touch-action:auto}body.dashboard-body--student .quick-access-dock:before{position:absolute;z-index:-1;inset:-.42rem;border:1px dashed color-mix(in srgb,var(--color-primary) 34%,transparent);border-radius:1.55rem;content:"";opacity:.62;pointer-events:none}body.dashboard-body--student .quick-access-dock__toolbar{display:flex;min-height:1.85rem;align-items:center;justify-content:space-between;padding-inline:var(--space-3);border-block-end:1px solid color-mix(in srgb,var(--color-border) 70%,transparent)}body.dashboard-body--student .quick-access-dock__toolbar-actions{display:inline-flex;gap:.15rem}body.dashboard-body--student .quick-access-dock__handle,body.dashboard-body--student .quick-access-dock__reset,body.dashboard-body--student .quick-access-dock__close,body.dashboard-body--student .quick-access-dock__open{display:inline-flex;min-height:1.7rem;align-items:center;justify-content:center;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);cursor:grab;font:inherit;transition:background-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard)}body.dashboard-body--student .quick-access-dock__handle{gap:.35rem;padding-inline:.2rem;font-size:.72rem;letter-spacing:.02em;touch-action:none}body.dashboard-body--student .quick-access-dock__handle>span:first-child{font-size:1rem;line-height:1}body.dashboard-body--student .quick-access-dock__reset,body.dashboard-body--student .quick-access-dock__close{width:1.7rem;cursor:pointer}body.dashboard-body--student .quick-access-dock__close{font-size:1.05rem}body.dashboard-body--student .quick-access-dock__handle:hover,body.dashboard-body--student .quick-access-dock__handle:focus-visible,body.dashboard-body--student .quick-access-dock__reset:hover,body.dashboard-body--student .quick-access-dock__reset:focus-visible,body.dashboard-body--student .quick-access-dock__close:hover,body.dashboard-body--student .quick-access-dock__close:focus-visible,body.dashboard-body--student .quick-access-dock__open:hover,body.dashboard-body--student .quick-access-dock__open:focus-visible{background:var(--color-control-hover);color:var(--color-text)}body.dashboard-body--student .quick-access-dock[data-dragging=true] .quick-access-dock__handle{cursor:grabbing;transform:scale(.96)}body.dashboard-body--student .quick-access-dock[data-move-mode=true]{outline:2px solid var(--color-focus-ring);outline-offset:3px}body.dashboard-body--student .quick-access-dock__items{display:grid;grid-template-columns:repeat(auto-fit,minmax(3.8rem,1fr));gap:.15rem;padding:.3rem}body.dashboard-body--student .quick-access-dock__open{display:none}body.dashboard-body--student .quick-access-dock[data-collapsed=true]{min-width:3.25rem;border-radius:50%}body.dashboard-body--student .quick-access-dock[data-collapsed=true]:before{inset:-.26rem;border-radius:50%}body.dashboard-body--student .quick-access-dock[data-collapsed=true] .quick-access-dock__toolbar,body.dashboard-body--student .quick-access-dock[data-collapsed=true] .quick-access-dock__items{display:none}body.dashboard-body--student .quick-access-dock[data-collapsed=true] .quick-access-dock__open{display:grid;width:3.25rem;min-height:3.25rem;place-items:center;cursor:pointer;color:var(--color-primary);font-size:1.1rem}body.dashboard-body--student .quick-access-dock__item{position:relative;display:grid;min-width:0;min-height:3.7rem;place-items:center;border:1px solid transparent;border-radius:.9rem;color:var(--color-text-muted);text-align:center;text-decoration:none;transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard)}body.dashboard-body--student .quick-access-dock__item:hover,body.dashboard-body--student .quick-access-dock__item:focus-visible{border-color:color-mix(in srgb,var(--color-primary) 32%,var(--color-border));background:var(--color-control-hover);color:var(--color-text);transform:translateY(-2px)}body.dashboard-body--student .quick-access-dock__item[aria-current=page]{border-color:color-mix(in srgb,var(--color-primary) 52%,var(--color-border));background:color-mix(in srgb,var(--color-primary) 13%,var(--color-surface));color:var(--color-primary);box-shadow:inset 0 -2px var(--color-primary)}body.dashboard-body--student .quick-access-dock__icon{display:grid;width:1.65rem;height:1.65rem;place-items:center;border-radius:50%;background:color-mix(in srgb,currentColor 10%,transparent);font-size:1.05rem;line-height:1}body.dashboard-body--student .quick-access-dock__item-label{max-width:100%;overflow:hidden;font-size:.62rem;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}html[data-theme=dark] body.dashboard-body--student .quick-access-dock{border-color:color-mix(in srgb,var(--color-button-default-bg) 26%,var(--color-border));background:color-mix(in srgb,var(--color-surface-raised) 91%,transparent);box-shadow:0 1rem 2.5rem #0006,inset 0 1px #ffffff14}html[data-theme=dark] body.dashboard-body--student .quick-access-dock__item[aria-current=page]{color:#f5d98c}@keyframes student-header-orbit{0%{opacity:.48;transform:translate(-51%,-50%) rotate(-9deg)}to{opacity:.78;transform:translate(-49%,-50%) rotate(-6deg)}}.dashboard-layout{position:relative;z-index:1;display:grid;min-height:calc(100vh - 4.5rem);grid-template-columns:17rem minmax(0,1fr);transition:grid-template-columns var(--duration-normal) var(--ease-standard)}.dashboard-rail{position:relative;border-inline-end:var(--border-hairline);background:color-mix(in srgb,var(--color-surface) 78%,transparent)}.dashboard-rail__inner{position:sticky;inset-block-start:4.5rem;display:flex;height:calc(100vh - 4.5rem);height:calc(100dvh - 4.5rem);min-height:0;flex-direction:column;overflow-y:auto;overscroll-behavior:contain;padding:var(--space-5);scrollbar-width:thin;transition:opacity var(--duration-fast),padding-inline var(--duration-normal),border-color var(--duration-normal)}body.dashboard-body--student[data-sidebar-collapsed=true] .dashboard-layout{grid-template-columns:0 minmax(0,1fr)}body.dashboard-body--student[data-sidebar-collapsed=true] .dashboard-rail{min-inline-size:0;width:0;overflow:hidden;border-inline-end-color:transparent;padding-inline:0;opacity:0;visibility:hidden}.rail-profile{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:var(--space-3);border-block-end:var(--border-hairline);padding-block-end:var(--space-5)}.rail-profile .avatar{box-shadow:0 0 1.25rem color-mix(in srgb,var(--color-primary) 16%,transparent)}.avatar{display:grid;width:2.75rem;height:2.75rem;place-items:center;border:1px solid var(--color-border-strong);border-radius:50%;background:var(--ink-700);color:var(--color-primary);font-weight:800}.rail-profile strong,.rail-profile span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rail-profile span{color:var(--color-text-muted);font-size:var(--text-xs)}.dashboard-nav{display:grid;gap:var(--space-1);padding-block:var(--space-5)}.dashboard-nav a{display:flex;align-items:center;gap:var(--space-3);border-radius:var(--radius-md);color:var(--color-text-muted);padding:var(--space-3) var(--space-4);text-decoration:none;transition:color var(--duration-normal),background-color var(--duration-normal),box-shadow var(--duration-normal)}.dashboard-nav a>span:first-child{display:grid;width:2rem;height:2rem;flex:0 0 2rem;place-items:center;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--color-text-muted);transition:color var(--duration-normal),background-color var(--duration-normal),border-color var(--duration-normal)}.dashboard-nav__unavailable{display:grid;min-width:0;grid-template-columns:2rem minmax(0,1fr);align-items:center;gap:var(--space-3);border-radius:var(--radius-md);color:var(--color-text-muted);padding:var(--space-3) var(--space-4);opacity:.68}.dashboard-nav__unavailable>span:first-child{display:grid;width:2rem;height:2rem;place-items:center}.dashboard-nav__unavailable small{grid-column:2;color:var(--color-text-muted);font-size:.68rem}@media(min-width:48.001rem){body.dashboard-body--student{display:flex;height:100vh;height:100dvh;min-height:0;flex-direction:column;overflow:hidden}body.dashboard-body--student .dashboard-header{position:relative;inset-block-start:auto;flex:0 0 auto;min-height:calc(4.5rem + env(safe-area-inset-top,0px));padding-block-start:env(safe-area-inset-top,0px);padding-inline-start:calc(var(--space-5) + max(env(safe-area-inset-left,0px),env(safe-area-inset-right,0px)));padding-inline-end:calc(var(--space-5) + max(env(safe-area-inset-left,0px),env(safe-area-inset-right,0px)))}body.dashboard-body--student .impersonation-banner{flex:0 0 auto}body.dashboard-body--student .dashboard-layout{width:100%;min-height:0;height:auto;flex:1 1 0;grid-template-rows:minmax(0,1fr)}body.dashboard-body--student .dashboard-rail{min-height:0;height:100%;overflow:hidden}body.dashboard-body--student .dashboard-rail__inner{position:static;display:flex;flex-direction:column;height:100%;min-height:0;overflow-x:hidden;overflow-y:hidden;scrollbar-gutter:stable;padding:var(--space-4);padding-block-end:calc(var(--space-4) + env(safe-area-inset-bottom,0px))}body.dashboard-body--student .rail-profile{flex:0 0 auto}body.dashboard-body--student .dashboard-nav{flex:1 1 0;min-width:0;min-height:0;align-content:start;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;gap:.25rem;padding-block:.75rem}body.dashboard-body--student .rail-footer{flex:0 0 auto;margin-block-start:0;padding-block-start:.65rem;line-height:1.45}body.dashboard-body--student .dashboard-main{height:100%;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding-block-end:calc(clamp(var(--space-5),4vw,var(--space-10)) + env(safe-area-inset-bottom,0px))}body.dashboard-body--student .dashboard-nav a,body.dashboard-body--student .dashboard-nav__unavailable{gap:.65rem;padding:.5rem .75rem}body.dashboard-body--student .dashboard-nav a{font-size:.96rem}body.dashboard-body--student .dashboard-nav__unavailable small{line-height:1.3}}@media(min-width:48.001rem)and (max-height:43rem){body.dashboard-body--student .dashboard-rail__inner{padding:.75rem}body.dashboard-body--student .rail-profile{gap:.55rem;padding-block-end:.65rem}body.dashboard-body--student .rail-profile .avatar{width:2.25rem;height:2.25rem}body.dashboard-body--student .dashboard-nav{gap:.15rem;padding-block:.4rem}body.dashboard-body--student .dashboard-nav a,body.dashboard-body--student .dashboard-nav__unavailable{gap:.4rem;padding:.3rem .45rem}body.dashboard-body--student .dashboard-nav a>span:first-child,body.dashboard-body--student .dashboard-nav__unavailable>span:first-child{width:1.75rem;height:1.75rem;flex-basis:1.75rem}body.dashboard-body--student .dashboard-nav__unavailable{grid-template-columns:1.75rem minmax(0,1fr)}body.dashboard-body--student .rail-footer{padding-block-start:.45rem;line-height:1.25}}.dashboard-nav a:hover,.dashboard-nav a[aria-current=page]{background:#72edf214;color:var(--color-text)}.dashboard-nav a[aria-current=page]{box-shadow:inset 2px 0 var(--color-primary)}[dir=rtl] .dashboard-nav a[aria-current=page]{box-shadow:inset -2px 0 var(--color-primary)}.rail-footer{margin-block-start:auto;border-block-start:var(--border-hairline);color:var(--color-text-muted);font-size:var(--text-xs);line-height:1.8;padding-block-start:var(--space-4)}.dashboard-main{min-width:0;padding:clamp(var(--space-5),4vw,var(--space-10))}.dashboard-page{width:min(100%,78rem);margin-inline:auto;animation:page-enter var(--duration-slow) var(--ease-emphasized) both}.theme-select{min-height:2.75rem;border:var(--border-hairline);border-radius:var(--radius-pill);background:color-mix(in srgb,var(--color-surface) 82%,transparent);color:var(--color-text);padding-inline:var(--space-3)}.growth-path{max-inline-size:76rem;margin-inline:auto}.student-dashboard-hero{isolation:isolate;overflow:hidden;border:1px solid var(--color-border);background:var(--color-surface)}.student-dashboard-hero__copy{position:relative;z-index:1}.student-dashboard-nebula{position:fixed;z-index:0;inset:0;overflow:hidden;background:radial-gradient(circle at 30% 40%,color-mix(in srgb,var(--color-primary) 16%,transparent),transparent 28%),radial-gradient(circle at 68% 60%,color-mix(in srgb,var(--color-achievement) 12%,transparent),transparent 32%);filter:blur(2rem);opacity:.75;pointer-events:none}.student-dashboard-nebula--ready{filter:none;opacity:1}.student-dashboard-nebula__canvas{display:none;inline-size:100%;block-size:100%;pointer-events:none}.student-dashboard-nebula--ready .student-dashboard-nebula__canvas{display:block}.student-dashboard-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--space-4);margin-block-start:var(--space-5)}.student-dashboard-card{grid-column:span 4;min-inline-size:0;border:1px solid var(--color-border);background:var(--color-surface);box-shadow:inset 0 1px color-mix(in srgb,var(--color-text) 6%,transparent)}.student-dashboard-grid .student-dashboard-card,body.dashboard-body--student .card,body.dashboard-body--student .metric,body.dashboard-body--student .student-dashboard-card{background:var(--color-page)}html[data-theme=dark] body.dashboard-body--student .card,html[data-theme=dark] body.dashboard-body--student .metric,html[data-theme=dark] body.dashboard-body--student .student-dashboard-card{border-color:var(--color-border);background:var(--color-surface-raised);box-shadow:inset 0 1px color-mix(in srgb,var(--color-text) 4%,transparent),var(--shadow-dashboard-card)}.student-dashboard-grid .student-overview__metrics{grid-template-columns:repeat(auto-fit,minmax(min(100%,8rem),1fr))}.student-dashboard-card--growth,.student-dashboard-card--next{grid-column:span 6}.student-dashboard-card h2{margin-block-end:var(--space-2);font-size:var(--text-lg)}.student-dashboard-card--growth,.student-dashboard-card--ideas,.student-dashboard-card--activity{position:relative}.student-dashboard-card--growth:after,.student-dashboard-card--ideas:after,.student-dashboard-card--activity:after{position:absolute;inset-block-start:var(--space-4);inset-inline-end:var(--space-4);color:var(--color-text-muted);font-size:var(--text-sm);opacity:.55;pointer-events:none}.student-dashboard-card--growth:after{content:"✧"}.student-dashboard-card--activity:after{content:"◌"}.student-dashboard-progress{overflow:hidden;block-size:.5rem;border-radius:var(--radius-pill);background:var(--color-surface-raised)}.student-dashboard-progress>span{display:block;block-size:100%;border-radius:inherit;background:var(--color-primary);transition:inline-size var(--duration-normal) var(--ease-standard)}.student-dashboard-card .button{margin-block-start:var(--space-4)}html[lang=fa] .student-dashboard-card h2,html[lang=fa] .student-dashboard-card p{letter-spacing:0}@media(max-width:64rem){.student-dashboard-card,.student-dashboard-card--growth,.student-dashboard-card--next{grid-column:span 6}}@media(max-width:34rem){.student-dashboard-grid{grid-template-columns:1fr}.student-dashboard-card,.student-dashboard-card--growth,.student-dashboard-card--next{grid-column:auto}.journey-progress{grid-template-columns:1fr}.journey-progress__indicators{width:100%}}@media(prefers-reduced-motion:reduce){.student-dashboard-progress>span,.progress-ring__value{transition:none}}html[data-theme=dark] body.dashboard-body--student .student-meteors-host{position:relative;isolation:isolate;overflow:hidden}html[data-theme=dark] body.dashboard-body--student .student-meteors-host>:not(.student-meteors){position:relative;z-index:1}.student-meteors{position:absolute;z-index:0;inset:0;display:none;overflow:hidden;pointer-events:none}html[data-theme=dark] body.dashboard-body--student .student-meteors{display:block}.student-meteors__streak{position:absolute;inset-block-start:-10%;left:var(--meteor-left);width:6rem;height:1px;transform-origin:center;background:linear-gradient(to left,transparent,color-mix(in srgb,var(--color-meteor) 58%,transparent) 56%,var(--color-meteor));opacity:0;animation:student-dashboard-meteor var(--meteor-duration) linear var(--meteor-delay) infinite;animation-play-state:paused}.student-meteors[data-visible=true] .student-meteors__streak{animation-play-state:running}.student-meteors__head{position:absolute;inset-block-start:-2px;width:4px;height:4px;border-radius:50%;background:var(--color-primary);box-shadow:0 0 7px 1px var(--color-meteor-glow)}[dir=rtl] .student-meteors__head{inset-inline-end:-1px}[dir=ltr] .student-meteors__head{inset-inline-start:-1px}@keyframes student-dashboard-meteor{0%{transform:rotate(215deg) translate(0);opacity:0}10%{opacity:var(--opacity-meteor)}78%{opacity:var(--opacity-meteor)}to{transform:rotate(215deg) translate(-520px);opacity:0}}@media(prefers-reduced-motion:reduce){.student-meteors__streak{animation:none;transform:rotate(215deg) translate(-.5rem);opacity:var(--opacity-meteor-static)}}.growth-path__eyebrow{margin:0 0 .5rem;color:var(--color-brand, var(--color-primary));font-size:.8125rem;font-weight:700}.growth-path h1,.growth-path h2,.growth-path h3,.growth-path p{letter-spacing:0}.growth-path h1{margin:0;font-size:clamp(1.65rem,3vw,2.4rem);line-height:1.25}.growth-path__intro{max-inline-size:42rem;margin:.75rem 0 1.75rem;color:var(--color-text-muted);line-height:1.7}body.dashboard-body--student .growth-path__idea-select{display:grid;max-inline-size:34rem;gap:.4rem;margin-block:0 .5rem}body.dashboard-body--student .growth-path__idea-select select{min-block-size:2.75rem;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-raised);color:var(--color-text);padding-inline:.85rem}body.dashboard-body--student .growth-path__idea-select select:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}body.dashboard-body--student .growth-path__selected-idea{display:flex;flex-wrap:wrap;gap:.35rem;align-items:baseline;margin-block:0 .75rem;color:var(--color-text-muted);font-size:.875rem}body.dashboard-body--student .growth-path__selected-idea bdi{color:var(--color-text);font-weight:700}.growth-path__journey{display:flex;align-items:flex-start;margin:0;padding:1rem 0 1.25rem;list-style:none;overflow-x:auto;overscroll-behavior-inline:contain}.growth-path__stage{display:flex;flex:1 0 8.4rem;align-items:center;min-inline-size:0}.growth-path__stage-button{display:grid;grid-template-columns:2.25rem minmax(5.5rem,1fr);gap:.6rem;align-items:center;inline-size:100%;min-block-size:4.5rem;padding:.5rem;border:0;border-radius:var(--radius-lg);background:transparent;color:var(--color-text);cursor:pointer;text-align:start}.growth-path__stage-button:hover{background:var(--color-surface-raised)}.growth-path__stage-button:focus-visible{outline:2px solid var(--color-brand, var(--color-primary));outline-offset:3px}.growth-path__marker{display:grid;place-items:center;inline-size:2.25rem;block-size:2.25rem;border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface);color:var(--color-text-muted);font-weight:700}.growth-path__stage-copy{display:grid;gap:.1rem;font-size:.8rem;line-height:1.35}.growth-path__stage-copy strong{color:var(--color-text);font-size:.75rem}.growth-path__connector{flex:1 0 1.25rem;block-size:1px;background:var(--color-border)}.growth-path__stage--completed .growth-path__marker,.growth-path__stage--approved .growth-path__marker,.growth-path__stage--completed+.growth-path__stage .growth-path__connector{border-color:var(--color-success);background:var(--color-success);color:var(--color-on-success, #fff)}.growth-path__stage--active .growth-path__marker{border:2px solid var(--color-brand, var(--color-primary));box-shadow:0 0 0 4px color-mix(in srgb,var(--color-brand, var(--color-primary)) 18%,transparent);color:var(--color-brand, var(--color-primary))}.growth-path__stage--locked .growth-path__marker{background:var(--color-surface-raised);color:var(--color-text-muted)}.growth-path__stage--ai-revision .growth-path__marker,.growth-path__stage--mentor-revision .growth-path__marker,.growth-path__stage--review-rejected .growth-path__marker{border-color:var(--color-danger);color:var(--color-danger)}.growth-path__stage--pending-approval .growth-path__marker{border-color:var(--color-warning);color:var(--color-warning)}.growth-path__progress{overflow:hidden;block-size:.5rem;border-radius:999px;background:var(--color-surface-raised)}.growth-path__progress-fill{display:block;block-size:100%;border-radius:inherit;background:var(--color-brand, var(--color-primary));transition:inline-size .2s ease}.growth-path__progress-label{margin:.55rem 0 1.5rem;color:var(--color-text-muted);font-size:.875rem}.growth-path__detail{border-color:var(--color-border);background:var(--color-surface)}.growth-path__detail-heading{display:grid;gap:.45rem}.growth-path__detail h2{margin:0;font-size:1.25rem}.growth-path__detail h3{margin:1.5rem 0 .65rem;font-size:1rem}.growth-path__status{inline-size:fit-content;color:var(--color-text-muted);font-size:.8125rem;font-weight:700}.growth-path__status--completed,.growth-path__status--approved{color:var(--color-success)}.growth-path__status--active{color:var(--color-brand, var(--color-primary))}.growth-path__status--ai-revision,.growth-path__status--mentor-revision,.growth-path__status--review-rejected{color:var(--color-danger)}.growth-path__status--pending-approval{color:var(--color-warning)}.growth-path__status--locked,.growth-path__status--unavailable{color:var(--color-text-muted)}body.dashboard-body--student .growth-path__guidance{margin-block-start:1rem;border-block-start:1px solid var(--color-border);padding-block-start:.75rem}body.dashboard-body--student .growth-path__guidance summary{inline-size:fit-content;color:var(--color-primary-strong, var(--color-primary));cursor:pointer;font-weight:700}body.dashboard-body--student .growth-path__guidance summary:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}body.dashboard-body--student .growth-path__guidance-list{display:grid;grid-template-columns:minmax(8rem,.7fr) minmax(0,2fr);gap:.45rem 1rem;margin:.85rem 0 0}body.dashboard-body--student .growth-path__guidance-list dt{color:var(--color-text);font-weight:700}body.dashboard-body--student .growth-path__guidance-list dd{min-inline-size:0;margin:0;color:var(--color-text-muted);overflow-wrap:anywhere}body.dashboard-body--student .growth-path__action-note{margin-block-start:1rem;color:var(--color-text-muted)}.growth-path__requirements{display:grid;gap:.55rem;margin:0;padding:0;list-style:none}.growth-path__requirement{display:flex;gap:.55rem;align-items:center;color:var(--color-text-muted)}.growth-path__requirement--ready{color:var(--color-success)}.growth-path__review-note{color:var(--color-danger)}.growth-path__detail .button{margin-block-start:1.5rem}.growth-path__empty,.growth-path__error{margin-block-start:1rem}@media(max-width:48rem){body.dashboard-body--student .quick-access-dock{display:none}.growth-path__journey{display:grid;gap:0;overflow:visible}body.dashboard-body--student .growth-path__guidance-list{grid-template-columns:1fr;gap:.2rem}body.dashboard-body--student .growth-path__guidance-list dd+dt{margin-block-start:.6rem}.growth-path__stage{display:grid;grid-template-columns:1fr;flex:none}.growth-path__stage-button{grid-template-columns:2.25rem 1fr}.growth-path__connector{justify-self:start;inline-size:1px;min-inline-size:1px;block-size:1.2rem;margin-inline-start:1.6rem}}@media(max-width:22.5rem){.growth-path__stage-button{min-block-size:4rem;padding-inline:.25rem}.growth-path__detail .card__body{padding:1rem}}@media(prefers-reduced-motion:reduce){.growth-path__progress-fill{transition:none}}.student-overview__hero{position:relative;display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);min-height:13rem;overflow:hidden;border:var(--border-hairline);border-radius:var(--radius-xl);background:linear-gradient(135deg,color-mix(in srgb,var(--color-surface-raised) 96%,transparent),color-mix(in srgb,var(--color-surface) 74%,transparent));padding:clamp(var(--space-6),5vw,var(--space-10));box-shadow:var(--shadow-sm)}.student-overview__hero.student-dashboard-hero{background:var(--color-surface)}.student-overview__hero:after{position:absolute;inset:-14rem -8rem auto auto;width:24rem;height:24rem;border:1px solid color-mix(in srgb,var(--color-primary) 30%,transparent);border-radius:50%;box-shadow:0 0 0 3rem color-mix(in srgb,var(--color-primary) 4%,transparent),0 0 0 6rem color-mix(in srgb,var(--color-primary) 3%,transparent);content:"";pointer-events:none}.student-overview__hero h1{margin-block:0 var(--space-3);font-size:var(--text-2xl)}.student-overview__hero p,.student-overview__section p{margin:0;color:var(--color-text-muted)}.student-overview__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5);margin-block-start:var(--space-5)}.student-overview__section{display:flex;min-width:0;flex-direction:column;align-items:flex-start;gap:var(--space-4);background:color-mix(in srgb,var(--color-surface-raised) 88%,transparent)}.student-dashboard-card--ai{position:relative;isolation:isolate;display:grid;grid-column:1 / -1;grid-template-columns:minmax(0,1.1fr) minmax(18rem,.9fr);align-items:center;gap:var(--space-5) clamp(var(--space-5),5vw,var(--space-10));overflow:hidden;border-color:color-mix(in srgb,var(--color-primary) 34%,var(--color-border));background:radial-gradient(ellipse at 8% 0%,color-mix(in srgb,var(--color-primary) 15%,transparent),transparent 46%),linear-gradient(128deg,color-mix(in srgb,var(--color-surface-raised) 96%,var(--color-primary)),var(--color-surface-raised));padding:clamp(var(--space-5),4vw,var(--space-8))}.student-dashboard-card--ai:after{position:absolute;z-index:-1;inset-block-start:-5rem;inset-inline-end:-2rem;width:17rem;aspect-ratio:1;border:1px solid color-mix(in srgb,var(--color-primary) 16%,transparent);border-radius:50%;box-shadow:0 0 0 1.75rem color-mix(in srgb,var(--color-primary) 3%,transparent),0 0 0 3.5rem color-mix(in srgb,var(--color-primary) 2%,transparent);content:"";pointer-events:none}.student-ai-entry-copy{grid-column:1;grid-row:1 / span 2;display:grid;justify-items:start;gap:var(--space-3);max-width:44rem}.student-ai-entry-copy h2{margin:0;font-size:clamp(var(--text-xl),3vw,var(--text-2xl))}.student-ai-entry-copy p,.student-ai-entry-actions p{margin:0;color:var(--color-text-muted)}.student-ai-capabilities{grid-column:2;grid-row:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);margin:0;padding:0;list-style:none}.student-ai-capabilities li{border:var(--border-hairline);border-radius:var(--radius-md);background:color-mix(in srgb,var(--color-surface) 74%,transparent);color:var(--color-text);padding:var(--space-3);font-size:var(--text-sm)}.student-ai-entry-actions{grid-column:2;grid-row:2;display:grid;gap:var(--space-3);align-content:start}.student-ai-entry-controls{display:flex;align-items:end;flex-wrap:wrap;gap:var(--space-3)}.student-ai-entry-field{min-width:min(100%,13rem);flex:1 1 13rem}.student-ai-entry-link{flex:0 0 auto;white-space:normal}.student-ai-entry-note{font-size:var(--text-xs)}.student-ai-entry-empty{justify-items:start}.student-ai-entry-status{grid-column:1 / -1}@media(max-width:64rem){.student-dashboard-card--ai{grid-template-columns:minmax(0,1fr)}.student-ai-entry-copy,.student-ai-capabilities,.student-ai-entry-actions{grid-column:1;grid-row:auto}}.student-overview__section h2{margin:0}.journey-progress{display:grid;width:100%;grid-template-columns:minmax(0,1fr) minmax(9rem,1fr);align-items:center;gap:var(--space-4)}.journey-progress__copy{display:grid;gap:var(--space-1)}.journey-progress__copy strong,.journey-progress__copy span{display:block}.journey-progress__indicators{display:grid;grid-template-columns:6rem minmax(0,1fr);grid-template-rows:auto auto;align-items:center;column-gap:var(--space-4);row-gap:var(--space-2)}.progress-ring{position:relative;display:grid;grid-row:span 2;width:6rem;aspect-ratio:1;place-items:center;color:var(--color-text)}.progress-ring svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;transform:rotate(-90deg)}.progress-ring circle{fill:none;stroke-width:8}.progress-ring__track{stroke:var(--color-border)}.progress-ring__value{stroke:var(--color-primary);stroke-linecap:round;transition:stroke-dashoffset var(--duration-normal) var(--ease-standard)}.journey-progress .progress-ring__number{color:var(--color-text);font-family:var(--font-body);font-size:var(--text-lg);font-variant-numeric:tabular-nums;font-weight:700;line-height:1}.journey-progress__bar-label{color:var(--color-text-muted);font-size:var(--text-sm)}.journey-progress strong,.journey-progress span{display:block}.journey-progress span,.student-overview__list .idea-row span{color:var(--color-text-muted);font-size:var(--text-sm)}.journey-progress progress{width:100%;height:.7rem;overflow:hidden;border:0;border-radius:var(--radius-pill);accent-color:var(--color-primary)}.journey-progress progress::-webkit-progress-bar{background:var(--ink-700);border-radius:inherit}.journey-progress progress::-webkit-progress-value,.journey-progress progress::-moz-progress-bar{background:var(--color-primary);border-radius:inherit}.student-overview__metrics{width:100%;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}.student-overview__metrics .metric{border:var(--border-hairline);border-radius:var(--radius-md);background:color-mix(in srgb,var(--color-surface) 72%,transparent)}.student-overview__list{width:100%}.student-overview__list .idea-row{width:100%;color:var(--color-text);text-align:start;text-decoration:none}.student-overview__list .idea-row span{font-size:var(--text-xs);text-transform:capitalize}.student-overview__error{color:var(--color-danger)!important}.page-heading{display:flex;align-items:end;justify-content:space-between;gap:var(--space-6);margin-block-end:var(--space-8)}.page-heading h1{margin-block-end:var(--space-2);font-size:var(--text-2xl)}.page-heading p{margin:0;color:var(--color-text-muted)}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4)}.metric{padding:var(--space-5)}.metric span{display:block;color:var(--color-text-muted);font-size:var(--text-xs)}.metric strong{display:block;margin-block:var(--space-2);font-family:var(--font-display);font-size:var(--text-2xl)}.dashboard-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:var(--space-5);margin-block-start:var(--space-5)}.idea-row,.queue-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-4);padding-block:var(--space-4);border-block-end:var(--border-hairline)}.idea-row:last-child,.queue-row:last-child{border-block-end:0}.idea-row p,.queue-row p{margin:0;color:var(--color-text-muted);font-size:var(--text-sm)}.galaxy{position:relative;min-height:26rem;overflow:hidden;border:var(--border-hairline);border-radius:var(--radius-xl);background:radial-gradient(circle at center,rgb(104 151 255 / 12%),transparent 50%),var(--ink-850)}.galaxy__idea{position:absolute;display:grid;width:5rem;height:5rem;place-items:center;border:1px solid var(--color-border-strong);border-radius:50%;background:#0c1328d9;color:var(--color-primary);font-size:var(--text-xs);text-align:center}.galaxy__idea:nth-child(1){inset:15% auto auto 16%}.galaxy__idea:nth-child(2){inset:52% auto auto 31%}.galaxy__idea:nth-child(3){inset:22% 18% auto auto}.galaxy__idea:nth-child(4){inset:auto 28% 12% auto}.state-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4)}.student-ai-hero,.student-ai-idea-bar,.student-ai-idea-summary,.student-ai-steps,.student-ai-primary,.student-ai-progress,.student-ai-tools-heading{margin-block-end:var(--space-5)}.student-ai-hero{position:relative;isolation:isolate;overflow:hidden;border:var(--border-hairline);border-radius:var(--radius-xl);background:radial-gradient(ellipse at 82% 20%,color-mix(in srgb,var(--color-primary) 12%,transparent),transparent 44%),var(--color-surface);padding:clamp(var(--space-5),4vw,var(--space-8))}.student-ai-hero:after{position:absolute;z-index:-1;inset:auto 0 0;height:1px;background:linear-gradient(90deg,transparent,var(--color-border-strong),transparent);content:""}.student-ai-hero h1{margin-block:var(--space-2);font-size:clamp(1.8rem,4vw,2.7rem)}.student-ai-hero p,.student-ai-tools-heading p{max-width:62ch;margin-block:0;color:var(--color-text-muted)}.student-ai-idea-bar{display:flex;align-items:end;flex-wrap:wrap;gap:var(--space-3);border-block-end:var(--border-hairline);padding-block-end:var(--space-5)}.student-ai-idea-bar .field{min-width:min(100%,16rem);flex:1 1 18rem}.student-ai-idea-summary h2{margin-block:var(--space-2)}.student-ai-brief-guidance,.student-ai-result-help{max-width:68ch;color:var(--color-text-muted);font-size:var(--text-sm)}.student-ai-brief-guidance{margin-block:var(--space-3) 0}.student-ai-result-help{margin-block:0 var(--space-3)}.student-ai-user-content{unicode-bidi:plaintext;overflow-wrap:anywhere}.student-ai-facts{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-block-start:var(--space-4)}.student-ai-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--space-2);margin-inline:0;padding:0;list-style:none}.student-ai-steps li{position:relative;min-height:3.25rem;border:var(--border-hairline);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-muted);padding:var(--space-3);font-size:var(--text-sm);transition:border-color .2s ease,color .2s ease,background-color .2s ease}.student-ai-steps li.is-complete{border-color:var(--color-border-strong);color:var(--color-text)}.student-ai-steps li.is-attention{grid-column:1 / -1;border-color:var(--color-warning)}.student-ai-primary{border-color:var(--color-border-strong);box-shadow:0 0 2rem color-mix(in srgb,var(--color-primary) 8%,transparent)}.student-ai-result{margin-block:var(--space-5);border-block-start:var(--border-hairline);padding-block-start:var(--space-4)}.student-ai-result h3,.student-ai-history h3{margin-block:0 var(--space-3)}.student-ai-criteria,.student-ai-feedback{display:grid;gap:var(--space-2);padding-inline-start:1.5rem}.student-ai-json{max-width:100%;overflow:auto;border:var(--border-hairline);border-radius:var(--radius-md);background:var(--color-surface);padding:var(--space-4);white-space:pre-wrap;overflow-wrap:anywhere}.student-ai-history{margin-block-start:var(--space-5);border-block-start:var(--border-hairline);padding-block-start:var(--space-4)}.student-ai-history-item+.student-ai-history-item{margin-block-start:var(--space-4)}.student-ai-history-item>p{margin-block:0 var(--space-2)}.student-ai-history-item time{display:block;margin-block-end:var(--space-2);color:var(--color-text-muted);font-size:var(--text-sm)}.student-ai-history-feedback,.student-ai-revision-help,.student-ai-tool-guidance{margin-block-start:var(--space-3)}.student-ai-history-feedback summary,.student-ai-revision-help summary,.student-ai-tool-guidance summary{color:var(--color-primary);cursor:pointer;font-weight:700}.student-ai-history-feedback ul,.student-ai-revision-help ul,.student-ai-tool-guidance ul{display:grid;gap:var(--space-2);padding-inline-start:1.5rem}.student-ai-tool-guidance{border:var(--border-hairline);border-radius:var(--radius-md);background:color-mix(in srgb,var(--color-primary) 4%,var(--color-surface));padding:var(--space-3) var(--space-4)}.student-ai-tool-guidance[open] summary{margin-block-end:var(--space-2)}.student-ai-tool-guidance p,.student-ai-tool-guidance li,.student-ai-result-source,.student-ai-acceptance-note{color:var(--color-text-muted);font-size:var(--text-sm);line-height:1.65}.student-ai-output-section{margin-block:var(--space-4)}.student-ai-output-section h4{margin-block:0 var(--space-2)}.student-ai-output-list{display:grid;gap:var(--space-2);padding-inline-start:1.5rem}.student-ai-output-fields{display:grid;gap:var(--space-3);margin:0}.student-ai-output-fields>div{border-inline-start:2px solid var(--color-border-strong);padding-inline-start:var(--space-3)}.student-ai-output-fields dt{color:var(--color-text);font-weight:700}.student-ai-output-fields dd{margin:var(--space-1) 0 0;color:var(--color-text-muted)}.student-ai-guidance-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-block-start:var(--space-3)}.idea-workspace .idea-field-help{display:block;margin-block-start:var(--space-2);color:var(--color-text-muted);font-size:var(--text-sm);line-height:1.6}.student-ai-tools-heading{margin-block-start:var(--space-8)}.student-ai-tool{min-width:0}.student-ai-tools{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.student-ai-tool h3{margin-block:var(--space-3)}.student-ai-tool .student-ai-result{overflow:visible}@media(max-width:64rem){.student-ai-steps{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:48rem){.student-ai-tools{grid-template-columns:1fr}.student-ai-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.student-ai-idea-bar>a{flex:1 1 auto}}@media(prefers-reduced-motion:reduce){.student-ai-steps li{transition:none}}.student-ai-page .student-ai-comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:var(--space-5);margin-block-end:var(--space-8)}.student-ai-page .student-ai-comparison>*{min-width:0;margin-block-end:0}.student-ai-page .student-ai-idea-summary,.student-ai-page .student-ai-primary{height:100%}.student-ai-page .student-ai-idea-summary{border-color:var(--color-border-strong);background:radial-gradient(ellipse at 12% 0%,color-mix(in srgb,var(--color-primary) 8%,transparent),transparent 52%),var(--color-surface)}.student-ai-page .student-ai-primary{margin-block-end:0}.student-ai-page .student-ai-outcome{border-inline-start:3px solid var(--color-primary);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--color-primary) 8%,var(--color-surface));padding:var(--space-3) var(--space-4);font-weight:700}.student-ai-page .student-ai-action-error{border-inline-start:3px solid var(--color-danger);color:var(--color-danger);padding-inline-start:var(--space-3)}@media(max-width:48rem){.student-ai-page .student-ai-comparison{grid-template-columns:minmax(0,1fr);gap:var(--space-4)}.student-ai-page .student-ai-idea-summary,.student-ai-page .student-ai-primary{height:auto}}@media(prefers-reduced-motion:reduce){.student-ai-page .student-ai-comparison *,.student-ai-page .student-ai-comparison *:before,.student-ai-page .student-ai-comparison *:after{scroll-behavior:auto;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.prototype-note{border-inline-start:3px solid var(--color-warning);background:#ffc47b14;color:var(--color-text-muted);padding:var(--space-3) var(--space-4);font-size:var(--text-sm)}@keyframes page-enter{0%{transform:translateY(.5rem);opacity:0}}@media(max-width:64rem){.site-footer__inner{grid-template-columns:1fr 1fr}.site-footer__action{grid-column:1 / -1}.folder-story{min-height:auto;grid-template-columns:1fr;gap:0;padding-block:var(--space-12)}.folder-gallery{--gallery-spread: 6rem;height:34rem}.folder-story__copy{width:min(100%,40rem);max-width:none;margin-inline:auto;text-align:center}.folder-story__copy h2,.folder-story__copy>p:not(.eyebrow){margin-inline:auto}[dir=rtl] .folder-story__copy{text-align:center}.metric-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.student-overview__grid{grid-template-columns:1fr}}@media(max-width:48rem){.header-actions .button--ghost{display:none}.public-hero{min-height:calc(100svh - 5.25rem);padding-block:var(--space-16)}.public-hero h1{font-size:clamp(2.3rem,10.5vw,4.2rem);transform:translateY(-4.5rem)}.cta-panel,.state-gallery{grid-template-columns:1fr}.mission-line{grid-template-columns:1fr;padding-inline-start:var(--space-6)}.mission-line:before{inset-block:0;inset-inline-start:.25rem;width:1px;height:auto}.mission-step:before{inset-block-start:.5rem;inset-inline-start:calc(var(--space-6) * -1 - .05rem)}.section-heading,.page-heading{align-items:flex-start;flex-direction:column}.site-footer__inner{grid-template-columns:1fr}.site-footer__action{grid-column:auto}.site-footer__bottom{align-items:flex-start;flex-direction:column}.dashboard-layout{grid-template-columns:1fr;padding-block-end:4.5rem}.dashboard-rail{position:fixed;z-index:var(--z-header);inset:auto 0 0;width:auto;height:4.5rem;border-block-start:var(--border-hairline);border-inline-end:0;background:var(--ink-900);overflow:visible;padding:0;transform:translateY(0);transition:transform var(--duration-normal) var(--ease-emphasized),opacity var(--duration-fast),visibility var(--duration-normal)}.dashboard-rail__inner{position:static;height:100%;overflow:visible;padding:var(--space-2)}body.dashboard-body--student[data-sidebar-collapsed=true] .dashboard-layout{padding-block-end:0}body.dashboard-body--student[data-sidebar-collapsed=true] .dashboard-rail{border-block-start-color:transparent;opacity:0;transform:translateY(110%);visibility:hidden}.rail-profile,.rail-footer{display:none}.dashboard-nav{display:flex;justify-content:space-around;overflow-x:auto;padding:0}.dashboard-nav a{min-width:4rem;flex-direction:column;gap:0;padding:var(--space-2);font-size:.68rem}.dashboard-nav__unavailable{display:flex;min-width:4.5rem;flex:0 0 auto;flex-direction:column;gap:0;padding:.25rem;text-align:center}.dashboard-nav__unavailable>span:first-child{width:1.25rem;height:1.25rem;flex-basis:1.25rem}.dashboard-nav__unavailable>span:nth-child(2){font-size:.62rem;line-height:1.05}.dashboard-nav__unavailable small{font-size:.48rem;line-height:1.05}.dashboard-nav a[aria-current=page]{box-shadow:inset 0 -2px var(--color-primary)}html[data-theme=dark] body.dashboard-body--student .dashboard-nav a[aria-current=page]{box-shadow:inset 0 -2px var(--color-button-default-bg)}body.dashboard-body--student .dashboard-header{grid-template-columns:auto minmax(0,1fr) auto;gap:var(--space-2);padding-inline:var(--space-3)}body.dashboard-body--student .dashboard-header__identity{border-inline:0;padding-inline:var(--space-2)}body.dashboard-body--student .dashboard-header__identity p{font-size:.8125rem;text-align:start}.student-overview__hero{align-items:flex-start;min-height:0}.student-overview__metrics{grid-template-columns:1fr}}@media(max-width:34rem){.folder-gallery{--gallery-spread: 3.25rem;height:27rem}.folder-gallery__scene{height:25rem}.folder-gallery__back{width:16rem;height:11rem}.folder-gallery__front{width:17rem;height:9rem}.folder-gallery__photo{width:9.5rem;height:12.5rem}.folder-gallery[data-open=true] .folder-gallery__photo{--photo-y: -6.4rem}.folder-gallery__hint{width:max-content;max-width:calc(100% - 2rem);letter-spacing:.06em}.brand__name,.dashboard-header .language-select{display:none}body[data-shell=public] .brand__logo{inline-size:5.75rem;block-size:1.8rem}body.dashboard-body--student .dashboard-header__brand .brand__logo{inline-size:6rem;block-size:1.8rem}body.dashboard-body--student .dashboard-header .theme-select{display:none}body.dashboard-body--student .dashboard-header__actions{gap:.375rem}body.dashboard-body--student .dashboard-header__identity p{font-size:.75rem}.theme-select{max-width:5.25rem}.metric-grid{grid-template-columns:1fr}.hero-actions{width:min(100%,20rem);flex-direction:column}.hero-actions .button{width:100%}}@media(prefers-reduced-motion:reduce){body.dashboard-body--student .dashboard-layout,body.dashboard-body--student .dashboard-rail,body.dashboard-body--student .button,body.dashboard-body--student .icon-button{transition-duration:1ms}body.dashboard-body--student .button:active,body.dashboard-body--student .icon-button:active{transform:none}body.dashboard-body--student .dashboard-header__orbit{animation:none}body.dashboard-body--student .quick-access-dock,body.dashboard-body--student .quick-access-dock__handle,body.dashboard-body--student .quick-access-dock__reset,body.dashboard-body--student .quick-access-dock__close,body.dashboard-body--student .quick-access-dock__open,body.dashboard-body--student .quick-access-dock__item{transition-duration:1ms}body.dashboard-body--student .quick-access-dock__item:hover,body.dashboard-body--student .quick-access-dock__item:focus-visible{transform:none}.folder-gallery__back,.folder-gallery__front,.folder-gallery__hint,.folder-gallery__photo{transition-duration:1ms}.dashboard-page{animation:none}.galaxy{background:var(--ink-850)}}body[data-shell=auth]{min-height:100dvh;background:radial-gradient(ellipse at 50% 20%,color-mix(in srgb,var(--color-primary) 8%,transparent),transparent 65%),var(--color-page);color:var(--color-text)}html[data-theme=dark] body[data-shell=auth]{--ink-950: #000;--ink-850: #080a0d;--ink-800: #101419;--color-page: var(--ink-950);--color-surface: var(--ink-850);--color-surface-raised: var(--ink-800);background-color:#000}.auth-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-5) clamp(1rem,5vw,4rem)}.auth-page{display:grid;min-height:calc(100dvh - 6rem);place-items:center;padding:2rem 1rem 4rem}.auth-card{position:relative;isolation:isolate;width:min(58rem,100%);min-height:38rem;overflow:hidden;border:1px solid var(--color-border);border-radius:1.75rem;background:var(--color-surface);box-shadow:0 1.5rem 5rem #0000002e}.auth-card__panel{position:absolute;inset-block:0;inset-inline-start:0;width:50%;overflow-y:auto;transition:transform .35s ease,opacity .25s ease}.auth-card__form{display:flex;min-height:100%;flex-direction:column;justify-content:center;gap:1.1rem;padding:clamp(1.5rem,3.5vw,3.5rem)}.auth-card__form h1{font-size:clamp(1.6rem,3vw,2.35rem);line-height:1.25}.auth-card__form p{margin:0}.auth-card__intro{color:var(--color-text-muted)}.auth-card__form .field input{min-height:3rem;border-color:var(--color-border);background:var(--color-surface-raised);color:var(--color-text);font-size:1rem}.auth-header .language-select,.auth-header .theme-select{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text)}.auth-card__form .button{min-height:3rem}html[data-theme=light] .auth-card__form .button--primary{background:var(--color-primary-strong)}.auth-card__form .checkbox{align-items:flex-start;font-size:.875rem;line-height:1.6}.auth-consent{display:grid;gap:.7rem;padding:0;border:0}.auth-text-button{align-self:flex-start;border:0;padding:0;background:transparent;color:var(--color-primary);font:inherit;cursor:pointer}.auth-card__panel--register{opacity:0;pointer-events:none}.auth-card[data-state=register] .auth-card__panel{transform:translate(100%)}html[dir=rtl] .auth-card[data-state=register] .auth-card__panel{transform:translate(-100%)}.auth-card[data-state=register] .auth-card__panel--login{opacity:0;pointer-events:none}.auth-card[data-state=register] .auth-card__panel--register{opacity:1;pointer-events:auto}.auth-card__overlay{position:absolute;z-index:2;inset-block:0;inset-inline-start:50%;display:grid;width:50%;place-items:center;overflow:hidden;padding:2.5rem;background:radial-gradient(ellipse at 20% 20%,color-mix(in srgb,var(--color-primary) 24%,transparent),transparent 70%),var(--color-surface-raised);border-inline-start:1px solid var(--color-border);transition:transform .35s ease;text-align:center}.auth-card[data-state=register] .auth-card__overlay{transform:translate(-100%)}html[dir=rtl] .auth-card[data-state=register] .auth-card__overlay{transform:translate(100%)}.auth-card__overlay>div{position:relative;z-index:1}.auth-card__overlay h2{margin-block:1rem;font-size:clamp(1.7rem,3vw,2.5rem)}.auth-card__overlay p{margin-block-end:2rem;color:var(--color-text-muted)}.auth-card__overlay .button--outline{border-color:var(--color-border-strong);color:var(--color-text)}.auth-card__orbit{position:absolute;width:35rem;aspect-ratio:1;border:1px solid color-mix(in srgb,var(--color-primary) 18%,transparent);border-radius:50%;transform:rotate(-20deg) scaleY(.7);pointer-events:none}.auth-card__orbit:after{position:absolute;inset:3rem;border:1px dashed color-mix(in srgb,var(--color-primary) 12%,transparent);border-radius:50%;content:""}.auth-card__auxiliary{position:relative;max-width:34rem;margin-inline:auto}.auth-card:has(.auth-card__auxiliary:not([hidden])) .auth-card__panel{display:none}.auth-card [hidden]{display:none}@media(max-width:42rem){.auth-page{display:block;padding-block-start:1rem}.auth-card{display:flex;min-height:0;flex-direction:column;border-radius:1.25rem}.auth-card__overlay{position:relative;inset:auto;order:-1;width:100%;padding:1.5rem;border:0;border-block-end:1px solid var(--color-border)}.auth-card__overlay h2{font-size:1.5rem;margin-block:.5rem}.auth-card__overlay p{margin-block-end:1rem}.auth-card__panel{position:relative;inset:auto;width:100%;overflow:visible}.auth-card__panel[aria-hidden=true]{display:none}.auth-card[data-state=register] .auth-card__panel,.auth-card[data-state=register] .auth-card__overlay,html[dir=rtl] .auth-card[data-state=register] .auth-card__panel,html[dir=rtl] .auth-card[data-state=register] .auth-card__overlay{transform:none}}@media(prefers-reduced-motion:reduce){.auth-card__panel,.auth-card__overlay{transition:none}}@font-face{font-family:Peyda;src:url(/static/app/fonts/Peyda-Thin.ttf) format("truetype");font-style:normal;font-weight:100;font-display:swap}@font-face{font-family:Peyda;src:url(/static/app/fonts/peyda-extralight.ttf) format("truetype");font-style:normal;font-weight:200;font-display:swap}@font-face{font-family:Peyda;src:url(/static/app/fonts/peyda-light.ttf) format("truetype");font-style:normal;font-weight:300;font-display:swap}@font-face{font-family:Peyda;src:url(/static/app/fonts/Peyda-Regular.ttf) format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Peyda;src:url(/static/app/fonts/Peyda-Medium.ttf) format("truetype");font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:Peyda;src:url(/static/app/fonts/Peyda-SemiBold.ttf) format("truetype");font-style:normal;font-weight:600;font-display:swap}@font-face{font-family:Peyda;src:url(/static/app/fonts/Peyda-Bold.ttf) format("truetype");font-style:normal;font-weight:700;font-display:swap}@font-face{font-family:Peyda;src:url(/static/app/fonts/Peyda-ExtraBold.ttf) format("truetype");font-style:normal;font-weight:800;font-display:swap}@font-face{font-family:Peyda;src:url(/static/app/fonts/Peyda-Black.ttf) format("truetype");font-style:normal;font-weight:900;font-display:swap}@font-face{font-family:Playfair Display;src:url(/static/app/fonts/PlayfairDisplay-Regular.ttf) format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Playfair Display;src:url(/static/app/fonts/PlayfairDisplay-Medium.ttf) format("truetype");font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:Playfair Display;src:url(/static/app/fonts/PlayfairDisplay-SemiBold.ttf) format("truetype");font-style:normal;font-weight:600;font-display:swap}@font-face{font-family:Playfair Display;src:url(/static/app/fonts/PlayfairDisplay-Bold.ttf) format("truetype");font-style:normal;font-weight:700;font-display:swap}@font-face{font-family:Playfair Display;src:url(/static/app/fonts/PlayfairDisplay-ExtraBold.ttf) format("truetype");font-style:normal;font-weight:800;font-display:swap}@font-face{font-family:Playfair Display;src:url(/static/app/fonts/PlayfairDisplay-Black.ttf) format("truetype");font-style:normal;font-weight:900;font-display:swap}
