/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer theme{:host,:root{--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-50:oklch(97.1% .013 17.38);--color-red-100:oklch(93.6% .032 17.717);--color-red-200:oklch(88.5% .062 18.334);--color-red-300:oklch(80.8% .114 19.571);--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-700:oklch(50.5% .213 27.518);--color-red-800:oklch(44.4% .177 26.899);--color-red-900:oklch(39.6% .141 25.723);--color-orange-500:oklch(70.5% .213 47.604);--color-orange-600:oklch(64.6% .222 41.116);--color-amber-50:oklch(98.7% .022 95.277);--color-amber-100:oklch(96.2% .059 95.617);--color-amber-200:oklch(92.4% .12 95.746);--color-amber-300:oklch(87.9% .169 91.605);--color-amber-400:oklch(82.8% .189 84.429);--color-amber-500:oklch(76.9% .188 70.08);--color-amber-600:oklch(66.6% .179 58.318);--color-amber-700:oklch(55.5% .163 48.998);--color-amber-800:oklch(47.3% .137 46.201);--color-amber-900:oklch(41.4% .112 45.904);--color-amber-950:oklch(27.9% .077 45.635);--color-yellow-50:oklch(98.7% .026 102.212);--color-yellow-100:oklch(97.3% .071 103.193);--color-yellow-200:oklch(94.5% .129 101.54);--color-yellow-400:oklch(85.2% .199 91.936);--color-yellow-500:oklch(79.5% .184 86.047);--color-yellow-600:oklch(68.1% .162 75.834);--color-yellow-800:oklch(47.6% .114 61.907);--color-yellow-900:oklch(42.1% .095 57.708);--color-yellow-950:oklch(28.6% .066 53.813);--color-green-50:oklch(98.2% .018 155.826);--color-green-100:oklch(96.2% .044 156.743);--color-green-200:oklch(92.5% .084 155.995);--color-green-300:oklch(87.1% .15 154.449);--color-green-400:oklch(79.2% .209 151.711);--color-green-500:oklch(72.3% .219 149.579);--color-green-600:oklch(62.7% .194 149.214);--color-green-700:oklch(52.7% .154 150.069);--color-green-800:oklch(44.8% .119 151.328);--color-green-900:oklch(39.3% .095 152.535);--color-green-950:oklch(26.6% .065 152.934);--color-emerald-50:oklch(97.9% .021 166.113);--color-emerald-100:oklch(95% .052 163.051);--color-emerald-200:oklch(90.5% .093 164.15);--color-emerald-300:oklch(84.5% .143 164.978);--color-emerald-400:oklch(76.5% .177 163.223);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-600:oklch(59.6% .145 163.225);--color-emerald-700:oklch(50.8% .118 165.612);--color-emerald-800:oklch(43.2% .095 166.913);--color-emerald-900:oklch(37.8% .077 168.94);--color-emerald-950:oklch(26.2% .051 172.552);--color-cyan-100:oklch(95.6% .045 203.388);--color-cyan-200:oklch(91.7% .08 205.041);--color-cyan-300:oklch(86.5% .127 207.078);--color-cyan-800:oklch(45% .085 224.283);--color-cyan-900:oklch(39.8% .07 227.392);--color-blue-100:oklch(93.2% .032 255.585);--color-blue-400:oklch(70.7% .165 254.624);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-800:oklch(42.4% .199 265.638);--color-blue-900:oklch(37.9% .146 265.522);--color-violet-50:oklch(96.9% .016 293.756);--color-violet-100:oklch(94.3% .029 294.588);--color-violet-200:oklch(89.4% .057 293.283);--color-violet-500:oklch(60.6% .25 292.717);--color-violet-600:oklch(54.1% .281 293.009);--color-violet-700:oklch(49.1% .27 292.581);--color-violet-800:oklch(43.2% .232 292.759);--color-violet-900:oklch(38% .189 293.745);--color-violet-950:oklch(28.3% .141 291.089);--color-purple-100:oklch(94.6% .033 307.174);--color-purple-400:oklch(71.4% .203 305.504);--color-purple-500:oklch(62.7% .265 303.9);--color-purple-600:oklch(55.8% .288 302.321);--color-purple-800:oklch(43.8% .218 303.724);--color-purple-900:oklch(38.1% .176 304.987);--color-pink-100:oklch(94.8% .028 342.258);--color-pink-200:oklch(89.9% .061 343.231);--color-pink-300:oklch(82.3% .12 346.018);--color-pink-800:oklch(45.9% .187 3.815);--color-pink-900:oklch(40.8% .153 2.432);--color-slate-50:oklch(98.4% .003 247.858);--color-slate-100:oklch(96.8% .007 247.896);--color-slate-400:oklch(70.4% .04 256.788);--color-slate-800:oklch(27.9% .041 260.031);--color-slate-900:oklch(20.8% .042 265.755);--color-slate-950:oklch(12.9% .042 264.695);--color-gray-50:oklch(98.5% .002 247.839);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-widest:.1em;--leading-tight:1.25;--leading-relaxed:1.625;--radius-xs:.125rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1) infinite;--blur-sm:8px;--blur-md:12px;--aspect-video:16/9;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-inter);--default-mono-font-family:var(--font-mono);--font-display:var(--font-dm-sans)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--border-subtle);outline-color:var(--brand-400)}@supports (color:color-mix(in lab,red,red)){*{outline-color:color-mix(in oklab,var(--brand-400) 50%,transparent)}}body{font-family:var(--font-body);color:var(--text-primary);background:var(--bg-app);-webkit-font-smoothing:antialiased;min-height:100vh;line-height:1.5;transition:background .2s,color .2s}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--text-disabled)}}@layer components;@layer utilities{.\@container\/card-header{container:card-header/inline-size}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden}.absolute,.sr-only{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:0}.inset-x-0{inset-inline:0}.inset-y-0{inset-block:0}.-top-1{top:calc(var(--spacing) * -1)}.top-0{top:0}.top-1\/2{top:50%}.top-2{top:calc(var(--spacing) * 2)}.top-2\.5{top:calc(var(--spacing) * 2.5)}.top-4{top:calc(var(--spacing) * 4)}.top-5{top:calc(var(--spacing) * 5)}.top-10{top:calc(var(--spacing) * 10)}.top-\[50\%\]{top:50%}.-right-1{right:calc(var(--spacing) * -1)}.right-0{right:0}.right-1{right:var(--spacing)}.right-2{right:calc(var(--spacing) * 2)}.right-3{right:calc(var(--spacing) * 3)}.right-4{right:calc(var(--spacing) * 4)}.right-5{right:calc(var(--spacing) * 5)}.bottom-0{bottom:0}.bottom-2{bottom:calc(var(--spacing) * 2)}.left-0{left:0}.left-1{left:var(--spacing)}.left-2{left:calc(var(--spacing) * 2)}.left-2\.5{left:calc(var(--spacing) * 2.5)}.left-3{left:calc(var(--spacing) * 3)}.left-\[50\%\]{left:50%}.isolate{isolation:isolate}.z-0{z-index:0}.z-10{z-index:10}.z-40{z-index:40}.z-50{z-index:50}.z-\[500\]{z-index:500}.z-\[501\]{z-index:501}.z-\[650\]{z-index:650}.col-span-1{grid-column:span 1/span 1}.col-span-2{grid-column:span 2/span 2}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.row-start-1{grid-row-start:1}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.-m-3{margin:calc(var(--spacing) * -3)}.m-1{margin:var(--spacing)}.m-4{margin:calc(var(--spacing) * 4)}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.-mx-6{margin-inline:calc(var(--spacing) * -6)}.mx-2{margin-inline:calc(var(--spacing) * 2)}.mx-3{margin-inline:calc(var(--spacing) * 3)}.mx-auto{margin-inline:auto}.my-1{margin-block:var(--spacing)}.my-6{margin-block:calc(var(--spacing) * 6)}.my-8{margin-block:calc(var(--spacing) * 8)}.-mt-1{margin-top:calc(var(--spacing) * -1)}.-mt-2{margin-top:calc(var(--spacing) * -2)}.-mt-6{margin-top:calc(var(--spacing) * -6)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-auto{margin-top:auto}.mr-0\.5{margin-right:calc(var(--spacing) * .5)}.mr-1{margin-right:var(--spacing)}.mr-1\.5{margin-right:calc(var(--spacing) * 1.5)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mr-4{margin-right:calc(var(--spacing) * 4)}.-mb-4{margin-bottom:calc(var(--spacing) * -4)}.-mb-px{margin-bottom:-1px}.mb-0\.5{margin-bottom:calc(var(--spacing) * .5)}.mb-1{margin-bottom:var(--spacing)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.mb-10{margin-bottom:calc(var(--spacing) * 10)}.ml-0\.5{margin-left:calc(var(--spacing) * .5)}.ml-1{margin-left:var(--spacing)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-4{margin-left:calc(var(--spacing) * 4)}.ml-8{margin-left:calc(var(--spacing) * 8)}.ml-11{margin-left:calc(var(--spacing) * 11)}.ml-\[9px\]{margin-left:9px}.ml-auto{margin-left:auto}.line-clamp-1{-webkit-line-clamp:1}.line-clamp-1,.line-clamp-2{-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-row{display:table-row}.aspect-square{aspect-ratio:1}.aspect-video{aspect-ratio:var(--aspect-video)}.size-2{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2)}.size-2\.5{width:calc(var(--spacing) * 2.5);height:calc(var(--spacing) * 2.5)}.size-3{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.size-3\.5{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.size-11{width:calc(var(--spacing) * 11);height:calc(var(--spacing) * 11)}.size-12{width:calc(var(--spacing) * 12);height:calc(var(--spacing) * 12)}.size-full{width:100%;height:100%}.h-0\.5{height:calc(var(--spacing) * .5)}.h-1{height:var(--spacing)}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-2{height:calc(var(--spacing) * 2)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.h-3{height:calc(var(--spacing) * 3)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-12{height:calc(var(--spacing) * 12)}.h-14{height:calc(var(--spacing) * 14)}.h-16{height:calc(var(--spacing) * 16)}.h-20{height:calc(var(--spacing) * 20)}.h-24{height:calc(var(--spacing) * 24)}.h-28{height:calc(var(--spacing) * 28)}.h-32{height:calc(var(--spacing) * 32)}.h-40{height:calc(var(--spacing) * 40)}.h-48{height:calc(var(--spacing) * 48)}.h-64{height:calc(var(--spacing) * 64)}.h-80{height:calc(var(--spacing) * 80)}.h-96{height:calc(var(--spacing) * 96)}.h-\[1\.2rem\]{height:1.2rem}.h-\[60vh\]{height:60vh}.h-\[125px\]{height:125px}.h-\[200px\]{height:200px}.h-\[250px\]{height:250px}.h-\[300px\]{height:300px}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-\(--radix-dropdown-menu-content-available-height\){max-height:var(--radix-dropdown-menu-content-available-height)}.max-h-\(--radix-select-content-available-height\){max-height:var(--radix-select-content-available-height)}.max-h-8{max-height:calc(var(--spacing) * 8)}.max-h-12{max-height:calc(var(--spacing) * 12)}.max-h-48{max-height:calc(var(--spacing) * 48)}.max-h-96{max-height:calc(var(--spacing) * 96)}.max-h-\[70vh\]{max-height:70vh}.max-h-\[80vh\]{max-height:80vh}.max-h-\[85vh\]{max-height:85vh}.max-h-\[88vh\]{max-height:88vh}.max-h-\[90vh\]{max-height:90vh}.max-h-\[300px\]{max-height:300px}.min-h-0{min-height:0}.min-h-4{min-height:calc(var(--spacing) * 4)}.min-h-20{min-height:calc(var(--spacing) * 20)}.min-h-\[60vh\]{min-height:60vh}.min-h-\[80px\]{min-height:80px}.min-h-\[120px\]{min-height:120px}.min-h-\[200px\]{min-height:200px}.min-h-\[300px\]{min-height:300px}.min-h-\[560px\]{min-height:560px}.min-h-screen{min-height:100vh}.w-0{width:0}.w-0\.5{width:calc(var(--spacing) * .5)}.w-1{width:var(--spacing)}.w-1\.5{width:calc(var(--spacing) * 1.5)}.w-1\/2{width:50%}.w-1\/4{width:25%}.w-2{width:calc(var(--spacing) * 2)}.w-2\.5{width:calc(var(--spacing) * 2.5)}.w-2\/3{width:66.6667%}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-3\/4{width:75%}.w-4{width:calc(var(--spacing) * 4)}.w-4\/5{width:80%}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-8{width:calc(var(--spacing) * 8)}.w-9{width:calc(var(--spacing) * 9)}.w-10{width:calc(var(--spacing) * 10)}.w-11{width:calc(var(--spacing) * 11)}.w-12{width:calc(var(--spacing) * 12)}.w-14{width:calc(var(--spacing) * 14)}.w-16{width:calc(var(--spacing) * 16)}.w-20{width:calc(var(--spacing) * 20)}.w-24{width:calc(var(--spacing) * 24)}.w-28{width:calc(var(--spacing) * 28)}.w-32{width:calc(var(--spacing) * 32)}.w-36{width:calc(var(--spacing) * 36)}.w-40{width:calc(var(--spacing) * 40)}.w-44{width:calc(var(--spacing) * 44)}.w-48{width:calc(var(--spacing) * 48)}.w-56{width:calc(var(--spacing) * 56)}.w-64{width:calc(var(--spacing) * 64)}.w-72{width:calc(var(--spacing) * 72)}.w-80{width:calc(var(--spacing) * 80)}.w-96{width:calc(var(--spacing) * 96)}.w-\[1\.2rem\]{width:1.2rem}.w-\[70px\]{width:70px}.w-\[80px\]{width:80px}.w-\[100px\]{width:100px}.w-\[130px\]{width:130px}.w-\[140px\]{width:140px}.w-\[150px\]{width:150px}.w-\[160px\]{width:160px}.w-\[180px\]{width:180px}.w-\[calc\(100vw-2rem\)\]{width:calc(100vw - 2rem)}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-\[100px\]{max-width:100px}.max-w-\[200px\]{max-width:200px}.max-w-\[300px\]{max-width:300px}.max-w-\[calc\(100\%-2rem\)\]{max-width:calc(100% - 2rem)}.max-w-full{max-width:100%}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.max-w-none{max-width:none}.max-w-sm{max-width:var(--container-sm)}.max-w-xl{max-width:var(--container-xl)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:0}.min-w-\[8rem\]{min-width:8rem}.min-w-\[24px\]{min-width:24px}.min-w-\[80px\]{min-width:80px}.min-w-\[150px\]{min-width:150px}.min-w-\[180px\]{min-width:180px}.min-w-\[200px\]{min-width:200px}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.flex-grow,.grow{flex-grow:1}.caption-bottom{caption-side:bottom}.border-collapse{border-collapse:collapse}.origin-\(--radix-dropdown-menu-content-transform-origin\){transform-origin:var(--radix-dropdown-menu-content-transform-origin)}.origin-\(--radix-select-content-transform-origin\){transform-origin:var(--radix-select-content-transform-origin)}.origin-\(--radix-tooltip-content-transform-origin\){transform-origin:var(--radix-tooltip-content-transform-origin)}.translate-x-\[-50\%\]{--tw-translate-x:-50%}.-translate-y-1\/2,.translate-x-\[-50\%\]{translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1)}.translate-y-0\.5{--tw-translate-y:calc(var(--spacing) * .5)}.translate-y-0\.5,.translate-y-\[-50\%\]{translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-\[-50\%\]{--tw-translate-y:-50%}.translate-y-\[calc\(-50\%_-_2px\)\]{--tw-translate-y:calc(-50% - 2px);translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-0{--tw-scale-x:0%;--tw-scale-y:0%;--tw-scale-z:0%}.scale-0,.scale-100{scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%}.scale-110{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-\[1\.02\]{scale:1.02}.-rotate-90{rotate:-90deg}.rotate-0{rotate:0deg}.rotate-45{rotate:45deg}.rotate-90{rotate:90deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-\[spin_20s_linear_infinite\]{animation:spin 20s linear infinite}.animate-in{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.cursor-grab{cursor:grab}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.resize{resize:both}.resize-none{resize:none}.scroll-my-1{scroll-margin-block:var(--spacing)}.scroll-py-1{scroll-padding-block:var(--spacing)}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.auto-rows-min{grid-auto-rows:min-content}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-\[0_1fr\]{grid-template-columns:0 1fr}.grid-rows-\[auto_auto\]{grid-template-rows:auto auto}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-around{justify-content:space-around}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.justify-items-start{justify-items:start}.gap-0{gap:0}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}:where(.space-y-0>:not(:last-child)){--tw-space-y-reverse:0;margin-block:0}:where(.space-y-0\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * .5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * .5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--spacing) * var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-6{column-gap:calc(var(--spacing) * 6)}:where(.space-x-1>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(var(--spacing) * var(--tw-space-x-reverse));margin-inline-end:calc(var(--spacing) * calc(1 - var(--tw-space-x-reverse)))}:where(.space-x-2>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 2) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-x-reverse)))}.gap-y-0\.5{row-gap:calc(var(--spacing) * .5)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}.self-start{align-self:flex-start}.justify-self-end{justify-self:flex-end}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-\[2px\]{border-radius:2px}.rounded-\[4px\]{border-radius:4px}.rounded-\[7px\]{border-radius:7px}.rounded-\[16px\]{border-radius:16px}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:3.40282e+38px}.rounded-lg{border-radius:12px}.rounded-md{border-radius:8px}.rounded-sm{border-radius:6px}.rounded-xl{border-radius:16px}.rounded-xs{border-radius:var(--radius-xs)}.rounded-t{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.rounded-t-2xl{border-top-left-radius:var(--radius-2xl);border-top-right-radius:var(--radius-2xl)}.rounded-t-lg{border-top-left-radius:12px;border-top-right-radius:12px}.rounded-t-md{border-top-left-radius:8px;border-top-right-radius:8px}.rounded-l-2xl{border-top-left-radius:var(--radius-2xl);border-bottom-left-radius:var(--radius-2xl)}.rounded-r{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.rounded-b-lg{border-bottom-right-radius:12px;border-bottom-left-radius:12px}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-4{border-style:var(--tw-border-style);border-width:4px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-t-2{border-top-style:var(--tw-border-style);border-top-width:2px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-\[var\(--border-subtle\)\]{border-color:var(--border-subtle)}.border-\[var\(--brand-600\)\]{border-color:var(--brand-600)}.border-amber-200{border-color:var(--color-amber-200)}.border-amber-300{border-color:var(--color-amber-300)}.border-amber-400{border-color:var(--color-amber-400)}.border-amber-500\/50{border-color:#f99c0080}@supports (color:color-mix(in lab,red,red)){.border-amber-500\/50{border-color:color-mix(in oklab,var(--color-amber-500) 50%,transparent)}}.border-blue-600{border-color:var(--color-blue-600)}.border-border,.border-border\/70{border-color:var(--border-subtle)}@supports (color:color-mix(in lab,red,red)){.border-border\/70{border-color:color-mix(in oklab,var(--border-subtle) 70%,transparent)}}.border-border\/80{border-color:var(--border-subtle)}@supports (color:color-mix(in lab,red,red)){.border-border\/80{border-color:color-mix(in oklab,var(--border-subtle) 80%,transparent)}}.border-cyan-200{border-color:var(--color-cyan-200)}.border-destructive,.border-destructive\/20{border-color:var(--risk-high-text)}@supports (color:color-mix(in lab,red,red)){.border-destructive\/20{border-color:color-mix(in oklab,var(--risk-high-text) 20%,transparent)}}.border-destructive\/30{border-color:var(--risk-high-text)}@supports (color:color-mix(in lab,red,red)){.border-destructive\/30{border-color:color-mix(in oklab,var(--risk-high-text) 30%,transparent)}}.border-emerald-200{border-color:var(--color-emerald-200)}.border-emerald-300{border-color:var(--color-emerald-300)}.border-emerald-500\/20{border-color:#00bb7f33}@supports (color:color-mix(in lab,red,red)){.border-emerald-500\/20{border-color:color-mix(in oklab,var(--color-emerald-500) 20%,transparent)}}.border-gray-200{border-color:var(--color-gray-200)}.border-green-200{border-color:var(--color-green-200)}.border-input{border-color:var(--border-subtle)}.border-muted{border-color:var(--bg-hover)}.border-muted-foreground,.border-muted-foreground\/30{border-color:var(--text-muted)}@supports (color:color-mix(in lab,red,red)){.border-muted-foreground\/30{border-color:color-mix(in oklab,var(--text-muted) 30%,transparent)}}.border-muted-foreground\/40{border-color:var(--text-muted)}@supports (color:color-mix(in lab,red,red)){.border-muted-foreground\/40{border-color:color-mix(in oklab,var(--text-muted) 40%,transparent)}}.border-pink-200{border-color:var(--color-pink-200)}.border-primary,.border-primary\/20{border-color:var(--brand-600)}@supports (color:color-mix(in lab,red,red)){.border-primary\/20{border-color:color-mix(in oklab,var(--brand-600) 20%,transparent)}}.border-primary\/30{border-color:var(--brand-600)}@supports (color:color-mix(in lab,red,red)){.border-primary\/30{border-color:color-mix(in oklab,var(--brand-600) 30%,transparent)}}.border-red-200{border-color:var(--color-red-200)}.border-red-300{border-color:var(--color-red-300)}.border-red-500\/20{border-color:#fb2c3633}@supports (color:color-mix(in lab,red,red)){.border-red-500\/20{border-color:color-mix(in oklab,var(--color-red-500) 20%,transparent)}}.border-success\/30{border-color:var(--risk-low-text)}@supports (color:color-mix(in lab,red,red)){.border-success\/30{border-color:color-mix(in oklab,var(--risk-low-text) 30%,transparent)}}.border-transparent{border-color:#0000}.border-violet-200{border-color:var(--color-violet-200)}.border-warning\/30{border-color:var(--risk-med-text)}@supports (color:color-mix(in lab,red,red)){.border-warning\/30{border-color:color-mix(in oklab,var(--risk-med-text) 30%,transparent)}}.border-yellow-200{border-color:var(--color-yellow-200)}.border-t-transparent{border-top-color:#0000}.border-l-primary{border-left-color:var(--brand-600)}.border-l-transparent{border-left-color:#0000}.bg-\[var\(--bg-app\)\]{background-color:var(--bg-app)}.bg-\[var\(--border-subtle\)\]{background-color:var(--border-subtle)}.bg-\[var\(--brand-100\)\]{background-color:var(--brand-100)}.bg-\[var\(--brand-300\)\]{background-color:var(--brand-300)}.bg-\[var\(--brand-600\)\]{background-color:var(--brand-600)}.bg-\[var\(--chart-1\)\]{background-color:var(--chart-1)}.bg-\[var\(--chart-2\)\]{background-color:var(--chart-2)}.bg-\[var\(--chart-3\)\]{background-color:var(--chart-3)}.bg-\[var\(--chart-4\)\]{background-color:var(--chart-4)}.bg-accent{background-color:var(--bg-active)}.bg-amber-50{background-color:var(--color-amber-50)}.bg-amber-50\/50{background-color:#fffbeb80}@supports (color:color-mix(in lab,red,red)){.bg-amber-50\/50{background-color:color-mix(in oklab,var(--color-amber-50) 50%,transparent)}}.bg-amber-50\/80{background-color:#fffbebcc}@supports (color:color-mix(in lab,red,red)){.bg-amber-50\/80{background-color:color-mix(in oklab,var(--color-amber-50) 80%,transparent)}}.bg-amber-100{background-color:var(--color-amber-100)}.bg-amber-600{background-color:var(--color-amber-600)}.bg-background,.bg-background\/80{background-color:var(--bg-app)}@supports (color:color-mix(in lab,red,red)){.bg-background\/80{background-color:color-mix(in oklab,var(--bg-app) 80%,transparent)}}.bg-black{background-color:var(--color-black)}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black) 50%,transparent)}}.bg-blue-100{background-color:var(--color-blue-100)}.bg-blue-500{background-color:var(--color-blue-500)}.bg-blue-500\/10{background-color:#3080ff1a}@supports (color:color-mix(in lab,red,red)){.bg-blue-500\/10{background-color:color-mix(in oklab,var(--color-blue-500) 10%,transparent)}}.bg-border{background-color:var(--border-subtle)}.bg-card,.bg-card\/95{background-color:var(--bg-surface)}@supports (color:color-mix(in lab,red,red)){.bg-card\/95{background-color:color-mix(in oklab,var(--bg-surface) 95%,transparent)}}.bg-cyan-100{background-color:var(--color-cyan-100)}.bg-destructive,.bg-destructive\/5{background-color:var(--risk-high-text)}@supports (color:color-mix(in lab,red,red)){.bg-destructive\/5{background-color:color-mix(in oklab,var(--risk-high-text) 5%,transparent)}}.bg-destructive\/10{background-color:var(--risk-high-text)}@supports (color:color-mix(in lab,red,red)){.bg-destructive\/10{background-color:color-mix(in oklab,var(--risk-high-text) 10%,transparent)}}.bg-emerald-50{background-color:var(--color-emerald-50)}.bg-emerald-50\/60{background-color:#ecfdf599}@supports (color:color-mix(in lab,red,red)){.bg-emerald-50\/60{background-color:color-mix(in oklab,var(--color-emerald-50) 60%,transparent)}}.bg-emerald-100{background-color:var(--color-emerald-100)}.bg-emerald-400{background-color:var(--color-emerald-400)}.bg-emerald-500\/10{background-color:#00bb7f1a}@supports (color:color-mix(in lab,red,red)){.bg-emerald-500\/10{background-color:color-mix(in oklab,var(--color-emerald-500) 10%,transparent)}}.bg-gray-100{background-color:var(--color-gray-100)}.bg-green-50{background-color:var(--color-green-50)}.bg-green-100{background-color:var(--color-green-100)}.bg-green-500{background-color:var(--color-green-500)}.bg-green-500\/10{background-color:#00c7581a}@supports (color:color-mix(in lab,red,red)){.bg-green-500\/10{background-color:color-mix(in oklab,var(--color-green-500) 10%,transparent)}}.bg-green-600{background-color:var(--color-green-600)}.bg-muted,.bg-muted\/10{background-color:var(--bg-hover)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/10{background-color:color-mix(in oklab,var(--bg-hover) 10%,transparent)}}.bg-muted\/20{background-color:var(--bg-hover)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/20{background-color:color-mix(in oklab,var(--bg-hover) 20%,transparent)}}.bg-muted\/30{background-color:var(--bg-hover)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/30{background-color:color-mix(in oklab,var(--bg-hover) 30%,transparent)}}.bg-muted\/40{background-color:var(--bg-hover)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/40{background-color:color-mix(in oklab,var(--bg-hover) 40%,transparent)}}.bg-muted\/50{background-color:var(--bg-hover)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/50{background-color:color-mix(in oklab,var(--bg-hover) 50%,transparent)}}.bg-pink-100{background-color:var(--color-pink-100)}.bg-popover{background-color:var(--bg-surface)}.bg-primary,.bg-primary\/5{background-color:var(--brand-600)}@supports (color:color-mix(in lab,red,red)){.bg-primary\/5{background-color:color-mix(in oklab,var(--brand-600) 5%,transparent)}}.bg-primary\/10{background-color:var(--brand-600)}@supports (color:color-mix(in lab,red,red)){.bg-primary\/10{background-color:color-mix(in oklab,var(--brand-600) 10%,transparent)}}.bg-primary\/15{background-color:var(--brand-600)}@supports (color:color-mix(in lab,red,red)){.bg-primary\/15{background-color:color-mix(in oklab,var(--brand-600) 15%,transparent)}}.bg-primary\/20{background-color:var(--brand-600)}@supports (color:color-mix(in lab,red,red)){.bg-primary\/20{background-color:color-mix(in oklab,var(--brand-600) 20%,transparent)}}.bg-purple-100{background-color:var(--color-purple-100)}.bg-purple-500\/10{background-color:#ac4bff1a}@supports (color:color-mix(in lab,red,red)){.bg-purple-500\/10{background-color:color-mix(in oklab,var(--color-purple-500) 10%,transparent)}}.bg-red-50{background-color:var(--color-red-50)}.bg-red-50\/60{background-color:#fef2f299}@supports (color:color-mix(in lab,red,red)){.bg-red-50\/60{background-color:color-mix(in oklab,var(--color-red-50) 60%,transparent)}}.bg-red-100{background-color:var(--color-red-100)}.bg-red-500{background-color:var(--color-red-500)}.bg-red-500\/10{background-color:#fb2c361a}@supports (color:color-mix(in lab,red,red)){.bg-red-500\/10{background-color:color-mix(in oklab,var(--color-red-500) 10%,transparent)}}.bg-secondary{background-color:var(--bg-hover)}.bg-slate-400{background-color:var(--color-slate-400)}.bg-slate-950\/55{background-color:#0206188c}@supports (color:color-mix(in lab,red,red)){.bg-slate-950\/55{background-color:color-mix(in oklab,var(--color-slate-950) 55%,transparent)}}.bg-success,.bg-success\/10{background-color:var(--risk-low-text)}@supports (color:color-mix(in lab,red,red)){.bg-success\/10{background-color:color-mix(in oklab,var(--risk-low-text) 10%,transparent)}}.bg-transparent{background-color:#0000}.bg-violet-50\/60{background-color:#f5f3ff99}@supports (color:color-mix(in lab,red,red)){.bg-violet-50\/60{background-color:color-mix(in oklab,var(--color-violet-50) 60%,transparent)}}.bg-violet-50\/70{background-color:#f5f3ffb3}@supports (color:color-mix(in lab,red,red)){.bg-violet-50\/70{background-color:color-mix(in oklab,var(--color-violet-50) 70%,transparent)}}.bg-violet-100{background-color:var(--color-violet-100)}.bg-violet-600{background-color:var(--color-violet-600)}.bg-warning\/10{background-color:var(--risk-med-text)}@supports (color:color-mix(in lab,red,red)){.bg-warning\/10{background-color:color-mix(in oklab,var(--risk-med-text) 10%,transparent)}}.bg-white{background-color:var(--color-white)}.bg-white\/85{background-color:#ffffffd9}@supports (color:color-mix(in lab,red,red)){.bg-white\/85{background-color:color-mix(in oklab,var(--color-white) 85%,transparent)}}.bg-yellow-50{background-color:var(--color-yellow-50)}.bg-yellow-100{background-color:var(--color-yellow-100)}.bg-yellow-400{background-color:var(--color-yellow-400)}.bg-yellow-500{background-color:var(--color-yellow-500)}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab}.bg-gradient-to-br,.bg-gradient-to-r{background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-r{--tw-gradient-position:to right in oklab}.from-\[\#c0c1ff\]{--tw-gradient-from:#c0c1ff;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-primary\/5{--tw-gradient-from:var(--brand-600)}@supports (color:color-mix(in lab,red,red)){.from-primary\/5{--tw-gradient-from:color-mix(in oklab,var(--brand-600) 5%,transparent)}}.from-primary\/5{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-primary\/10{--tw-gradient-from:var(--brand-600)}@supports (color:color-mix(in lab,red,red)){.from-primary\/10{--tw-gradient-from:color-mix(in oklab,var(--brand-600) 10%,transparent)}}.from-primary\/10{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-slate-50{--tw-gradient-from:var(--color-slate-50);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-violet-50\/85{--tw-gradient-from:#f5f3ffd9}@supports (color:color-mix(in lab,red,red)){.from-violet-50\/85{--tw-gradient-from:color-mix(in oklab,var(--color-violet-50) 85%,transparent)}}.from-violet-50\/85{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.via-primary\/5{--tw-gradient-via:var(--brand-600)}@supports (color:color-mix(in lab,red,red)){.via-primary\/5{--tw-gradient-via:color-mix(in oklab,var(--brand-600) 5%,transparent)}}.via-primary\/5{--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-via) var(--tw-gradient-via-position),var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.via-primary\/10{--tw-gradient-via:var(--brand-600)}@supports (color:color-mix(in lab,red,red)){.via-primary\/10{--tw-gradient-via:color-mix(in oklab,var(--brand-600) 10%,transparent)}}.via-primary\/10{--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-via) var(--tw-gradient-via-position),var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-\[\#494bd6\]{--tw-gradient-to:#494bd6;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-muted{--tw-gradient-to:var(--bg-hover);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-slate-100{--tw-gradient-to:var(--color-slate-100);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-white{--tw-gradient-to:var(--color-white);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.fill-current{fill:currentColor}.fill-primary{fill:var(--brand-600)}.stroke-muted{stroke:var(--bg-hover)}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-0{padding:0}.p-0\.5{padding:calc(var(--spacing) * .5)}.p-1{padding:var(--spacing)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.p-\[3px\]{padding:3px}.p-px{padding:1px}.px-1{padding-inline:var(--spacing)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-0{padding-block:0}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-12{padding-block:calc(var(--spacing) * 12)}.pt-0{padding-top:0}.pt-1{padding-top:var(--spacing)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-5{padding-top:calc(var(--spacing) * 5)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pt-\[22px\]{padding-top:22px}.pr-1{padding-right:var(--spacing)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-3{padding-right:calc(var(--spacing) * 3)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pr-10{padding-right:calc(var(--spacing) * 10)}.pb-0{padding-bottom:0}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.pl-2{padding-left:calc(var(--spacing) * 2)}.pl-4{padding-left:calc(var(--spacing) * 4)}.pl-5{padding-left:calc(var(--spacing) * 5)}.pl-6{padding-left:calc(var(--spacing) * 6)}.pl-8{padding-left:calc(var(--spacing) * 8)}.pl-9{padding-left:calc(var(--spacing) * 9)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-middle{vertical-align:middle}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.8rem\]{font-size:.8rem}.text-\[0\.6875rem\]{font-size:.6875rem}.text-\[10px\]{font-size:10px}.leading-5{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.05em\]{--tw-tracking:.05em;letter-spacing:.05em}.tracking-\[0\.08em\]{--tw-tracking:.08em;letter-spacing:.08em}.tracking-\[0\.16em\]{--tw-tracking:.16em;letter-spacing:.16em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-balance{text-wrap:balance}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-\[var\(--brand-700\)\]{color:var(--brand-700)}.text-\[var\(--text-muted\)\]{color:var(--text-muted)}.text-accent-foreground{color:var(--text-primary)}.text-amber-600{color:var(--color-amber-600)}.text-amber-700{color:var(--color-amber-700)}.text-amber-800{color:var(--color-amber-800)}.text-amber-900{color:var(--color-amber-900)}.text-amber-950{color:var(--color-amber-950)}.text-blue-400{color:var(--color-blue-400)}.text-blue-600{color:var(--color-blue-600)}.text-blue-700{color:var(--color-blue-700)}.text-blue-800{color:var(--color-blue-800)}.text-card-foreground{color:var(--text-primary)}.text-current{color:currentColor}.text-cyan-800{color:var(--color-cyan-800)}.text-destructive{color:var(--risk-high-text)}.text-emerald-400{color:var(--color-emerald-400)}.text-emerald-600{color:var(--color-emerald-600)}.text-emerald-700{color:var(--color-emerald-700)}.text-emerald-800{color:var(--color-emerald-800)}.text-emerald-900{color:var(--color-emerald-900)}.text-foreground{color:var(--text-primary)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-800{color:var(--color-gray-800)}.text-green-500{color:var(--color-green-500)}.text-green-600{color:var(--color-green-600)}.text-green-700{color:var(--color-green-700)}.text-green-800{color:var(--color-green-800)}.text-muted-foreground,.text-muted-foreground\/30{color:var(--text-muted)}@supports (color:color-mix(in lab,red,red)){.text-muted-foreground\/30{color:color-mix(in oklab,var(--text-muted) 30%,transparent)}}.text-muted-foreground\/40{color:var(--text-muted)}@supports (color:color-mix(in lab,red,red)){.text-muted-foreground\/40{color:color-mix(in oklab,var(--text-muted) 40%,transparent)}}.text-muted-foreground\/50{color:var(--text-muted)}@supports (color:color-mix(in lab,red,red)){.text-muted-foreground\/50{color:color-mix(in oklab,var(--text-muted) 50%,transparent)}}.text-orange-500{color:var(--color-orange-500)}.text-orange-600{color:var(--color-orange-600)}.text-pink-800{color:var(--color-pink-800)}.text-popover-foreground{color:var(--text-primary)}.text-primary{color:var(--brand-600)}.text-primary-foreground{color:oklch(100% 0 0)}.text-purple-400{color:var(--color-purple-400)}.text-purple-600{color:var(--color-purple-600)}.text-purple-800{color:var(--color-purple-800)}.text-red-400{color:var(--color-red-400)}.text-red-500{color:var(--color-red-500)}.text-red-600{color:var(--color-red-600)}.text-red-700{color:var(--color-red-700)}.text-red-800{color:var(--color-red-800)}.text-red-900{color:var(--color-red-900)}.text-secondary-foreground{color:var(--text-primary)}.text-slate-950{color:var(--color-slate-950)}.text-success{color:var(--risk-low-text)}.text-violet-500{color:var(--color-violet-500)}.text-violet-600{color:var(--color-violet-600)}.text-violet-700{color:var(--color-violet-700)}.text-violet-800{color:var(--color-violet-800)}.text-violet-900{color:var(--color-violet-900)}.text-violet-950{color:var(--color-violet-950)}.text-warning{color:var(--risk-med-text)}.text-white{color:var(--color-white)}.text-yellow-400{color:var(--color-yellow-400)}.text-yellow-500{color:var(--color-yellow-500)}.text-yellow-600{color:var(--color-yellow-600)}.text-yellow-800{color:var(--color-yellow-800)}.text-yellow-950{color:var(--color-yellow-950)}.capitalize{text-transform:capitalize}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040)}.shadow-2xl,.shadow-\[0_28px_90px_rgba\(15\,23\,42\,0\.32\)\,0_0_0_1px_rgba\(255\,255\,255\,0\.72\)_inset\]{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_28px_90px_rgba\(15\,23\,42\,0\.32\)\,0_0_0_1px_rgba\(255\,255\,255\,0\.72\)_inset\]{--tw-shadow:0 28px 90px var(--tw-shadow-color,#0f172a52),0 0 0 1px var(--tw-shadow-color,#ffffffb8) inset}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a)}.shadow-lg,.shadow-md{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a)}.shadow-sm,.shadow-xl{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d)}.ring,.shadow-xs{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor)}.ring-0{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor)}.ring-0,.ring-1{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-primary\/20{--tw-shadow-color:var(--brand-600)}@supports (color:color-mix(in lab,red,red)){.shadow-primary\/20{--tw-shadow-color:color-mix(in oklab,color-mix(in oklab,var(--brand-600) 20%,transparent) var(--tw-shadow-alpha),transparent)}}.shadow-primary\/25{--tw-shadow-color:var(--brand-600)}@supports (color:color-mix(in lab,red,red)){.shadow-primary\/25{--tw-shadow-color:color-mix(in oklab,color-mix(in oklab,var(--brand-600) 25%,transparent) var(--tw-shadow-alpha),transparent)}}.ring-black\/\[0\.02\]{--tw-ring-color:#00000005}@supports (color:color-mix(in lab,red,red)){.ring-black\/\[0\.02\]{--tw-ring-color:color-mix(in oklab,var(--color-black) 2%,transparent)}}.ring-primary,.ring-primary\/30{--tw-ring-color:var(--brand-600)}@supports (color:color-mix(in lab,red,red)){.ring-primary\/30{--tw-ring-color:color-mix(in oklab,var(--brand-600) 30%,transparent)}}.ring-offset-background{--tw-ring-offset-color:var(--bg-app)}.outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur-md{--tw-backdrop-blur:blur(var(--blur-md))}.backdrop-blur-md,.backdrop-blur-sm{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm))}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[border-color\,box-shadow\]{transition-property:border-color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[color\,box-shadow\]{transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-none{transition-property:none}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-500{--tw-duration:.5s;transition-duration:.5s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.fade-in-0{--tw-enter-opacity:0}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.zoom-in-95{--tw-enter-scale:.95}.fade-in{--tw-enter-opacity:0}.paused{animation-play-state:paused}.running{animation-play-state:running}@media (hover:hover){.group-hover\:scale-105:is(:where(.group):hover *){--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}}.group-data-\[disabled\=true\]\:pointer-events-none:is(:where(.group)[data-disabled=true] *){pointer-events:none}.group-data-\[disabled\=true\]\:opacity-50:is(:where(.group)[data-disabled=true] *){opacity:.5}.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\:opacity-50:is(:where(.peer):disabled~*){opacity:.5}.peer-disabled\:opacity-70:is(:where(.peer):disabled~*){opacity:.7}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\:text-foreground::file-selector-button{color:var(--text-primary)}.placeholder\:text-muted-foreground::placeholder{color:var(--text-muted)}.last\:flex-initial:last-child{flex:0 auto}.last\:flex-none:last-child{flex:none}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.focus-within\:relative:focus-within{position:relative}.focus-within\:z-20:focus-within{z-index:20}@media (hover:hover){.hover\:-translate-y-1:hover{--tw-translate-y:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:scale-110:hover{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\:border-accent-foreground\/20:hover{border-color:var(--text-primary)}@supports (color:color-mix(in lab,red,red)){.hover\:border-accent-foreground\/20:hover{border-color:color-mix(in oklab,var(--text-primary) 20%,transparent)}}.hover\:border-muted-foreground\/30:hover{border-color:var(--text-muted)}@supports (color:color-mix(in lab,red,red)){.hover\:border-muted-foreground\/30:hover{border-color:color-mix(in oklab,var(--text-muted) 30%,transparent)}}.hover\:border-muted-foreground\/40:hover{border-color:var(--text-muted)}@supports (color:color-mix(in lab,red,red)){.hover\:border-muted-foreground\/40:hover{border-color:color-mix(in oklab,var(--text-muted) 40%,transparent)}}.hover\:border-primary:hover,.hover\:border-primary\/50:hover{border-color:var(--brand-600)}@supports (color:color-mix(in lab,red,red)){.hover\:border-primary\/50:hover{border-color:color-mix(in oklab,var(--brand-600) 50%,transparent)}}.hover\:bg-accent:hover,.hover\:bg-accent\/50:hover{background-color:var(--bg-active)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-accent\/50:hover{background-color:color-mix(in oklab,var(--bg-active) 50%,transparent)}}.hover\:bg-card\/80:hover{background-color:var(--bg-surface)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-card\/80:hover{background-color:color-mix(in oklab,var(--bg-surface) 80%,transparent)}}.hover\:bg-destructive\/90:hover{background-color:var(--risk-high-text)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab,var(--risk-high-text) 90%,transparent)}}.hover\:bg-gray-50:hover{background-color:var(--color-gray-50)}.hover\:bg-muted:hover{background-color:var(--bg-hover)}.hover\:bg-muted-foreground\/20:hover{background-color:var(--text-muted)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-muted-foreground\/20:hover{background-color:color-mix(in oklab,var(--text-muted) 20%,transparent)}}.hover\:bg-muted\/50:hover{background-color:var(--bg-hover)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-muted\/50:hover{background-color:color-mix(in oklab,var(--bg-hover) 50%,transparent)}}.hover\:bg-muted\/60:hover{background-color:var(--bg-hover)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-muted\/60:hover{background-color:color-mix(in oklab,var(--bg-hover) 60%,transparent)}}.hover\:bg-primary:hover,.hover\:bg-primary\/10:hover{background-color:var(--brand-600)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/10:hover{background-color:color-mix(in oklab,var(--brand-600) 10%,transparent)}}.hover\:bg-primary\/90:hover{background-color:var(--brand-600)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,var(--brand-600) 90%,transparent)}}.hover\:bg-secondary\/80:hover{background-color:var(--bg-hover)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab,var(--bg-hover) 80%,transparent)}}.hover\:bg-transparent:hover{background-color:#0000}.hover\:bg-violet-700:hover{background-color:var(--color-violet-700)}.hover\:text-accent-foreground:hover{color:var(--text-primary)}.hover\:text-destructive:hover{color:var(--risk-high-text)}.hover\:text-foreground:hover{color:var(--text-primary)}.hover\:text-primary:hover{color:var(--brand-600)}.hover\:text-primary-foreground:hover{color:oklch(100% 0 0)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-80:hover{opacity:.8}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.focus\:border-ring:focus{border-color:var(--brand-400)}.focus\:bg-accent:focus{background-color:var(--bg-active)}.focus\:bg-destructive\/10:focus{background-color:var(--risk-high-text)}@supports (color:color-mix(in lab,red,red)){.focus\:bg-destructive\/10:focus{background-color:color-mix(in oklab,var(--risk-high-text) 10%,transparent)}}.focus\:bg-green-50:focus{background-color:var(--color-green-50)}.focus\:bg-primary:focus{background-color:var(--brand-600)}.focus\:text-accent-foreground:focus{color:var(--text-primary)}.focus\:text-destructive:focus{color:var(--risk-high-text)}.focus\:text-green-600:focus{color:var(--color-green-600)}.focus\:text-primary-foreground:focus{color:oklch(100% 0 0)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor)}.focus\:ring-2:focus,.focus\:ring-3:focus{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-3:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor)}.focus\:ring-destructive:focus{--tw-ring-color:var(--risk-high-text)}.focus\:ring-ring:focus,.focus\:ring-ring\/50:focus{--tw-ring-color:var(--brand-400)}@supports (color:color-mix(in lab,red,red)){.focus\:ring-ring\/50:focus{--tw-ring-color:color-mix(in oklab,var(--brand-400) 50%,transparent)}}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus\:outline-hidden:focus{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.focus\:outline-hidden:focus{outline-offset:2px;outline:2px solid #0000}}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:border-ring:focus-visible{border-color:var(--brand-400)}.focus-visible\:ring-1:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-destructive:focus-visible,.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:var(--risk-high-text)}@supports (color:color-mix(in lab,red,red)){.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:color-mix(in oklab,var(--risk-high-text) 20%,transparent)}}.focus-visible\:ring-ring:focus-visible,.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:var(--brand-400)}@supports (color:color-mix(in lab,red,red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab,var(--brand-400) 50%,transparent)}}.focus-visible\:ring-offset-1:focus-visible{--tw-ring-offset-width:1px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:ring-offset-background:focus-visible{--tw-ring-offset-color:var(--bg-app)}.focus-visible\:outline-1:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\:outline-ring:focus-visible{outline-color:var(--brand-400)}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.active\:cursor-grabbing:active{cursor:grabbing}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.has-\[\>svg\]\:grid-cols-\[calc\(var\(--spacing\)\*4\)_1fr\]:has(>svg){grid-template-columns:calc(var(--spacing) * 4) 1fr}.has-\[\>svg\]\:gap-x-3:has(>svg){column-gap:calc(var(--spacing) * 3)}.has-\[\>svg\]\:px-2\.5:has(>svg){padding-inline:calc(var(--spacing) * 2.5)}.has-\[\>svg\]\:px-3:has(>svg){padding-inline:calc(var(--spacing) * 3)}.has-\[\>svg\]\:px-4:has(>svg){padding-inline:calc(var(--spacing) * 4)}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--risk-high-text)}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:var(--risk-high-text)}@supports (color:color-mix(in lab,red,red)){.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab,var(--risk-high-text) 20%,transparent)}}.aria-selected\:bg-accent[aria-selected=true],.aria-selected\:bg-accent\/50[aria-selected=true]{background-color:var(--bg-active)}@supports (color:color-mix(in lab,red,red)){.aria-selected\:bg-accent\/50[aria-selected=true]{background-color:color-mix(in oklab,var(--bg-active) 50%,transparent)}}.aria-selected\:text-accent-foreground[aria-selected=true]{color:var(--text-primary)}.aria-selected\:text-muted-foreground[aria-selected=true]{color:var(--text-muted)}.aria-selected\:opacity-30[aria-selected=true]{opacity:.3}.aria-selected\:opacity-100[aria-selected=true]{opacity:1}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true]{pointer-events:none}.data-\[disabled\=true\]\:opacity-50[data-disabled=true]{opacity:.5}.data-\[inset\]\:pl-8[data-inset]{padding-left:calc(var(--spacing) * 8)}.data-\[orientation\=horizontal\]\:h-px[data-orientation=horizontal]{height:1px}.data-\[orientation\=horizontal\]\:w-full[data-orientation=horizontal]{width:100%}.data-\[orientation\=vertical\]\:h-full[data-orientation=vertical]{height:100%}.data-\[orientation\=vertical\]\:w-px[data-orientation=vertical]{width:1px}.data-\[placeholder\]\:text-muted-foreground[data-placeholder]{color:var(--text-muted)}.data-\[selected\=true\]\:bg-accent[data-selected=true]{background-color:var(--bg-active)}.data-\[selected\=true\]\:text-accent-foreground[data-selected=true]{color:var(--text-primary)}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}.data-\[size\=default\]\:h-9[data-size=default]{height:calc(var(--spacing) * 9)}.data-\[size\=sm\]\:h-8[data-size=sm]{height:calc(var(--spacing) * 8)}:is(.\*\:data-\[slot\=alert-description\]\:text-destructive\/90>*)[data-slot=alert-description]{color:var(--risk-high-text)}@supports (color:color-mix(in lab,red,red)){:is(.\*\:data-\[slot\=alert-description\]\:text-destructive\/90>*)[data-slot=alert-description]{color:color-mix(in oklab,var(--risk-high-text) 90%,transparent)}}:is(.\*\*\:data-\[slot\=command-input-wrapper\]\:h-12 *)[data-slot=command-input-wrapper]{height:calc(var(--spacing) * 12)}:is(.\*\:data-\[slot\=select-value\]\:line-clamp-1>*)[data-slot=select-value]{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}:is(.\*\:data-\[slot\=select-value\]\:flex>*)[data-slot=select-value]{display:flex}:is(.\*\:data-\[slot\=select-value\]\:items-center>*)[data-slot=select-value]{align-items:center}:is(.\*\:data-\[slot\=select-value\]\:gap-2>*)[data-slot=select-value]{gap:calc(var(--spacing) * 2)}.data-\[state\=active\]\:border-primary[data-state=active]{border-color:var(--brand-600)}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:var(--bg-app)}.data-\[state\=active\]\:bg-white[data-state=active]{background-color:var(--color-white)}.data-\[state\=active\]\:font-semibold[data-state=active]{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.data-\[state\=active\]\:text-\[var\(--brand-700\)\][data-state=active]{color:var(--brand-700)}.data-\[state\=active\]\:text-foreground[data-state=active]{color:var(--text-primary)}.data-\[state\=active\]\:shadow-sm[data-state=active]{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.data-\[state\=checked\]\:translate-x-5[data-state=checked]{--tw-translate-x:calc(var(--spacing) * 5);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[state\=checked\]\:border-primary[data-state=checked]{border-color:var(--brand-600)}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:var(--brand-600)}.data-\[state\=checked\]\:text-primary-foreground[data-state=checked]{color:oklch(100% 0 0)}.data-\[state\=closed\]\:animate-accordion-up[data-state=closed]{animation:accordion-up var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=closed\]\:animate-out[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=closed\]\:duration-300[data-state=closed]{--tw-duration:.3s;transition-duration:.3s}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=closed\]\:slide-out-to-bottom[data-state=closed]{--tw-exit-translate-y:100%}.data-\[state\=closed\]\:slide-out-to-left[data-state=closed]{--tw-exit-translate-x:-100%}.data-\[state\=closed\]\:slide-out-to-right[data-state=closed]{--tw-exit-translate-x:100%}.data-\[state\=closed\]\:slide-out-to-top[data-state=closed]{--tw-exit-translate-y:-100%}.data-\[state\=open\]\:animate-accordion-down[data-state=open]{animation:accordion-down var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=open\]\:animate-in[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:var(--bg-active)}.data-\[state\=open\]\:bg-secondary[data-state=open]{background-color:var(--bg-hover)}.data-\[state\=open\]\:text-accent-foreground[data-state=open]{color:var(--text-primary)}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:var(--text-muted)}.data-\[state\=open\]\:duration-500[data-state=open]{--tw-duration:.5s;transition-duration:.5s}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}.data-\[state\=open\]\:slide-in-from-bottom[data-state=open]{--tw-enter-translate-y:100%}.data-\[state\=open\]\:slide-in-from-left[data-state=open]{--tw-enter-translate-x:-100%}.data-\[state\=open\]\:slide-in-from-right[data-state=open]{--tw-enter-translate-x:100%}.data-\[state\=open\]\:slide-in-from-top[data-state=open]{--tw-enter-translate-y:-100%}.data-\[state\=selected\]\:bg-muted[data-state=selected]{background-color:var(--bg-hover)}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked]{--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[state\=unchecked\]\:bg-input[data-state=unchecked]{background-color:var(--border-subtle)}.data-\[variant\=destructive\]\:text-destructive[data-variant=destructive]{color:var(--risk-high-text)}.data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant=destructive]:focus{background-color:var(--risk-high-text)}@supports (color:color-mix(in lab,red,red)){.data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant=destructive]:focus{background-color:color-mix(in oklab,var(--risk-high-text) 10%,transparent)}}.data-\[variant\=destructive\]\:focus\:text-destructive[data-variant=destructive]:focus{color:var(--risk-high-text)}@media (min-width:40rem){.sm\:mt-0{margin-top:0}.sm\:block{display:block}.sm\:inline{display:inline}.sm\:w-\[480px\]{width:480px}.sm\:w-\[520px\]{width:520px}.sm\:w-auto{width:auto}.sm\:max-w-2xl{max-width:var(--container-2xl)}.sm\:max-w-\[425px\]{max-width:425px}.sm\:max-w-\[500px\]{max-width:500px}.sm\:max-w-\[520px\]{max-width:520px}.sm\:max-w-\[560px\]{max-width:560px}.sm\:max-w-\[600px\]{max-width:600px}.sm\:max-w-\[680px\]{max-width:680px}.sm\:max-w-\[760px\]{max-width:760px}.sm\:max-w-lg{max-width:var(--container-lg)}.sm\:max-w-sm{max-width:var(--container-sm)}.sm\:flex-initial{flex:0 auto}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-\[100px_1fr\]{grid-template-columns:100px 1fr}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:justify-end{justify-content:flex-end}:where(.sm\:space-y-0>:not(:last-child)){--tw-space-y-reverse:0;margin-block:0}:where(.sm\:space-x-2>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 2) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-x-reverse)))}:where(.sm\:space-x-4>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 4) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-x-reverse)))}.sm\:rounded-3xl{border-radius:var(--radius-3xl)}.sm\:rounded-lg{border-radius:12px}.sm\:text-left{text-align:left}.sm\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}@media (min-width:48rem){.md\:col-span-2{grid-column:span 2/span 2}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:items-end{align-items:flex-end}.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}@media (min-width:64rem){.lg\:col-span-2{grid-column:span 2/span 2}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-\[320px_minmax\(0\,1fr\)\]{grid-template-columns:320px minmax(0,1fr)}.lg\:grid-cols-\[minmax\(0\,1fr\)_260px\]{grid-template-columns:minmax(0,1fr) 260px}.lg\:flex-row{flex-direction:row}.lg\:items-center{align-items:center}.lg\:justify-between{justify-content:space-between}.lg\:gap-6{gap:calc(var(--spacing) * 6)}.lg\:gap-10{gap:calc(var(--spacing) * 10)}.lg\:p-8{padding:calc(var(--spacing) * 8)}.lg\:px-3{padding-inline:calc(var(--spacing) * 3)}.lg\:px-8{padding-inline:calc(var(--spacing) * 8)}.lg\:text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}}@media (min-width:80rem){.xl\:w-\[22rem\]{width:22rem}.xl\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.xl\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.xl\:grid-cols-\[minmax\(0\,1fr\)_22rem\]{grid-template-columns:minmax(0,1fr) 22rem}}.dark\:scale-0:is([data-theme=dark] *){--tw-scale-x:0%;--tw-scale-y:0%;--tw-scale-z:0%;scale:var(--tw-scale-x) var(--tw-scale-y)}.dark\:scale-100:is([data-theme=dark] *){--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.dark\:-rotate-90:is([data-theme=dark] *){rotate:-90deg}.dark\:rotate-0:is([data-theme=dark] *){rotate:0deg}.dark\:border-amber-800:is([data-theme=dark] *){border-color:var(--color-amber-800)}.dark\:border-cyan-800:is([data-theme=dark] *){border-color:var(--color-cyan-800)}.dark\:border-emerald-800:is([data-theme=dark] *){border-color:var(--color-emerald-800)}.dark\:border-gray-700:is([data-theme=dark] *){border-color:var(--color-gray-700)}.dark\:border-green-800:is([data-theme=dark] *){border-color:var(--color-green-800)}.dark\:border-input:is([data-theme=dark] *){border-color:var(--border-subtle)}.dark\:border-pink-800:is([data-theme=dark] *){border-color:var(--color-pink-800)}.dark\:border-yellow-800:is([data-theme=dark] *){border-color:var(--color-yellow-800)}.dark\:bg-amber-900\/30:is([data-theme=dark] *){background-color:#7b33064d}@supports (color:color-mix(in lab,red,red)){.dark\:bg-amber-900\/30:is([data-theme=dark] *){background-color:color-mix(in oklab,var(--color-amber-900) 30%,transparent)}}.dark\:bg-amber-950\/20:is([data-theme=dark] *){background-color:#46190133}@supports (color:color-mix(in lab,red,red)){.dark\:bg-amber-950\/20:is([data-theme=dark] *){background-color:color-mix(in oklab,var(--color-amber-950) 20%,transparent)}}.dark\:bg-amber-950\/40:is([data-theme=dark] *){background-color:#46190166}@supports (color:color-mix(in lab,red,red)){.dark\:bg-amber-950\/40:is([data-theme=dark] *){background-color:color-mix(in oklab,var(--color-amber-950) 40%,transparent)}}.dark\:bg-blue-900\/30:is([data-theme=dark] *){background-color:#1c398e4d}@supports (color:color-mix(in lab,red,red)){.dark\:bg-blue-900\/30:is([data-theme=dark] *){background-color:color-mix(in oklab,var(--color-blue-900) 30%,transparent)}}.dark\:bg-cyan-900\/30:is([data-theme=dark] *){background-color:#104e644d}@supports (color:color-mix(in lab,red,red)){.dark\:bg-cyan-900\/30:is([data-theme=dark] *){background-color:color-mix(in oklab,var(--color-cyan-900) 30%,transparent)}}.dark\:bg-destructive\/60:is([data-theme=dark] *){background-color:var(--risk-high-text)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-destructive\/60:is([data-theme=dark] *){background-color:color-mix(in oklab,var(--risk-high-text) 60%,transparent)}}.dark\:bg-emerald-950\/40:is([data-theme=dark] *){background-color:#002c2266}@supports (color:color-mix(in lab,red,red)){.dark\:bg-emerald-950\/40:is([data-theme=dark] *){background-color:color-mix(in oklab,var(--color-emerald-950) 40%,transparent)}}.dark\:bg-gray-800\/50:is([data-theme=dark] *){background-color:#1e293980}@supports (color:color-mix(in lab,red,red)){.dark\:bg-gray-800\/50:is([data-theme=dark] *){background-color:color-mix(in oklab,var(--color-gray-800) 50%,transparent)}}.dark\:bg-green-900:is([data-theme=dark] *){background-color:var(--color-green-900)}.dark\:bg-green-900\/30:is([data-theme=dark] *){background-color:#0d542b4d}@supports (color:color-mix(in lab,red,red)){.dark\:bg-green-900\/30:is([data-theme=dark] *){background-color:color-mix(in oklab,var(--color-green-900) 30%,transparent)}}.dark\:bg-green-950\/20:is([data-theme=dark] *){background-color:#032e1533}@supports (color:color-mix(in lab,red,red)){.dark\:bg-green-950\/20:is([data-theme=dark] *){background-color:color-mix(in oklab,var(--color-green-950) 20%,transparent)}}.dark\:bg-input\/30:is([data-theme=dark] *){background-color:var(--border-subtle)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-input\/30:is([data-theme=dark] *){background-color:color-mix(in oklab,var(--border-subtle) 30%,transparent)}}.dark\:bg-pink-900\/30:is([data-theme=dark] *){background-color:#8610434d}@supports (color:color-mix(in lab,red,red)){.dark\:bg-pink-900\/30:is([data-theme=dark] *){background-color:color-mix(in oklab,var(--color-pink-900) 30%,transparent)}}.dark\:bg-purple-900\/30:is([data-theme=dark] *){background-color:#59168b4d}@supports (color:color-mix(in lab,red,red)){.dark\:bg-purple-900\/30:is([data-theme=dark] *){background-color:color-mix(in oklab,var(--color-purple-900) 30%,transparent)}}.dark\:bg-red-900:is([data-theme=dark] *){background-color:var(--color-red-900)}.dark\:bg-yellow-900:is([data-theme=dark] *){background-color:var(--color-yellow-900)}.dark\:bg-yellow-900\/20:is([data-theme=dark] *){background-color:#733e0a33}@supports (color:color-mix(in lab,red,red)){.dark\:bg-yellow-900\/20:is([data-theme=dark] *){background-color:color-mix(in oklab,var(--color-yellow-900) 20%,transparent)}}.dark\:bg-yellow-900\/30:is([data-theme=dark] *){background-color:#733e0a4d}@supports (color:color-mix(in lab,red,red)){.dark\:bg-yellow-900\/30:is([data-theme=dark] *){background-color:color-mix(in oklab,var(--color-yellow-900) 30%,transparent)}}.dark\:from-slate-900:is([data-theme=dark] *){--tw-gradient-from:var(--color-slate-900);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.dark\:to-slate-800:is([data-theme=dark] *){--tw-gradient-to:var(--color-slate-800);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.dark\:text-amber-300:is([data-theme=dark] *){color:var(--color-amber-300)}.dark\:text-amber-400:is([data-theme=dark] *){color:var(--color-amber-400)}.dark\:text-blue-400:is([data-theme=dark] *){color:var(--color-blue-400)}.dark\:text-cyan-300:is([data-theme=dark] *){color:var(--color-cyan-300)}.dark\:text-emerald-300:is([data-theme=dark] *){color:var(--color-emerald-300)}.dark\:text-gray-300:is([data-theme=dark] *){color:var(--color-gray-300)}.dark\:text-gray-400:is([data-theme=dark] *){color:var(--color-gray-400)}.dark\:text-green-200:is([data-theme=dark] *){color:var(--color-green-200)}.dark\:text-green-300:is([data-theme=dark] *){color:var(--color-green-300)}.dark\:text-green-400:is([data-theme=dark] *){color:var(--color-green-400)}.dark\:text-pink-300:is([data-theme=dark] *){color:var(--color-pink-300)}.dark\:text-purple-400:is([data-theme=dark] *){color:var(--color-purple-400)}.dark\:text-red-200:is([data-theme=dark] *){color:var(--color-red-200)}.dark\:text-red-400:is([data-theme=dark] *){color:var(--color-red-400)}.dark\:text-yellow-200:is([data-theme=dark] *){color:var(--color-yellow-200)}.dark\:text-yellow-400:is([data-theme=dark] *){color:var(--color-yellow-400)}@media (hover:hover){.dark\:hover\:bg-accent\/50:is([data-theme=dark] *):hover{background-color:var(--bg-active)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-accent\/50:is([data-theme=dark] *):hover{background-color:color-mix(in oklab,var(--bg-active) 50%,transparent)}}.dark\:hover\:bg-input\/50:is([data-theme=dark] *):hover{background-color:var(--border-subtle)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-input\/50:is([data-theme=dark] *):hover{background-color:color-mix(in oklab,var(--border-subtle) 50%,transparent)}}}.dark\:focus-visible\:ring-destructive\/40:is([data-theme=dark] *):focus-visible{--tw-ring-color:var(--risk-high-text)}@supports (color:color-mix(in lab,red,red)){.dark\:focus-visible\:ring-destructive\/40:is([data-theme=dark] *):focus-visible{--tw-ring-color:color-mix(in oklab,var(--risk-high-text) 40%,transparent)}}.dark\:aria-invalid\:ring-destructive\/40:is([data-theme=dark] *)[aria-invalid=true]{--tw-ring-color:var(--risk-high-text)}@supports (color:color-mix(in lab,red,red)){.dark\:aria-invalid\:ring-destructive\/40:is([data-theme=dark] *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab,var(--risk-high-text) 40%,transparent)}}.dark\:data-\[state\=active\]\:bg-input\/30:is([data-theme=dark] *)[data-state=active]{background-color:var(--border-subtle)}@supports (color:color-mix(in lab,red,red)){.dark\:data-\[state\=active\]\:bg-input\/30:is([data-theme=dark] *)[data-state=active]{background-color:color-mix(in oklab,var(--border-subtle) 30%,transparent)}}.dark\:data-\[state\=checked\]\:bg-primary:is([data-theme=dark] *)[data-state=checked]{background-color:var(--brand-600)}.dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20:is([data-theme=dark] *)[data-variant=destructive]:focus{background-color:var(--risk-high-text)}@supports (color:color-mix(in lab,red,red)){.dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20:is([data-theme=dark] *)[data-variant=destructive]:focus{background-color:color-mix(in oklab,var(--risk-high-text) 20%,transparent)}}.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading]{padding-inline:calc(var(--spacing) * 2)}.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading]{padding-block:calc(var(--spacing) * 1.5)}.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading]{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading]{color:var(--text-muted)}.\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group]{padding-inline:calc(var(--spacing) * 2)}.\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0 [cmdk-group]:not([hidden])~[cmdk-group]{padding-top:0}.\[\&_\[cmdk-input-wrapper\]_svg\]\:h-5 [cmdk-input-wrapper] svg{height:calc(var(--spacing) * 5)}.\[\&_\[cmdk-input-wrapper\]_svg\]\:w-5 [cmdk-input-wrapper] svg{width:calc(var(--spacing) * 5)}.\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input]{height:calc(var(--spacing) * 12)}.\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item]{padding-inline:calc(var(--spacing) * 2)}.\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item]{padding-block:calc(var(--spacing) * 3)}.\[\&_\[cmdk-item\]_svg\]\:h-5 [cmdk-item] svg{height:calc(var(--spacing) * 5)}.\[\&_\[cmdk-item\]_svg\]\:w-5 [cmdk-item] svg{width:calc(var(--spacing) * 5)}.\[\&_p\]\:leading-relaxed p{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_svg\:not\(\[class\*\=\'text-\'\]\)\]\:text-muted-foreground svg:not([class*=text-]){color:var(--text-muted)}.\[\&_tr\]\:border-b tr{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-style:var(--tw-border-style);border-width:0}.\[\&\:has\(\[aria-selected\]\)\]\:bg-accent:has([aria-selected]){background-color:var(--bg-active)}.first\:\[\&\:has\(\[aria-selected\]\)\]\:rounded-l-md:first-child:has([aria-selected]){border-top-left-radius:8px;border-bottom-left-radius:8px}.last\:\[\&\:has\(\[aria-selected\]\)\]\:rounded-r-md:last-child:has([aria-selected]){border-top-right-radius:8px;border-bottom-right-radius:8px}.\[\&\:has\(\[aria-selected\]\.day-outside\)\]\:bg-accent\/50:has([aria-selected].day-outside){background-color:var(--bg-active)}@supports (color:color-mix(in lab,red,red)){.\[\&\:has\(\[aria-selected\]\.day-outside\)\]\:bg-accent\/50:has([aria-selected].day-outside){background-color:color-mix(in oklab,var(--bg-active) 50%,transparent)}}.\[\&\:has\(\[aria-selected\]\.day-range-end\)\]\:rounded-r-md:has([aria-selected].day-range-end){border-top-right-radius:8px;border-bottom-right-radius:8px}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:0}.\[\.border-b\]\:pb-6.border-b{padding-bottom:calc(var(--spacing) * 6)}.\[\.border-t\]\:pt-6.border-t{padding-top:calc(var(--spacing) * 6)}:is(.\*\:\[span\]\:last\:flex>*):is(span):last-child{display:flex}:is(.\*\:\[span\]\:last\:items-center>*):is(span):last-child{align-items:center}:is(.\*\:\[span\]\:last\:gap-2>*):is(span):last-child{gap:calc(var(--spacing) * 2)}:is(.data-\[variant\=destructive\]\:\*\:\[svg\]\:\!text-destructive[data-variant=destructive]>*):is(svg){color:var(--risk-high-text)!important}.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox]{--tw-translate-y:2px;translate:var(--tw-translate-x) var(--tw-translate-y)}.\[\&\>button\]\:opacity-100>button{opacity:1}.\[\&\>svg\]\:pointer-events-none>svg{pointer-events:none}.\[\&\>svg\]\:size-3>svg{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&\>svg\]\:size-4>svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&\>svg\]\:h-12>svg{height:calc(var(--spacing) * 12)}.\[\&\>svg\]\:w-12>svg{width:calc(var(--spacing) * 12)}.\[\&\>svg\]\:translate-y-0\.5>svg{--tw-translate-y:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y)}.\[\&\>svg\]\:text-current>svg{color:currentColor}.\[\&\>tr\]\:last\:border-b-0>tr:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.\[\&\[data-state\=open\]\>svg\]\:rotate-180[data-state=open]>svg{rotate:180deg}@media (hover:hover){a.\[a\&\]\:hover\:bg-accent:hover{background-color:var(--bg-active)}a.\[a\&\]\:hover\:bg-destructive\/90:hover{background-color:var(--risk-high-text)}@supports (color:color-mix(in lab,red,red)){a.\[a\&\]\:hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab,var(--risk-high-text) 90%,transparent)}}a.\[a\&\]\:hover\:bg-primary\/90:hover{background-color:var(--brand-600)}@supports (color:color-mix(in lab,red,red)){a.\[a\&\]\:hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,var(--brand-600) 90%,transparent)}}a.\[a\&\]\:hover\:bg-secondary\/90:hover{background-color:var(--bg-hover)}@supports (color:color-mix(in lab,red,red)){a.\[a\&\]\:hover\:bg-secondary\/90:hover{background-color:color-mix(in oklab,var(--bg-hover) 90%,transparent)}}a.\[a\&\]\:hover\:text-accent-foreground:hover{color:var(--text-primary)}}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--bg-app:oklch(97.1% .004 215);--bg-surface:oklch(100% 0 0);--bg-hover:oklch(96.2% .006 215);--bg-active:oklch(94.8% .01 215);--border-subtle:oklch(91.2% .006 215);--border-strong:oklch(87% .01 215);--text-primary:oklch(16.5% .008 215);--text-secondary:oklch(38% .012 215);--text-muted:oklch(53% .014 215);--text-disabled:oklch(69% .008 215);--brand-50:oklch(97.9% .022 215);--brand-100:oklch(95% .048 215);--brand-200:oklch(90% .085 215);--brand-300:oklch(83.5% .118 215);--brand-400:oklch(76% .152 215);--brand-500:oklch(68% .175 215);--brand-600:oklch(59.8% .188 215);--brand-700:oklch(51.5% .178 215);--brand-900:oklch(31.2% .118 215);--risk-low-bg:oklch(96.2% .044 145);--risk-low-text:oklch(38% .12 145);--risk-low-border:oklch(76% .12 145);--risk-med-bg:oklch(96.8% .052 85);--risk-med-text:oklch(56% .14 75);--risk-med-border:oklch(76% .14 75);--risk-high-bg:oklch(96.2% .058 55);--risk-high-text:oklch(48% .16 45);--risk-high-border:oklch(72% .16 45);--risk-crit-bg:oklch(96.2% .04 25);--risk-crit-text:oklch(44% .15 25);--risk-crit-border:oklch(72% .14 25);--shadow-panel:#00000008 0 0 0 1px,#0000000f 0 2px 8px,#0000001f 0 4px 16px;--font-display:var(--font-dm-sans,"DM Sans",system-ui,sans-serif);--font-body:var(--font-inter,"Inter",system-ui,sans-serif);--sidebar-w:240px;--radius:.75rem;--background:oklch(97.1% .004 215);--foreground:oklch(16.5% .008 215);--card:oklch(100% 0 0);--card-foreground:oklch(16.5% .008 215);--popover:oklch(100% 0 0);--popover-foreground:oklch(16.5% .008 215);--primary:oklch(59.8% .188 215);--primary-foreground:oklch(100% 0 0);--secondary:oklch(96.2% .006 215);--secondary-foreground:oklch(16.5% .008 215);--muted:oklch(96.2% .006 215);--muted-foreground:oklch(53% .014 215);--accent:oklch(94.8% .01 215);--accent-foreground:oklch(16.5% .008 215);--destructive:oklch(48% .16 45);--success:oklch(38% .12 145);--success-foreground:oklch(100% 0 0);--warning:oklch(56% .14 75);--warning-foreground:oklch(100% 0 0);--info:oklch(59.8% .188 215);--info-foreground:oklch(100% 0 0);--border:oklch(91.2% .006 215);--input:oklch(91.2% .006 215);--ring:oklch(76% .152 215);--chart-1:oklch(59.8% .188 215);--chart-2:oklch(56% .14 75);--chart-3:oklch(38% .12 145);--chart-4:oklch(83.5% .118 215);--chart-5:oklch(48% .16 45);--sidebar:oklch(100% 0 0);--sidebar-foreground:oklch(16.5% .008 215);--sidebar-primary:oklch(59.8% .188 215);--sidebar-primary-foreground:oklch(100% 0 0);--sidebar-accent:oklch(94.8% .01 215);--sidebar-accent-foreground:oklch(31.2% .118 215);--sidebar-border:oklch(91.2% .006 215);--sidebar-ring:oklch(76% .152 215);--shadow-float:#0000000a 0 0 0 1px,#0000001f 0 8px 28px,#00000038 0 20px 56px;--topnav-h:52px;--font-mono:"JetBrains Mono",ui-monospace,monospace}[data-theme=dark]{color-scheme:dark;--bg-app:oklch(13.5% .012 215);--bg-surface:oklch(16.5% .01 215);--bg-hover:oklch(18.5% .01 215);--bg-active:oklch(20% .012 215);--border-subtle:oklch(24% .015 215);--border-strong:oklch(29% .015 215);--text-primary:oklch(94% .008 215);--text-secondary:oklch(72% .012 215);--text-muted:oklch(54% .01 215);--text-disabled:oklch(38% .008 215);--brand-100:oklch(20% .045 215);--brand-200:oklch(24% .075 215);--brand-300:oklch(31% .11 215);--brand-600:oklch(59.8% .188 215);--brand-700:oklch(66% .175 215);--brand-900:oklch(82% .09 215);--risk-low-bg:oklch(18.5% .042 145);--risk-low-text:oklch(68% .12 145);--risk-low-border:oklch(34% .1 145);--risk-med-bg:oklch(19.5% .048 85);--risk-med-text:oklch(76% .12 75);--risk-med-border:oklch(36% .1 75);--risk-high-bg:oklch(19.5% .055 55);--risk-high-text:oklch(78% .13 45);--risk-high-border:oklch(37% .12 45);--risk-crit-bg:oklch(19.5% .038 25);--risk-crit-text:oklch(78% .12 25);--risk-crit-border:oklch(36% .1 25);--shadow-panel:#0000004d 0 0 0 1px,#0006 0 4px 16px,#0009 0 8px 32px;--background:oklch(13.5% .012 215);--foreground:oklch(94% .008 215);--card:oklch(16.5% .01 215);--card-foreground:oklch(94% .008 215);--popover:oklch(18.5% .01 215);--popover-foreground:oklch(94% .008 215);--primary:oklch(59.8% .188 215);--primary-foreground:oklch(100% 0 0);--secondary:oklch(20% .012 215);--secondary-foreground:oklch(94% .008 215);--muted:oklch(18.5% .01 215);--muted-foreground:oklch(54% .01 215);--accent:oklch(20% .012 215);--accent-foreground:oklch(94% .008 215);--destructive:oklch(78% .12 25);--success:oklch(68% .12 145);--success-foreground:oklch(13.5% .012 215);--warning:oklch(76% .12 75);--warning-foreground:oklch(13.5% .012 215);--border:oklch(24% .015 215);--input:oklch(24% .015 215);--ring:oklch(59.8% .188 215);--sidebar:oklch(16.5% .01 215);--sidebar-foreground:oklch(94% .008 215);--sidebar-primary:oklch(59.8% .188 215);--sidebar-primary-foreground:oklch(100% 0 0);--sidebar-accent:oklch(20% .012 215);--sidebar-accent-foreground:oklch(85% .09 215);--sidebar-border:oklch(24% .015 215);--sidebar-ring:oklch(59.8% .188 215)}.app{min-height:100vh;display:flex}.sidebar{width:var(--sidebar-w);background:var(--bg-surface);border-right:1px solid var(--border-subtle);z-index:50;flex-direction:column;transition:transform .3s;display:flex;position:fixed;inset-block:0;inset-inline-start:0}.sidebar-header{border-bottom:1px solid var(--border-subtle);padding:20px 16px 16px}.brand{font-family:var(--font-display);color:var(--text-primary);align-items:center;gap:10px;font-size:16px;font-weight:800;text-decoration:none;display:flex}.logo-mark{background:var(--brand-600);color:#fff;letter-spacing:-.5px;border-radius:8px;flex-shrink:0;place-items:center;width:30px;height:30px;font-size:13px;font-weight:800;display:grid}.sidebar-nav{flex-direction:column;flex:1;gap:2px;padding:12px 8px;display:flex;overflow-y:auto}.nav-section-label{color:var(--text-disabled);padding:8px 10px 4px}.nav-item{color:var(--text-secondary);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:9px;align-items:center;gap:10px;width:100%;padding:8px 10px;font-size:14px;font-weight:500;text-decoration:none;transition:background .1s,color .1s;display:flex}.nav-item:hover{background:var(--bg-hover);color:var(--text-primary)}.nav-item.active{background:var(--bg-active);color:var(--brand-900)}.nav-item.active .nav-icon{color:var(--brand-600)}.nav-icon{width:18px;height:18px;color:var(--text-muted);flex-shrink:0;place-items:center;display:grid}.sidebar-footer{border-top:1px solid var(--border-subtle);padding:12px 8px;position:relative}.user-row{cursor:pointer;text-align:left;width:100%;font-family:var(--font-body);background:0 0;border:none;border-radius:9px;align-items:center;gap:10px;padding:8px 10px;transition:background .1s;display:flex}.user-row:hover{background:var(--bg-hover)}.user-ava{background:var(--brand-200);width:32px;height:32px;font-family:var(--font-display);color:var(--brand-700);border-radius:50%;flex-shrink:0;place-items:center;font-size:12px;font-weight:700;display:grid}.user-ava.admin-ava{color:oklch(38% .12 25);background:oklch(96.2% .04 25)}.user-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.user-role{color:var(--text-muted);font-size:11px}.sidebar-overlay{z-index:49;background:#0006;display:none;position:fixed;inset:0}.sidebar-overlay.show{display:block}.profile-popup{background:var(--bg-surface);border:1px solid var(--border-subtle);box-shadow:var(--shadow-panel);z-index:200;border-radius:14px;position:absolute;bottom:calc(100% + 8px);left:8px;right:8px;overflow:hidden}.pp-user{border-bottom:1px solid var(--border-subtle);align-items:center;gap:12px;padding:16px;display:flex}.pp-ava{background:var(--brand-200);width:40px;height:40px;font-family:var(--font-display);color:var(--brand-700);border-radius:50%;flex-shrink:0;place-items:center;font-size:15px;font-weight:700;display:grid}.pp-name{color:var(--text-primary);font-size:14px;font-weight:600}.pp-email{color:var(--text-muted);font-size:12px}.pp-menu{padding:6px}.pp-item{color:var(--text-secondary);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;width:100%;padding:9px 10px;font-size:13px;text-decoration:none;transition:background .1s;display:flex}.pp-item:hover{background:var(--bg-hover);color:var(--text-primary)}.pp-item.danger{color:var(--risk-high-text)}.pp-item.danger:hover{background:var(--risk-high-bg)}.topbar{background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);z-index:40;align-items:center;gap:12px;height:52px;padding:0 24px;display:flex;position:sticky;top:0}.hamburger{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-radius:6px;padding:6px;display:none}.search-wrap{background:var(--bg-app);border:1px solid var(--border-subtle);border-radius:8px;flex:1;align-items:center;gap:8px;max-width:360px;padding:6px 12px;display:flex}.search-icon{color:var(--text-muted);flex-shrink:0;font-size:13px}.search-wrap input{font-family:var(--font-body);color:var(--text-primary);background:0 0;border:none;outline:none;width:100%;font-size:13px}.search-wrap input::placeholder{color:var(--text-disabled)}.topbar-right{gap:8px;margin-inline-start:auto}.icon-btn{cursor:pointer;width:32px;height:32px;color:var(--text-muted);background:0 0;border:none;border-radius:8px;place-items:center;font-size:15px;transition:background .1s;display:grid}.icon-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.notif-btn{position:relative}.notif-dot{background:var(--risk-high-text);border:2px solid var(--bg-surface);border-radius:50%;width:7px;height:7px;position:absolute;top:5px;right:5px}.top-ava{background:var(--brand-200);width:30px;height:30px;font-family:var(--font-display);color:var(--brand-700);cursor:pointer;border:none;border-radius:50%;flex-shrink:0;place-items:center;padding:0;font-size:11px;font-weight:700;display:grid}.theme-toggle-btn{opacity:.75;font-size:14px;line-height:1;transition:opacity .15s,transform .2s}.theme-toggle-btn:hover{opacity:1;transform:scale(1.15)}.theme-icon-sun{display:inline}.theme-icon-moon{display:none}[data-theme=dark] .theme-icon-sun{display:none!important}[data-theme=dark] .theme-icon-moon{display:inline!important}.main-area{min-width:0;flex-direction:column;flex:1;margin-inline-start:var(--sidebar-w);display:flex}.content{width:100%;padding:28px 28px 48px}.page-hdr{margin-bottom:24px}.page-title{font-family:var(--font-display);color:var(--text-primary);margin-bottom:4px;font-size:22px;font-weight:800}.page-desc{color:var(--text-muted);font-size:14px}.page-hdr-row{align-items:flex-start;gap:16px}.page-hdr-row,.section-hdr{justify-content:space-between;display:flex}.section-hdr{align-items:center;margin-bottom:16px}.section-sub{color:var(--text-muted);margin-top:2px;font-size:13px}.view-all{color:var(--brand-600);font-size:13px;font-weight:500;text-decoration:none;transition:color .1s}.view-all:hover{color:var(--brand-700)}.welcome-banner{background:linear-gradient(120deg,oklch(26% .095 218),oklch(38% .13 210));border-radius:16px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;padding:28px 32px;display:flex;position:relative;overflow:hidden}.welcome-banner:before{content:"";pointer-events:none;background:radial-gradient(70% 100% at 85%,#ffffff14,#0000);position:absolute;inset:0}.wb-left{position:relative}.wb-greeting{font-family:var(--font-display);color:#fff;margin-bottom:4px;font-size:22px;font-weight:800}.wb-sub{color:#ffffffb8;font-size:14px}.wb-right{flex-shrink:0;align-items:center;gap:10px;display:flex;position:relative}.wb-badge{text-align:center;background:#ffffff1f;border:1px solid #fff3;border-radius:10px;padding:10px 16px}.wb-badge-val{font-family:var(--font-display);color:#fff;font-size:22px;font-weight:800;line-height:1}.wb-badge-lbl{color:#ffffffa6;margin-top:2px;font-size:11px}.stats-row{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:28px;display:grid}.stats-row-3{grid-template-columns:repeat(3,1fr)}.stats-row-2{grid-template-columns:repeat(2,1fr)}.stat-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;align-items:center;gap:16px;padding:18px 20px;transition:transform .18s,box-shadow .18s;display:flex}.stat-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f,0 0 0 1px #00000008}.sc-icon{border-radius:11px;flex-shrink:0;place-items:center;width:44px;height:44px;font-size:20px;display:grid}.sc-right{flex:1;min-width:0}.sc-val{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text-primary);margin-bottom:3px;font-size:26px;font-weight:800;line-height:1}.sc-lbl{color:var(--text-muted);font-size:12px}.sc-trend{border-radius:9999px;align-items:center;gap:4px;margin-top:6px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.trend-up{background:var(--risk-low-bg);color:var(--risk-low-text)}.trend-down{background:var(--risk-high-bg);color:var(--risk-high-text)}.trend-neutral{background:var(--bg-hover);color:var(--text-muted)}.card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;overflow:hidden}.card-pad{padding:20px}.card-hdr{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.card-title{font-size:15px;font-weight:700}.card-body{padding:20px}.card-hover{cursor:pointer;transition:box-shadow .18s,border-color .18s,transform .18s}.card-hover:hover{box-shadow:var(--shadow-panel);border-color:var(--brand-300);transform:translateY(-2px)}.courses-row{grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:28px;display:grid}.courses-row-4{grid-template-columns:repeat(4,1fr)}.courses-row-2{grid-template-columns:repeat(2,1fr)}.course-card{background:var(--bg-surface);border:1px solid var(--border-subtle);cursor:pointer;color:inherit;border-radius:12px;text-decoration:none;transition:box-shadow .18s,border-color .18s,transform .18s;display:block;overflow:hidden}.course-card:hover{border-color:var(--brand-300);transform:translateY(-3px);box-shadow:0 8px 28px #00000021,0 0 0 1px #00000008}.cc-thumb{height:100px;position:relative;overflow:hidden}.cc-thumb img{object-fit:cover;width:100%;height:100%}.cc-category{letter-spacing:.06em;text-transform:uppercase;color:#fff;background:#00000073;font-weight:700;left:8px}.cc-category,.cc-status{border-radius:9999px;padding:3px 9px;font-size:10px;position:absolute;top:8px}.cc-status{font-weight:600;right:8px}.status-progress{background:var(--brand-600);color:#fff}.status-complete{background:var(--risk-low-bg);color:var(--risk-low-text)}.status-not-started{color:#fff;background:#00000059}.cc-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:3px;font-size:14px;font-weight:700;display:-webkit-box;overflow:hidden}.cc-instructor{color:var(--text-muted);margin-bottom:10px;font-size:12px}.progress-bar-bg{background:var(--border-subtle);border-radius:9999px;height:5px;margin-bottom:5px;overflow:hidden}.progress-fill{background:var(--brand-600);border-radius:9999px;height:5px}.progress-fill.amber{background:var(--risk-med-text)}.progress-fill.red{background:var(--risk-high-text)}.cc-meta{justify-content:space-between;align-items:center;display:flex}.cc-prog-lbl{color:var(--text-muted);font-size:11px}.cc-last{color:var(--text-disabled);font-size:11px}.cc-footer{padding:10px 16px}.data-table-wrap{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;overflow:hidden}.data-table{border-collapse:collapse;width:100%}.data-table th{text-align:left;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);background:var(--bg-app);white-space:nowrap;padding:11px 16px;font-size:11px;font-weight:700}.data-table td,.data-table th{border-bottom:1px solid var(--border-subtle)}.data-table td{color:var(--text-primary);padding:13px 16px;font-size:13px}.data-table tr:last-child td{border-bottom:none}.data-table tbody tr{transition:background .1s,transform .12s}.data-table tbody tr:hover td{transform:translate(2px)}.data-table tbody tr:hover{background:var(--bg-hover)}.td-muted{color:var(--text-muted)!important}.td-name{font-weight:600}.td-sub{color:var(--text-muted);margin-top:2px;font-size:11px}.tr-expand-toggle{cursor:pointer}.tr-expand-toggle td:first-child{padding-left:12px}.expand-icon{color:var(--text-muted);margin-right:6px;font-size:10px;transition:transform .15s;display:inline-block}.expanded .expand-icon{transform:rotate(90deg)}.tr-expand-body{display:none}.tr-expand-body.open{display:table-row}.expand-sub{background:var(--bg-app);border-top:1px solid var(--border-subtle)}.expand-sub td{padding:14px 20px}.badge{border-radius:9999px;align-items:center;gap:4px;padding:3px 9px;font-size:11px;font-weight:600;display:inline-flex}.badge-brand{background:var(--brand-100);color:var(--brand-900)}.badge-low{background:var(--risk-low-bg);color:var(--risk-low-text);border:1px solid var(--risk-low-border)}.badge-med{background:var(--risk-med-bg);color:var(--risk-med-text);border:1px solid var(--risk-med-border)}.badge-high{background:var(--risk-high-bg);color:var(--risk-high-text);border:1px solid var(--risk-high-border)}.badge-neutral{background:var(--bg-hover)}.badge-neutral,.badge-outline{color:var(--text-muted);border:1px solid var(--border-subtle)}.badge-outline{background:0 0}.risk-badge{white-space:nowrap;border:1px solid #0000;border-radius:9999px;align-items:center;gap:5px;padding:4px 12px;font-size:11px;font-weight:600;display:inline-flex}.rb-low{background:var(--risk-low-bg);color:var(--risk-low-text);border-color:var(--risk-low-border)}.rb-med{background:var(--risk-med-bg);color:var(--risk-med-text);border-color:var(--risk-med-border)}.rb-high{background:var(--risk-high-bg);color:var(--risk-high-text);border-color:var(--risk-high-border)}.btn-primary{font-family:var(--font-body);color:#fff;background:var(--brand-600);cursor:pointer;border:none;border-radius:9999px;align-items:center;gap:7px;padding:10px 22px;font-size:14px;font-weight:600;text-decoration:none;transition:background .15s;display:inline-flex}.btn-primary:hover{background:var(--brand-700)}.btn-outline{font-family:var(--font-body);color:var(--text-secondary);border:1.5px solid var(--border-strong);cursor:pointer;background:0 0;border-radius:9999px;align-items:center;gap:7px;padding:8px 18px;font-size:13px;font-weight:500;text-decoration:none;transition:border-color .15s,color .15s;display:inline-flex}.btn-outline:hover{border-color:var(--brand-400);color:var(--brand-600)}.btn-ghost{font-family:var(--font-body);color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:6px;padding:7px 14px;font-size:13px;font-weight:500;transition:background .1s,color .1s;display:inline-flex}.btn-ghost:hover{background:var(--bg-hover);color:var(--text-primary)}.btn-danger{font-family:var(--font-body);color:#fff;background:var(--risk-high-text);cursor:pointer;border:none;border-radius:9999px;align-items:center;gap:6px;padding:9px 20px;font-size:13px;font-weight:600;transition:opacity .15s;display:inline-flex}.btn-danger:hover{opacity:.85}.btn-continue{font-family:var(--font-body);color:#fff;background:var(--brand-600);cursor:pointer;border:none;border-radius:9999px;padding:6px 14px;font-size:12px;font-weight:600;transition:background .1s}.btn-continue:hover{background:var(--brand-700)}.btn-view{font-family:var(--font-body);color:var(--brand-600);border:1.5px solid var(--brand-300);cursor:pointer;background:0 0;border-radius:9999px;justify-content:center;align-items:center;gap:5px;width:100%;padding:6px 14px;font-size:12px;font-weight:600;transition:background .1s,border-color .1s;display:inline-flex}.btn-view:hover{background:var(--brand-50);border-color:var(--brand-400)}.btn-sm{padding:6px 14px!important;font-size:12px!important}.btn-xs{padding:4px 10px!important;font-size:11px!important}.btn-icon{border:1px solid var(--border-subtle);background:var(--bg-surface);cursor:pointer;width:32px;height:32px;color:var(--text-muted);border-radius:8px;place-items:center;font-size:14px;transition:background .1s,border-color .1s;display:grid}.btn-icon:hover{background:var(--bg-hover);border-color:var(--border-strong);color:var(--text-primary)}.filter-row{border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;gap:10px;padding:14px 20px}.filter-row,.filter-search{align-items:center;display:flex}.filter-search{background:var(--bg-app);border:1px solid var(--border-subtle);border-radius:8px;flex:1;gap:8px;min-width:200px;padding:7px 12px}.filter-search input{font-family:var(--font-body);color:var(--text-primary);background:0 0;border:none;outline:none;width:100%;font-size:13px}.filter-search input::placeholder{color:var(--text-disabled)}.filter-select{font-family:var(--font-body);border-radius:8px;padding:7px 30px 7px 12px;font-size:13px;transition:border-color .12s,box-shadow .12s}.filter-right{align-items:center;gap:8px;margin-left:auto;display:flex}.tabs{border-bottom:1px solid var(--border-subtle);display:flex}.tab{font-family:var(--font-body);color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:12px 18px;font-size:13px;font-weight:500;transition:color .15s,border-color .15s}.tab.active{color:var(--brand-600);border-bottom-color:var(--brand-600);font-weight:600}.tab:hover:not(.active){color:var(--text-primary)}.tab-content{padding:20px;display:none}.tab-content.active{display:block}.tab-panels>*{display:none}.tab-panels>.active{display:block}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:60px 24px;display:flex}.es-icon{opacity:.4;margin-bottom:4px;font-size:40px}.es-title{font-family:var(--font-display);color:var(--text-primary);font-size:17px;font-weight:700}.es-desc{color:var(--text-muted);max-width:320px;font-size:14px;line-height:1.55}.es-cta{margin-top:8px}.empty-state.es-filter .es-icon{font-size:32px}.empty-state.es-filter .es-title{font-size:15px}.risk-nudge{background:var(--bg-surface);border:1px solid var(--risk-high-border);border-radius:14px;grid-template-columns:auto minmax(0,1fr) minmax(180px,240px);align-items:center;gap:18px;margin-bottom:24px;padding:20px 22px;display:grid;position:relative}.rn-left{border-right:1px solid var(--border-subtle);flex-direction:column;align-items:center;gap:8px;padding-right:16px;display:flex}.rn-risk-icon{font-size:22px}.rn-risk-pill{letter-spacing:.08em;text-transform:uppercase;background:var(--risk-high-bg);color:var(--risk-high-text);border:1px solid var(--risk-high-border);white-space:nowrap;border-radius:9999px;padding:4px 10px;font-size:10px;font-weight:700}.rn-body{flex:1}.rn-title{font-family:var(--font-display);color:var(--text-primary);margin-bottom:4px;font-size:15px;font-weight:700}.rn-sub{color:var(--text-secondary);margin-bottom:10px;font-size:13px;line-height:1.5}.rn-factors{flex-wrap:wrap;gap:6px;margin-bottom:14px;display:flex}.rn-factor{background:var(--bg-app);border:1px solid var(--border-subtle);color:var(--text-secondary);border-radius:9999px;padding:3px 10px;font-size:11px;font-weight:500}.rn-actions,.rn-cta-zone{flex-wrap:wrap;gap:10px;margin-bottom:10px;display:flex}.rn-cta-zone{flex-direction:column;justify-content:center;align-items:stretch;margin-bottom:0}.rn-cta-zone .btn-outline,.rn-cta-zone .btn-primary{text-align:center;justify-content:center}.rn-footer{color:var(--text-disabled);align-items:center;gap:6px;font-size:11px;display:flex}.rn-dismiss{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-radius:6px;place-items:center;width:24px;height:24px;font-size:16px;display:grid;position:absolute;top:14px;right:14px}.rn-dismiss:hover{background:var(--bg-hover)}@media (max-width:900px){.risk-nudge{grid-template-columns:1fr;align-items:stretch}.rn-left{border-right:none;border-bottom:1px solid var(--border-subtle);justify-content:flex-start;padding-bottom:12px;padding-right:0}.rn-cta-zone,.rn-left{flex-direction:row}}.form-group{margin-bottom:18px}.form-label{margin-bottom:6px;font-size:13px;font-weight:600;display:block}.form-input,.form-label{color:var(--text-primary)}.form-input{width:100%;font-family:var(--font-body);background:var(--bg-surface);border:1.5px solid var(--border-subtle);border-radius:9px;outline:none;padding:10px 14px;font-size:14px;transition:border-color .15s}.form-input:focus{border-color:var(--brand-400)}.form-input::placeholder{color:var(--text-disabled)}.form-textarea{resize:vertical;min-height:100px}.form-hint{color:var(--text-muted)}.form-error,.form-hint{margin-top:5px;font-size:12px}.form-error{color:var(--risk-high-text)}.form-row{gap:16px}.pagination-wrap{border-top:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:14px 20px;display:flex}.pg-info{font-size:13px}.pg-btn{background:var(--bg-surface);width:32px;height:32px;place-items:center;transition:all .1s;display:grid}.pg-btn:hover{background:var(--bg-hover);border-color:var(--border-strong);color:var(--text-primary)}.pg-btn.active{background:var(--brand-600);border-color:var(--brand-600);color:#fff;font-weight:600}.action-menu-wrap{display:inline-block;position:relative}.action-menu-btn{cursor:pointer;width:28px;height:28px;color:var(--text-muted);font-size:18px;font-family:var(--font-body);background:0 0;border:none;border-radius:6px;place-items:center;transition:background .1s;display:grid}.action-menu-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.action-menu-dropdown{background:var(--bg-surface);border:1px solid var(--border-subtle);box-shadow:var(--shadow-panel);z-index:100;border-radius:10px;min-width:160px;display:none;position:absolute;top:calc(100% + 4px);right:0;overflow:hidden}.action-menu-dropdown.open{animation:menuIn .12s ease-out;display:block}@keyframes menuIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.menu-item{color:var(--text-secondary);cursor:pointer;text-align:left;width:100%;font-size:13px;font-family:var(--font-body);background:0 0;border:none;align-items:center;gap:8px;padding:9px 14px;transition:background .1s;display:flex}.menu-item:hover{background:var(--bg-hover);color:var(--text-primary)}.menu-item.danger{color:var(--risk-high-text)}.menu-item.danger:hover{background:var(--risk-high-bg)}.menu-sep{background:var(--border-subtle);height:1px;margin:4px 0}.modal-backdrop{z-index:100;background:#00000073;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.modal{background:var(--bg-surface);border-radius:16px;flex-direction:column;width:100%;max-width:520px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 24px 80px #00000040}.modal-hdr{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-title{font-family:var(--font-display);color:var(--text-primary);font-size:17px;font-weight:700}.modal-close{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-radius:6px;place-items:center;width:28px;height:28px;font-size:18px;display:grid}.modal-close:hover{background:var(--bg-hover)}.modal-body{min-height:0;padding:24px;overflow-y:auto}.modal-footer{border-top:1px solid var(--border-subtle);flex-shrink:0;justify-content:flex-end;gap:10px;padding:16px 24px;display:flex}.modal-lg{max-width:700px}.slideover-backdrop{z-index:90;background:#00000073;display:none;position:fixed;inset:0}.slideover-backdrop.open{display:block}.slideover-panel{background:var(--bg-surface);z-index:300;opacity:0;pointer-events:none;border-radius:16px;flex-direction:column;width:480px;max-width:calc(100vw - 32px);transition:opacity .22s,transform .22s;display:flex;position:fixed;top:16px;bottom:16px;right:16px;overflow:hidden;transform:scale(.96)translateY(8px);box-shadow:0 20px 60px #0000004d}.slideover-panel.open{opacity:1;pointer-events:auto;transform:scale(1)translateY(0)}.slideover{background:var(--bg-surface);border-left:1px solid var(--border-subtle);z-index:91;flex-direction:column;width:480px;max-width:90vw;transition:transform .3s;display:flex;position:fixed;top:0;bottom:0;right:0;transform:translate(100%);box-shadow:-8px 0 40px #00000026}.slideover.open{transform:none}.so-hdr{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.so-title{font-family:var(--font-display);color:var(--text-primary);font-size:16px;font-weight:700}.so-body{flex:1;padding:24px;overflow-y:auto}.so-footer{border-top:1px solid var(--border-subtle);justify-content:flex-end;gap:10px;padding:16px 24px;display:flex}.progress-wrap{background:var(--border-subtle);border-radius:9999px;height:6px;overflow:hidden}.progress-bar{background:var(--brand-600);border-radius:9999px;height:100%;transition:width .4s}.progress-bar.amber{background:var(--risk-med-text)}.progress-bar.red{background:var(--risk-high-text)}.progress-bar.green{background:var(--risk-low-text)}.skeleton{background:linear-gradient(90deg,var(--border-subtle) 25%,var(--bg-hover) 37%,var(--border-subtle) 63%);background-size:400% 100%;border-radius:6px;animation:shimmer 1.4s infinite}.skel-h{height:14px}.skel-h-sm{height:10px}.skel-h-lg{height:22px}.skel-h-xl{height:32px}.skel-circle{border-radius:50%}.skel-rect{border-radius:8px}.skel-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;padding:20px}.loading-bar{background:var(--brand-600);z-index:9999;height:3px;animation:loadingBar 2s ease-in-out infinite;position:fixed;top:0;left:0;right:0}@keyframes loadingBar{0%{opacity:1;transform:translate(-100%)}50%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100%)}}.insights-panel{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;margin-bottom:28px;overflow:hidden}.ip-header{border-bottom:1px solid var(--border-subtle);align-items:center;gap:10px;padding:18px 20px;display:flex}.ip-title{font-family:var(--font-display);color:var(--text-primary);font-size:15px;font-weight:700}.ip-desc{color:var(--text-muted);font-size:12px}.activity-week{align-items:flex-end;gap:6px;height:80px;margin-bottom:16px;display:flex}.act-day{flex-direction:column;flex:1;align-items:center;gap:4px;display:flex}.act-bar{background:var(--brand-600);opacity:.85;border-radius:4px 4px 0 0;width:100%;min-height:4px;transition:opacity .2s}.act-bar:hover{opacity:1}.act-label{color:var(--text-muted);font-size:10px}.bottom-grid{grid-template-columns:1fr 1fr;gap:20px;margin-bottom:28px;display:grid}.bottom-grid-3{grid-template-columns:2fr 1fr}.deadline-list{flex-direction:column;gap:1px;display:flex}.dl-item{border-bottom:1px solid var(--border-subtle);gap:12px;padding:11px 0}.dl-item:last-child{border-bottom:none}.dl-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.dl-name{color:var(--text-primary);flex:1;font-size:13px;font-weight:500}.dl-course{color:var(--text-muted);font-size:11px}.dl-due{text-align:right;white-space:nowrap;font-size:12px;font-weight:600}.due-urgent{color:var(--risk-med-text)}.due-soon{color:var(--risk-high-text)}.due-normal{color:var(--text-muted)}.rec-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:28px;display:grid}.rec-card{background:var(--bg-surface);border:1px solid var(--border-subtle);cursor:pointer;border-radius:12px;flex-direction:column;gap:10px;padding:18px;transition:box-shadow .18s,border-color .18s,transform .18s;display:flex}.rec-card:hover{box-shadow:var(--shadow-panel);border-color:var(--brand-300);transform:translateY(-2px)}.rc-type-row{align-items:center;gap:6px;display:flex}.rc-type{letter-spacing:.07em;background:var(--brand-100);color:var(--brand-900);border-radius:9999px;font-weight:700}.rc-cat,.rc-type{text-transform:uppercase;padding:3px 9px;font-size:10px}.rc-cat{letter-spacing:.05em;background:var(--bg-app);color:var(--text-muted);border:1px solid var(--border-subtle);border-radius:9999px;font-weight:600}.rc-title{font-family:var(--font-display);color:var(--text-primary);font-size:14px;font-weight:700}.rc-desc,.rc-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.rc-desc{color:var(--text-secondary)}.rc-reason{background:var(--bg-app);border:1px solid var(--border-subtle);border-radius:8px;align-items:flex-start;gap:7px;padding:9px 10px;display:flex}.rc-reason-icon{flex-shrink:0;margin-top:1px;font-size:13px}.rc-reason-text{color:var(--text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11px;line-height:1.5;display:-webkit-box;overflow:hidden}.rc-footer{margin-top:auto}.stepper{gap:0;margin-bottom:32px}.step{align-items:center;gap:10px;display:flex}.step-num{border:2px solid var(--border-strong);width:28px;height:28px;background:var(--bg-surface);border-radius:50%;flex-shrink:0;place-items:center;font-size:12px;font-weight:700;transition:all .2s;display:grid}.step.active .step-num{border-color:var(--brand-600);background:var(--brand-600);color:#fff}.step.done .step-num{border-color:var(--risk-low-border);background:var(--risk-low-bg);color:var(--risk-low-text)}.step-label{font-size:13px;font-weight:500}.step.active .step-label{color:var(--text-primary);font-weight:600}.step-line{height:1px;margin:0 8px}.auth-page{grid-template-columns:1fr 1fr;min-height:100vh;display:grid}.auth-left{background:linear-gradient(140deg,oklch(26% .095 218),oklch(42% .145 210));flex-direction:column;padding:60px}.auth-left,.auth-right{justify-content:center;display:flex}.auth-right{background:var(--bg-app);align-items:center;padding:48px}.auth-card{background:var(--bg-surface);width:100%;max-width:440px;box-shadow:var(--shadow-panel);border-radius:20px;padding:40px}.auth-logo{color:#fff;align-items:center;gap:10px;margin-bottom:48px;font-size:18px;display:flex}.auth-logo,.auth-title{font-family:var(--font-display);font-weight:800}.auth-title{color:var(--text-primary);margin-bottom:8px;font-size:26px}.auth-sub{color:var(--text-muted);margin-bottom:28px;font-size:14px}.auth-divider{align-items:center;gap:12px;margin:20px 0;display:flex}.auth-divider span{color:var(--text-muted);white-space:nowrap;font-size:12px}.auth-divider:after,.auth-divider:before{content:"";background:var(--border-subtle);flex:1;height:1px}.auth-footer{text-align:center;color:var(--text-muted);margin-top:20px;font-size:13px}.auth-footer a{color:var(--brand-600);font-weight:500;text-decoration:none}.auth-footer a:hover{color:var(--brand-700)}.public-nav{z-index:50;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border-subtle);background:#ffffffd9;align-items:center;gap:32px;height:64px;padding:0 48px;transition:box-shadow .2s;display:flex;position:sticky;top:0}.public-nav.scrolled{box-shadow:0 2px 20px #00000014}.public-nav .brand{font-size:18px}.nav-links{align-items:center;gap:4px;display:flex}.nav-link{color:var(--text-secondary);border-radius:8px;padding:6px 12px;font-size:14px;font-weight:500;text-decoration:none;transition:color .15s,background .15s}.nav-link:hover{color:var(--text-primary);background:var(--bg-hover)}.nav-link.active{color:var(--brand-600)}.nav-ctas{align-items:center;gap:8px;margin-left:auto;display:flex}.public-footer{color:oklch(72% .012 215);background:oklch(16.5% .008 215);padding:64px 48px 32px}.footer-grid{grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:40px;display:grid}.footer-brand{font-family:var(--font-display);color:#fff;align-items:center;gap:10px;margin-bottom:12px;font-size:18px;font-weight:800;display:flex}.footer-links h4{letter-spacing:.08em;text-transform:uppercase;color:oklch(53% .014 215);margin-bottom:12px;font-size:12px;font-weight:700}.footer-links a{color:oklch(72% .012 215);margin-bottom:8px;font-size:14px;text-decoration:none;transition:color .15s;display:block}.footer-links a:hover{color:#fff}.footer-bottom{color:oklch(53% .014 215);border-top:1px solid oklch(24% .015 215);justify-content:space-between;align-items:center;padding-top:24px;font-size:13px;display:flex}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes progressSlideIn{0%{width:0}to{width:var(--w,100%)}}@keyframes barGrow{0%{height:0}to{height:var(--h,100%)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes ppIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes modalIn{0%{opacity:0;transform:scale(.95)translateY(8px)}to{opacity:1;transform:none}}@keyframes countUp{0%{opacity:0}to{opacity:1}}.fade-in{opacity:0;animation:fadeSlideIn .4s forwards}.fade-in:first-child{animation-delay:0s}.fade-in:nth-child(2){animation-delay:80ms}.fade-in:nth-child(3){animation-delay:.16s}.fade-in:nth-child(4){animation-delay:.24s}.fade-in:nth-child(5){animation-delay:.32s}.fade-in:nth-child(6){animation-delay:.4s}@media (max-width:768px){.sidebar{transform:translate(-100%)}.sidebar.open{transform:translate(0)}.main-area{margin-inline-start:0}.topbar{padding:0 16px}.hamburger{display:block}.content{padding:20px 16px 40px}.stats-row{grid-template-columns:repeat(2,1fr)}.courses-row{grid-template-columns:repeat(1,1fr)}.bottom-grid,.form-row,.rec-grid{grid-template-columns:1fr}.search-wrap{max-width:200px}.auth-page{grid-template-columns:1fr}.auth-left{display:none}.public-nav{padding:0 24px}}.text-brand{color:var(--brand-600)}.text-muted-color{color:var(--text-muted)}.text-secondary-color{color:var(--text-secondary)}.text-success{color:var(--risk-low-text)}.text-warning-color{color:var(--risk-med-text)}.text-danger{color:var(--risk-high-text)}.bg-surface{background:var(--bg-surface)}.border-subtle-style{border:1px solid var(--border-subtle)}.font-display{font-family:var(--font-display)}.shadow-panel-style{box-shadow:var(--shadow-panel)}.truncate-2{-webkit-line-clamp:2}.truncate-2,.truncate-3{-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.truncate-3{-webkit-line-clamp:3}.label-overline{text-transform:uppercase;letter-spacing:.05em;font-size:.6875rem;font-weight:600;line-height:1}.glass-effect{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border-subtle)!important;background:#ffffffd9!important}.gradient-primary,.gradient-primary-text{background:linear-gradient(135deg,var(--brand-600) 0,var(--brand-400) 100%)}.gradient-primary-text{-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.progress-gradient{background:linear-gradient(90deg,var(--brand-600) 0,var(--brand-400) 100%)}.np-item{gap:12px}.np-item.unread:hover{background:oklch(96.5% .014 215)}.np-icon{width:32px;height:32px;margin-top:2px;font-size:14px}.np-item-sub{line-height:1.4}.np-unread-dot{background:var(--brand-600);border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-top:6px}.bell-badge{font-weight:700}.bell-badge.hidden{display:none}.hp-title{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);font-size:12px}.hp-item{border-radius:8px;gap:9px}.hp-item-icon{color:var(--text-muted)}.pp-name-lg{line-height:1.3}.pp-email-lg{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pp-role-tag.instructor{color:oklch(56% .14 75);background:oklch(96.8% .052 85)}.profile-popup .pp-menu,.topbar-profile-popup .pp-menu{padding:6px}.profile-popup .pp-item,.topbar-profile-popup .pp-item{color:var(--text-primary);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:9px;align-items:center;gap:10px;width:100%;padding:9px 10px;font-size:13px;font-weight:500;text-decoration:none;transition:background .1s;display:flex}.profile-popup .pp-item:hover,.topbar-profile-popup .pp-item:hover{background:var(--bg-hover)}@keyframes arcSpin{to{transform:rotate(1turn)}}.spinner-arc-sm{border-width:2.5px}@keyframes dualOuter{to{transform:rotate(1turn)}}@keyframes dualInner{to{transform:rotate(-1turn)}}.spinner-dual:before{border:3px solid #0000;border-top:3px solid var(--brand-600);animation:dualOuter .8s linear infinite}.spinner-dual:after{border:3px solid #0000;border-bottom:3px solid var(--brand-400);animation:dualInner 1.2s linear infinite;inset:6px}@keyframes dotPulse{0%,80%,to{opacity:.4;transform:scale(.6)}40%{opacity:1;transform:scale(1)}}@keyframes orbitSpin{to{transform:rotate(1turn)}}@keyframes orbitPulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.spinner-orbit{width:44px;height:44px;display:inline-block}.orbit-core{width:12px;height:12px;animation:orbitPulse 1.4s ease-in-out infinite;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes rippleBurst{0%{opacity:.4;transform:scale(0)}to{opacity:0;transform:scale(3.5)}}.ripple-btn{font-family:var(--font-body);color:#fff;background:var(--brand-600);cursor:pointer;border:none;border-radius:9999px;padding:12px 26px;font-size:14px;font-weight:600;transition:background .15s}.ripple-btn:hover{background:var(--brand-700)}.l1-panel.pushed-back{filter:brightness(.92);transition:transform .3s,filter .3s;transform:scale(.96)translate(0)}.panel-close{margin-left:8px;font-size:18px}.ptab{font-family:var(--font-body);padding:10px 18px}.ptab:hover:not(.active){color:var(--text-primary)}.panel-ftr{padding:16px 24px}.path-card:hover{box-shadow:var(--shadow-panel)}@keyframes cardIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes barFill{0%{width:0}to{width:var(--w,0)}}@keyframes critPulse{0%,to{box-shadow:0 0 #c83c2873}50%{box-shadow:0 0 0 7px #c83c2800}}@keyframes overduePulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes wiggle{0%,to{transform:rotate(0)}15%{transform:rotate(-14deg)}30%{transform:rotate(12deg)}45%{transform:rotate(-9deg)}60%{transform:rotate(7deg)}75%{transform:rotate(-4deg)}90%{transform:rotate(2deg)}}@keyframes sparkDraw{0%{stroke-dashoffset:var(--path-len,300)}to{stroke-dashoffset:0}}@keyframes ringFill{0%{stroke-dashoffset:251px}to{stroke-dashoffset:var(--ring-offset,80)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-14px)}to{opacity:1;transform:none}}@keyframes toastSlideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes flashBg{0%,to{background:var(--risk-high-bg)}40%{background:oklch(94% .068 25)}}.overdue-row{animation:overduePulse 3s ease-in-out infinite}.pg-wide{width:auto!important;padding:7px 14px!important}.ri-score-input{width:72px;font-family:var(--font-body);color:var(--text-primary);padding:6px 10px;transition:border-color .15s}.success-icon{width:64px;height:64px;margin-bottom:8px;font-size:28px;font-weight:700}.radio-card input[type=radio]{flex-shrink:0;margin-top:2px}.rc-text{flex:1}.step-circle{border:2px solid var(--border-strong);width:28px;height:28px;color:var(--text-muted);background:var(--bg-surface);transition:all .2s}.step.active .step-circle{border-color:var(--brand-600);background:var(--brand-600);color:#fff}.step.completed .step-circle{border-color:var(--risk-low-border);background:var(--risk-low-bg);color:var(--risk-low-text)}.step-connector{background:var(--border-subtle);flex:1;height:1px;margin:0 6px}.step-connector.completed{background:var(--risk-low-border)}.step-content{display:none}.step-content.active{display:block}.review-row{border-bottom:1px solid var(--border-subtle);align-items:center;padding:8px 0;font-size:13px;display:flex}.review-row:last-child{border-bottom:none}.review-key{width:120px;color:var(--text-muted);flex-shrink:0}.review-val{color:var(--text-primary);flex:1;font-weight:500}.color-swatch-row{align-items:center;gap:10px;display:flex}.color-swatch-preview{border:1px solid var(--border-subtle);cursor:pointer;border-radius:8px;width:36px;height:36px;overflow:hidden}.color-swatch-preview input[type=color]{cursor:pointer;opacity:0;border:none;width:100%;height:100%;padding:0}.color-swatch-hex{color:var(--text-primary);font-family:monospace;font-size:13px}[data-theme=dark] .help-popover,[data-theme=dark] .notif-popover,[data-theme=dark] .profile-popup,[data-theme=dark] .topbar-profile-popup{background:var(--bg-surface);border-color:var(--border-subtle);box-shadow:0 8px 40px #00000080}[data-theme=dark] .topbar{border-color:var(--border-subtle);background:#161c26f5}[data-theme=dark] .search-wrap{background:var(--bg-app);border-color:var(--border-subtle)}[data-theme=dark] .search-wrap input{color:var(--text-primary);background:0 0}@media (prefers-reduced-motion:reduce){*,:after,:before{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@keyframes spinArc{to{transform:rotate(1turn)}}@keyframes spinOuter{to{transform:rotate(-1turn)}}@keyframes loadingBarAnim{0%{left:-35%;right:100%}60%{left:100%;right:-90%}to{left:100%;right:-90%}}.page-loader{background:var(--bg-app);z-index:9999;flex-direction:column;justify-content:center;align-items:center;gap:20px;display:flex;position:fixed;inset:0}.page-loader-brand{font-family:var(--font-display);color:var(--text-primary);align-items:center;gap:10px;font-size:20px;font-weight:800;display:flex}.page-loader-sub{color:var(--text-muted);font-size:13px}.btn-loading{pointer-events:none;opacity:.8}.btn-loading .btn-inner-content,.btn-spinner{display:none}.btn-loading .btn-spinner{align-items:center;gap:7px;display:inline-flex}.notif-popover{animation:ppIn .15s ease-out}.np-item:last-of-type{border-bottom:none}.help-popover{width:260px}.help-popover,.topbar-profile-popup{animation:ppIn .15s ease-out}.l1-backdrop{animation:backdropIn .2s}.l1-panel{border-left:1px solid var(--border-subtle);box-shadow:-8px 0 40px #0000001f}.l1-panel.pushed-back{opacity:.6}@keyframes backdropIn{0%{opacity:0}to{opacity:1}}@keyframes flashBanner{0%,to{background:var(--risk-high-bg)}40%{background:oklch(94% .068 25)}}.flash-once{animation:flashBanner .6s}.path-thumb-ai{background:linear-gradient(135deg,oklch(83.5% .118 215),oklch(76% .152 215))}@keyframes countUpIn{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.sc-val.count-init{animation:countUpIn .4s ease-out}.progress-fill-anim{animation:progressSlideIn .65s ease-out .3s both!important}.stagger-1{animation-delay:0s!important}.stagger-2{animation-delay:60ms!important}.stagger-3{animation-delay:.12s!important}.stagger-4{animation-delay:.18s!important}.stagger-5{animation-delay:.24s!important}.stagger-6{animation-delay:.3s!important}.pg-ellipsis{place-items:center;height:32px;display:grid}.pg-num.active{border-color:var(--brand-600)}[data-theme=dark] .generate-card,[data-theme=dark] .path-card,[data-theme=dark] .personal-card{background:var(--bg-surface);border-color:var(--border-subtle)}.filter-input-wrap{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:8px;flex:1;align-items:center;gap:8px;min-width:180px;max-width:280px;padding:8px 12px;display:flex}.filter-input-wrap input{font-family:var(--font-body);color:var(--text-primary);background:0 0;border:none;outline:none;width:100%;font-size:13px}.filter-input-wrap input::placeholder{color:var(--text-disabled)}.filter-input{font-family:var(--font-body);background:var(--bg-app);color:var(--text-primary);outline:none;padding:7px 12px;font-size:13px;transition:border-color .15s}.filter-input:focus{border-color:var(--brand-400)}.paths-grid{margin-bottom:28px}.path-card:hover{border-color:var(--border-strong)}@media (prefers-reduced-motion:reduce){.path-card{opacity:1;animation:none}}.personalized-hdr{flex-wrap:wrap;gap:12px}.personal-grid{margin-bottom:28px}.personal-progress-wrap{flex-direction:column;gap:5px;display:flex}.pg-btn{font-family:var(--font-body);color:var(--text-secondary);border:1px solid var(--border-subtle);cursor:pointer;background:0 0;border-radius:8px;padding:7px 14px;font-size:13px;font-weight:500;transition:background .1s,border-color .1s}.pg-btn:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-strong)}.pg-btn:disabled{opacity:.4;cursor:not-allowed}.pg-pages{align-items:center;gap:4px;display:flex}.pg-num{width:33px;height:33px;color:var(--text-secondary);cursor:pointer;font-size:13px;font-weight:500;font-family:var(--font-body);background:0 0;border:1.5px solid #0000;border-radius:8px;place-items:center;transition:background .1s;display:grid}.pg-num:hover:not(.active){background:var(--bg-hover)}.pg-num.active{background:var(--brand-600);color:#fff;font-weight:600}.pg-ellipsis{color:var(--text-muted);-webkit-user-select:none;user-select:none;padding:0 4px;font-size:13px}.pg-info{margin-inline-start:auto}.pg-info,.stat-label{color:var(--text-muted);font-size:12px}.stat-label{text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px;font-weight:500}.stat-value{font-family:var(--font-display);color:var(--text-primary);font-size:28px;font-weight:800;line-height:1}.chart-panel{margin-bottom:24px}.chart-toggle{gap:4px;display:flex}.chart-toggle-btn{border:1px solid var(--border-strong);cursor:pointer;color:var(--text-muted);font-size:12px;font-weight:500;font-family:var(--font-body);background:0 0;border-radius:6px;padding:5px 12px;transition:all .15s}.chart-toggle-btn.active{background:var(--brand-600);border-color:var(--brand-600);color:#fff}.bar-chart{padding:20px;position:relative}.bar-row{align-items:center;gap:12px;margin-bottom:10px;display:flex}.bar-row:last-child{margin-bottom:0}.bar-label{width:190px;color:var(--text-secondary);text-align:right;flex-shrink:0;padding-right:4px;font-size:13px}.bar-track{background:var(--bg-app);border-radius:4px;flex:1;height:20px;overflow:hidden}.bar-fill{border-radius:4px;justify-content:flex-end;align-items:center;width:0;height:100%;padding-right:6px;animation:barSlideIn .7s forwards;display:flex}.bar-fill span{color:#fff;white-space:nowrap;font-size:11px;font-weight:600}.bar-pct{width:40px;color:var(--text-secondary);text-align:right;flex-shrink:0;font-size:12px;font-weight:600}@keyframes barSlideIn{0%{width:0}to{width:var(--bar-w,0)}}.table-filters{flex-wrap:wrap;gap:10px;margin-bottom:16px;display:flex}.skills-table{border-collapse:collapse;width:100%}.skills-table th{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);text-align:left;white-space:nowrap;padding:10px 16px;font-size:11px;font-weight:600}.skills-table td,.skills-table th{border-bottom:1px solid var(--border-subtle)}.skills-table td{vertical-align:middle;padding:12px 16px;font-size:13px;transition:background .15s}.skills-table tr:last-child td{border-bottom:none}.skills-table tbody tr:hover td{background:var(--bg-hover)}.skill-name-cell{color:var(--text-primary);font-weight:500}.category-cell{color:var(--text-muted);font-size:12px}.prof-cell{align-items:center;gap:8px;min-width:140px;display:flex}.prof-bar-bg{background:var(--bg-app);border-radius:9999px;flex:1;height:6px;overflow:hidden}.prof-bar-fill{border-radius:9999px;height:100%}.prof-pct{color:var(--text-secondary);text-align:right;flex-shrink:0;width:32px;font-size:12px;font-weight:600}.courses-cell{color:var(--text-muted);font-size:12px}.reco-strip{opacity:0;margin-top:24px;animation:slideInBottom .5s .8s forwards}@keyframes slideInBottom{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.reco-header{font-family:var(--font-display);color:var(--text-primary);align-items:center;gap:8px;margin-bottom:14px;font-size:15px;font-weight:700;display:flex}.reco-cards{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}@media (max-width:800px){.reco-cards{grid-template-columns:1fr}}.reco-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;flex-direction:column;gap:10px;padding:18px;transition:box-shadow .15s,transform .15s;display:flex}.reco-card:hover{box-shadow:var(--shadow-panel);transform:translateY(-2px)}.reco-card-title{font-family:var(--font-display);color:var(--text-primary);font-size:14px;font-weight:700}.reco-card-skills{flex-wrap:wrap;gap:6px;display:flex}.reco-card-footer{justify-content:space-between;align-items:center;margin-top:auto;display:flex}.match-badge{color:var(--risk-low-text);background:var(--risk-low-bg);border:1px solid var(--risk-low-border);border-radius:9999px;padding:3px 10px;font-size:11px;font-weight:700}@keyframes statFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.skills-stat-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;padding:18px 20px;animation:statFadeIn .35s both}.skills-stat-card:first-child{animation-delay:0s}.skills-stat-card:nth-child(2){animation-delay:60ms}.skills-stat-card:nth-child(3){animation-delay:.12s}.skills-stat-card:nth-child(4){animation-delay:.18s}.progress-fill-anim{animation:barFill .65s ease-out .4s both;width:0!important}.spinner-arc{border:2.5px solid var(--border-subtle);flex-shrink:0;animation:spinArc .7s linear infinite}.spinner-arc-sm{width:20px;height:20px}.spinner-arc-md{border-width:3px;width:40px;height:40px}.spinner-arc-lg{border-width:4px;width:60px;height:60px}.spinner-dual{width:44px;height:44px;display:inline-block;position:relative}.spinner-dual:after,.spinner-dual:before{content:"";border:3px solid #0000;border-radius:50%;position:absolute}.spinner-dual:before{animation:spinArc .8s linear infinite;inset:0}.spinner-dual:after{border-bottom-color:var(--brand-300);animation:spinOuter 1.2s linear infinite;inset:5px}.spinner-dots{align-items:center;gap:5px;display:flex}.spinner-dots .dot{background:var(--brand-600);border-radius:50%;width:8px;height:8px;animation:dotPulse 1.2s ease-in-out infinite}.spinner-dots .dot:nth-child(2){animation-delay:.2s}.spinner-dots .dot:nth-child(3){animation-delay:.4s}.spinner-dots .dot.dot-lg{width:12px;height:12px}.spinner-orbit{justify-content:center;align-items:center;width:48px;height:48px;display:flex;position:relative}.orbit-core{background:var(--brand-600);border-radius:50%;width:14px;height:14px;animation:orbitPulse 1.5s ease-in-out infinite}.orbit-ring-wrap{animation:orbitSpin 1s linear infinite;position:absolute;inset:0}.orbit-planet{background:var(--brand-300);border-radius:50%;width:8px;height:8px;position:absolute;top:4px;left:50%;transform:translate(-50%)}@keyframes spin-cw{to{transform:rotate(1turn)}}@keyframes spin-ccw{to{transform:rotate(-1turn)}}.spinner-orbit-outer{border:3px solid var(--brand-200);border-radius:50%;animation:spin-cw .9s linear infinite;position:absolute}.spinner-orbit-inner{border:2px solid var(--brand-100);border-bottom-color:var(--brand-600);border-radius:50%;animation:spin-ccw .6s linear infinite;position:absolute;inset:10px}@keyframes loadingBarSlide{0%{left:-35%;right:100%}60%,to{left:100%;right:-90%}}.loading-bar-full{background:var(--border-subtle);border-radius:9999px;height:3px;position:relative;overflow:hidden}.loading-bar-full:after{content:"";background:var(--brand-600);animation:loadingBarSlide 2.1s cubic-bezier(.65,.815,.735,.395) infinite;position:absolute;top:0;bottom:0}.loading-bar-inline{background:var(--border-subtle);border-radius:9999px;width:240px;height:3px;position:relative;overflow:hidden}.loading-bar-inline:after{content:"";background:var(--brand-600);animation:loadingBarSlide 2.1s cubic-bezier(.65,.815,.735,.395) infinite;position:absolute;top:0;bottom:0}.notif-popover{background:var(--bg-surface);border:1px solid var(--border-subtle);width:340px;box-shadow:var(--shadow-panel);z-index:200;border-radius:14px;display:none;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden}.notif-popover.open{animation:ppIn .15s ease-out;display:block}.np-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.np-title{font-family:var(--font-display);color:var(--text-primary);font-size:14px;font-weight:700}.np-mark-all{color:var(--brand-600);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px;font-weight:600;transition:color .1s}.np-mark-all:hover{color:var(--brand-700)}.np-item{border:0;border-bottom:1px solid var(--border-subtle);text-align:left;width:100%;font-family:var(--font-body);cursor:pointer;background:0 0;align-items:flex-start;gap:10px;padding:12px 16px;transition:background .1s;display:flex;position:relative}.np-item:last-child{border-bottom:none}.np-item:hover{background:var(--bg-hover)}.np-item.unread{background:var(--brand-50)}.np-item.unread:before{content:"";background:var(--brand-600);border-radius:50%;width:6px;height:6px;position:absolute;top:50%;left:6px;transform:translateY(-50%)}.np-icon{border-radius:8px;flex-shrink:0;place-items:center;width:28px;height:28px;font-size:13px;display:grid}.np-icon-warn{background:var(--risk-med-bg);color:var(--risk-med-text)}.np-icon-info{background:var(--brand-100);color:var(--brand-700)}.np-icon-ok{background:var(--risk-low-bg);color:var(--risk-low-text)}.np-body{flex:1;min-width:0}.np-item-title{color:var(--text-primary);margin-bottom:2px;font-size:13px;font-weight:600;line-height:1.4}.np-item-sub,.np-item-title{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.np-item-sub{color:var(--text-muted);font-size:11px}.np-item-time{color:var(--text-disabled);margin-top:3px;font-size:11px}.np-footer{text-align:center;border-top:1px solid var(--border-subtle);padding:10px 16px}.np-footer a{color:var(--brand-600);font-size:13px;font-weight:600;text-decoration:none}.np-footer a:hover{color:var(--brand-700)}.bell-badge{background:var(--risk-high-text);color:#fff;border:2px solid var(--bg-surface);min-width:16px;height:16px;font-size:9px;font-weight:800;font-family:var(--font-display);border-radius:9999px;place-items:center;padding:0 3px;line-height:1;transition:opacity .2s,transform .2s;display:grid;position:absolute;top:2px;right:2px}.bell-badge.hidden{opacity:0;pointer-events:none;transform:scale(.5)}.help-popover{background:var(--bg-surface);border:1px solid var(--border-subtle);width:240px;box-shadow:var(--shadow-panel);z-index:200;border-radius:14px;display:none;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden}.help-popover.open{animation:ppIn .15s ease-out;display:block}.hp-header{border-bottom:1px solid var(--border-subtle);padding:12px 16px}.hp-title{font-family:var(--font-display);color:var(--text-primary);font-size:13px;font-weight:700}.hp-menu{padding:6px}.hp-item{color:var(--text-secondary);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:9px;align-items:center;gap:10px;width:100%;padding:9px 10px;font-size:13px;font-weight:500;text-decoration:none;transition:background .1s;display:flex}.hp-item:hover{background:var(--bg-hover);color:var(--text-primary)}.hp-item-icon{text-align:center;flex-shrink:0;width:18px;font-size:14px}.topbar-profile-popup{background:var(--bg-surface);border:1px solid var(--border-subtle);width:220px;box-shadow:var(--shadow-panel);z-index:200;border-radius:14px;display:none;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden}.topbar-profile-popup.open{animation:ppIn .15s ease-out;display:block}.pp-header{background:var(--bg-app);align-items:flex-start;gap:10px;padding:14px 16px;display:flex}.pp-ava-lg{background:var(--brand-200);width:40px;height:40px;font-family:var(--font-display);color:var(--brand-700);border-radius:50%;flex-shrink:0;place-items:center;font-size:14px;font-weight:700;display:grid}.pp-ava-lg.admin-ava{color:oklch(38% .12 25);background:oklch(96.2% .04 25)}.pp-info{flex:1;min-width:0}.pp-name-lg{color:var(--text-primary);font-size:14px;font-weight:700}.pp-email-lg{color:var(--text-muted);margin-top:1px;font-size:11px}.pp-role-tag{letter-spacing:.07em;text-transform:uppercase;background:var(--brand-100);color:var(--brand-900);border-radius:9999px;margin-top:5px;padding:2px 8px;font-size:10px;font-weight:700;display:inline-block}.pp-role-tag.admin{color:oklch(38% .12 25);background:oklch(96.2% .04 25)}.pp-role-tag.instructor{background:var(--risk-med-bg);color:var(--risk-med-text)}.pp-divider{background:var(--border-subtle);height:1px}.pp-item-icon{text-align:center;width:18px;color:var(--text-muted);flex-shrink:0;font-size:14px}.pp-logout{color:oklch(44% .15 25);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:9px;align-items:center;gap:10px;width:calc(100% - 12px);margin:6px;padding:9px 16px;font-size:13px;font-weight:600;transition:background .1s;display:flex}.pp-logout:hover{background:oklch(96.2% .04 25)}.l1-backdrop{z-index:40;background:#00000059;display:none;position:fixed;inset:0}.l1-backdrop.open{animation:backdropFade .2s;display:block}.l1-panel{background:var(--bg-surface);z-index:41;border-radius:16px 0 0 16px;flex-direction:column;width:480px;max-width:90vw;transition:transform .3s;display:flex;position:fixed;top:0;bottom:0;right:0;transform:translate(100%);box-shadow:-4px 0 40px #0000002e}.l1-panel.open{transform:translate(0)}.l1-panel.pushed-back{opacity:.55;pointer-events:none;transition:transform .3s,opacity .3s;transform:translate(0)scale(.96)translate(-20px)}.l2-backdrop{z-index:50;background:#0003;display:none;position:fixed;inset:0}.l2-backdrop.open{display:block}.l2-panel{border-left:1px solid var(--border-subtle);z-index:51;width:420px;max-width:85vw;transition:transform .3s;top:0;bottom:0;right:0;transform:translate(100%);box-shadow:-12px 0 48px #0000002e}.l2-panel.open{transform:translate(0)}.l3-backdrop{z-index:60;background:#00000073;justify-content:center;align-items:center;padding:24px;display:none;position:fixed;inset:0}.l3-backdrop.open{display:flex}.l3-modal{background:var(--bg-surface);border-radius:16px;width:100%;max-width:520px;animation:modalIn .2s ease-out;overflow:hidden;box-shadow:0 24px 80px #00000040}.l3-modal-sm{max-width:400px}.l3-modal-md{max-width:520px}.l3-modal-lg{max-width:700px}.panel-hdr{align-items:flex-start;padding:20px 24px}.panel-hdr-title{font-family:var(--font-display);color:var(--text-primary);font-size:16px;font-weight:700}.panel-hdr-sub{color:var(--text-muted);margin-top:2px;font-size:12px}.panel-close{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-radius:6px;flex-shrink:0;place-items:center;width:28px;height:28px;font-size:20px;transition:background .1s;display:grid}.panel-close:hover{background:var(--bg-hover)}.panel-tabs{border-bottom:1px solid var(--border-subtle);flex-shrink:0;padding:0 20px;display:flex}.ptab{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 12px;font-size:13px;font-weight:500;transition:color .15s,border-color .15s}.ptab.active{color:var(--brand-600);border-bottom-color:var(--brand-600);font-weight:600}.panel-body{flex:1;padding:20px 24px;overflow-y:auto}.panel-ftr{border-top:1px solid var(--border-subtle);flex-shrink:0;justify-content:flex-end;gap:10px;padding:14px 24px;display:flex}@keyframes backdropFade{0%{opacity:0}to{opacity:1}}.toggle-switch{cursor:pointer;width:44px;height:24px}.toggle-switch input,.toggle-track{position:absolute}.toggle-track{background:var(--border-strong);border-radius:9999px;transition:background .2s;inset:0}.toggle-thumb{background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0003}.toggle-switch input:checked~.toggle-track{background:var(--brand-600)}.toggle-switch input:checked~.toggle-thumb{transform:translate(20px)}.toggle-row{color:var(--text-primary);align-items:center;gap:12px;font-size:13px;font-weight:500;display:flex}.ripple-btn{position:relative;overflow:hidden}.ripple-circle{width:50px;height:50px;margin-top:-25px;margin-left:-25px}.crit-dot{background:var(--risk-high-text);border-radius:50%;flex-shrink:0;width:10px;height:10px;animation:critPulse 1.8s ease-in-out infinite;display:inline-block}.overdue-pulse{animation:overduePulse 3s ease-in-out infinite}.notif-btn.wiggling{animation:wiggle .7s}.paths-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}@media (max-width:1024px){.paths-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.paths-grid{grid-template-columns:1fr}}.path-card{opacity:0;flex-direction:column;transition:box-shadow .18s,transform .18s,border-color .18s;animation:cardIn .4s ease-out both;display:flex;overflow:hidden}.path-card:hover{transform:translateY(-2px);box-shadow:0 0 0 1px #00000008,0 4px 20px #00000017}.path-card:first-child{animation-delay:0s}.path-card:nth-child(2){animation-delay:60ms}.path-card:nth-child(3){animation-delay:.12s}.path-card:nth-child(4){animation-delay:.18s}.path-card:nth-child(5){animation-delay:.24s}.path-card:nth-child(6){animation-delay:.3s}.path-thumb{flex-shrink:0;justify-content:center;align-items:center;height:90px;font-size:36px;display:flex;position:relative}.path-thumb-1{background:linear-gradient(135deg,oklch(87% .12 215),oklch(76% .152 215))}.path-thumb-2{background:linear-gradient(135deg,oklch(83.5% .118 275),oklch(76% .13 275))}.path-thumb-3{background:linear-gradient(135deg,oklch(87% .13 155),oklch(76% .15 145))}.path-thumb-4{background:linear-gradient(135deg,oklch(87% .13 85),oklch(78% .14 75))}.path-thumb-5{background:linear-gradient(135deg,oklch(83.5% .12 25),oklch(76% .13 15))}.path-thumb-6{background:linear-gradient(135deg,oklch(87% .11 315),oklch(78% .12 305))}.path-enrolled-tag{background:var(--risk-low-bg);color:var(--risk-low-text);border:1px solid var(--risk-low-border);letter-spacing:.06em;text-transform:uppercase;border-radius:9999px;padding:3px 8px;font-size:10px;font-weight:700;position:absolute;top:8px;right:8px}.path-body{flex-direction:column;flex:1;gap:10px;padding:14px 16px;display:flex}.path-title{font-family:var(--font-display);color:var(--text-primary);font-size:15px;font-weight:700;line-height:1.3}.path-desc{color:var(--text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;line-height:1.5;display:-webkit-box;overflow:hidden}.path-meta{flex-wrap:wrap;gap:8px}.path-meta,.path-meta-item{align-items:center;display:flex}.path-meta-item{color:var(--text-muted);gap:4px;font-size:11px}.path-meta-sep{background:var(--text-disabled);border-radius:50%;width:3px;height:3px;display:inline-block}.path-progress-wrap{flex-direction:column;gap:5px;display:flex}.path-progress-label{justify-content:space-between;align-items:center;display:flex}.path-progress-label span{color:var(--text-muted);font-size:11px}.path-progress-label strong{color:var(--brand-700);font-size:11px;font-weight:600}.path-footer{border-top:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding:12px 16px;display:flex}.path-category{color:var(--text-muted);font-size:11px}.personal-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}@media (max-width:1024px){.personal-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.personal-grid{grid-template-columns:1fr}}.personal-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;flex-direction:column;transition:box-shadow .15s;display:flex;overflow:hidden}.personal-card:hover{box-shadow:var(--shadow-panel)}.personal-card-top{border-bottom:1px solid var(--border-subtle);align-items:flex-start;gap:12px;padding:16px;display:flex}.personal-ai-icon{background:var(--brand-100);border-radius:8px;flex-shrink:0;place-items:center;width:36px;height:36px;font-size:18px;display:grid}.personal-card-info{flex:1;min-width:0}.personal-card-title{font-family:var(--font-display);color:var(--text-primary);margin-bottom:4px;font-size:14px;font-weight:700}.personal-badges{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.personal-source{color:var(--text-muted);margin-top:6px;font-size:11px}.personal-card-body{flex-direction:column;flex:1;gap:10px;padding:14px 16px;display:flex}.personal-meta{color:var(--text-muted);align-items:center;gap:6px;font-size:11px;display:flex}.personal-footer{border-top:1px solid var(--border-subtle);padding:12px 16px}.personalized-hdr{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.personalized-hdr-text{font-family:var(--font-display);color:var(--text-primary);font-size:16px;font-weight:700}.personalized-hdr-sub{color:var(--text-muted);margin-top:2px;font-size:13px}.generate-card{background:var(--bg-surface);border:2px dashed var(--border-strong);cursor:pointer;text-align:center;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:200px;padding:32px 20px;transition:border-color .15s,background .15s;display:flex}.generate-card:hover{border-color:var(--brand-400);background:var(--brand-50)}.generate-icon{background:var(--brand-100);border-radius:12px;place-items:center;width:48px;height:48px;font-size:22px;display:grid}.generate-title{font-family:var(--font-display);color:var(--text-secondary);font-size:14px;font-weight:700}.generate-sub{color:var(--text-muted);font-size:12px}.filter-input{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:8px;flex:1;align-items:center;gap:8px;min-width:180px;max-width:280px;padding:8px 12px;display:flex}.filter-input input{font-family:var(--font-body);color:var(--text-primary);background:0 0;border:none;outline:none;width:100%;font-size:13px}.filter-input input::placeholder{color:var(--text-disabled)}.tab-btn{font-family:var(--font-body);color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:10px 16px;font-size:14px;font-weight:500;transition:color .15s;position:relative}.tab-btn:after{content:"";background:var(--brand-600);opacity:0;border-radius:9999px;height:2px;transition:opacity .15s;position:absolute;bottom:-1px;left:0;right:0}.tab-btn.active{color:var(--brand-700);font-weight:600}.tab-btn.active:after{opacity:1}.tab-btn:hover:not(.active){color:var(--text-secondary)}.rubric-item{background:var(--bg-app);border:1px solid var(--border-subtle);border-radius:9px;margin-bottom:10px;padding:12px 14px}.ri-label{color:var(--text-primary);margin-bottom:2px;font-size:13px;font-weight:600}.ri-desc{color:var(--text-muted);margin-bottom:8px;font-size:12px}.ri-score-row{align-items:center;gap:8px;display:flex}.ri-score-input{text-align:center;width:56px;font-family:var(--font-display);color:var(--brand-700);background:var(--bg-surface);border:1.5px solid var(--border-subtle);border-radius:7px;outline:none;padding:4px 8px;font-size:15px;font-weight:700}.ri-score-input:focus{border-color:var(--brand-400)}.ri-max{color:var(--text-muted);font-size:12px}.radio-group{flex-direction:column;gap:8px;display:flex}.radio-card{gap:12px}.radio-card input[type=radio]{accent-color:var(--brand-600);margin-top:3px}.rc-label{color:var(--text-primary);font-size:13px;font-weight:600}.rc-sub{color:var(--text-muted);margin-top:2px;font-size:12px}.success-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:32px 20px;display:flex}.success-icon{background:var(--risk-low-bg);width:56px;height:56px;color:var(--risk-low-text);margin-bottom:4px;font-size:24px;font-weight:800}.success-title{color:var(--text-primary);font-size:18px}.success-sub{color:var(--text-muted);font-size:14px;line-height:1.5}[data-theme=dark] .help-popover,[data-theme=dark] .notif-popover,[data-theme=dark] .topbar-profile-popup{background:var(--bg-surface);border-color:var(--border-subtle);box-shadow:0 4px 32px #00000080}[data-theme=dark] .np-item.unread{background:oklch(18.5% .022 215)}[data-theme=dark] .path-card,[data-theme=dark] .personal-card{background:var(--bg-surface);border-color:var(--border-subtle)}[data-theme=dark] .generate-card{background:var(--bg-surface);border-color:var(--border-strong)}[data-theme=dark] .generate-card:hover{background:var(--bg-hover);border-color:var(--brand-400)}[data-theme=dark] .pp-header{background:var(--bg-hover)}[data-theme=dark] .l1-panel,[data-theme=dark] .l2-panel,[data-theme=dark] .l3-modal{background:var(--bg-surface);border-color:var(--border-subtle)}[data-theme=dark] .toggle-track{background:var(--border-strong)}[data-theme=dark] .toggle-switch input:checked~.toggle-track{background:var(--brand-600)}[data-theme=dark] .rubric-item{background:var(--bg-hover)}[data-theme=dark] .radio-card{border-color:var(--border-subtle)}[data-theme=dark] .radio-card.selected,[data-theme=dark] .radio-card:hover{background:var(--bg-hover);border-color:var(--brand-400)}.panel{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;overflow:hidden}.panel-padded{padding:18px 20px}.panel-hdr{border-bottom:1px solid var(--border-subtle);gap:12px;padding:16px 20px}.panel-sub{color:var(--text-muted);margin-top:2px;font-size:12px}.panel-body{padding:20px}.badge-inprogress{background:var(--brand-100);color:var(--brand-900);border:1px solid var(--brand-300)}.badge-success{background:var(--risk-low-bg);color:var(--risk-low-text);border:1px solid var(--risk-low-border)}.badge-crit{background:var(--risk-high-bg);color:var(--risk-high-text);border:1px solid var(--risk-high-border)}.badge-muted{background:var(--bg-app);color:var(--text-muted);border:1px solid var(--border-subtle)}.btn-outline-brand{font-family:var(--font-body);color:var(--brand-600);border:1.5px solid var(--brand-400);cursor:pointer;white-space:nowrap;background:0 0;border-radius:9999px;align-items:center;gap:7px;padding:8px 18px;font-size:13px;font-weight:600;text-decoration:none;transition:border-color .15s,color .15s,background .15s;display:inline-flex}.btn-outline-brand:hover{background:var(--brand-50);border-color:var(--brand-600)}.courses-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}@media (max-width:1024px){.courses-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.courses-grid{grid-template-columns:1fr}}.filter-count{color:var(--text-muted);margin-bottom:16px;font-size:13px}.filter-count strong{color:var(--text-primary);font-weight:600}.card-thumb{flex-shrink:0;height:120px;position:relative;overflow:hidden}.card-thumb-gradient{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.card-thumb-icon{opacity:.85;font-size:32px}.card-badges{flex-wrap:wrap;gap:6px;display:flex;position:absolute;top:10px;left:10px}.card-instructor{color:var(--text-muted);align-items:center;gap:5px;margin-top:2px;font-size:12px;display:flex}.card-instructor-dot{background:var(--text-disabled);border-radius:50%;width:3px;height:3px}.card-progress-area{flex-direction:column;gap:5px;margin-top:10px;display:flex}.card-progress-row{justify-content:space-between;align-items:center;display:flex}.card-progress-pct{color:var(--text-secondary);font-size:12px;font-weight:600}.card-modules{color:var(--text-muted);font-size:11px}.card-completion-pct{color:var(--risk-low-text);font-size:12px;font-weight:700}.card-last-accessed{color:var(--text-disabled);margin-top:4px;font-size:11px}.card-last-accessed span{color:var(--text-muted)}.card-footer-btn{font-family:var(--font-body);cursor:pointer;white-space:nowrap;border:1.5px solid #0000;border-radius:9999px;align-items:center;gap:5px;padding:7px 16px;font-size:12px;font-weight:600;text-decoration:none;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.card-btn-continue{background:var(--brand-600);color:#fff}.card-btn-continue:hover{background:var(--brand-700)}.card-btn-review{color:var(--brand-600);border-color:var(--brand-300);background:0 0}.card-btn-review:hover{background:var(--brand-50)}.card-btn-start{color:var(--text-secondary);border-color:var(--border-strong);background:0 0}.card-btn-start:hover{border-color:var(--brand-400);color:var(--brand-600)}.progress-fill-success{background:var(--risk-low-text)!important}.catalog-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:32px;display:grid}@media (max-width:1024px){.catalog-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.catalog-grid{grid-template-columns:1fr}}.catalog-card{background:var(--bg-surface);border:1px solid var(--border-subtle);cursor:pointer;border-radius:12px;flex-direction:column;transition:box-shadow .18s,transform .18s,border-color .18s;display:flex;overflow:hidden}.catalog-card:hover{border-color:var(--brand-300);transform:translateY(-2px);box-shadow:0 0 0 1px #00000008,0 4px 20px #00000017}@keyframes certIn{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:none}}.certs-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}@media (max-width:1024px){.certs-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.certs-grid{grid-template-columns:1fr}}.cert-card{background:var(--bg-surface);box-shadow:var(--shadow-panel);border-radius:16px;transition:transform .2s,box-shadow .2s;overflow:hidden}.cert-card:hover{transform:translateY(-2px);box-shadow:0 0 0 1px #0000000a,0 4px 16px #0000001a,0 8px 32px #00000029}.cert-preview{text-align:center;background:linear-gradient(145deg,oklch(26% .08 210),oklch(19.5% .06 220));border-bottom:3px solid oklch(76% .13 75);flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:200px;padding:28px 24px 24px;display:flex;position:relative}.cert-preview:after,.cert-preview:before{content:"";border:2px solid oklch(76% .13 75/.6);width:48px;height:48px;position:absolute}.cert-preview:before{border-bottom:none;border-right:none;border-radius:4px 0 0;top:10px;left:10px}.cert-preview:after{border-top:none;border-left:none;border-radius:0 0 4px;bottom:10px;right:10px}.cert-inner-border{pointer-events:none;border:1px solid oklch(82% .1 75/.4);border-radius:10px;position:absolute;inset:6px}.cert-seal{z-index:1;filter:drop-shadow(0 2px 4px #00000026);font-size:40px;position:relative}.cert-course-name{font-family:var(--font-display);color:#fff;z-index:1;font-size:17px;font-weight:800;line-height:1.25;position:relative}.cert-issued-to{color:oklch(82% .08 70);z-index:1;font-size:11px;font-weight:500;position:relative}.cert-issued-to strong{font-family:var(--font-display);color:#fff;margin-top:2px;font-size:15px;font-weight:700;display:block}.cert-issuer{color:oklch(72% .07 70);text-align:center;z-index:1;font-size:10px;position:relative}.cert-meta-band{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:8px;padding:12px 20px;display:flex}.cert-id{color:var(--text-muted);letter-spacing:.05em;font-family:monospace;font-size:10px}.cert-date{color:var(--text-secondary);font-size:11px;font-weight:500}.cert-actions{flex-wrap:wrap;gap:8px;padding:14px 20px;display:flex}.cert-action-btn{min-width:60px;font-family:var(--font-body);cursor:pointer;text-align:center;border:1.5px solid var(--border-subtle);background:var(--bg-surface);color:var(--text-secondary);border-radius:8px;flex:1;padding:8px 14px;font-size:12px;font-weight:600;transition:transform .12s,background .12s,border-color .12s}.cert-action-btn:hover{background:var(--bg-hover);border-color:var(--border-strong);transform:translateY(-1px)}.cert-action-btn.primary-action{background:var(--brand-600);color:#fff;border-color:var(--brand-600)}.cert-action-btn.primary-action:hover{background:var(--brand-700)}.cert-card.locked{opacity:.75}.cert-card.locked .cert-preview{border-bottom-color:var(--border-strong);background:linear-gradient(145deg,oklch(96% .005 215),oklch(95% .008 215))}.cert-lock-overlay{flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex;position:absolute;inset:0}.cert-lock-icon{opacity:.4;font-size:32px;line-height:1}.cert-lock-msg{text-align:center;padding:0 20px;font-size:11px;font-weight:600;line-height:1.4}.cert-card.locked .cert-course-name,.cert-lock-msg{color:var(--text-secondary)}.thread-card{background:var(--bg-surface);border:1px solid var(--border-subtle);cursor:pointer;color:inherit;border-radius:12px;margin-bottom:10px;padding:18px 20px;text-decoration:none;transition:box-shadow .15s,border-color .15s;display:block}.thread-card:hover{box-shadow:var(--shadow-panel);border-color:var(--brand-300)}.thread-top{align-items:center;gap:10px;margin-bottom:10px;display:flex}.thread-ava{width:34px;height:34px;font-family:var(--font-display);background:var(--brand-200);color:var(--brand-700);border-radius:50%;flex-shrink:0;place-items:center;font-size:12px;font-weight:700;display:grid}.thread-meta{flex:1;min-width:0}.thread-author{color:var(--text-primary);font-size:13px;font-weight:600}.thread-date{color:var(--text-muted);margin-top:1px;font-size:11px}.thread-badges{flex-shrink:0;align-items:center;gap:6px;display:flex}.thread-title{font-family:var(--font-display);color:var(--text-primary);margin-bottom:5px;font-size:15px;font-weight:700;line-height:1.35}.thread-excerpt{color:var(--text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;line-height:1.55;display:-webkit-box;overflow:hidden}.thread-footer{border-top:1px solid var(--border-subtle);color:var(--text-muted);align-items:center;gap:12px;margin-top:12px;padding-top:12px;font-size:12px;display:flex}.thread-tag{background:var(--bg-app);color:var(--text-muted);border:1px solid var(--border-subtle);border-radius:9999px;margin-inline-start:auto;padding:2px 8px;font-size:11px}.mini-stats{grid-template-columns:repeat(4,1fr);gap:12px;margin-top:12px;display:grid}@media (max-width:768px){.mini-stats{grid-template-columns:repeat(2,1fr)}}.mst{background:var(--bg-app);border-radius:9px;align-items:center;gap:10px;padding:11px;display:flex}.mst-icon{flex-shrink:0;font-size:16px}.mst-val{font-family:var(--font-display);color:var(--text-primary);font-size:18px;font-weight:800;line-height:1}.mst-lbl{font-size:11px}.act-lbl,.mst-lbl{color:var(--text-muted)}.act-lbl{font-size:10px;font-family:var(--font-display)}.act-bar.empty{background:var(--border-subtle);opacity:1}.tab-pane{display:none}.tab-pane.active{display:block}@keyframes tabFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.tab-pane.active,.tab-panel.active{animation:tabFadeIn .22s both}.answer-options{flex-direction:column;gap:10px;margin-bottom:20px;display:flex}.answer-option{border:1.5px solid var(--border-subtle);cursor:pointer;background:var(--bg-surface);border-radius:10px;align-items:flex-start;gap:12px;padding:14px 16px;transition:background .1s,border-color .1s;display:flex}.answer-option:hover{background:var(--bg-hover);border-color:var(--border-strong)}.answer-option.selected{background:var(--bg-active);border-color:var(--brand-500)}.answer-option.correct{background:var(--risk-low-bg);border-color:var(--risk-low-border)}.answer-option.incorrect{background:var(--risk-high-bg);border-color:var(--risk-high-border)}.radio-circle{border:2px solid var(--border-strong);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;margin-top:1px;display:flex}.radio-dot{background:var(--brand-600);border-radius:50%;width:8px;height:8px;display:none}.answer-option.selected .radio-dot{display:block}.answer-option.selected .radio-circle{border-color:var(--brand-600)}.option-key{color:var(--text-muted);text-align:center;flex-shrink:0;width:18px;font-size:11px;font-weight:700}.answer-option.selected .option-key{color:var(--brand-700)}.option-text{color:var(--text-primary);flex:1;font-size:14px;line-height:1.5}.answer-option.selected .option-text{font-weight:500}.answer-row{border-radius:8px;align-items:flex-start;gap:10px;margin-bottom:6px;padding:10px 12px;font-size:13px;display:flex}.answer-row.correct-ans{background:var(--risk-low-bg);color:var(--risk-low-text)}.answer-row.wrong-ans{background:var(--risk-high-bg);color:var(--risk-high-text)}.ans-label{letter-spacing:.06em;text-transform:uppercase;opacity:.7;flex-shrink:0;margin-top:2px;font-size:10px;font-weight:700}.ans-icon{flex-shrink:0;margin-top:1px;font-size:14px}.ans-text{font-weight:500}.module-list{flex-direction:column;gap:8px;display:flex}.module-item{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:10px;overflow:hidden}.module-header{cursor:pointer;align-items:center;gap:10px;padding:14px 16px;transition:background .1s;display:flex}.module-header:hover{background:var(--bg-hover)}.module-num{background:var(--brand-100);width:28px;height:28px;color:var(--brand-900);font-family:var(--font-display);border-radius:50%;flex-shrink:0;place-items:center;font-size:12px;font-weight:700;display:grid}.module-num.completed{background:var(--risk-low-bg);color:var(--risk-low-text)}.module-name{color:var(--text-primary);flex:1;font-size:14px;font-weight:600}.module-meta{color:var(--text-muted);font-size:11px}.module-chevron{color:var(--text-muted);font-size:10px;transition:transform .2s}.module-body{border-top:1px solid var(--border-subtle);display:none}.module-item.open .module-body{display:block}.lesson-item{border-bottom:1px solid var(--border-subtle);color:var(--text-secondary);align-items:center;gap:10px;padding:10px 16px;text-decoration:none;transition:background .1s;display:flex}.lesson-item:last-child{border-bottom:none}.lesson-item:hover{background:var(--bg-hover)}.lesson-item.active{background:var(--bg-active);color:var(--brand-900)}.lesson-icon{text-align:center;flex-shrink:0;width:18px;font-size:13px}.lesson-name{flex:1;font-size:13px}.lesson-dur{color:var(--text-muted);font-size:11px}.lesson-check{color:var(--risk-low-text);font-size:12px}.score-ring-wrap{flex-direction:column;gap:10px;padding:20px}.score-ring,.score-ring-wrap{align-items:center;display:flex}.score-ring{justify-content:center;position:relative}.score-value{font-size:36px;line-height:1;position:absolute}.score-label,.score-value{font-family:var(--font-display);color:var(--text-primary);font-weight:800}.score-label{font-size:18px}.score-sublabel{color:var(--text-muted);font-size:13px}.pass-banner{border-radius:9999px;align-items:center;gap:6px;padding:6px 16px;font-size:14px;font-weight:700;display:inline-flex}.pass-banner.passed{background:var(--risk-low-bg);color:var(--risk-low-text);border:1px solid var(--risk-low-border)}.pass-banner.failed{background:var(--risk-high-bg);color:var(--risk-high-text);border:1px solid var(--risk-high-border)}.risk-ring{width:40px;height:40px;font-family:var(--font-display);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:800;display:inline-flex}.risk-ring.crit{background:var(--risk-high-bg);color:var(--risk-high-text);border:2px solid var(--risk-high-border)}.risk-ring.high{background:var(--risk-med-bg);color:var(--risk-med-text);border:2px solid var(--risk-med-border)}.risk-ring.med{background:var(--risk-low-bg);color:var(--risk-low-text);border:2px solid var(--risk-low-border)}.chart-path{stroke-dasharray:var(--path-len,300);stroke-dashoffset:var(--path-len,300);animation:sparkDraw 1.2s forwards}.chart-bar{height:0;animation:barGrow .7s forwards}.chart-tooltip{color:#fff;pointer-events:none;white-space:nowrap;background:oklch(16.5% .008 215);border-radius:6px;padding:4px 8px;font-size:11px;font-weight:600;position:absolute;bottom:calc(100% + 6px);transform:translate(-50%)}.instr-icon{background:var(--brand-100);border-radius:6px;flex-shrink:0;place-items:center;width:22px;height:22px;font-size:12px;display:grid}.detail-layout{grid-template-columns:1fr 340px;align-items:start;gap:24px;display:grid}@media (max-width:1024px){.detail-layout{grid-template-columns:1fr}}[data-theme=dark] .catalog-card,[data-theme=dark] .cert-card,[data-theme=dark] .module-item,[data-theme=dark] .panel,[data-theme=dark] .thread-card{background:var(--bg-surface);border-color:var(--border-subtle)}[data-theme=dark] .mst{background:var(--bg-hover)}[data-theme=dark] .cert-preview{background:linear-gradient(145deg,oklch(21% .06 210),oklch(17% .045 215))}[data-theme=dark] .cert-action-btn{background:var(--bg-hover);border-color:var(--border-subtle);color:var(--text-secondary)}[data-theme=dark] .answer-option{background:var(--bg-surface);border-color:var(--border-subtle)}[data-theme=dark] .answer-option:hover{background:var(--bg-hover)}[data-theme=dark] .lesson-item{color:var(--text-secondary)}[data-theme=dark] .lesson-item:hover{background:var(--bg-hover)}.cat-thumb{background:var(--bg-app);height:110px;position:relative;overflow:hidden}.cat-thumb img{object-fit:cover;width:100%;height:100%;display:block}.cat-thumb-gradient{place-items:center;width:100%;height:100%;display:grid}.cat-thumb-icon{filter:drop-shadow(0 2px 3px #00000029);font-size:32px}.cat-badges{flex-wrap:wrap;gap:4px;display:flex;position:absolute;top:8px;left:8px}.cat-body{flex:1;padding:14px 16px}.cat-title{font-family:var(--font-display);color:var(--text-primary);margin-bottom:6px;font-size:15px;font-weight:800;line-height:1.3}.cat-instructor{color:var(--text-muted);align-items:center;gap:5px;display:flex}.cat-desc,.cat-instructor{margin-bottom:8px;font-size:12px}.cat-desc{color:var(--text-secondary);line-height:1.5}.cat-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:11px;display:flex}.cat-meta-sep{color:var(--text-disabled)}.cat-footer{border-top:1px solid var(--border-subtle);background:var(--bg-app);justify-content:space-between;align-items:center;gap:12px;padding:12px 16px 14px;display:flex}.cat-rating{color:var(--text-muted);white-space:nowrap;font-size:12px}.cat-rating-stars{color:oklch(76% .14 75);letter-spacing:-1px}.cat-btn{cursor:pointer;font-size:12px;font-weight:700;font-family:var(--font-body);white-space:nowrap;border:none;border-radius:9999px;justify-content:center;align-items:center;padding:8px 14px;text-decoration:none;transition:transform .1s,background .12s,box-shadow .12s;display:inline-flex}.cat-btn:active{transform:scale(.97)}.cat-btn-enroll{background:var(--brand-600);color:#fff;box-shadow:0 2px 8px #00000014}.cat-btn-enroll:hover{background:var(--brand-700)}.cat-btn-continue{background:var(--bg-surface);color:var(--brand-700);border:1.5px solid var(--brand-300)}.cat-btn-continue:hover{background:var(--brand-100)}.drawer-overlay{z-index:400;background:#0000006b;animation:bdIn .2s;position:fixed;inset:0}.grading-drawer{border-left:1px solid var(--border-subtle);border-radius:0;width:440px;max-width:100vw;animation:drawerIn .25s ease-out;position:fixed;top:0;bottom:0;right:0;box-shadow:-4px 0 20px #00000014}.drawer-header{border-bottom:1px solid var(--border-subtle);flex-shrink:0;justify-content:space-between;align-items:center;padding:18px 20px 16px;display:flex}.drawer-title{font-family:var(--font-display);color:var(--text-primary);font-size:16px;font-weight:800}.drawer-close{cursor:pointer;width:28px;height:28px;color:var(--text-muted);background:0 0;border:none;border-radius:7px;place-items:center;display:grid}.drawer-close:hover{background:var(--bg-hover);color:var(--text-primary)}.drawer-body{flex:1;padding:20px;overflow-y:auto}.drawer-footer{border-top:1px solid var(--border-subtle);flex-shrink:0;gap:10px;padding:16px 20px;display:flex}.student-info{background:var(--bg-app);border-radius:10px;align-items:center;gap:10px;margin-bottom:20px;padding:12px 14px;display:flex}.rubric-criterion{margin-bottom:16px}.criterion-header{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.criterion-name{color:var(--text-primary);font-size:13px;font-weight:600}.criterion-max{color:var(--text-muted);font-size:11px}.score-input{width:72px;font-family:var(--font-display);color:var(--brand-600);background:var(--bg-surface);border:1.5px solid var(--border-subtle);text-align:center;border-radius:8px;outline:none;padding:6px 10px;font-size:16px;font-weight:700}.criterion-bar{background:var(--border-subtle);border-radius:9999px;height:4px;margin-top:6px;overflow:hidden}.criterion-fill{background:var(--brand-600);border-radius:9999px;height:100%;transition:width .2s}.feedback-label{color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:700}.feedback-textarea{width:100%;font-family:var(--font-body);color:var(--text-primary);background:var(--bg-surface);border:1.5px solid var(--border-subtle);resize:vertical;border-radius:9px;outline:none;min-height:90px;padding:10px 12px;font-size:13px}.feedback-textarea:focus,.score-input:focus{border-color:var(--brand-400);box-shadow:0 0 0 3px var(--brand-100)}.notif-list{flex-direction:column;gap:8px;display:flex}.tab-count{border-radius:9999px;margin-left:5px;padding:1px 5px;font-size:10px;font-weight:700}.notif-item{background:var(--bg-surface);border:1px solid var(--border-subtle);cursor:pointer;border-radius:12px;align-items:flex-start;gap:14px;padding:16px 18px;transition:box-shadow .15s,border-color .15s,transform .12s;display:flex;position:relative}.notif-item:hover{border-color:var(--brand-200);box-shadow:var(--shadow-panel);transform:translateY(-1px)}.notif-item.unread{border-color:var(--brand-200);border-left:3px solid var(--brand-600);background:oklch(98.7% .008 215)}.notif-icon-wrap{border-radius:12px;flex-shrink:0;place-items:center;width:40px;height:40px;font-size:18px;display:grid;position:relative}.unread-dot{background:var(--brand-600);border:2px solid var(--bg-surface);border-radius:50%;width:10px;height:10px}.notif-body{flex:1;min-width:0}.notif-title{color:var(--text-primary);margin-bottom:3px;font-size:14px;font-weight:700;line-height:1.35}.notif-desc{color:var(--text-secondary);font-size:13px;line-height:1.5}.notif-time{color:var(--text-muted);gap:6px;margin-top:6px;font-size:11px}.notif-actions,.notif-time{align-items:center;display:flex}.notif-actions{flex-shrink:0;gap:4px}.notif-action-btn{cursor:pointer;width:28px;height:28px;color:var(--text-disabled);background:0 0;border:none;border-radius:7px;place-items:center;font-size:14px;transition:background .1s,color .1s;display:grid}.notif-action-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.bell-btn{cursor:pointer;width:34px;height:34px;color:var(--text-muted);background:0 0;border:none;border-radius:8px;place-items:center;font-size:16px;transition:background .1s;display:grid;position:relative}.bell-btn:hover{background:var(--bg-hover)}.pagination{align-items:center;gap:4px;display:flex}.pg-btn.wide{align-items:center;gap:5px;width:auto;padding:0 12px;display:inline-flex}.pg-compact{align-items:center;gap:10px;display:flex}.pg-compact-label{color:var(--text-secondary);font-size:14px;font-weight:500}.pg-compact-label strong,.pg-select{color:var(--text-primary)}.pg-select{font-family:var(--font-body);background:var(--bg-surface);border:1px solid var(--border-subtle);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;border-radius:7px;outline:none;padding:4px 28px 4px 10px;font-size:13px;font-weight:500}.es-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-top:16px;display:flex}.two-col{grid-template-columns:1fr 360px;align-items:start;gap:20px;display:grid}@media (max-width:1024px){.two-col{grid-template-columns:1fr}}.page-sub{margin-top:2px;font-size:13px}.wb-badges{flex-wrap:wrap;flex-shrink:0;gap:10px;display:flex;position:relative}.wb-alert-badge{white-space:nowrap;border-radius:10px;align-items:center;gap:7px;padding:8px 14px;font-size:12px;font-weight:700;display:inline-flex}.wba-amber{color:oklch(92% .1 80);background:#ffc8502e;border:1px solid #ffc85059}.wba-red{color:oklch(93% .09 30);background:#ff64502e;border:1px solid #ff645059}.rb-crit{border-color:var(--risk-crit-border)}.prog-bar{background:var(--border-subtle);border-radius:9999px;height:5px;overflow:hidden}.prog-fill{background:var(--brand-600);border-radius:9999px;height:100%}.prog-fill-low{background:var(--risk-high-text)}.prog-label{color:var(--text-muted);justify-content:space-between;align-items:center;margin-top:4px;font-size:11px;display:flex}.qa-btn{font-size:13px;font-weight:500;transition:background .1s,border-color .1s}.qa-btn:last-child{margin-bottom:0}.grade-item{border-bottom:1px solid var(--border-subtle);align-items:center;gap:10px;padding:9px 0;display:flex}.grade-item:last-child{border-bottom:none}.gi-ava{background:var(--brand-200);width:28px;height:28px;color:var(--brand-700);border-radius:50%;flex-shrink:0;place-items:center;font-size:10px;font-weight:700;display:grid}.gi-name{color:var(--text-primary);flex:1;font-size:13px;font-weight:600}.gi-sub{color:var(--text-muted);font-size:11px}.course-card-lg{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:14px;margin-bottom:16px;transition:box-shadow .18s,border-color .18s;overflow:hidden}.course-card-lg:hover{border-color:var(--brand-300);box-shadow:0 6px 24px #00000017}.cc-cover-badge{letter-spacing:.06em;text-transform:uppercase;color:#fff;background:#fff3;border:1px solid #ffffff4d;border-radius:9999px;padding:3px 9px;font-size:10px;font-weight:700}.cc-cover-code{color:#ffffffd9;font-size:13px;position:absolute;top:12px;right:16px}.cc-cover-code,.cc-title{font-family:var(--font-display);font-weight:800}.cc-title{color:var(--text-primary);margin-bottom:4px;font-size:16px}.cc-stats-row{gap:24px;margin-bottom:12px}.cc-stat-val{font-size:18px;line-height:1}.btn-action{font-family:var(--font-body);color:var(--text-secondary);border:1.5px solid var(--border-strong);cursor:pointer;white-space:nowrap;background:0 0;border-radius:9999px;padding:6px 14px;font-size:12px;font-weight:600;transition:border-color .15s,color .15s,background .15s}.btn-action:hover{border-color:var(--brand-400);color:var(--brand-600);background:var(--brand-50)}.btn-action.primary{background:var(--brand-600);color:#fff;border-color:var(--brand-600)}.btn-action.primary:hover{background:var(--brand-700);border-color:var(--brand-700)}.empty-card{background:var(--bg-surface);border:2px dashed var(--border-strong);text-align:center;cursor:pointer;border-radius:14px;margin-bottom:16px;padding:32px 24px;transition:border-color .15s,background .15s}.empty-card:hover{border-color:var(--brand-400);background:var(--brand-50)}.empty-icon{color:var(--text-muted);margin-bottom:8px;font-size:28px}.empty-title{font-family:var(--font-display);color:var(--text-secondary);margin-bottom:4px;font-size:15px;font-weight:700}.empty-sub{color:var(--text-muted);font-size:13px}.filter-tabs{flex-wrap:wrap;margin-bottom:20px;display:flex}.f-tab{font-family:var(--font-body);color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9999px;padding:6px 14px;font-size:13px;font-weight:500;transition:background .1s,color .1s,border-color .1s}.f-tab:hover{background:var(--bg-hover);color:var(--text-primary)}.f-tab.active{background:var(--brand-100);color:var(--brand-900);border-color:var(--brand-200);font-weight:600}.pagination-bar{border-top:1px solid var(--border-subtle);flex-wrap:wrap;align-items:center;gap:8px;margin-top:24px;padding:20px 0 4px;display:flex}.td-course{color:var(--text-muted);font-size:12px}.wiggling{animation:wiggle .7s!important}.ripple-circle{pointer-events:none;transform-origin:50%;background:#ffffff8c;border-radius:50%;width:60px;height:60px;margin-top:-30px;margin-left:-30px;animation:rippleBurst .55s ease-out forwards;position:absolute}.content .cert-stat,.content .metric-card,.content .profile-stat,.content .skills-stat-card,.content .stat-card.metric-vertical,.content .stats-row .stat-card{flex-direction:column;align-items:flex-start;gap:12px}.content .cert-stat .sc-icon,.content .metric-card .sc-icon,.content .profile-stat .sc-icon,.content .skills-stat-card .sc-icon,.content .stat-card.metric-vertical .sc-icon,.content .stats-row .stat-card .sc-icon{margin-bottom:2px}.content .cert-stat .sc-right,.content .metric-card .sc-right,.content .profile-stat .sc-right,.content .skills-stat-card .sc-right,.content .stat-card.metric-vertical .sc-right,.content .stats-row .stat-card .sc-right{width:100%}.learner-dashboard-continue{margin-bottom:28px}.learner-dashboard-continue .courses-grid,.learner-dashboard-continue .courses-row{margin-bottom:0}.qa-item{background:var(--bg-app);border:1px solid var(--border-subtle);color:inherit;border-radius:9px;align-items:center;gap:12px;padding:11px 14px;text-decoration:none;transition:border-color .15s,background .15s;display:flex}.qa-item:hover{border-color:var(--brand-300);background:var(--brand-50)}.course-overview-panel{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;overflow:hidden}.course-overview-section{border-bottom:1px solid var(--border-subtle);padding:18px 20px}.course-overview-section:last-child{border-bottom:0}.course-overview-title{font-family:var(--font-display);color:var(--text-primary);margin-bottom:10px;font-size:14px;font-weight:800}.profile-layout{grid-template-columns:280px 1fr;align-items:start;gap:24px;display:grid}@media (max-width:900px){.profile-layout{grid-template-columns:1fr}}.profile-sidebar-panel{position:sticky;top:72px}.profile-ava-wrap{border-bottom:1px solid var(--border-subtle);flex-direction:column;align-items:center;padding:28px 20px 20px;display:flex}.profile-ava{background:var(--brand-200);width:80px;height:80px;color:var(--brand-700);border:3px solid var(--bg-surface);box-shadow:0 0 0 2px var(--brand-300);border-radius:50%;place-items:center;margin-bottom:12px;font-size:32px;font-weight:700;display:grid}.profile-ava,.profile-name{font-family:var(--font-display)}.profile-name{color:var(--text-primary);text-align:center;margin-bottom:6px;font-size:18px;font-weight:800}.profile-meta{flex-direction:column;margin-top:6px}.profile-meta,.profile-meta-item{align-items:center;gap:5px;display:flex}.profile-meta-item{color:var(--text-muted);font-size:12px}.profile-stats-grid{grid-template-columns:1fr 1fr;padding:16px 20px;display:grid}.profile-stat{text-align:center;padding:10px 0}.profile-stat:first-child,.profile-stat:nth-child(2){border-bottom:1px solid var(--border-subtle)}.profile-stat:nth-child(odd){border-right:1px solid var(--border-subtle)}.profile-stat-val{font-family:var(--font-display);color:var(--text-primary);font-size:20px;font-weight:800}.profile-stat-lbl{color:var(--text-muted);margin-top:2px;font-size:11px}.profile-ava-btn{border-top:1px solid var(--border-subtle);padding:12px 20px}.form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-grid .form-group.full,.form-group.full{grid-column:1/-1}@media (max-width:600px){.form-grid{grid-template-columns:1fr}}.form-actions{border-top:1px solid var(--border-subtle);align-items:center;gap:10px;margin-top:20px;padding-top:20px;display:flex}.pref-section{margin-bottom:24px}.pref-section-title{color:var(--text-secondary);letter-spacing:.06em;text-transform:uppercase;margin-bottom:12px;font-size:11px;font-weight:600}.checkbox-group{flex-wrap:wrap;gap:10px;display:flex}.checkbox-label{cursor:pointer;color:var(--text-secondary);align-items:center;gap:7px;font-size:13px;display:flex}.checkbox-label input{accent-color:var(--brand-600)}.radio-label{cursor:pointer;color:var(--text-secondary);align-items:center;gap:7px;font-size:13px;display:flex}.radio-label input{accent-color:var(--brand-600)}.divider{border:none;border-top:1px solid var(--border-subtle);margin:24px 0}.danger-zone{border:1px solid var(--risk-crit-border);background:var(--risk-crit-bg);border-radius:10px;margin-top:24px;padding:20px}.danger-title{font-family:var(--font-display);margin-bottom:6px;font-size:14px;font-weight:700}.danger-desc,.danger-title{color:var(--risk-crit-text)}.danger-desc{opacity:.8;margin-bottom:14px;font-size:13px;line-height:1.5}.toggle-row-profile{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:16px;padding:14px 0;display:flex}.toggle-row-profile:last-child{border-bottom:none}.toggle-switch{flex-shrink:0;width:40px;height:22px;display:inline-block;position:relative}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{background:var(--border-strong);cursor:pointer;border-radius:9999px;transition:background .2s;position:absolute;inset:0}.toggle-slider:before{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0003}.toggle-switch input:checked+.toggle-slider{background:var(--brand-600)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(18px)}@keyframes sk-shimmer{0%{background-position:-600px 0}to{background-position:600px 0}}.sk{vertical-align:middle;background:linear-gradient(90deg,oklch(91.2% .006 215) 25%,oklch(94% .004 215) 50%,oklch(91.2% .006 215) 75%) 0 0/600px 100%;border-radius:5px;animation:sk-shimmer 1.5s ease-in-out infinite;display:inline-block}.sk-text{border-radius:4px;height:13px}.sk-text-sm{border-radius:3px;height:10px}.sk-text-lg{border-radius:5px;height:18px}.sk-circle{border-radius:50%}.sk-pill{border-radius:9999px}.sk-rect{border-radius:8px}.filter-tab{font-family:var(--font-body);border:1.5px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border-radius:9px;padding:7px 16px;font-size:13px;font-weight:500;transition:all .12s}.filter-tab.active,.filter-tab:hover{border-color:var(--brand-300);color:var(--brand-700)}.filter-tab.active{background:var(--brand-100);font-weight:700}.filter-tab .tab-count{background:#00000014;border-radius:9999px;margin-inline-start:4px;padding:1px 5px;font-size:10px;font-weight:700}.filter-tab.active .tab-count,.unread-badge{background:var(--brand-600);color:#fff}.unread-badge{vertical-align:middle;border-radius:9999px;align-items:center;margin-inline-start:8px;padding:3px 9px;font-size:11px;font-weight:700;display:inline-flex}.notif-type-badge{letter-spacing:.06em;text-transform:uppercase;border:1px solid #0000;border-radius:9999px;padding:2px 7px;font-size:10px;font-weight:700}.nb-assessment{background:var(--risk-med-bg);color:var(--risk-med-text);border-color:var(--risk-med-border)}.nb-course{background:var(--brand-100);color:var(--brand-900);border-color:var(--brand-300)}.nb-ai{color:oklch(44% .13 295);background:oklch(96.8% .048 300);border-color:oklch(76% .1 295)}.nb-cert{color:oklch(48% .14 75);background:oklch(96.8% .052 85);border-color:oklch(76% .14 75)}.nb-discussion{background:var(--bg-app);color:var(--text-muted);border-color:var(--border-subtle)}.nb-path{background:var(--risk-low-bg);color:var(--risk-low-text);border-color:var(--risk-low-border)}.nb-neutral{background:var(--bg-app);color:var(--text-muted);border-color:var(--border-subtle)}.notif-row{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;align-items:flex-start;gap:14px;margin-bottom:8px;padding:14px 18px;display:flex}.notif-row.unread-sk{background:oklch(98.7% .008 215)}.ni-icon{background:var(--bg-app);border-radius:9px;flex-shrink:0;place-items:center;width:38px;height:38px;font-size:17px;display:grid}.mark-all-btn{font-family:var(--font-body);color:var(--brand-600);border:1.5px solid var(--brand-300);cursor:pointer;white-space:nowrap;background:0 0;border-radius:8px;padding:7px 14px;font-size:13px;font-weight:500;transition:all .15s}.mark-all-btn:hover:not(:disabled){background:var(--brand-100)}.mark-all-btn:disabled{opacity:.5;cursor:not-allowed}.toggle-label{color:var(--text-primary);margin-bottom:2px;font-size:13px;font-weight:500}.toggle-desc{color:var(--text-muted);font-size:12px}.breadcrumb{color:var(--text-muted);align-items:center;gap:6px;font-size:13px;display:flex;overflow:hidden}.breadcrumb a{color:var(--text-muted);white-space:nowrap;text-decoration:none;transition:color .1s}.breadcrumb a:hover{color:var(--text-primary)}.breadcrumb span{color:var(--text-disabled);font-size:11px}.bc-current{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.breadcrumb .sep{color:var(--text-disabled)}.course-hero{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:16px;margin-bottom:24px;overflow:hidden}.ch-banner{background:linear-gradient(135deg,oklch(76% .15 215),oklch(45% .19 222),oklch(32% .14 230));align-items:flex-end;height:180px;padding:20px 28px;display:flex;position:relative}.ch-banner:before{content:"";background:linear-gradient(#0000 40%,#00000080);position:absolute;inset:0}.ch-badges{z-index:1;flex-wrap:wrap;gap:8px;display:flex;position:relative}.ch-badge{letter-spacing:.07em;text-transform:uppercase;color:#fff;background:#ffffff26;border:1px solid #ffffff40;border-radius:9999px;padding:4px 12px;font-size:10px;font-weight:700}.ch-body{align-items:flex-start;gap:24px;padding:24px 28px;display:flex}.ch-info{flex:1;min-width:0}.ch-title{font-family:var(--font-display);color:var(--text-primary);letter-spacing:-.015em;margin-bottom:6px;font-size:22px;font-weight:800}.ch-meta{color:var(--text-muted);flex-wrap:wrap;gap:16px;margin-bottom:16px;font-size:13px}.ch-meta,.ch-meta-item{align-items:center;display:flex}.ch-meta-item{gap:5px}.ch-progress-section{margin-bottom:0}.ch-prog-header{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.ch-prog-lbl{color:var(--text-secondary);font-size:12px;font-weight:600}.ch-prog-pct{font-family:var(--font-display);color:var(--brand-600);font-size:14px;font-weight:800}.ch-actions{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:10px;display:flex}.ch-stats-row{flex-wrap:wrap;gap:12px;display:flex}.ch-stat{text-align:center;background:var(--bg-app);border:1px solid var(--border-subtle);border-radius:9px;padding:8px 14px}.ch-stat-val{font-family:var(--font-display);color:var(--text-primary);font-size:16px;font-weight:800}.ch-stat-lbl{color:var(--text-muted);margin-top:2px;font-size:10px}.tabs-card{border:1px solid var(--border-subtle);border-radius:12px;overflow:hidden}.tab-bar,.tabs-card{background:var(--bg-surface)}.tab-bar{border-bottom:1px solid var(--border-subtle);display:flex;overflow-x:auto}.tab-panel{display:none}.tab-panel.active{display:block}.mn-complete{background:var(--risk-low-bg);color:var(--risk-low-text)}.mn-active{background:var(--brand-100);color:var(--brand-600)}.mn-locked{background:var(--bg-app);color:var(--text-disabled)}.module-title{font-family:var(--font-display);color:var(--text-primary);flex:1;font-size:15px;font-weight:700}.module-item.locked .module-title{color:var(--text-disabled)}.module-prog{color:var(--text-muted);font-size:12px}.module-status-icon{flex-shrink:0;font-size:14px}.module-item.open .module-chevron{transform:rotate(180deg)}.content-item-list{padding:8px}.content-item{cursor:pointer;color:inherit;border-radius:9px;align-items:center;gap:12px;padding:10px 12px;text-decoration:none;transition:background .1s;display:flex}.content-item:hover{background:var(--bg-hover)}.ci-icon{width:32px;height:32px;font-size:14px}.ci-icon.video{background:oklch(95% .04 240)}.ci-icon.text{background:oklch(96% .02 215)}.ci-icon.quiz{background:oklch(97% .04 75)}.ci-icon.code{background:oklch(95% .03 145)}.ci-title{flex:1;font-size:14px;font-weight:500}.ci-current{color:var(--brand-600);font-weight:600}.ci-locked{color:var(--text-disabled)}.ci-meta{align-items:center;gap:10px;display:flex}.ci-duration{color:var(--text-muted);font-size:12px}.ci-status{font-size:13px}.current-badge{letter-spacing:.06em;text-transform:uppercase;background:var(--brand-100);color:var(--brand-600);border-radius:9999px;padding:3px 9px;font-size:10px;font-weight:700}.overview-grid{grid-template-columns:2fr 1fr;gap:20px;display:grid}@media (max-width:1024px){.overview-grid{grid-template-columns:1fr}}.prose{color:var(--text-secondary);font-size:14px;line-height:1.75}.prose p+p{margin-top:12px}.meta-grid{gap:10px}.meta-item{background:var(--bg-app);border-radius:8px;padding:10px}.meta-lbl{letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);margin-bottom:3px;font-size:10px;font-weight:600}.meta-val{color:var(--text-primary);font-size:14px;font-weight:600}.skill-chips{flex-wrap:wrap;gap:6px;display:flex}.skill-chip{background:var(--brand-50);color:var(--brand-900);border:1px solid var(--brand-200);border-radius:9999px;padding:4px 11px;font-size:11px;font-weight:500}.progress-big{margin:16px 0}.pb-header{justify-content:space-between;margin-bottom:8px;display:flex}.pb-lbl{color:var(--text-muted);font-size:12px}.pb-val{font-family:var(--font-display);color:var(--brand-600);font-size:20px;font-weight:800}.assessment-list{flex-direction:column;gap:8px;display:flex}.assessment-row{background:var(--bg-app);border:1px solid var(--border-subtle);border-radius:10px;align-items:center;gap:14px;padding:14px 16px;transition:border-color .15s;display:flex}.assessment-row:hover{border-color:var(--brand-300)}.ar-icon{border-radius:9px;flex-shrink:0;place-items:center;width:36px;height:36px;font-size:16px;display:grid}.ar-info{flex:1;min-width:0}.ar-title{color:var(--text-primary);margin-bottom:2px;font-size:14px;font-weight:600}.ar-meta{color:var(--text-muted);font-size:12px}.ar-right{flex-shrink:0;align-items:center;gap:10px;display:flex}.status-badge{border-radius:9999px;padding:4px 11px;font-size:11px;font-weight:600}.sb-notstarted{background:var(--bg-app);color:var(--text-muted);border:1px solid var(--border-strong)}.sb-completed{background:var(--risk-low-bg);color:var(--risk-low-text)}.sb-inprogress{background:var(--brand-100);color:var(--brand-600)}.sb-overdue{background:var(--risk-high-bg);color:var(--risk-high-text)}.ba-primary{background:var(--brand-600);color:#fff;border-color:var(--brand-600)}.ba-primary:hover{background:var(--brand-700)}.ba-outline{border:1.5px solid var(--border-strong);color:var(--text-secondary);background:0 0}.ba-outline:hover{border-color:var(--brand-400);color:var(--text-primary)}.disc-panel-hdr{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px;display:flex}.disc-count{color:var(--text-primary);font-size:15px;font-weight:700}.disc-view-all{color:var(--brand-600);font-size:13px;font-weight:500;text-decoration:none;transition:color .1s}.disc-view-all:hover{color:var(--brand-700)}.disc-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.thread-list{flex-direction:column;gap:8px;display:flex}.thread-item{background:var(--bg-app);border:1px solid var(--border-subtle);color:inherit;border-radius:10px;padding:14px 16px;text-decoration:none;transition:border-color .15s;display:block}.thread-item:hover{border-color:var(--brand-300)}.ti-row{align-items:flex-start;gap:10px;display:flex}.ti-ava{background:var(--brand-100);width:30px;height:30px;font-family:var(--font-display);color:var(--brand-600);border-radius:50%;flex-shrink:0;place-items:center;font-size:11px;font-weight:800;display:grid}.ti-body{flex:1;min-width:0}.ti-title{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;margin-bottom:5px;font-size:14px;font-weight:600;overflow:hidden}.ti-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:12px;font-size:12px;display:flex}.ti-replies{background:var(--brand-100);border-radius:9999px;padding:2px 8px;font-size:11px;font-weight:700}.ti-link,.ti-replies{color:var(--brand-600)}.ti-link{white-space:nowrap;flex-shrink:0;font-size:12px;font-weight:500;text-decoration:none}.ti-link:hover{color:var(--brand-700)}.disc-load-more{background:var(--bg-app);border:1.5px solid var(--border-subtle);width:100%;font-family:var(--font-body);color:var(--text-secondary);cursor:pointer;text-align:center;border-radius:9px;margin-top:12px;padding:10px;font-size:13px;font-weight:500;text-decoration:none;transition:border-color .15s,color .15s;display:block}.disc-load-more:hover{border-color:var(--brand-300);color:var(--brand-600)}.disc-modal-overlay{z-index:300;background:#00000080;justify-content:center;align-items:center;padding:20px;display:none;position:fixed;inset:0}.disc-modal-overlay.open{display:flex}.disc-modal{background:var(--bg-surface);border-radius:16px;width:100%;max-width:520px;padding:28px;box-shadow:0 24px 64px #0003}.dm-title{font-family:var(--font-display);color:var(--text-primary);margin-bottom:4px;font-size:18px;font-weight:800}.dm-sub{color:var(--text-muted);margin-bottom:20px;font-size:13px}.dm-field{margin-bottom:16px}.dm-label{color:var(--text-secondary);margin-bottom:6px;font-size:12px;font-weight:600;display:block}.dm-input{width:100%;font-family:var(--font-body);color:var(--text-primary);background:var(--bg-surface);border:1.5px solid var(--border-subtle);border-radius:9px;outline:none;padding:10px 14px;font-size:14px;transition:border-color .15s}.dm-input:focus{border-color:var(--brand-600)}.dm-textarea{width:100%;font-family:var(--font-body);color:var(--text-primary);background:var(--bg-surface);border:1.5px solid var(--border-subtle);resize:vertical;border-radius:9px;outline:none;min-height:96px;padding:10px 14px;font-size:14px;line-height:1.55;transition:border-color .15s}.dm-textarea:focus{border-color:var(--brand-600)}.dm-md-hint{color:var(--text-disabled);margin-top:4px;font-size:11px}.dm-tags{flex-wrap:wrap;gap:7px;display:flex}.dm-tag{border:1.5px solid var(--border-subtle);cursor:pointer;background:var(--bg-surface);color:var(--text-secondary);border-radius:9999px;padding:5px 13px;font-size:12px;font-weight:600;transition:all .15s}.dm-tag.selected{border-color:var(--brand-600);background:var(--brand-100);color:var(--brand-900)}.dm-footer{border-top:1px solid var(--border-subtle);justify-content:flex-end;align-items:center;gap:10px;margin-top:22px;padding-top:16px;display:flex}.discussions-layout{grid-template-columns:1fr 340px;align-items:start;gap:24px;display:grid}@media (max-width:960px){.discussions-layout{grid-template-columns:1fr}}.badge-pinned{background:var(--brand-100);color:var(--brand-900);border-color:var(--brand-300)}.badge-unanswered{background:var(--risk-med-bg);color:var(--risk-med-text);border-color:var(--risk-med-border)}.badge-instructor{background:var(--risk-low-bg);color:var(--risk-low-text);border-color:var(--risk-low-border)}.reply-count{font-weight:500}.reply-count,.view-count{color:var(--text-muted);align-items:center;gap:5px;font-size:12px;display:flex}.sidebar-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;margin-bottom:16px;padding:20px}.sc-title{font-family:var(--font-display);color:var(--text-primary);margin-bottom:14px;font-size:14px;font-weight:700}.course-info-row{align-items:center;gap:10px;margin-bottom:12px;display:flex}.stats-mini{grid-template-columns:1fr 1fr;gap:8px;margin-top:16px;display:grid}.stat-mini{background:var(--bg-app);border:1px solid var(--border-subtle);text-align:center;border-radius:9px;padding:12px}.sm-val{font-family:var(--font-display);color:var(--text-primary);font-size:18px;font-weight:800;line-height:1}.sm-lbl{color:var(--text-muted);margin-top:3px;font-size:10px}.new-thread-btn{width:100%;font-family:var(--font-body);color:#fff;background:var(--brand-600);cursor:pointer;border:none;border-radius:9px;justify-content:center;align-items:center;gap:7px;padding:12px;font-size:14px;font-weight:600;transition:background .15s;display:flex}.new-thread-btn:hover{background:var(--brand-700)}.thread-layout{grid-template-columns:1fr 300px;align-items:start;gap:32px;display:grid}@media (max-width:960px){.thread-layout{grid-template-columns:1fr}}.original-post{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:16px;margin-bottom:32px;overflow:hidden}.op-header{border-bottom:1px solid var(--border-subtle);background:linear-gradient(135deg,oklch(26% .095 218),oklch(38% .13 210));padding:20px 24px}.thread-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:#ffffffa6;margin-bottom:8px;font-size:10px;font-weight:700}.op-author-row{border-bottom:1px solid var(--border-subtle);align-items:center;gap:12px;padding:16px 24px;display:flex}.op-ava{background:var(--brand-200);width:40px;height:40px;font-family:var(--font-display);color:var(--brand-700);border-radius:50%;flex-shrink:0;place-items:center;font-size:15px;font-weight:700;display:grid}.op-name{color:var(--text-primary);font-size:14px;font-weight:700}.op-meta{color:var(--text-muted);margin-top:2px;font-size:12px}.role-badge{vertical-align:middle;border-radius:9999px;align-items:center;margin-inline-start:6px;padding:2px 7px;font-size:10px;font-weight:700;display:inline-flex}.rb-learner{background:var(--brand-100);color:var(--brand-900)}.rb-instructor{background:var(--risk-low-bg);color:var(--risk-low-text);border:1px solid var(--risk-low-border)}.op-body{padding:20px 24px}.op-body p{color:var(--text-secondary);margin-bottom:14px;font-size:14px;line-height:1.7}.op-body p:last-child{margin-bottom:0}.code-block{font-family:var(--font-mono,ui-monospace,monospace);color:oklch(82% .04 215);background:oklch(15% .012 215);border-radius:10px;margin:16px 0;padding:16px 20px;font-size:13px;line-height:1.65;overflow-x:auto}.op-footer{border-top:1px solid var(--border-subtle);align-items:center;gap:12px;padding:12px 24px;display:flex}.like-btn{color:var(--text-muted);border:1.5px solid var(--border-subtle);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:5px;padding:6px 12px;font-size:12px;font-weight:500;transition:all .12s;display:inline-flex}.like-btn.liked,.like-btn:hover{color:oklch(55% .22 15);background:oklch(97% .03 15);border-color:oklch(72% .15 15)}.like-count{font-size:12px}.tag-chip{background:var(--bg-app);color:var(--text-muted);border:1px solid var(--border-subtle);border-radius:9999px;padding:3px 9px;font-size:11px}.replies-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.rh-title{font-family:var(--font-display);color:var(--text-primary);font-size:16px;font-weight:800}.rh-count{color:var(--text-muted);font-size:13px}.reply-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;margin-bottom:10px;padding:16px 20px;transition:border-color .12s}.reply-card:hover{border-color:var(--brand-300)}.reply-card.instructor-reply{border-inline-start:3px solid var(--risk-low-border)}.reply-card.solution{border:2px solid var(--risk-low-border);background:oklch(98.8% .012 145)}.reply-top{align-items:center;gap:10px;margin-bottom:12px;display:flex}.reply-ava{width:34px;height:34px;font-family:var(--font-display);border-radius:50%;flex-shrink:0;place-items:center;font-size:12px;font-weight:700;display:grid}.reply-meta{flex:1;min-width:0}.reply-author{color:var(--text-primary);font-size:13px;font-weight:700}.reply-date{color:var(--text-muted);margin-top:1px;font-size:11px}.reply-badges{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;align-items:center;gap:5px;display:flex}.solution-badge{background:var(--risk-low-bg);color:var(--risk-low-text);border:1px solid var(--risk-low-border);border-radius:9999px;padding:2px 8px;font-size:10px;font-weight:700}.reply-body{color:var(--text-secondary);margin-bottom:12px;font-size:14px;line-height:1.65}.reply-body code{font-family:var(--font-mono,ui-monospace,monospace);background:var(--bg-app);color:var(--brand-700);border-radius:4px;padding:2px 6px;font-size:12px}.reply-footer{align-items:center;gap:8px;display:flex}.reply-like-btn{color:var(--text-muted);border:1.5px solid var(--border-subtle);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:5px;padding:5px 10px;font-size:12px;font-weight:500;transition:all .12s;display:inline-flex}.reply-like-btn.liked,.reply-like-btn:hover{color:oklch(55% .22 15);background:oklch(97% .03 15);border-color:oklch(72% .15 15)}.mark-solution-btn{color:var(--text-muted);border:1.5px solid var(--border-subtle);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:5px;margin-inline-start:auto;padding:5px 10px;font-size:12px;font-weight:500;transition:all .12s;display:inline-flex}.mark-solution-btn.marked,.mark-solution-btn:hover{color:var(--risk-low-text);border-color:var(--risk-low-border);background:var(--risk-low-bg)}.nested-replies{border-top:1px solid var(--border-subtle);padding-top:12px;flex-direction:column;gap:8px;margin-top:12px;padding-inline-start:20px;display:flex;position:relative}.nested-replies:before{content:"";background:var(--brand-200);inset-inline-start:8px;border-radius:2px;width:2px;position:absolute;top:12px;bottom:16px}.nested-reply-card{background:var(--bg-app);border:1px solid var(--border-subtle);border-radius:10px;padding:12px 14px;transition:border-color .12s}.nested-reply-card:hover{border-color:var(--brand-300)}.nested-reply-top{align-items:center;gap:8px;margin-bottom:8px;display:flex}.nested-reply-ava{border-radius:50%;flex-shrink:0;place-items:center;width:26px;height:26px;font-size:9px;font-weight:700;display:grid}.nested-reply-body{color:var(--text-secondary);margin-bottom:8px;font-size:13px;line-height:1.6}.nested-reply-footer{align-items:center;gap:8px;display:flex}.nr-like-btn{color:var(--text-muted);border:1px solid var(--border-subtle);cursor:pointer;background:0 0;border-radius:7px;align-items:center;gap:4px;padding:3px 8px;font-size:11px;font-weight:500;transition:all .12s;display:inline-flex}.nr-like-btn.liked,.nr-like-btn:hover{color:oklch(55% .22 15);background:oklch(97% .03 15);border-color:oklch(72% .15 15)}.nr-reply-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:7px;align-items:center;gap:4px;padding:3px 8px;font-size:11px;font-weight:500;transition:background .12s;display:inline-flex}.nr-reply-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.inline-reply-form{border-top:1px solid var(--border-subtle);margin-top:10px;padding-top:10px}.inline-reply-ta{border:1.5px solid var(--border-strong);width:100%;font-family:var(--font-body);background:var(--bg-surface);resize:none;min-height:60px;color:var(--text-primary);box-sizing:border-box;border-radius:9px;outline:none;padding:8px 10px;font-size:13px;transition:border-color .1s}.inline-reply-ta:focus{border-color:var(--brand-600)}.inline-reply-actions{justify-content:flex-end;gap:8px;margin-top:8px;display:flex}.add-reply{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:16px;margin-top:24px;padding:24px}.ar-author-row{align-items:center;gap:10px;margin-bottom:14px;display:flex}.ar-ava{background:var(--brand-200);width:34px;height:34px;font-family:var(--font-display);color:var(--brand-700);border-radius:50%;flex-shrink:0;place-items:center;font-size:13px;font-weight:700;display:grid}.ar-name{color:var(--text-primary);font-size:13px;font-weight:600}.ar-role{color:var(--text-muted);font-size:11px}.ar-textarea{border:1.5px solid var(--border-strong);width:100%;font-family:var(--font-body);color:var(--text-primary);background:var(--bg-surface);resize:vertical;border-radius:10px;outline:none;min-height:100px;padding:12px 16px;font-size:14px;line-height:1.6;transition:border-color .15s}.ar-textarea:focus{border-color:var(--brand-600)}.ar-actions{justify-content:flex-end;gap:10px;margin-top:12px;display:flex}.sidebar-panel{position:sticky;top:72px}.sp-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;margin-bottom:14px;padding:18px}.sp-title{font-family:var(--font-display);color:var(--text-primary);margin-bottom:12px;font-size:13px;font-weight:700}.sp-link{color:var(--brand-600);border-radius:8px;align-items:center;gap:8px;padding:7px 10px;font-size:13px;text-decoration:none;transition:background .1s;display:flex}.sp-link:hover{background:var(--bg-hover)}.top-bar{z-index:50;background:oklch(14% .022 215);border-bottom:1px solid #ffffff1a;gap:12px;height:48px;padding:0 20px;position:sticky;top:0}.back-btn,.top-bar{flex-shrink:0;align-items:center;display:flex}.back-btn{color:#ffffff8c;font-family:var(--font-body);cursor:pointer;background:0 0;border:none;border-radius:7px;gap:6px;padding:4px 8px;font-size:13px;text-decoration:none;transition:color .15s,background .15s}.back-btn:hover{color:#fff;background:#ffffff14}.bc-trail{color:#fff6;white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.bc-trail a{color:#fff6;text-decoration:none;transition:color .15s}.bc-trail a:hover{color:#ffffffbf}.bc-now,.bc-trail .bc-now{color:#ffffffb3;font-weight:500}.center-pill{color:#ffffffbf;white-space:nowrap;pointer-events:none;background:#ffffff1a;border:1px solid #ffffff26;border-radius:9999px;padding:4px 14px;font-size:12px;font-weight:500;position:absolute;left:50%;transform:translate(-50%)}.top-bar-right{flex-shrink:0;align-items:center;gap:8px;margin-inline-start:auto;display:flex}.nav-arrow{color:#ffffffb3;cursor:pointer;background:#ffffff12;border:1px solid #ffffff1f;border-radius:8px;place-items:center;width:32px;height:32px;font-size:15px;transition:background .15s,color .15s;display:grid}.nav-arrow:hover{color:#fff;background:#ffffff24}.nav-arrow:disabled{opacity:.35;cursor:default}.btn-mark-outline{font-family:var(--font-body);color:#fffc;cursor:pointer;white-space:nowrap;background:0 0;border:1.5px solid #ffffff4d;border-radius:9999px;padding:6px 14px;font-size:12px;font-weight:600;transition:border-color .15s,color .15s,background .15s}.btn-mark-outline:hover{color:#fff;background:#ffffff0f;border-color:#ffffffb3}.content-area{flex-direction:column;flex:1;align-items:center;padding:32px 24px 100px;display:flex;overflow-y:auto}.content-inner{width:100%;max-width:960px}.content-meta{margin-top:24px}.content-title{font-family:var(--font-display);letter-spacing:-.02em;color:#fff;margin-bottom:6px;font-size:22px;font-weight:800}.content-subtitle{color:#ffffff80;align-items:center;gap:8px;margin-bottom:16px;font-size:13px;display:flex}.content-subtitle .dot,.dot{background:#ffffff4d;border-radius:50%;width:3px;height:3px;display:inline-block}.content-desc{color:#ffffffa6;max-width:680px;font-size:14px;line-height:1.75}.bottom-bar{z-index:50;background:oklch(14% .022 215);border-top:1px solid #ffffff1a;flex-direction:column;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-progress{background:#ffffff1a;flex-shrink:0;height:3px}.bottom-progress-fill{background:var(--brand-600);border-radius:0 9999px 9999px 0;height:100%}.bottom-content{gap:16px;min-height:60px;padding:0 24px}.bottom-content,.bottom-prev{flex:1;align-items:center;display:flex}.bottom-prev{color:#ffffff73;white-space:nowrap;cursor:pointer;background:0 0;border:none;gap:5px;font-size:13px;font-weight:500;text-decoration:none;transition:color .15s}.bottom-prev:hover:not(:disabled){color:#fffc}.bottom-prev:disabled{opacity:.3;cursor:default}.bottom-center{color:#fff6;text-align:center;white-space:nowrap;flex:2;font-size:12px;font-weight:500}.bottom-next-wrap{flex:1;justify-content:flex-end;gap:12px}.bottom-next,.bottom-next-wrap{align-items:center;display:flex}.bottom-next{color:oklch(76% .152 215);white-space:nowrap;cursor:pointer;background:0 0;border:none;gap:5px;font-size:13px;font-weight:500;text-decoration:none;transition:color .15s}.bottom-next:hover:not(:disabled){color:oklch(83.5% .118 215)}.bottom-next:disabled{opacity:.3;cursor:default}.btn-mark-complete{font-family:var(--font-body);color:#fff;cursor:pointer;white-space:nowrap;background:oklch(59.8% .188 215);border:none;border-radius:9999px;padding:9px 20px;font-size:13px;font-weight:600;transition:background .15s}.btn-mark-complete:hover:not(:disabled){background:oklch(51.5% .178 215)}.btn-mark-complete:disabled{opacity:.6;cursor:not-allowed}.sk-dark{vertical-align:middle;background:linear-gradient(90deg,oklch(22% .02 225) 25%,oklch(30% .025 225) 50%,oklch(22% .02 225) 75%) 0 0/600px 100%;border-radius:5px;animation:sk-shimmer 1.5s ease-in-out infinite;display:inline-block}.player-topbar{z-index:50;background:oklch(14% .022 215);border-bottom:1px solid #ffffff1a;align-items:center;gap:16px;height:52px;padding:0 20px;display:flex;position:sticky;top:0}.player-topbar-center{flex-direction:column;flex:1;align-items:center;gap:3px;min-width:0;display:flex}.player-nav{align-items:center;gap:8px;display:flex}.player-body{flex:1;display:flex;overflow:hidden}.player-main{flex-direction:column;flex:1;display:flex;overflow:auto}.video-area{background:oklch(8% .01 215);width:100%;position:relative}.video-area:before{content:"";padding-bottom:56.25%;display:block}.video-controls{background:oklch(14% .022 215);border-bottom:1px solid #ffffff1a;padding:12px 20px}.player-sidebar{background:oklch(14% .022 215);border-inline-start:1px solid #ffffff1a;flex-direction:column;flex-shrink:0;width:300px;display:flex;overflow-y:auto}.ps-header{border-bottom:1px solid #ffffff1a;padding:14px 16px}.ps-item{border-bottom:1px solid #ffffff12;gap:10px;padding:10px 16px}.player-bottom,.ps-item{align-items:center;display:flex}.player-bottom{z-index:30;background:oklch(14% .022 215);border-top:1px solid #ffffff1a;justify-content:space-between;gap:16px;padding:12px 20px;position:sticky;bottom:0}.btn-ghost-dark{font-family:var(--font-body);color:#ffffff8c;cursor:pointer;background:0 0;border:1px solid #fff3;border-radius:9999px;padding:8px 18px;font-size:13px;font-weight:500}[data-theme=dark] .reply-card.solution{background:oklch(19% .025 145)}[data-theme=dark] .sidebar-card,[data-theme=dark] .sp-card{background:var(--bg-surface);border-color:var(--border-subtle)}.stat-icon{border-radius:10px;flex-shrink:0;place-items:center;width:42px;height:42px;font-size:20px;display:grid}.stat-icon-blue{background:var(--brand-100)}.stat-icon-green{background:var(--risk-low-bg)}.stat-icon-amber{background:var(--risk-med-bg)}.stat-sub{color:var(--text-muted);margin-top:3px;font-size:11px}.btn-sm{font-family:var(--font-body);cursor:pointer;white-space:nowrap;border:none;border-radius:9999px;align-items:center;gap:5px;padding:6px 14px;font-size:12px;font-weight:600;text-decoration:none;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.btn-sm-outline{color:var(--text-secondary);border:1.5px solid var(--border-strong);background:0 0}.btn-sm-outline:hover{border-color:var(--brand-400);color:var(--brand-600)}.btn-sm-retake{background:var(--risk-high-bg);color:var(--risk-high-text);border:1.5px solid var(--risk-high-border)}.btn-sm-retake:hover{background:var(--risk-high-border);color:#fff}.td-title{color:var(--text-primary);font-weight:600}.td-course{color:var(--brand-600);font-size:13px;font-weight:500;text-decoration:none}.td-course:hover{text-decoration:underline}.td-due-overdue{color:var(--risk-crit-text);font-weight:500}.td-due-soon{color:var(--risk-med-text);font-weight:500}.td-due-normal{color:var(--text-muted)}.score-wrap{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.score-pct{color:var(--text-primary);font-weight:700;font-family:var(--font-display);font-size:13px}.attempts-txt,.chev{color:var(--text-muted);font-size:13px}.chev{cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;padding:4px 6px;line-height:1;transition:background .1s,transform .28s;display:inline-flex}.chev:hover{background:var(--bg-active)}.chev.open{transform:rotate(180deg)}.main-row.expanded{background:var(--brand-50,oklch(97.7% .01 215))!important}.sub-row td{border-left:3px solid var(--brand-300);color:var(--text-secondary);background:oklch(98% .004 215);padding:8px 16px 8px 44px;font-size:12px}.sub-row{transform:none!important}.hidden{display:none!important}#apBackdrop{pointer-events:none;z-index:299;background:0 0;transition:background .22s;position:fixed;inset:0}#apBackdrop.active{pointer-events:auto;background:#0006}#apPanel{background:var(--bg-surface);z-index:300;opacity:0;pointer-events:none;border-radius:16px;flex-direction:column;width:480px;max-width:calc(100vw - 32px);transition:opacity .22s,transform .22s;display:flex;position:fixed;top:16px;bottom:16px;right:16px;overflow:hidden;transform:scale(.96)translateY(8px);box-shadow:0 20px 60px #0000004d}#apPanel.open{opacity:1;pointer-events:auto;transform:scale(1)translateY(0)}.ap-header{border-bottom:1px solid var(--border-subtle);background:var(--bg-app);justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 20px 16px;display:flex}.ap-hdr-info{flex:1;min-width:0}.ap-type-row{align-items:center;gap:8px;margin-bottom:8px;display:flex}.ap-type-badge{letter-spacing:.07em;text-transform:uppercase;background:var(--brand-100);color:var(--brand-900);border:1px solid var(--brand-200);border-radius:9999px;padding:3px 9px;font-size:10px;font-weight:700}.ap-course-badge{color:var(--brand-600);font-size:11px;font-weight:500}.ap-title{font-family:var(--font-display);color:var(--text-primary);font-size:18px;font-weight:800;line-height:1.2}.ap-close{cursor:pointer;width:28px;height:28px;color:var(--text-muted);background:0 0;border:none;border-radius:6px;flex-shrink:0;place-items:center;font-size:14px;transition:background .1s;display:grid}.ap-close:hover{background:var(--bg-hover);color:var(--text-primary)}.ap-body{flex-direction:column;flex:1;gap:16px;padding:20px;display:flex;overflow-y:auto}.ap-due-banner{background:var(--bg-app);border-radius:10px;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.ap-due-icon{flex-shrink:0;font-size:18px}.ap-due-label{letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted);margin-bottom:2px;font-size:11px;font-weight:700}.ap-due-val{color:var(--text-primary);font-size:14px;font-weight:600}.ap-due-chip{vertical-align:middle;border-radius:9999px;margin-inline-start:6px;padding:2px 8px;font-size:10px;font-weight:700}.ap-stats{border:1px solid var(--border-subtle);border-radius:10px;grid-template-columns:repeat(3,1fr);gap:0;display:grid;overflow:hidden}.ap-stat{text-align:center;border-right:1px solid var(--border-subtle);padding:12px 10px}.ap-stat:last-child{border-right:none}.ap-stat-val{font-family:var(--font-display);color:var(--text-primary);margin-bottom:3px;font-size:20px;font-weight:800;line-height:1}.ap-sec-lbl,.ap-stat-lbl{color:var(--text-muted);font-size:11px}.ap-sec-lbl{letter-spacing:.07em;text-transform:uppercase;font-weight:700}.ap-instructions{color:var(--text-secondary);font-size:13px;line-height:1.65}.ap-skills-wrap{flex-wrap:wrap;gap:6px;display:flex}.ap-skill-chip{color:var(--brand-700);background:var(--brand-100);border:1px solid var(--brand-200);border-radius:9999px;padding:3px 10px;font-size:11px;font-weight:600}.ap-prev-box{background:var(--bg-app);border:1px solid var(--border-subtle);border-radius:10px;justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.ap-prev-score{font-family:var(--font-display);color:var(--text-primary);font-size:24px;font-weight:800;line-height:1}.ap-prev-score.pass{color:var(--risk-low-text)}.ap-prev-score.fail{color:var(--risk-high-text)}.ap-prev-lbl{color:var(--text-muted);margin-top:2px;font-size:11px}.ap-prev-meta{color:var(--text-muted);font-size:12px}.ap-footer{border-top:1px solid var(--border-subtle);flex-direction:column;gap:10px;padding:16px 20px;display:flex}.ap-btn-primary{font-family:var(--font-body);color:#fff;background:var(--brand-600);cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:12px;font-size:14px;font-weight:700;text-decoration:none;transition:background .15s;display:flex}.ap-btn-primary:hover{background:var(--brand-700)}.ap-btn-primary.retake{background:var(--risk-high-text)}.ap-btn-secondary{font-family:var(--font-body);color:var(--text-secondary);border:1.5px solid var(--border-strong);cursor:pointer;background:0 0;border-radius:10px;justify-content:center;align-items:center;padding:10px;font-size:13px;font-weight:500;text-decoration:none;transition:border-color .15s,color .15s;display:flex}.ap-btn-secondary:hover{border-color:var(--brand-400);color:var(--brand-600)}.meta-item{border-bottom:1px solid var(--border-subtle);border-right:1px solid var(--border-subtle);padding:14px 16px}.meta-item:nth-child(2n){border-right:none}.meta-item:nth-last-child(-n+2){border-bottom:none}.meta-label{margin-bottom:4px;font-weight:700}.instructions-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.instructions-list li{color:var(--text-secondary);align-items:flex-start;gap:10px;font-size:14px;line-height:1.6;display:flex}.badge-skill{color:var(--brand-700);background:var(--brand-50,oklch(97.7% .01 215));border:1px solid var(--brand-200);border-radius:9999px;padding:4px 12px;font-size:12px;font-weight:600;display:inline-flex}.skills-row{flex-wrap:wrap;gap:8px;display:flex}.available-banner{background:var(--risk-med-bg);border:1px solid var(--risk-med-border);color:var(--risk-med-text);border-radius:10px;align-items:center;gap:10px;margin-bottom:20px;padding:12px 16px;font-size:13px;display:flex}.available-banner strong{font-weight:700}.desc-prose{color:var(--text-secondary);margin-bottom:20px;font-size:14px;line-height:1.75}.start-container{justify-content:center;align-items:flex-start;min-height:60vh;display:flex}.start-card{background:var(--bg-surface);border:1px solid var(--border-subtle);width:100%;max-width:600px;box-shadow:var(--shadow-panel);border-radius:20px;padding:40px 44px}.card-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--risk-med-text);background:var(--risk-med-bg);border:1px solid var(--risk-med-border);border-radius:9999px;align-items:center;gap:6px;margin-bottom:16px;padding:4px 12px;font-size:11px;font-weight:700;display:inline-flex}.card-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text-primary);margin-bottom:8px;font-size:26px;font-weight:800;line-height:1.2}.card-desc{color:var(--text-secondary);margin-bottom:24px;font-size:14px;line-height:1.6}.stat-chips{flex-wrap:wrap;gap:12px;margin-bottom:28px;display:flex}.stat-chip{background:var(--bg-app);border:1px solid var(--border-subtle);text-align:center;border-radius:10px;flex:100px;min-width:90px;padding:12px 16px}.rules-section{background:var(--bg-app);border:1px solid var(--border-subtle);border-radius:12px;margin-bottom:28px;padding:20px 24px}.rules-title{letter-spacing:.08em;text-transform:uppercase;color:var(--text-disabled);margin-bottom:14px;font-size:12px;font-weight:700}.rules-list{flex-direction:column;gap:10px;display:flex}.rule-item{color:var(--text-secondary);align-items:flex-start;gap:10px;font-size:14px;line-height:1.5;display:flex}.rule-icon{background:var(--brand-100);width:20px;height:20px;color:var(--brand-600);border-radius:50%;flex-shrink:0;place-items:center;margin-top:1px;font-size:11px;font-weight:700;display:grid}.countdown-wrap{background:linear-gradient(120deg,oklch(26% .095 218),oklch(38% .13 210));border-radius:12px;align-items:center;gap:14px;margin-bottom:28px;padding:18px 22px;display:flex}.cw-icon{flex-shrink:0;font-size:28px}.cw-label{color:#ffffffbf;margin-bottom:2px;font-size:13px}.cw-msg{font-family:var(--font-display);color:#fff;font-size:15px;font-weight:700}.attempt-info{color:var(--risk-high-text);border:1px solid var(--risk-high-border);background:var(--risk-high-bg);border-radius:10px;align-items:center;gap:8px;margin-bottom:28px;padding:12px 16px;font-size:13px;display:flex}.attempt-info strong{color:var(--risk-high-text);font-weight:700}.actions{align-items:center;gap:12px;display:flex}.btn-cancel{font-family:var(--font-body);color:var(--text-secondary);border:1.5px solid var(--border-strong);cursor:pointer;background:0 0;border-radius:10px;padding:13px 22px;font-size:14px;font-weight:500;text-decoration:none;transition:border-color .15s,color .15s}.btn-cancel:hover{border-color:var(--brand-300);color:var(--brand-600)}.btn-start{font-family:var(--font-body);color:#fff;background:var(--brand-600);cursor:pointer;border:none;border-radius:10px;padding:14px 32px;font-size:15px;font-weight:700;transition:background .15s}.btn-start:hover:not(:disabled){background:var(--brand-700)}.btn-start:disabled{opacity:.5;cursor:not-allowed}.sep{color:var(--text-disabled);font-size:11px}.danger{color:var(--risk-crit-text)}.attempt-topbar{z-index:50;background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);align-items:center;gap:20px;height:56px;padding:0 24px;display:flex;position:sticky;top:0}.topbar-title{font-family:var(--font-display);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;max-width:320px;font-size:15px;font-weight:700;overflow:hidden}.topbar-center{flex:1;justify-content:center}.topbar-center,.topbar-right{align-items:center;display:flex}.topbar-right{flex-shrink:0;gap:16px}.timer{letter-spacing:.04em;border:1.5px solid var(--border-subtle);background:var(--bg-app);color:var(--text-primary);border-radius:8px;padding:5px 18px;font-family:Courier New,monospace;font-size:22px;font-weight:700}.timer[data-warning=warning]{color:var(--risk-med-text);background:var(--risk-med-bg);border-color:var(--risk-med-border)}.timer[data-warning=critical]{color:var(--risk-high-text);background:var(--risk-high-bg);border-color:var(--risk-high-border)}.warning-banner{border-bottom:1px solid var(--risk-high-border);padding:10px 24px}.warn-icon{font-size:16px}.attempt-body{flex-direction:column;flex:1;align-items:center;padding:36px 24px 140px;display:flex}.question-card{background:var(--bg-surface);box-shadow:var(--shadow-panel);border-radius:16px;width:100%;max-width:800px;padding:36px 40px}.q-card-top{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.q-badge{letter-spacing:.06em;text-transform:uppercase;background:var(--brand-100);color:var(--brand-900);border:1px solid var(--brand-200);border-radius:9999px;align-items:center;padding:4px 12px;font-size:11px;font-weight:700;display:inline-flex}.q-points{color:var(--text-muted);font-size:13px;font-weight:500}.q-text{color:var(--text-primary);margin-bottom:28px;font-size:16px;font-weight:500;line-height:1.6}.q-progress-track{background:var(--border-subtle);border-radius:9999px;width:100px;height:4px;overflow:hidden}.q-progress-fill{background:var(--brand-600);border-radius:9999px;height:100%;transition:width .3s}.q-progress-label{color:var(--text-secondary);white-space:nowrap;font-size:13px;font-weight:500}.select-hint{color:var(--text-muted);margin-top:6px;font-size:12px}.attempt-bottombar{z-index:50;background:var(--bg-surface);border-top:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:16px;height:64px;padding:0 32px;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -2px 12px #0000000f}.q-navigator{flex-wrap:wrap;justify-content:center;align-items:center;gap:5px;max-width:40vw;display:flex;overflow:hidden}.q-nav-dot{cursor:pointer;border:1.5px solid var(--border-subtle);background:var(--bg-app);width:30px;height:30px;color:var(--text-disabled);border-radius:50%;place-items:center;font-size:11px;font-weight:700;transition:background .12s,color .12s;display:grid}.q-nav-dot.answered{background:var(--brand-100);color:var(--brand-900);border-color:var(--brand-200)}.q-nav-dot.current{background:var(--brand-600);color:#fff;border-color:var(--brand-700);box-shadow:0 0 0 3px var(--brand-100)}.q-nav-dot.empty{background:var(--bg-app);color:var(--text-disabled);border-color:var(--border-subtle)}.score-hero{background:var(--bg-surface);border:1px solid var(--border-subtle);box-shadow:var(--shadow-panel);border-radius:16px;flex-direction:column;align-items:center;margin-bottom:24px;padding:48px 32px 36px;display:flex}.score-circle-wrap{width:160px;height:160px;margin-bottom:20px;position:relative}.score-number{font-family:var(--font-display);letter-spacing:-.02em;flex-direction:column;justify-content:center;align-items:center;font-size:40px;font-weight:800;line-height:1;display:flex;position:absolute;inset:0}.passed-badge{letter-spacing:.08em;text-transform:uppercase;border:1.5px solid;border-radius:9999px;align-items:center;gap:6px;margin-bottom:24px;padding:6px 20px;font-size:13px;font-weight:700;display:inline-flex}.passed-badge.pass{background:var(--risk-low-bg);color:var(--risk-low-text);border-color:var(--risk-low-border)}.passed-badge.fail{background:var(--risk-high-bg);color:var(--risk-high-text);border-color:var(--risk-high-border)}.score-stats-row{border:1px solid var(--border-subtle);border-radius:12px;align-items:stretch;gap:0;width:100%;max-width:500px;margin-bottom:20px;display:flex;overflow:hidden}.stat-cell{text-align:center;border-right:1px solid var(--border-subtle);flex:1;padding:14px 10px}.stat-cell:last-child{border-right:none}.stat-val{font-family:var(--font-display);color:var(--text-primary);margin-bottom:2px;font-size:18px;font-weight:700}.stat-val.correct{color:var(--risk-low-text)}.stat-val.incorrect{color:var(--risk-high-text)}.score-points{color:var(--text-secondary);font-size:13px;font-weight:500}.path-offer{background:linear-gradient(135deg,oklch(24.5% .095 215),oklch(35% .125 210));border-radius:14px;margin-bottom:20px;padding:24px;position:relative;overflow:hidden}.path-offer:before{content:"";pointer-events:none;background:radial-gradient(80% 100% at 110%,#ffffff0f,#0000);position:absolute;inset:0}.po-top{flex-wrap:wrap;justify-content:space-between;margin-bottom:12px}.po-hdr,.po-top{align-items:flex-start;gap:12px;display:flex}.po-icon{flex-shrink:0;margin-top:2px;font-size:24px}.po-title{font-family:var(--font-display);color:#fff;margin-bottom:4px;font-size:17px;font-weight:800;line-height:1.2}.po-sub{color:#ffffffb8;font-size:13px;line-height:1.5}.po-conf{background:var(--risk-low-bg);color:var(--risk-low-text);white-space:nowrap;border-radius:9999px;flex-shrink:0;align-self:flex-start;padding:3px 10px;font-size:11px;font-weight:700}.po-skills{flex-wrap:wrap;gap:6px;margin-bottom:16px;display:flex}.po-skill{color:#fff;background:#ffffff26;border:1px solid #ffffff40;border-radius:9999px;padding:3px 10px;font-size:11px;font-weight:600}.po-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.btn-gen-path{font-family:var(--font-body);color:var(--brand-700);cursor:pointer;background:#fff;border:none;border-radius:9999px;align-items:center;gap:6px;padding:10px 22px;font-size:14px;font-weight:700;text-decoration:none;transition:background .15s;display:inline-flex}.btn-gen-path:hover{background:oklch(94% .04 215)}.btn-view-recs{font-family:var(--font-body);color:#ffffffd9;cursor:pointer;background:#ffffff1f;border:1px solid #ffffff40;border-radius:9999px;padding:9px 18px;font-size:13px;font-weight:600;transition:background .15s}.btn-view-recs:hover{background:#fff3}.review-section{margin-bottom:24px}.section-title{font-family:var(--font-display);color:var(--text-primary);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;font-size:16px;font-weight:700;display:flex}.section-count{color:var(--text-muted);background:var(--bg-app);border:1px solid var(--border-subtle);border-radius:9999px;padding:2px 10px;font-size:12px;font-weight:600}.review-filter-tabs{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:16px;display:flex}.rft{border:1.5px solid var(--border-subtle);background:var(--bg-surface);color:var(--text-secondary);cursor:pointer;border-radius:9999px;padding:6px 14px;font-size:12px;font-weight:600;transition:all .12s}.rft:hover{border-color:var(--brand-300);color:var(--brand-700)}.rft.active{background:var(--brand-600);color:#fff;border-color:var(--brand-600)}.rft.correct-tab.active{background:var(--risk-low-text);border-color:var(--risk-low-text)}.rft.wrong-tab.active{background:var(--risk-high-text);border-color:var(--risk-high-text)}.rft.skipped-tab.active{background:var(--risk-med-text);border-color:var(--risk-med-text)}.q-review-item{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;margin-bottom:10px;overflow:hidden}.q-review-header{justify-content:space-between;padding:16px 20px}.q-review-header,.q-review-left{align-items:flex-start;gap:12px;display:flex}.q-review-left{flex:1;min-width:0}.q-num-badge{background:var(--bg-app);width:28px;height:28px;color:var(--text-muted);border-radius:50%;flex-shrink:0;place-items:center;margin-top:1px;font-size:11px;font-weight:700;display:grid}.q-num-badge.correct{background:var(--risk-low-bg);color:var(--risk-low-text)}.q-num-badge.wrong{background:var(--risk-high-bg);color:var(--risk-high-text)}.q-review-text{color:var(--text-primary);font-size:14px;font-weight:500;line-height:1.55}.q-pts{color:var(--text-muted);white-space:nowrap;flex-shrink:0;font-size:13px;font-weight:600}.q-pts.full{color:var(--risk-low-text)}.q-pts.partial{color:var(--risk-med-text)}.q-pts.zero{color:var(--risk-crit-text)}.q-review-body{padding:0 20px 16px 60px}.correct-answer-row{background:var(--risk-low-bg);color:var(--risk-low-text);border-radius:8px;align-items:flex-start;gap:8px;margin-bottom:6px;padding:8px 14px;font-size:13px;display:flex}.feedback-row{color:var(--text-muted);border-left:2px solid var(--border-strong);margin-top:4px;padding:6px 14px;font-size:12px;font-style:italic}.remedial-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:14px;margin-bottom:24px;overflow:hidden}.remedial-hdr{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.remedial-title{font-family:var(--font-display);color:var(--text-primary);font-size:14px;font-weight:700}.ai-badge-pill{letter-spacing:.07em;text-transform:uppercase;color:oklch(44% .13 295);background:oklch(96.8% .048 300);border:1px solid oklch(76% .1 295);border-radius:9999px;padding:3px 10px;font-size:10px;font-weight:700}.rem-item{border-bottom:1px solid var(--border-subtle);align-items:flex-start;gap:12px;padding:16px 20px;display:flex}.rem-item:last-child{border-bottom:none}.rem-icon{background:var(--bg-app);border-radius:9px;flex-shrink:0;place-items:center;width:38px;height:38px;font-size:17px;display:grid}.rem-body{flex:1;min-width:0}.rem-title{color:var(--text-primary);margin-bottom:4px;font-size:14px;font-weight:600}.rem-badges{flex-wrap:wrap;gap:6px;margin-bottom:4px;display:flex}.rem-badge{background:var(--bg-app);color:var(--text-muted);border-radius:9999px;padding:2px 8px;font-size:10px;font-weight:700}.rem-badge.prio-high{background:var(--risk-high-bg);color:var(--risk-high-text)}.rem-badge.prio-med{background:var(--risk-med-bg);color:var(--risk-med-text)}.rem-reason{color:var(--text-muted);margin-bottom:3px;font-size:12px}.rem-breadcrumb{color:var(--text-disabled);font-size:11px}.btn-review{font-family:var(--font-body);color:var(--brand-600);background:var(--brand-100);cursor:pointer;white-space:nowrap;border:none;border-radius:9999px;padding:7px 14px;font-size:12px;font-weight:600;transition:background .15s}.btn-review:hover{background:var(--brand-200)}.success-card{background:var(--risk-low-bg);border:1.5px solid var(--risk-low-border);border-radius:16px;align-items:center;gap:20px;margin-bottom:24px;padding:28px;display:flex}.success-icon{border:2px solid var(--risk-low-border);background:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:52px;height:52px;font-size:22px;display:grid}.success-body{flex:1;min-width:0}.success-title{font-family:var(--font-display);color:var(--risk-low-text);margin-bottom:4px;font-size:17px;font-weight:800}.success-desc{color:var(--risk-low-text);opacity:.85;font-size:14px}.success-actions{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.filter-bar{margin-bottom:20px}.score-track{stroke:var(--border-subtle)}.score-arc,.score-track{fill:none;stroke-width:10px}.score-arc{stroke-linecap:round;transition:stroke-dashoffset 1s}.page-body{padding:28px 28px 48px}.warning-banner{background:var(--risk-high-bg);border:1px solid var(--risk-high-border);color:var(--risk-high-text);border-radius:10px;align-items:center;gap:10px;margin-bottom:20px;padding:12px 16px;font-size:13px;font-weight:500;display:flex}@media (max-width:600px){.start-card{padding:28px 22px}.stat-chips{gap:8px}.stat-chip{min-width:70px;padding:10px 12px}.actions{flex-direction:column}.btn-cancel,.btn-start{text-align:center;justify-content:center;width:100%}.question-card{padding:24px 20px}.attempt-bottombar{gap:8px;padding:0 16px}.q-navigator{gap:4px}.q-nav-dot{width:26px;height:26px;font-size:10px}}.filter-bar{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:24px;padding:12px 16px;display:flex}.filter-divider{background:var(--border-subtle);flex-shrink:0;width:1px;height:20px}.filter-label{color:var(--text-muted);white-space:nowrap;font-size:12px;font-weight:600}.filter-search-wide{background:var(--bg-app);border:1px solid var(--border-subtle);border-radius:8px;flex:2;align-items:center;gap:8px;min-width:220px;padding:8px 14px;display:flex}.filter-search-wide input{font-family:var(--font-body);color:var(--text-primary);background:0 0;border:none;outline:none;width:100%;font-size:13px}.filter-search-wide input::placeholder{color:var(--text-disabled)}.results-bar{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.results-count{color:var(--text-muted);font-size:13px}.results-count strong{color:var(--text-primary);font-weight:600}.badge-beginner{color:oklch(38% .12 145);background:oklch(96.2% .044 145);border:1px solid oklch(76% .12 145)}.badge-intermediate{color:oklch(56% .14 75);background:oklch(96.8% .052 85);border:1px solid oklch(76% .14 75)}.badge-advanced{color:oklch(48% .16 45);background:oklch(96.2% .058 55);border:1px solid oklch(72% .16 45)}.course-card .card-body{flex-direction:column;flex:1;gap:8px;display:flex;padding:14px 16px!important}.card-footer{border-top:1px solid var(--border-subtle);background:var(--bg-app);justify-content:space-between;align-items:center;gap:8px;padding:12px 16px;display:flex}.card-not-started-pct{color:var(--text-disabled);font-size:12px;font-weight:600}.cat-footer-enrolled{flex-direction:column;gap:6px;width:100%;display:flex}.cat-footer-progress-row{justify-content:space-between;align-items:center;display:flex}.cat-footer-pct{color:var(--brand-600);font-size:11px;font-weight:600}.cat-footer-modules{color:var(--text-muted);font-size:11px}.cat-enroll-row{justify-content:space-between;align-items:center;gap:8px;display:flex}[data-theme=dark] .filter-bar{background:var(--bg-surface);border-color:var(--border-subtle)}[data-theme=dark] .filter-search-wide{background:var(--bg-hover)}[data-theme=dark] .badge-beginner{color:oklch(68% .12 145);background:oklch(18.5% .042 145);border-color:oklch(34% .1 145)}[data-theme=dark] .badge-intermediate{color:oklch(76% .12 75);background:oklch(19.5% .048 85);border-color:oklch(36% .1 75)}[data-theme=dark] .badge-advanced{color:oklch(78% .13 45);background:oklch(19.5% .055 55);border-color:oklch(37% .12 45)}.back-crumb{color:var(--text-muted);align-items:center;gap:6px;margin-bottom:16px;font-size:13px;text-decoration:none;transition:color .15s;display:flex}.back-crumb:hover{color:var(--brand-600)}.big-progress-wrap{flex-direction:column;gap:14px;display:flex}.big-progress-bar-bg{background:var(--border-subtle);border-radius:9999px;height:10px;overflow:hidden}.big-progress-fill{background:var(--brand-600);border-radius:9999px;height:100%}.big-progress-stats{flex-wrap:wrap;justify-content:space-between;gap:8px;display:flex}.stat-pct{font-family:var(--font-display);color:var(--brand-600);font-size:32px;font-weight:800}.stat-item{flex-direction:column;gap:2px;display:flex}.meta-grid{border:1px solid var(--border-subtle);border-radius:10px;grid-template-columns:1fr 1fr;gap:0;margin-top:20px;display:grid;overflow:hidden}.meta-cell{border-bottom:1px solid var(--border-subtle);padding:12px 16px}.meta-cell:nth-child(odd){border-right:1px solid var(--border-subtle)}.meta-cell:nth-last-child(-n+2){border-bottom:none}.meta-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:3px;font-size:11px;font-weight:500}.meta-value{color:var(--text-primary);font-size:14px;font-weight:600}.skills-wrap{flex-wrap:wrap;gap:6px;margin-top:16px;display:flex}.info-prose{color:var(--text-secondary);font-size:14px;line-height:1.7}.info-prose p+p{margin-top:12px}.timeline{flex-direction:column}.timeline,.timeline-item{gap:0;display:flex;position:relative}.timeline-left{flex-direction:column;flex-shrink:0;align-items:center;width:48px;display:flex}.timeline-circle{z-index:1;border-radius:50%;flex-shrink:0;place-items:center;width:32px;height:32px;font-size:14px;font-weight:700;display:grid;position:relative}.tc-complete{background:var(--risk-low-bg);color:var(--risk-low-text);border:2px solid var(--risk-low-border)}.tc-active{background:var(--brand-600);color:#fff;border:2px solid var(--brand-700)}.tc-upcoming{background:var(--bg-surface);color:var(--text-muted);border:2px solid var(--border-strong)}.tc-locked{background:var(--bg-app);color:var(--text-disabled);border:2px dashed var(--border-strong)}.timeline-line{background:var(--border-subtle);flex:1;width:2px;min-height:12px}.timeline-last .timeline-line{display:none}.timeline-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;flex:1;margin-bottom:16px;margin-left:12px;transition:box-shadow .15s;overflow:hidden}.timeline-card:hover{box-shadow:var(--shadow-panel)}.timeline-card-active{border-color:var(--brand-300)}.timeline-card-locked{opacity:.7}.tc-body{align-items:center;gap:16px;padding:16px 18px;display:flex}.tc-info{flex:1;min-width:0}.tc-title{font-family:var(--font-display);color:var(--text-primary);margin-bottom:4px;font-size:15px;font-weight:700}.tc-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;display:flex}.tc-meta-sep{background:var(--text-disabled);border-radius:50%;width:3px;height:3px;display:inline-block}.tc-action{flex-shrink:0}.tc-lock-msg{color:var(--text-disabled);gap:5px;margin-top:6px;font-size:11px}.tc-lock-msg,.tc-progress-row{align-items:center;display:flex}.tc-progress-row{gap:10px;padding:0 18px 14px}.tc-progress-bar-bg{background:var(--border-subtle);border-radius:9999px;flex:1;height:4px;overflow:hidden}.tc-progress-fill{background:var(--brand-600);border-radius:9999px;height:100%}.tc-progress-fill-complete{background:var(--risk-low-text)}.tc-progress-pct{color:var(--text-muted);white-space:nowrap;font-size:11px;font-weight:600}.capstone-item .timeline-card{background:linear-gradient(135deg,oklch(22% .08 218),oklch(34% .12 210));border:2px solid oklch(59.8% .188 215);border-radius:16px;position:relative;overflow:hidden}.capstone-item .timeline-circle{color:#fff;background:oklch(59.8% .188 215);border-color:oklch(59.8% .188 215);width:44px;height:44px;font-size:20px}.capstone-item .tc-title{font-size:17px;color:#fff!important}.capstone-item .tc-meta,.capstone-item .tc-meta span{color:#ffffffa6}.capstone-item .tc-lock-msg{color:#ffffff80;background:#ffffff14;border:1px solid #ffffff26;border-radius:8px;margin-top:10px;padding:6px 12px;font-size:12px;display:inline-block}.capstone-trophy{margin-bottom:6px;font-size:28px;display:block}.capstone-cert-note{color:#ffffff8c;background:#ffffff14;border-radius:9999px;align-items:center;gap:5px;margin-top:8px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-flex}.ai-rationale-hdr{align-items:center;gap:10px;display:flex}.ai-bulb{background:var(--brand-100);border-radius:8px;flex-shrink:0;place-items:center;width:28px;height:28px;font-size:14px;display:grid}.ai-rationale-body{flex-direction:column;gap:14px;display:flex}.ai-rationale-text{color:var(--text-secondary);font-size:14px;line-height:1.7}.ai-confidence-row{background:var(--risk-low-bg);border:1px solid var(--risk-low-border);border-radius:8px;align-items:center;gap:10px;padding:10px 14px;display:flex}.ai-confidence-label{color:var(--risk-low-text);font-size:12px;font-weight:600}.ai-source{color:var(--text-muted);background:var(--bg-app);border:1px solid var(--border-subtle);border-radius:8px;align-items:center;gap:6px;padding:10px 14px;font-size:12px;display:flex}.page-badges{flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}.step-item,.steps-timeline{gap:0;position:relative}.step-item,.step-left{display:flex}.step-left{flex-direction:column;flex-shrink:0;width:48px}.step-circle{z-index:1;border:2px solid #0000;border-radius:50%;flex-shrink:0;place-items:center;width:32px;height:32px;font-size:13px;font-weight:700;display:grid;position:relative}.sc-available{background:var(--brand-600);color:#fff;border-color:var(--brand-700)}.sc-locked{background:var(--bg-app);color:var(--text-disabled);border:2px dashed var(--border-strong)}.step-line{background:var(--border-subtle);flex:1;width:2px;min-height:12px}.step-last .step-line{display:none}.step-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;flex:1;margin-bottom:16px;margin-left:12px;transition:box-shadow .15s;overflow:hidden}.step-card:hover:not(.step-card-locked){box-shadow:var(--shadow-panel)}.step-card-active{border-color:var(--brand-300)}.step-card-locked{opacity:.65}.step-card-hdr{justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 18px 10px;display:flex}.step-card-title-wrap{flex:1;min-width:0}.step-num{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:3px;font-size:11px;font-weight:600}.step-title{font-family:var(--font-display);color:var(--text-primary);margin-bottom:6px;font-size:15px;font-weight:700;line-height:1.3}.step-title-locked{color:var(--text-muted)}.step-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.step-meta-item{color:var(--text-muted);font-size:11px}.step-meta-sep{background:var(--text-disabled);border-radius:50%;width:3px;height:3px;display:inline-block}.step-ai-block{background:oklch(97.2% .046 90);border:1px solid oklch(84% .12 80);border-radius:8px;align-items:flex-start;gap:8px;margin:0 18px 14px;padding:10px 12px;display:flex}.step-ai-icon{color:oklch(62% .16 75);flex-shrink:0;margin-top:1px;font-size:13px}.step-ai-text{color:oklch(45% .14 75);font-size:12px;line-height:1.5}.step-footer{border-top:1px solid var(--border-subtle);justify-content:space-between;gap:8px;margin-top:2px;padding:10px 18px 14px}.step-footer,.step-lock-msg{align-items:center;display:flex}.step-lock-msg{color:var(--text-disabled);gap:5px;font-size:11px}.btn-sm-primary{font-family:var(--font-body);color:#fff;background:var(--brand-600);cursor:pointer;border:none;border-radius:9999px;align-items:center;gap:6px;padding:7px 16px;font-size:12px;font-weight:600;text-decoration:none;transition:background .15s;display:inline-flex}.btn-sm-primary:hover{background:var(--brand-700)}.chart-grid-wrap{position:relative}.target-overlay{background:repeating-linear-gradient(to bottom,var(--risk-high-text) 0 6px,transparent 6px 12px);z-index:2;pointer-events:none;width:2px;top:0;bottom:0}.target-label,.target-overlay{position:absolute;left:calc(80% - 1.2px)}.target-label{color:var(--risk-high-text);white-space:nowrap;background:var(--bg-surface);padding:0 4px;font-size:10px;font-weight:700;top:-18px;transform:translate(-50%)}.cert-actions .btn-download{background:var(--brand-600);color:#fff;border:none;width:auto}.cert-actions .btn-download:hover{background:var(--brand-700)}.cert-actions .btn-share{background:var(--bg-app);color:var(--text-secondary);border:1px solid var(--border-strong);width:auto}.cert-actions .btn-share:hover{border-color:var(--brand-400);color:var(--brand-600)}.cert-actions .btn-view{background:var(--bg-app);color:var(--text-secondary);border:1px solid var(--border-strong);border-radius:8px;width:auto;padding:7px 10px}.cert-actions .btn-view:hover{border-color:var(--brand-400);color:var(--brand-600);background:0 0}.btn-download{background:var(--brand-600);color:#fff}.btn-share{background:var(--bg-app);color:var(--text-secondary);border:1px solid var(--border-strong)}.sk-gold{vertical-align:middle;background:linear-gradient(90deg,oklch(92% .045 85) 25%,oklch(96% .06 80) 50%,oklch(92% .045 85) 75%) 0 0/600px 100%;border-radius:5px;animation:sk-shimmer 1.5s ease-in-out infinite;display:inline-block}.wizard{background:var(--bg-surface);border-radius:20px;flex-direction:column;width:90%;max-width:600px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 24px 80px #0000004d}.wizard-header{flex-shrink:0;padding:24px 28px 0}.wizard-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text-primary);margin-bottom:6px;font-size:20px;font-weight:800}.wizard-subtitle{color:var(--text-muted);font-size:13px}.stepper{flex-shrink:0;align-items:center;padding:20px 28px;display:flex}.step-label{white-space:nowrap;font-size:11px}.step-upcoming .step-circle{background:var(--bg-app);border-color:var(--border-subtle);color:var(--text-disabled)}.wizard-body{flex:1;padding:0 28px 20px;overflow-y:auto}.option-card{border:1.5px solid var(--border-subtle);cursor:pointer;border-radius:12px;align-items:flex-start;gap:14px;margin-bottom:10px;padding:16px;display:flex}.option-card.selected{border-color:var(--brand-600);background:var(--brand-100)}.option-radio{border:1.5px solid var(--border-subtle);border-radius:50%;flex-shrink:0;width:18px;height:18px;margin-top:2px}.option-card.selected .option-radio{background:var(--brand-600);border-color:var(--brand-600)}.wizard-footer{border-top:1px solid var(--border-subtle);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 28px;display:flex}[data-theme=dark] .meta-grid,[data-theme=dark] .step-card,[data-theme=dark] .timeline-card{background:var(--bg-surface);border-color:var(--border-subtle)}[data-theme=dark] .ai-confidence-row{background:oklch(18.5% .042 145);border-color:oklch(31% .08 145)}[data-theme=dark] .ai-source{background:var(--bg-app);border-color:var(--border-subtle)}[data-theme=dark] .step-ai-block{background:oklch(19.5% .048 85);border-color:oklch(31% .1 80)}.btn-secondary{font-family:var(--font-body);color:var(--text-secondary);background:0 0;border-radius:9px;padding:9px 18px;font-size:14px;font-weight:500;transition:all .15s}.btn-secondary:hover{border-color:var(--brand-300);color:var(--brand-700)}.page-subtitle{color:var(--text-secondary);margin-top:3px;font-size:14px}.modal-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.sk-text-xl{border-radius:5px;height:24px}.btn{font-family:var(--font-body);cursor:pointer;white-space:nowrap;border:none;border-radius:9999px;align-items:center;gap:7px;padding:9px 20px;font-size:13px;font-weight:600;text-decoration:none;transition:background .15s,color .15s;display:inline-flex}.btn-destructive{color:#fff;background:oklch(53% .18 28);border:none}.btn-destructive:hover{opacity:.88}.btn-secondary{color:var(--text-primary);background:var(--bg-hover);border:1.5px solid var(--border-strong);cursor:pointer;border-radius:9999px;padding:9px 20px;transition:background .1s,border-color .1s}.btn-secondary:hover{background:var(--bg-active);border-color:var(--border-strong)}.form-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2.5'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding-right:28px}.modal-icon{border-radius:50%;place-items:center;width:52px;height:52px;margin-bottom:14px;font-size:22px;display:grid}.modal-icon-crit{background:var(--risk-crit-bg);color:var(--risk-crit-text)}.modal-icon-ok{background:var(--risk-low-bg);color:var(--risk-low-text)}.modal-ftr{border-top:1px solid var(--border-subtle);background:var(--bg-app);justify-content:flex-end;align-items:center;gap:10px;padding:14px 24px 18px;display:flex}.modal-sub{color:var(--text-muted);font-size:13px}.notif-topbar{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;align-items:center;gap:8px;padding:10px 16px;display:flex}.hover-lift{transition:transform .18s,box-shadow .18s}.hover-lift:hover{transform:translateY(-4px);box-shadow:0 8px 28px #0000001f,0 0 0 1px #00000008}.crit-pulse-dot{background:var(--risk-high-text);border-radius:50%;flex-shrink:0;width:10px;height:10px;animation:critPulse 1.8s ease-in-out infinite;display:inline-block}.qp-backdrop{z-index:299;background:#0006;position:fixed;inset:0}.qp-panel{background:var(--bg-surface);z-index:300;border-radius:16px;flex-direction:column;width:480px;max-width:calc(100vw - 32px);animation:ppIn .18s ease-out;display:flex;position:fixed;top:16px;bottom:16px;right:16px;overflow:hidden;box-shadow:0 20px 60px #0000004d}.qp-header{border-bottom:1px solid var(--border-subtle);flex-shrink:0;align-items:flex-start;gap:12px;padding:16px 18px 14px;display:flex}.qp-hdr-info{flex:1;min-width:0}.qp-status-row{align-items:center;gap:6px;margin-bottom:6px;display:flex}.qp-status-badge{letter-spacing:.06em;text-transform:uppercase;border-radius:9999px;padding:2px 8px;font-size:9px;font-weight:700}.qp-title{font-family:var(--font-display);color:var(--text-primary);letter-spacing:-.01em;font-size:17px;font-weight:800;line-height:1.25}.qp-close{cursor:pointer;width:30px;height:30px;color:var(--text-muted);background:0 0;border:none;border-radius:8px;flex-shrink:0;place-items:center;font-size:15px;transition:background .1s;display:grid}.qp-close:hover{color:oklch(44% .15 25);background:oklch(96.2% .04 25)}.qp-body{scrollbar-width:thin;flex:1;padding:16px 18px;overflow-y:auto}.qp-body::-webkit-scrollbar{width:4px}.qp-body::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:99px}.qp-thumb{border-radius:10px;flex-shrink:0;justify-content:center;width:100%;height:100px;font-size:34px;overflow:hidden}.qp-arc-wrap,.qp-thumb{align-items:center;margin-bottom:16px;display:flex}.qp-arc-wrap{background:var(--bg-app);border-radius:12px;gap:18px;padding:14px 18px}.qp-arc-info{flex:1}.qp-arc-label{color:var(--text-muted);margin-bottom:2px;font-size:12px}.qp-arc-val{font-family:var(--font-display);color:var(--text-primary);font-size:22px;font-weight:800;line-height:1}.qp-arc-mod{color:var(--text-muted);margin-top:3px;font-size:11px}.qp-current-module{background:var(--brand-100);border:1px solid var(--brand-200);border-radius:9px;margin-bottom:14px;padding:10px 12px}.qp-cm-label{letter-spacing:.08em;text-transform:uppercase;color:var(--brand-700);margin-bottom:4px;font-size:10px;font-weight:700}.qp-cm-name{color:var(--text-primary);font-size:13px;font-weight:600}.qp-cm-sub{color:var(--text-muted);margin-top:2px;font-size:11px}.qp-mod-list{flex-direction:column;gap:0;display:flex}.qp-mod-item{border-bottom:1px solid var(--border-subtle);align-items:center;gap:10px;padding:9px 0;display:flex}.qp-mod-item:last-child{border-bottom:none}.qp-mod-icon{border-radius:50%;flex-shrink:0;place-items:center;width:22px;height:22px;font-size:10px;font-weight:700;display:grid}.qp-mod-icon.done{color:oklch(38% .12 145);background:oklch(96.2% .044 145)}.qp-mod-icon.current{background:var(--brand-600);color:#fff}.qp-mod-icon.upcoming{background:var(--border-subtle);color:var(--text-disabled)}.qp-mod-name{color:var(--text-secondary);flex:1;font-size:12px;font-weight:500}.qp-mod-name.done{color:var(--text-disabled);text-decoration:line-through}.qp-mod-name.current{color:var(--text-primary);font-weight:700}.qp-mod-pct{color:var(--text-muted);font-size:10px}.qp-footer{border-top:1px solid var(--border-subtle);flex-shrink:0;gap:8px;padding:14px 18px;display:flex}.qp-btn-primary{font-family:var(--font-body);cursor:pointer;background:var(--brand-600);color:#fff;border:none;border-radius:10px;flex:1;padding:12px;font-size:13px;font-weight:700;transition:background .12s,transform .1s}.qp-btn-primary:hover{background:var(--brand-700)}.qp-btn-primary:active{transform:scale(.98)}.qp-btn-primary.completed{background:oklch(38% .12 145)}.qp-btn-primary.completed:hover{background:oklch(32% .11 145)}.qp-btn-secondary{border:1.5px solid var(--border-subtle);font-family:var(--font-body);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border-radius:10px;justify-content:center;align-items:center;padding:12px 16px;font-size:13px;font-weight:600;text-decoration:none;transition:background .12s;display:flex}.qp-btn-secondary:hover{background:var(--bg-hover)}.cp-backdrop{z-index:299;background:#0006;position:fixed;inset:0}.cp-panel{background:var(--bg-surface);z-index:300;border-radius:16px;flex-direction:column;width:480px;max-width:calc(100vw - 32px);animation:ppIn .18s ease-out;display:flex;position:fixed;top:16px;bottom:16px;right:16px;overflow:hidden;box-shadow:0 20px 60px #0000004d}.cp-header{align-items:flex-start;padding:16px 18px 14px}.cp-header-info{flex:1;min-width:0}.cp-cat-row{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:6px;display:flex}.cp-cat-chip,.cp-diff-chip{letter-spacing:.06em;text-transform:uppercase;border-radius:9999px;padding:2px 8px;font-size:9px;font-weight:700}.diff-beginner{color:oklch(38% .12 145);background:oklch(96.2% .044 145)}.diff-intermediate{color:oklch(56% .14 75);background:oklch(96.8% .052 85)}.diff-advanced{color:oklch(44% .15 25);background:oklch(96.2% .04 25)}.cp-title{letter-spacing:-.01em;font-size:17px;font-weight:800;line-height:1.25}.cp-close{cursor:pointer;width:30px;height:30px;color:var(--text-muted);background:0 0;border:none;border-radius:8px;flex-shrink:0;place-items:center;font-size:15px;transition:background .1s;display:grid}.cp-close:hover{color:oklch(44% .15 25);background:oklch(96.2% .04 25)}.cp-body{scrollbar-width:thin;padding:16px 18px}.cp-body::-webkit-scrollbar{width:4px}.cp-body::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:99px}.cp-thumb{border-radius:10px;flex-shrink:0;justify-content:center;width:100%;height:120px;font-size:36px;position:relative;overflow:hidden}.cp-instructor-row,.cp-thumb{align-items:center;margin-bottom:14px;display:flex}.cp-instructor-row{gap:10px}.cp-instructor-ava{background:var(--brand-200);width:32px;height:32px;font-family:var(--font-display);color:var(--brand-700);border-radius:50%;flex-shrink:0;place-items:center;font-size:11px;font-weight:700;display:grid}.cp-instructor-name{color:var(--text-primary);font-size:13px;font-weight:600}.cp-instructor-title{color:var(--text-muted);font-size:11px}.cp-stars{color:oklch(68% .17 75);letter-spacing:1px;font-size:14px}.cp-rating-val{color:var(--text-primary);margin-inline-start:4px;font-size:12px;font-weight:700}.cp-rating-count{color:var(--text-muted);font-size:11px}.cp-stats-row{grid-template-columns:repeat(4,1fr);gap:8px;margin:14px 0;display:grid}.cp-stat{background:var(--bg-app);text-align:center;border-radius:9px;padding:10px 8px}.cp-stat-val{font-family:var(--font-display);color:var(--text-primary);font-size:16px;font-weight:800;line-height:1}.cp-stat-lbl{color:var(--text-muted);text-wrap:balance;margin-top:3px;font-size:10px}.cp-desc-title{letter-spacing:.08em;text-transform:uppercase;color:var(--text-disabled);margin:14px 0 8px;font-size:10px;font-weight:700}.cp-desc-text{color:var(--text-secondary);font-size:13px;line-height:1.65}.cp-skills-wrap{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.cp-skill-chip{background:var(--brand-100);color:var(--brand-700);border:1px solid var(--brand-200);border-radius:9999px;padding:4px 10px;font-size:11px;font-weight:500}.cp-progress-section{border-top:1px solid var(--border-subtle);margin-top:14px;padding-top:14px}.cp-prog-label{color:var(--text-muted);justify-content:space-between;align-items:center;margin-bottom:6px;font-size:12px;display:flex}.cp-prog-bar{background:var(--border-subtle);border-radius:9999px;height:6px;overflow:hidden}.cp-prog-fill{background:oklch(59.8% .188 215);border-radius:9999px;height:100%;transition:width .6s}.cp-footer{border-top:1px solid var(--border-subtle);flex-shrink:0;gap:8px;padding:14px 18px;display:flex}.cp-btn-primary{font-family:var(--font-body);cursor:pointer;border:none;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:6px;padding:12px;font-size:13px;font-weight:700;transition:background .12s,transform .1s;display:flex}.cp-btn-primary:active{transform:scale(.98)}.cp-btn-enroll{background:var(--brand-600);color:#fff}.cp-btn-enroll:hover{background:var(--brand-700)}.cp-btn-continue{color:#fff;background:oklch(38% .12 145)}.cp-btn-continue:hover{background:oklch(32% .11 145)}.cp-btn-secondary{border:1.5px solid var(--border-subtle);font-family:var(--font-body);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border-radius:10px;justify-content:center;align-items:center;padding:12px 16px;font-size:13px;font-weight:600;text-decoration:none;transition:background .12s,border-color .12s;display:flex}.cp-btn-secondary:hover{background:var(--bg-hover);border-color:var(--border-strong)}.pc-header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.pc-icon{background:var(--brand-100);border-radius:10px;flex-shrink:0;place-items:center;width:40px;height:40px;font-size:18px;display:grid}.pc-status{letter-spacing:.07em;text-transform:uppercase;border-radius:9999px;padding:3px 8px;font-size:10px;font-weight:700}.status-active{background:var(--risk-low-bg);color:var(--risk-low-text)}.status-draft{background:var(--bg-app);color:var(--text-muted);border:1px solid var(--border-subtle)}.status-done{background:var(--brand-100);color:var(--brand-700)}.status-archived{background:var(--bg-app);color:var(--text-disabled);border:1px solid var(--border-subtle)}.pc-title{font-family:var(--font-display);color:var(--text-primary);font-size:15px;font-weight:700;line-height:1.3}.pc-desc{color:var(--text-muted);font-size:12px;line-height:1.5}.pc-meta{gap:16px;display:flex}.meta-item{flex-direction:column;gap:2px;display:flex}.pc-progress{background:var(--border-subtle);border-radius:9999px;height:4px;overflow:hidden}.pc-progress-fill{background:var(--brand-600);border-radius:9999px;height:100%}.pc-actions{gap:8px;display:flex}.btn-brand-sm{cursor:pointer;background:var(--brand-600);color:#fff;border:none;border-radius:7px;align-items:center;gap:5px;padding:7px 14px;font-size:12px;font-weight:600;transition:background .15s;display:inline-flex}.btn-brand-sm:hover{background:var(--brand-700)}.btn-outline-sm{cursor:pointer;border:1.5px solid var(--border-strong);color:var(--text-secondary);background:0 0;border-radius:7px;align-items:center;gap:5px;padding:7px 14px;font-size:12px;font-weight:600;transition:border-color .15s,color .15s;display:inline-flex}.btn-outline-sm:hover{border-color:var(--brand-300);color:var(--brand-600)}.btn-danger-sm{cursor:pointer;color:var(--risk-crit-text);background:0 0;border:1.5px solid oklch(86% .04 25);border-radius:7px;align-items:center;gap:5px;padding:7px 14px;font-size:12px;font-weight:600;transition:background .15s;display:inline-flex}.btn-danger-sm:hover{background:var(--risk-crit-bg)}.template-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;display:grid}.tpl-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:14px;flex-direction:column;gap:12px;padding:20px;transition:box-shadow .15s,border-color .15s;display:flex;position:relative}.tpl-card:hover{box-shadow:var(--shadow-panel);border-color:var(--brand-300)}.tpl-top{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.tpl-icon{background:var(--brand-100);border-radius:10px;flex-shrink:0;place-items:center;width:40px;height:40px;font-size:18px;display:grid}.tpl-badges{flex-wrap:wrap;gap:6px;display:flex}.tpl-badge{letter-spacing:.07em;text-transform:uppercase;border-radius:9999px;padding:2px 8px;font-size:9px;font-weight:700}.badge-ai{color:oklch(81% .085 215);background:oklch(26.8% .095 260)}.badge-std{background:var(--bg-app);color:var(--text-muted);border:1px solid var(--border-subtle)}.tpl-title{font-family:var(--font-display);color:var(--text-primary);font-size:14px;font-weight:700;line-height:1.3}.tpl-subject{color:var(--brand-600);background:var(--brand-100);border-radius:9999px;margin-bottom:2px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.tpl-meta{color:var(--text-muted);font-size:11px}.tpl-sync{color:var(--risk-low-text);background:var(--risk-low-bg);border-radius:9999px;align-self:flex-start;align-items:center;gap:5px;padding:4px 10px;font-size:11px;display:flex}.tpl-actions{flex-wrap:wrap;gap:6px}.filter-count-badge{color:var(--text-muted);margin-inline-start:auto;font-size:13px}.report-grid{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:36px;display:grid}@media (max-width:900px){.report-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.report-grid{grid-template-columns:1fr}}.report-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:14px;flex-direction:column;gap:14px;padding:22px;transition:box-shadow .15s;display:flex}.report-card:hover{box-shadow:var(--shadow-panel)}.rc-icon{border-radius:12px;place-items:center;width:44px;height:44px;font-size:20px;display:grid}.rc-desc{color:var(--text-muted);font-size:12px;line-height:1.5}.rc-meta{color:var(--text-disabled);font-size:11px}.rc-actions{gap:8px;margin-top:auto;display:flex}.btn-gen{cursor:pointer;background:var(--brand-600);color:#fff;border:none;border-radius:7px;padding:7px 14px;font-size:12px;font-weight:600;transition:background .15s}.btn-gen:hover{background:var(--brand-700)}.btn-dl{cursor:pointer;background:var(--bg-app);border:1.5px solid var(--border-strong);color:var(--text-secondary);border-radius:7px;padding:7px 14px;font-size:12px;font-weight:600;transition:border-color .15s,color .15s}.btn-dl:hover{border-color:var(--brand-300);color:var(--brand-600)}.badge-green{background:var(--risk-low-bg);color:var(--risk-low-text)}.act-btn{color:var(--brand-600);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px 8px;font-size:12px;font-weight:500;transition:background .1s}.act-btn:hover{background:var(--brand-100)}.sec-title{font-family:var(--font-display);color:var(--text-primary);align-items:center;gap:8px;margin-bottom:16px;font-size:17px;font-weight:700;display:flex}@media (max-width:768px){.hide-mobile{display:none!important}}.table-wrap{border:1px solid var(--border-subtle);border-radius:12px;overflow:auto hidden}.modal-box,.table-wrap{background:var(--bg-surface)}.modal-box{border-radius:16px;width:100%;max-width:540px;overflow:hidden;box-shadow:0 20px 60px #00000040}.profile-grid{grid-template-columns:260px 1fr;align-items:start;gap:24px;display:grid}@media (max-width:900px){.profile-grid{grid-template-columns:1fr}}.profile-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:14px;position:sticky;top:72px;overflow:hidden}.profile-ava-lg{background:var(--brand-600);width:80px;height:80px;font-family:var(--font-display);color:#fff;box-shadow:0 0 0 3px var(--bg-surface),0 0 0 5px var(--brand-300);border-radius:50%;place-items:center;margin:0 auto 14px;font-size:28px;font-weight:800;display:grid}.profile-actions{gap:8px;padding:12px 20px;display:flex}.pa-btn{font-family:var(--font-body);color:var(--text-secondary);border:1.5px solid var(--border-subtle);cursor:pointer;text-align:center;background:0 0;border-radius:9px;flex:1;padding:8px 12px;font-size:13px;font-weight:500;transition:border-color .1s,color .1s}.pa-btn:hover{border-color:var(--brand-300);color:var(--brand-600)}.main-panel{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:14px;overflow:hidden}.form-section-title{font-family:var(--font-display);color:var(--text-primary);margin:20px 0 14px;font-size:14px;font-weight:700}.form-section-title:first-child{margin-top:0}.form-row{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px;display:grid}@media (max-width:600px){.form-row{grid-template-columns:1fr}}.actions-trigger{border:1px solid var(--border-subtle);width:30px;height:30px;color:var(--text-muted);cursor:pointer;font-size:17px;line-height:1;font-family:var(--font-body);background:0 0;border-radius:7px;place-items:center;transition:background .1s,color .1s;display:grid}.actions-menu{display:inline-block;position:relative}.actions-trigger:hover{background:var(--bg-hover);color:var(--text-primary)}.actions-dropdown{background:var(--bg-surface);border:1px solid var(--border-subtle);z-index:200;opacity:0;pointer-events:none;transform-origin:100% 0;border-radius:10px;min-width:148px;transition:opacity .14s,transform .14s;position:absolute;top:calc(100% + 4px);right:0;transform:scale(.96)translateY(-4px);box-shadow:0 4px 16px #0000000f,0 0 0 1px #00000008}.actions-dropdown.open{opacity:1;pointer-events:auto;transform:scale(1)translateY(0)}.ad-item{color:var(--text-secondary);cursor:pointer;text-align:start;width:100%;font-size:13px;font-weight:500;font-family:var(--font-body);white-space:nowrap;background:0 0;border:none;align-items:center;gap:8px;padding:9px 14px;transition:background 80ms,color 80ms;display:flex}.ad-item:first-child{border-radius:10px 10px 0 0}.ad-item:last-child{border-radius:0 0 10px 10px}.ad-item:only-child{border-radius:10px}.ad-item:hover{background:var(--bg-hover);color:var(--text-primary)}.ad-item.danger{color:var(--risk-crit-text)}.ad-item.danger:hover{background:var(--risk-crit-bg)}.ad-sep{background:var(--border-subtle);height:1px;margin:4px 0}.badge-amber{background:var(--risk-med-bg);color:var(--risk-med-text)}.badge-blue{background:var(--brand-100);color:var(--brand-900)}.badge-gray{background:var(--bg-app);color:var(--text-muted);border:1px solid var(--border-subtle)}.badge-orange{background:var(--risk-high-bg);color:var(--risk-high-text)}.badge-red{background:var(--risk-crit-bg);color:var(--risk-crit-text)}.badge-pass{background:var(--risk-low-bg);color:var(--risk-low-text)}.badge-fail{background:var(--risk-crit-bg);color:var(--risk-crit-text)}.badge-inprog{background:var(--risk-med-bg);color:var(--risk-med-text)}.badge-not{background:var(--bg-app);color:var(--text-muted);border:1px solid var(--border-subtle)}.badge-active{background:var(--risk-low-bg);color:var(--risk-low-text)}.badge-completed{background:var(--brand-100);color:var(--brand-700)}.badge-dropped{background:var(--risk-crit-bg);color:var(--risk-crit-text)}.badge-risk-high{background:var(--risk-high-bg);color:var(--risk-high-text)}.badge-risk-med{background:var(--risk-med-bg);color:var(--risk-med-text);border:1px solid var(--risk-med-border)}.badge-risk-low{background:var(--risk-low-bg);color:var(--risk-low-text);border:1px solid var(--risk-low-border)}.learner-cell{align-items:center;gap:10px;display:flex}.learner-ava{background:var(--brand-200);width:28px;height:28px;color:var(--brand-700);border-radius:50%;flex-shrink:0;place-items:center;font-size:10px;font-weight:700;display:grid}.learner-id{color:var(--text-muted);font-family:monospace;font-size:11px}.learner-name{color:var(--text-primary);font-weight:600}.l-ava{width:32px;height:32px;font-family:var(--font-display);border-radius:50%;flex-shrink:0;place-items:center;font-size:12px;font-weight:700;display:grid}.l-email{color:var(--text-muted);font-size:11px}.l-name{color:var(--text-primary);font-size:13px;font-weight:600}.last-active{color:var(--text-muted);font-size:12px}.course-tag{background:var(--brand-100);color:var(--brand-900);border-radius:5px;padding:2px 8px;font-family:monospace;font-size:10px;font-weight:600;display:inline-block}.dist-panel{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;margin-bottom:24px;padding:20px}.dist-chart{grid-template-columns:1fr 1fr 1fr;gap:12px;margin-top:16px;display:grid}.dist-bar-wrap{align-items:flex-end;height:80px;display:flex}.dist-bar{border-radius:6px 6px 0 0;width:100%;transition:height .4s}.dist-bucket{flex-direction:column;gap:8px;display:flex}.dist-count{font-family:var(--font-display);text-align:center;letter-spacing:-.02em;font-size:20px;font-weight:800}.dist-label{text-transform:uppercase;letter-spacing:.06em;text-align:center;font-size:11px;font-weight:700}.inline-bar{background:var(--border-subtle);border-radius:9999px;width:100%;height:6px;margin-top:3px;overflow:hidden}.inline-fill{border-radius:9999px;height:100%}.diff-pill{border-radius:9999px;padding:2px 8px;font-size:10px;font-weight:700}.diff-easy{background:var(--risk-low-bg);color:var(--risk-low-text)}.diff-medium{background:var(--risk-med-bg);color:var(--risk-med-text)}.diff-hard{background:var(--risk-high-bg);color:var(--risk-high-text)}.criterion-score{align-items:center;gap:8px;display:flex}.total-score-row{background:var(--brand-50);border:1.5px solid var(--brand-200);border-radius:10px;justify-content:space-between;align-items:center;margin:16px 0;padding:12px 14px;display:flex}.total-val{font-family:var(--font-display);color:var(--brand-700);font-size:24px;font-weight:800}.btn-xs-ghost{font-family:var(--font-body);color:var(--text-muted);border:1px solid var(--border-subtle);cursor:pointer;white-space:nowrap;background:0 0;border-radius:6px;padding:5px 10px;font-size:12px;font-weight:500}.file-name{color:var(--text-secondary);background:var(--bg-app);border:1px solid var(--border-subtle);border-radius:5px;padding:3px 8px;font-family:monospace;font-size:12px}.qb{border-radius:4px;margin-inline-end:4px;padding:1px 6px;font-size:10px;font-weight:700;display:inline-block}.qb-auto,.qb-graded{color:oklch(38% .12 145);background:oklch(96.2% .044 145)}.qb-manual{color:oklch(56% .14 75);background:oklch(96.8% .052 85)}.cc-cover{align-items:flex-end;height:120px;padding:16px 20px;display:flex;position:relative}.cc-cover-1{background:linear-gradient(135deg,oklch(26% .095 218),oklch(42% .15 200))}.cc-cover-2{background:linear-gradient(135deg,oklch(45% .12 75),oklch(30% .08 60))}.cc-cover-3{background:linear-gradient(135deg,oklch(32% .12 145),oklch(25% .08 160))}.cc-cover-code{color:#ffffffb3;margin-inline-start:auto;font-family:monospace;font-size:12px}.cc-body{padding:20px 24px}.cc-footer{border-top:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:8px;padding:14px 24px}.cc-footer,.cc-stats-row{flex-wrap:wrap;display:flex}.cc-stats-row{gap:20px;margin-bottom:16px}.cc-stat{flex-direction:column;gap:2px;display:flex}.cc-stat-lbl{color:var(--text-muted);font-size:11px}.cc-stat-val{font-family:var(--font-display);color:var(--text-primary);font-size:20px;font-weight:800}.cc-semester{color:var(--text-muted);margin-bottom:16px;font-size:12px}.cc-icon{border-radius:10px;flex-shrink:0;place-items:center;width:40px;height:40px;font-size:18px;display:grid}.cc-info{flex:1;min-width:0}.cc-right{text-align:right;flex-shrink:0}.cc-actions{flex-wrap:wrap;gap:8px;display:flex}.btn-add-module{color:var(--brand-600);border:1.5px dashed var(--brand-300);border-radius:9px;width:100%;padding:9px 18px;font-size:13px}.btn-add-module,.btn-back{font-family:var(--font-body);cursor:pointer;background:0 0;font-weight:500;transition:background .15s,border-color .15s}.btn-back{color:var(--text-secondary);border:1.5px solid var(--border-strong);border-radius:9999px;padding:9px 22px;font-size:14px}.btn-success-primary{color:#fff;background:var(--brand-600);border:none;border-radius:9999px;padding:10px 22px;font-weight:600;text-decoration:none}.btn-success-primary,.btn-success-secondary{font-family:var(--font-body);cursor:pointer;font-size:14px}.btn-success-secondary{color:var(--text-secondary);border:1.5px solid var(--border-strong);background:0 0;border-radius:9999px;padding:9px 22px;font-weight:500}.cam-section{margin-bottom:18px}.cam-section-num{background:var(--brand-600);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:20px;height:20px;font-size:10px;font-weight:800;display:grid}.cam-section-title{color:var(--text-primary);align-items:center;gap:8px;margin-bottom:10px;font-size:13px;font-weight:700;display:flex}.cam-sub{color:var(--text-muted);margin-top:2px;font-size:11px}.cam-label{color:var(--text-primary);font-size:13px;font-weight:600}.cam-radio-card{border:1.5px solid var(--border-strong);cursor:pointer;border-radius:10px;align-items:flex-start;gap:10px;margin-bottom:8px;padding:11px 14px;transition:all .15s;display:flex}.cam-scope-preview{color:#ffffffd9;white-space:pre-wrap;background:oklch(17% .02 215);border-radius:10px;padding:14px;font-family:monospace;font-size:11px;line-height:1.6;overflow-x:auto}.cam-spinner{border:3px solid var(--border-subtle);border-top-color:var(--brand-600);border-radius:50%;width:40px;height:40px;margin:0 auto 14px;animation:spin .8s linear infinite}.cam-progress{text-align:center;padding:20px 0}.cam-job-id{color:var(--brand-600);background:var(--brand-100);border-radius:6px;margin:6px 0;padding:4px 10px;font-family:monospace;font-size:12px;display:inline-block}.cam-dur-opt{border:1.5px solid var(--border-strong);text-align:center;cursor:pointer;color:var(--text-secondary);border-radius:9px;flex:1;padding:9px;font-size:13px;font-weight:600;transition:all .15s}.cam-dur-row{gap:8px;display:flex}.cam-success{background:var(--risk-low-bg);border:1px solid var(--risk-low-border);text-align:center;border-radius:10px;padding:16px}.ci-card{transition:box-shadow .15s}.ci-badge,.ci-badge-ai{text-transform:uppercase;letter-spacing:.07em;border-radius:9999px;padding:1px 7px;font-size:9px;font-weight:700}.ci-badge-ai{color:oklch(44% .15 280);background:oklch(96.2% .04 280)}.ci-actions{align-items:center;gap:6px}.ci-drag-handle{color:var(--text-disabled);cursor:grab;flex-shrink:0;font-size:16px}.ci-dur{color:var(--text-muted);font-size:11px}.ci-section-title{font-family:var(--font-display);color:var(--text-primary);justify-content:space-between;align-items:center;margin:20px 0 12px;font-size:14px;font-weight:700;display:flex}.active-num{background:var(--brand-600);color:#fff}.add-ci-btn{border:2px dashed var(--border-strong);color:var(--text-muted);justify-content:center;margin-top:8px;padding:11px;font-weight:600;transition:all .15s}.btn-gen-ai{border:1.5px solid var(--brand-300);white-space:nowrap;border-radius:8px;align-items:center;gap:6px;padding:7px 13px;transition:background .15s,border-color .15s;display:flex}.btn-add-mod,.btn-gen-ai{color:var(--brand-600);background:var(--brand-100);cursor:pointer;font-size:12px;font-weight:600}.btn-add-mod{border:none;border-radius:7px;padding:6px 12px;transition:background .15s}.csv-zone{border:2px dashed var(--border-strong);text-align:center;cursor:pointer;border-radius:12px;padding:32px;transition:border-color .15s}.progress-cell{align-items:center;gap:8px;display:flex}.stat-lbl{margin-top:5px;font-size:12px}.modal-tab,.stat-lbl{color:var(--text-muted)}.modal-tab{cursor:pointer;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 14px;font-size:13px;font-weight:500;transition:color .15s,border-color .15s}.modal-tabs{border-bottom:1px solid var(--border-subtle);gap:0;margin-top:14px;padding:0 24px;display:flex}.page-btn{border:1px solid var(--border-subtle);background:var(--bg-surface);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;border-radius:7px;place-items:center;font-size:13px;font-weight:500;transition:all .1s;display:grid}.page-btns{align-items:center;gap:4px;display:flex}.page-info{color:var(--text-muted);font-size:13px}.ai-banner{background:var(--risk-med-bg);border:1px solid var(--risk-med-border);border-radius:10px;align-items:flex-start;gap:10px;margin-top:24px;padding:12px 16px;display:flex}.ai-banner-text{color:var(--risk-med-text);font-size:12px;line-height:1.5}.alert-banner{background:var(--risk-crit-bg);border:1.5px solid var(--risk-crit-border);border-radius:12px;align-items:center;gap:12px;margin-bottom:24px;padding:14px 20px;display:flex}.alert-icon{flex-shrink:0;font-size:20px}.alert-sub{color:oklch(50% .12 25);font-size:13px}.alert-text{color:var(--risk-crit-text);font-size:14px;font-weight:600}.arrow{opacity:0;transition:transform .15s,opacity .15s;display:inline-block;transform:translate(-4px)}.btn-act-outline{color:var(--text-secondary);border:1px solid var(--border-subtle);background:0 0}.btn-act-primary{background:var(--risk-crit-text);color:#fff;align-items:center;gap:4px;display:inline-flex;position:relative;overflow:hidden}.btn-act-secondary{background:var(--risk-crit-bg);color:var(--risk-crit-text);border:1px solid var(--risk-crit-border)}.btn-action-sm{font-family:var(--font-body);cursor:pointer;border:none;border-radius:8px;padding:7px 14px;font-size:12px;font-weight:600;transition:background .1s,transform .1s}.high-risk-card{background:var(--bg-surface);border:1px solid var(--risk-high-border);border-radius:12px;margin-bottom:16px;overflow:hidden}.ip-body{scrollbar-width:thin;flex:1;padding:15px 18px;overflow-y:auto}.ip-btn{font-family:var(--font-body);cursor:pointer;border:none;border-radius:9px;flex:1;padding:10px 14px;font-size:13px;font-weight:600;transition:background .12s,transform .1s}.ip-btn-ghost{background:var(--bg-app);color:var(--text-secondary);border:1.5px solid var(--border-subtle)}.ip-btn-send{background:var(--risk-crit-text);color:#fff}.ip-footer{border-top:1px solid var(--border-subtle);flex-shrink:0;gap:8px;padding:12px 18px;display:flex}.ip-form.hide{display:none}.ip-hdr{border-bottom:1px solid var(--border-subtle);flex-shrink:0;align-items:flex-start;gap:10px;padding:15px 18px 12px;display:flex}.ip-msg-area{width:100%;font-family:var(--font-body);color:var(--text-primary);background:var(--bg-app);resize:vertical;outline:none;min-height:90px;padding:10px 13px;font-size:13px;line-height:1.55;transition:border-color .15s}.ip-msg-area,.ip-radio-card{border:1.5px solid var(--border-subtle);border-radius:10px}.ip-radio-card{cursor:pointer;align-items:flex-start;gap:10px;margin-bottom:7px;padding:10px 12px;transition:border-color .15s,background .15s;display:flex}.ip-radio-desc{color:var(--text-muted);margin-top:1px;font-size:11px}.ip-radio-title{color:var(--text-primary);font-size:13px;font-weight:600}.ip-score-ring{flex-shrink:0;width:64px;height:64px}.btn-export{font-family:var(--font-body);color:var(--text-secondary);border:1.5px solid var(--border-subtle);cursor:pointer;background:0 0;border-radius:8px;padding:8px 16px;font-size:13px;font-weight:500;transition:border-color .1s}.ca-body{font-size:12px;line-height:1.5}.ca-body,.ca-title{color:var(--risk-med-text)}.ca-title{margin-bottom:4px;font-size:13px;font-weight:700}.callout-amber{background:var(--risk-med-bg);border:1px solid var(--risk-med-border);border-radius:10px;margin-top:16px;padding:14px 16px}.ceff-bar{background:var(--border-subtle);border-radius:9999px;flex:1;height:10px;overflow:hidden}.ceff-fill{border-radius:9999px;height:100%}.ceff-label{width:160px;color:var(--text-primary);flex-shrink:0;font-size:13px;font-weight:500}.ceff-pct{text-align:right;flex-shrink:0;width:40px;font-size:12px;font-weight:700}.ceff-row{border-bottom:1px solid var(--border-subtle);align-items:center;gap:10px;padding:9px 0;display:flex}.charts-row{grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px;display:grid}.dl-count{color:var(--text-primary);margin-inline-start:auto;padding-inline-start:8px;font-weight:700}.donut-legend{flex-direction:column;gap:6px;display:flex}.donut-svg{flex-shrink:0;width:110px;height:110px}.donut-wrap{align-items:center;gap:20px;display:flex}.export-row{gap:8px;display:flex}.fc-card{background:var(--risk-low-bg);border:1px solid var(--risk-low-border);border-radius:12px;padding:18px}.fc-conf{background:#fff6;border-radius:9999px;padding:2px 10px;font-size:11px;font-weight:600;display:inline-block}.fc-conf,.fc-lbl{color:var(--risk-low-text)}.fc-lbl{opacity:.8;margin-bottom:8px;font-size:12px}.fc-val{font-family:var(--font-display);color:var(--risk-low-text);margin-bottom:2px;font-size:28px;font-weight:800}.forecast-row{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:20px;display:grid}.ic-body{color:var(--text-secondary);font-size:13px;line-height:1.55}.ic-conf{white-space:nowrap;border-radius:9999px;padding:2px 7px;font-size:10px;font-weight:700}.ic-footer{color:var(--text-disabled);margin-top:7px;font-size:11px}.ic-hdr{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:6px;display:flex}.ic-neutral{border-inline-start-color:var(--brand-600)}.profile-dept{color:var(--text-muted);margin-bottom:16px;font-size:13px}.profile-divider{background:var(--border-subtle);height:1px;margin:16px 0}.profile-role{letter-spacing:.07em;text-transform:uppercase;background:var(--brand-100);color:var(--brand-900);border-radius:9999px;margin-bottom:8px;padding:3px 12px;font-size:12px;font-weight:700;display:inline-block}.profile-stat-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.ps{text-align:center;background:var(--bg-app);border-radius:9px;padding:10px 8px}.ps-lbl{color:var(--text-muted);font-size:10px;font-weight:500}.ps-val{font-family:var(--font-display);color:var(--text-primary);margin-bottom:2px;font-size:20px;font-weight:800;line-height:1}.save-row{border-top:1px solid var(--border-subtle);justify-content:flex-end;margin-top:8px;padding-top:8px;display:flex}.section-panel{background:var(--bg-surface);border-color:var(--border-subtle)}.session-badge{background:var(--risk-low-bg);color:var(--risk-low-text);border-radius:9999px;padding:2px 8px;font-size:10px;font-weight:700}.session-device{color:var(--text-primary);font-size:13px;font-weight:600}.session-item{background:var(--bg-app);border-radius:9px;justify-content:space-between;align-items:center;margin-bottom:8px;padding:12px 14px;display:flex}.session-meta{color:var(--text-muted);margin-top:2px;font-size:11px}.slider-label{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.slider-row{margin-bottom:20px}.slider-val{font-family:var(--font-display);color:var(--brand-600);font-size:16px;font-weight:700}.tag-chip-x{cursor:pointer;color:var(--brand-600);background:0 0;border:none;padding:0;font-size:12px;line-height:1}.tags-wrap{border:1.5px solid var(--border-strong);cursor:text;border-radius:9px;flex-wrap:wrap;gap:6px;min-height:42px;padding:8px 10px;display:flex}.tpl-btn{cursor:pointer;border:none;border-radius:7px;align-self:flex-start;padding:7px 14px;font-size:12px;font-weight:600;transition:background .15s}.tpl-btn,.tpl-category{color:var(--brand-600);background:var(--brand-100)}.tpl-category{letter-spacing:.08em;text-transform:uppercase;border-radius:9999px;padding:2px 8px;font-size:10px;font-weight:700;display:inline-block}.pp-danger{color:var(--risk-crit-text)}.risk-card{background:var(--bg-surface);border:1.5px solid var(--risk-crit-border);opacity:0;border-radius:14px;margin-bottom:16px;transition:box-shadow .2s;animation:alertEntrance .45s forwards;overflow:hidden}.cc-cover-4{background:linear-gradient(135deg,oklch(56% .14 75),oklch(76% .14 75))}.cc-cover-5{background:linear-gradient(135deg,oklch(48% .16 275),oklch(31% .11 275))}.cc-cover-6{background:linear-gradient(135deg,oklch(52% .14 315),oklch(38% .12 305))}.lrn-bd{pointer-events:none;z-index:299;background:0 0;transition:background .22s;position:fixed;inset:0}.lrn-bd.active{pointer-events:auto;background:#0006}.lrn-panel{background:var(--bg-surface);z-index:300;opacity:0;pointer-events:none;border-radius:16px;flex-direction:column;width:480px;transition:opacity .22s,transform .22s;display:flex;position:fixed;top:16px;bottom:16px;right:16px;overflow:hidden;transform:scale(.96)translateY(8px);box-shadow:0 20px 60px #0000004d}.lrn-panel.open{opacity:1;pointer-events:auto;transform:scale(1)translateY(0)}.lp-hdr{border-bottom:1px solid var(--border-subtle);flex-shrink:0;align-items:flex-start;gap:10px;padding:15px 18px 12px;display:flex}.lp-body{scrollbar-width:thin;flex:1;padding:15px 18px;overflow-y:auto}.lp-body::-webkit-scrollbar{width:4px}.lp-body::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:9999px}.lp-footer{border-top:1px solid var(--border-subtle);flex-shrink:0;grid-template-columns:1fr 1fr;gap:8px;padding:12px 18px;display:grid}.lp-stat-grid{grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:14px;display:grid}.lp-stat{background:var(--bg-app);border-radius:10px;padding:10px 12px}.lp-stat-val{font-family:var(--font-display);color:var(--text-primary);font-size:20px;font-weight:800;line-height:1}.lp-stat-lbl{color:var(--text-muted);margin-top:2px;font-size:11px}.lp-sec-lbl{letter-spacing:.08em;text-transform:uppercase;color:var(--text-disabled);margin:14px 0 8px;font-size:10px;font-weight:700}.lp-factor{border-bottom:1px solid var(--border-subtle);color:var(--text-secondary);align-items:flex-start;gap:8px;padding:7px 0;font-size:12px;line-height:1.5;display:flex}.lp-factor:last-child{border-bottom:none}.lp-pill{border-radius:9999px;margin:2px 3px 2px 0;padding:2px 8px;font-size:10px;font-weight:700;display:inline-block}.lp-activity-item{color:var(--text-muted);border-bottom:1px solid var(--border-subtle);padding:4px 0;font-size:12px}.lp-activity-item:last-child{border-bottom:none}.lp-btn{font-family:var(--font-body);cursor:pointer;text-align:center;border:none;border-radius:9px;padding:8px 12px;font-size:12px;font-weight:600;transition:background .12s,transform .1s}.lp-btn:active{transform:scale(.97)}.lp-btn-prim{background:var(--brand-600);color:#fff}.lp-btn-prim:hover{background:var(--brand-700)}.lp-btn-crit{background:var(--risk-crit-text);color:#fff}.lp-btn-crit:hover{filter:brightness(1.1)}.lp-btn-flag{background:var(--risk-crit-bg);color:var(--risk-crit-text);border:1px solid var(--risk-crit-border)}.lp-btn-ghost{background:var(--bg-app);color:var(--text-secondary);border:1px solid var(--border-subtle)}.lp-btn-ghost:hover{background:var(--bg-hover)}.form-req{color:var(--risk-crit-text);font-size:11px}.form-slug{color:var(--text-muted);background:var(--bg-app);font-family:monospace;font-size:13px}.level-card input[type=radio]{opacity:0;width:0;height:0;position:absolute}.level-card-label{color:var(--text-secondary);margin-bottom:2px;font-size:13px;font-weight:600;display:block}.level-card-sub{color:var(--text-disabled);font-size:11px}.level-cards{gap:10px;display:flex}.modal-steps{border-bottom:1px solid var(--border-subtle);align-items:center;gap:0;padding:24px 28px 20px;display:flex}.module-collapse:hover{background:var(--bg-hover);color:var(--text-primary)}.module-drag{color:var(--text-disabled);cursor:grab;-webkit-user-select:none;user-select:none;flex-shrink:0;font-size:16px}.module-input{font-family:var(--font-body);color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;font-size:14px}.module-note{color:var(--text-muted);background:var(--brand-50);border:1px solid var(--brand-200);border-radius:10px;align-items:flex-start;gap:8px;margin-top:12px;padding:10px 14px;font-size:12px;display:flex}.module-row:hover{border-color:var(--border-strong)}.ms-circle{border:2px solid var(--border-strong);width:28px;height:28px;color:var(--text-disabled);border-radius:50%;flex-shrink:0;place-items:center;font-size:11px;font-weight:700;transition:all .2s;display:grid}.ms-label{color:var(--text-disabled);font-size:12px;font-weight:600;transition:color .2s}.ms-line{background:var(--border-subtle);flex:0 0 40px;height:2px;margin:0 4px;transition:background .3s}.ms-step{flex:1;align-items:center;gap:10px;display:flex}.review-card{background:var(--bg-app);border:1px solid var(--border-subtle);border-radius:12px;margin-bottom:18px;padding:16px 18px}.review-title{letter-spacing:.08em;text-transform:uppercase;color:var(--text-disabled);margin-bottom:12px;font-size:11px;font-weight:700}.step-panel{display:none}.ci-sub{align-items:center;gap:8px;margin-top:3px;display:flex}.content-list{flex-direction:column;gap:8px;display:flex}.content-panel{min-width:0;padding:24px;overflow-y:auto}.cp-desc-input:focus{border-color:var(--brand-600)}.cp-title-input:focus{border-bottom-color:var(--brand-600)}.editor-layout{flex:1;min-height:calc(100vh - 52px)}.ip-sec-lbl{letter-spacing:.08em;text-transform:uppercase;color:var(--text-disabled);margin:14px 0 8px;font-size:10px;font-weight:700}.ip-success{text-align:center;padding:32px 20px;display:none}.ip-trend-fill{border-radius:9999px;height:100%;transition:width .5s}.ip-trend-lbl{color:var(--text-secondary);flex-shrink:0;width:100px;font-size:12px}.ip-trend-row:last-child{border-bottom:none}.ip-trend-track{background:var(--border-subtle);border-radius:9999px;flex:1;height:8px;overflow:hidden}.ic-positive{border-inline-start-color:var(--risk-low-text)}.ic-title{color:var(--text-primary);font-size:14px;font-weight:700}.ic-warning{border-inline-start-color:var(--risk-med-text)}.m-tab:hover:not(.active){background:var(--bg-hover);color:var(--text-primary)}.dl-item{align-items:center;gap:7px;font-size:12px;display:flex}.sc-sub{margin-top:5px;font-weight:600}.qa-panel{margin-bottom:24px;overflow:hidden}.toggle input{opacity:0;width:0;height:0;position:absolute}.toggle-info-sub{margin-top:2px}.notif-popup{background:var(--bg-surface);border-color:var(--border-subtle);box-shadow:0 8px 32px #00000080}.popup-item:hover{background:var(--bg-hover)}.user-chevron{color:var(--text-muted);margin-inline-start:auto;font-size:11px}.nav-badge{margin-inline-start:auto;padding:1px 6px}.action-group{flex-wrap:nowrap;gap:5px}.urgent{color:var(--risk-crit-text)}.drawer{z-index:401;background:var(--bg-surface);border-left:1px solid var(--border-subtle);z-index:61;flex-direction:column;width:480px;max-width:90vw;transition:transform .3s;animation:drawerIn .25s ease-out;display:flex;position:fixed;top:0;bottom:0;right:0;transform:translate(100%);box-shadow:-8px 0 40px #0000001f}.drawer.open{transform:none}.action-group{align-items:center;gap:6px;display:flex}.nav-badge{background:var(--risk-high-bg);color:var(--risk-high-text);text-align:center;border-radius:9999px;padding:2px 7px}.prog-cell{align-items:center;gap:8px;display:flex}.urgent{font-weight:600;color:var(--risk-high-text)!important}.sc-sub{color:var(--text-muted);margin-top:3px;font-size:11px}.qa-panel{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;margin-top:16px;padding:16px}.toggle{background:var(--border-strong);cursor:pointer;border:none;border-radius:10px;flex-shrink:0;width:36px;height:20px;padding:0;transition:background .2s;position:relative}.toggle.on{background:var(--brand-600)}.toggle:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .2s;position:absolute;top:2px;left:2px}.toggle.on:after{transform:translate(16px)}.toggle-info-title{color:var(--text-primary);font-size:13px;font-weight:600}.toggle-info-sub{color:var(--text-muted);font-size:12px}.pending-badge{background:var(--risk-crit-text);color:#fff;letter-spacing:.07em;text-transform:uppercase;border-radius:9999px;padding:2px 8px;font-size:9px;font-weight:700}.modal-overlay{z-index:100;background:#00000073;justify-content:center;align-items:center;padding:24px;display:none;position:fixed;inset:0}.modal-overlay.open{display:flex}.page-btn.active{background:var(--brand-600);color:#fff;border-color:var(--brand-600)}.page-btn.disabled{opacity:.4;pointer-events:none}.upload-hint{color:var(--text-disabled);margin-top:4px;font-size:11px}.upload-icon{opacity:.4;margin-bottom:8px;font-size:28px}.upload-text{color:var(--text-muted);font-size:13px}.upload-zone{border:2px dashed var(--border-strong);text-align:center;cursor:pointer;border-radius:12px;padding:24px;transition:border-color .15s,background .15s}.mod-drag{color:var(--text-disabled);cursor:grab;flex-shrink:0;font-size:14px}.mod-info{flex:1;min-width:0}.mod-list{flex-direction:column;gap:4px;display:flex}.mod-meta{color:var(--text-muted);font-size:11px}.mod-fill{border-radius:9999px;height:100%}.mod-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.mod-pct{text-align:right;flex-shrink:0;width:36px;font-size:12px;font-weight:600}.mod-row{border:1.5px solid #0000;border-radius:9px;gap:8px;padding:10px;transition:background .1s}.mod-row.active{background:var(--bg-active);border-color:var(--brand-300)}.ip-trend-val{text-align:right;width:32px;font-size:11px}.ip-trend-val,.rc-ava{flex-shrink:0;font-weight:700}.rc-ava{background:var(--risk-crit-bg);width:40px;height:40px;font-family:var(--font-display);color:var(--risk-crit-text);border:2px solid var(--risk-crit-border);border-radius:50%;place-items:center;font-size:14px;display:grid}.rc-body{padding:16px 20px}.rc-factor{border-bottom:1px solid var(--border-subtle);color:var(--text-primary);align-items:flex-start;gap:8px;padding:6px 0;font-size:13px;display:flex}.mod-bar{background:var(--border-subtle);border-radius:9999px;flex:1;height:6px;overflow:hidden}.m-tab{font-family:var(--font-body);color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:8px;padding:8px 16px;font-size:13px;font-weight:500;transition:background .15s,color .15s}.main-tabs{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:10px;gap:2px;width:fit-content;margin-bottom:24px;padding:4px;display:flex}.vis-card{border:1.5px solid var(--border-strong);cursor:pointer;border-radius:10px;align-items:center;gap:12px;padding:12px 14px;transition:border-color .15s,background .15s;display:flex;position:relative}.vis-card-label{color:var(--text-primary);font-size:13px;font-weight:600}.vis-card-radio{border:2px solid var(--border-strong);border-radius:50%;flex-shrink:0;place-items:center;width:18px;height:18px;transition:border-color .15s;display:grid}.vis-card-sub{color:var(--text-muted);font-size:11px}.vis-card-text{flex:1}.vis-cards{flex-direction:column;gap:8px;display:flex}.mod-num{background:var(--brand-100);width:24px;height:24px;color:var(--brand-600);border-radius:50%}.mod-num.active-num{background:var(--brand-600);color:#fff}.module-panel{flex-shrink:0;width:320px;overflow-y:auto}.mp-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:16px;display:flex}.mp-title{font-family:var(--font-display);color:var(--text-primary);font-size:14px;font-weight:700}.sel{border-color:var(--brand-600);background:var(--brand-100);color:var(--brand-700)}.type-grid{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:4px;display:grid}.type-icon{margin-bottom:6px;font-size:22px}.type-label{color:var(--text-primary);font-size:13px;font-weight:600}.type-option{border:1.5px solid var(--border-strong);cursor:pointer;text-align:center;border-radius:10px;padding:12px;transition:all .15s}.rc-factor-icon{color:var(--risk-crit-text);flex-shrink:0;margin-top:2px;font-size:12px}.rc-factors{margin-bottom:16px}.rc-factors-title{color:var(--text-muted);letter-spacing:.07em;text-transform:uppercase;margin-bottom:8px;font-size:11px;font-weight:700}.rc-header{border-bottom:1px solid var(--risk-crit-border);background:oklch(98.8% .006 25);align-items:center;gap:14px;padding:16px 20px;display:flex}.rc-name{font-family:var(--font-display);color:var(--text-primary);font-size:15px;font-weight:700}.rc-score{text-align:right;margin-inline-start:auto}.rc-score-lbl{color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase;font-size:10px;font-weight:600}.rc-score-val{color:var(--risk-crit-text);font-size:22px;line-height:1}.rc-score-val,.score-pill{font-family:var(--font-display);font-weight:800}.score-pill{background:var(--risk-high-bg);color:var(--risk-high-text);border-radius:6px;padding:3px 10px;font-size:13px;display:inline-block}.pill{letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border-radius:9999px;font-size:10px;font-weight:700}.pill-amber{background:var(--risk-med-bg);color:var(--risk-med-text)}.pill-blue{background:var(--brand-100);color:var(--brand-900)}.pill-green{background:var(--risk-low-bg);color:var(--risk-low-text)}.pill-red{background:var(--risk-crit-bg);color:var(--risk-crit-text)}.rc-btns{gap:7px;display:flex}.rc-failing{background:var(--risk-crit-bg);color:var(--risk-crit-text)}.rc-inactive{background:var(--risk-high-bg);color:var(--risk-high-text)}.rc-info{flex:1;min-width:0}.rc-low-eng{background:var(--risk-med-bg);color:var(--risk-med-text)}.risk-pct{text-align:right;flex-shrink:0;width:36px;font-size:12px;font-weight:700}.risk-score-bar{background:var(--border-subtle);border-radius:9999px;flex:1;max-width:80px;height:6px;overflow:hidden}.sd-label{color:var(--text-muted);text-align:center;flex:1;font-size:9px;font-weight:600}.tg-cell{color:var(--text-disabled);cursor:pointer;background:var(--bg-surface);justify-content:center;align-items:center;padding:14px 4px;transition:background .15s;display:flex}.tg-cell,.tg-hdr{text-align:center;font-size:10px}.tg-hdr{letter-spacing:.04em;padding:8px 4px;font-weight:700}.tg-hdr,.tg-label{background:var(--bg-app);color:var(--text-muted)}.tg-label{align-items:center;padding:8px;font-size:11px;display:flex}.time-grid{background:var(--border-subtle);border:1px solid var(--border-subtle);border-radius:8px;grid-template-columns:80px repeat(7,1fr);gap:1px;margin-bottom:16px;display:grid;overflow:hidden}.table-wrap table{border-collapse:collapse;width:100%}.table-wrap table thead th{letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted);background:var(--bg-app);border-bottom:1px solid var(--border-subtle);text-align:left;white-space:nowrap;padding:11px 14px;font-size:11px;font-weight:700}.table-wrap table tbody tr td{color:var(--text-primary);border-bottom:1px solid var(--border-subtle);vertical-align:middle;padding:13px 14px;font-size:13px}.table-wrap table tbody tr:last-child td{border-bottom:none}.table-wrap table tbody tr.main-row{cursor:pointer;transition:background .12s,transform .12s}.table-wrap table tbody tr.main-row:hover td{background:var(--bg-hover)}.rank-num{font-family:var(--font-mono,"JetBrains Mono",ui-monospace,monospace);color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:12px}.fd-wrap{display:inline-flex;position:relative}.fd-trigger{font-family:var(--font-body);color:var(--text-secondary);background:var(--bg-surface);border:1.5px solid var(--border-subtle);cursor:pointer;white-space:nowrap;border-radius:8px;outline:none;align-items:center;gap:6px;min-width:120px;padding:7px 12px;font-size:13px;font-weight:500;transition:border-color .12s,box-shadow .12s,background .1s;display:inline-flex}.fd-trigger:hover{border-color:var(--border-strong);color:var(--text-primary)}.fd-trigger:focus{border-color:var(--brand-400);box-shadow:0 0 0 3px var(--brand-100)}.fd-trigger.fd-has-selection{background:var(--brand-50);border-color:var(--brand-300);color:var(--brand-700);font-weight:600}.fd-icon{color:var(--text-muted);flex-shrink:0;font-size:12px}.fd-trigger.fd-has-selection .fd-icon{color:var(--brand-600)}.fd-label{text-align:left;flex:1}.fd-caret{color:var(--text-muted);flex-shrink:0;font-size:9px}.fd-dropdown{background:var(--bg-surface);border:1.5px solid var(--border-subtle);min-width:200px;max-height:280px;box-shadow:var(--shadow-panel);z-index:200;border-radius:10px;flex-direction:column;padding:4px;animation:menuIn .12s ease-out;display:flex;position:absolute;top:calc(100% + 4px);left:0;overflow-y:auto}.fd-option{cursor:pointer;text-align:left;font-family:var(--font-body);color:var(--text-secondary);background:0 0;border:none;border-radius:7px;align-items:center;gap:10px;padding:8px 12px;font-size:13px;transition:background .1s,color .1s;display:flex}.fd-option:hover{background:var(--bg-hover);color:var(--text-primary)}.fd-option-checked{color:var(--brand-700);font-weight:600}.fd-option-checked:hover{background:var(--brand-50)}.fd-checkbox{border:1.5px solid var(--border-strong);color:#fff;border-radius:4px;flex-shrink:0;place-items:center;width:16px;height:16px;font-size:10px;font-weight:900;transition:background .1s,border-color .1s;display:grid}.fd-option-checked .fd-checkbox{background:var(--brand-600);border-color:var(--brand-600)}.fd-option-label{flex:1}.fd-option-count{color:var(--text-disabled);background:var(--bg-app);border-radius:9999px;padding:1px 6px;font-size:11px;font-weight:600}.fd-option-checked .fd-option-count{background:var(--brand-100);color:var(--brand-700)}.fd-divider{background:var(--border-subtle);height:1px;margin:4px 0}.fd-clear{cursor:pointer;text-align:left;font-family:var(--font-body);color:var(--risk-high-text);background:0 0;border:none;border-radius:7px;padding:7px 12px;font-size:12px;transition:background .1s}.fd-clear:hover{background:var(--risk-high-bg)}.tabs-card .tab-bar .tab-btn{padding:12px 18px;font-size:13px}.tabs-card .tab-panel{padding:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.page-enter{animation:slideUp .3s ease-out both}.page-enter-fast{animation:slideUp .18s ease-out both}.stats-row .stat-card:first-child{animation-delay:0s}.stats-row .stat-card:nth-child(2){animation-delay:60ms}.stats-row .stat-card:nth-child(3){animation-delay:.12s}.stats-row .stat-card:nth-child(4){animation-delay:.18s}.stat-card:hover{transform:translateY(-3px)}.panel{opacity:0;animation:slideUp .4s ease-out both}.panel:nth-child(2){animation-delay:80ms}.section-panel{opacity:0;animation:slideUp .4s ease-out both}.ap-panel{animation:slideInLeft .22s ease-out}.catalog-card{opacity:0;animation:cardIn .38s ease-out both}.step-left{align-items:center}.step-circle{letter-spacing:-.5px;font-size:12px}.steps-timeline{flex-direction:column;display:flex}.tabs-card .tab-bar{border-bottom:1px solid var(--border-subtle);scrollbar-width:none;display:flex;overflow-x:auto}.tabs-card .tab-bar::-webkit-scrollbar{display:none}.tabs-card .tab-bar .tab-btn{color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:12px 20px;font-weight:500;transition:color .15s,border-color .15s;position:relative;font-family:var(--font-body)!important;font-size:13px!important}.tabs-card .tab-bar .tab-btn.active{color:var(--brand-600);border-bottom-color:var(--brand-600);font-weight:600}.tabs-card .tab-bar .tab-btn:hover:not(.active){color:var(--text-primary)}.tabs-card .tab-panel{padding:24px;display:none}.tabs-card .tab-panel.active{animation:fadeIn .18s;display:block}.filter-select{color:var(--text-secondary);background:var(--bg-surface);border:1.5px solid var(--border-subtle);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%2399a3b3'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;outline:none;padding:7px 28px 7px 12px;transition:border-color .12s,box-shadow .12s,background .1s;font-family:var(--font-body)!important;border-radius:8px!important;font-size:13px!important}.filter-select:hover{border-color:var(--border-strong);color:var(--text-primary)}.filter-select:focus{border-color:var(--brand-400);box-shadow:0 0 0 3px var(--brand-100);color:var(--text-primary);outline:none}.act-item{border-bottom:1px solid var(--border-subtle);align-items:flex-start;gap:10px;padding:10px 0;display:flex}.act-list{flex-direction:column;gap:1px;display:flex}.act-body{flex:1;min-width:0}.act-icon{border-radius:8px;flex-shrink:0;place-items:center;width:28px;height:28px;margin-top:1px;font-size:13px;display:grid}.act-link{cursor:pointer;background:0 0;border:none;border-radius:6px;padding:3px 8px;font-weight:500;transition:background .1s}.badge-purple{color:oklch(35% .12 290);background:oklch(96% .03 290)}.fp2-ava{width:46px;height:46px;font-family:var(--font-display);border-radius:50%;flex-shrink:0;place-items:center;font-size:15px;font-weight:800;display:grid}.course-fpanel{background:var(--bg-surface);z-index:300;opacity:0;pointer-events:none;border-radius:16px;flex-direction:column;width:480px;max-width:calc(100vw - 32px);transition:opacity .22s,transform .22s;display:flex;position:fixed;top:16px;bottom:16px;right:16px;overflow:hidden;transform:scale(.96)translateY(8px);box-shadow:0 20px 60px #0000004d}.cp-hdr{border-bottom:1px solid var(--border-subtle);align-items:flex-start;gap:10px;padding:15px 18px 12px}.cp-foot,.cp-hdr{flex-shrink:0;display:flex}.cp-foot{border-top:1px solid var(--border-subtle);flex-wrap:wrap;gap:8px;padding:14px 18px}.tenant-fpanel{background:var(--bg-surface);z-index:300;opacity:0;pointer-events:none;border-radius:16px;flex-direction:column;width:480px;max-width:calc(100vw - 32px);transition:opacity .22s,transform .22s;display:flex;position:fixed;top:16px;bottom:16px;right:16px;overflow:hidden;transform:scale(.96)translateY(8px);box-shadow:0 20px 60px #0000004d}.logo-badge{letter-spacing:.06em;text-transform:uppercase;background:var(--risk-crit-bg);color:var(--risk-crit-text);border:1px solid var(--risk-crit-border);border-radius:4px;margin-inline-start:2px;padding:2px 6px;font-size:9px;font-weight:700}.rv-mono{color:var(--brand-600);font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px}.rv-val{color:var(--text-primary);font-weight:600}.rv-label{color:var(--text-muted);font-size:12px}.tc-manage{color:var(--brand-600);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px;font-weight:600;text-decoration:none;transition:color .1s}.tc-row{color:var(--text-muted);justify-content:space-between;align-items:center;font-size:12px;display:flex}.tc-name{font-family:var(--font-display);color:var(--text-primary);font-size:14px;font-weight:700;line-height:1.3}.ep-cert{color:oklch(48% .16 75);background:oklch(96.8% .052 85)}.ep-enroll{background:var(--brand-100);color:var(--brand-900)}.ep-login{background:var(--bg-app);color:var(--text-muted);border:1px solid var(--border-subtle)}.badge-approved,.ep-publish{background:var(--risk-low-bg);color:var(--risk-low-text)}.badge-rejected{background:var(--risk-crit-bg);color:var(--risk-crit-text)}.approve{background:var(--risk-low-bg);color:var(--risk-low-text);border-color:var(--risk-low-border)}.reject{background:var(--risk-crit-bg);color:var(--risk-crit-text);border-color:var(--risk-crit-border)}.check-row{color:var(--text-primary);cursor:pointer;padding:6px 0}.et-enroll{color:oklch(38% .12 215);background:oklch(96.2% .03 215)}.global-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:14px;margin-bottom:20px;padding:22px}.gc-title{font-family:var(--font-display);color:var(--text-primary);border-bottom:1px solid var(--border-subtle);margin-bottom:14px;padding-bottom:10px;font-size:15px;font-weight:700}.btn-warn{color:var(--risk-crit-text);background:var(--risk-crit-bg);border:1.5px solid var(--risk-crit-border);border-radius:8px;padding:8px 16px}.color-row{gap:10px}.color-swatch{background:var(--brand-600);width:38px;height:38px}.danger-item{color:var(--risk-crit-text)}.mc-desc{color:var(--text-muted);margin-top:2px;font-size:13px}.mc-meta{background:var(--bg-app);border-radius:10px;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px;padding:14px;display:grid}.cat-comm{background:var(--risk-med-bg);color:var(--risk-med-text);border:none}.cat-content{background:var(--risk-low-bg);color:var(--risk-low-text);border:none}.btn-test{background:var(--brand-100);border:1px solid var(--brand-300);border-radius:9999px;padding:9px 20px}.access-icon{font-size:16px}.audit-link{cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;margin-top:12px;padding:0;font-size:13px;font-weight:600;display:inline-flex}.badge-purple{color:oklch(38% .13 280);background:oklch(96% .038 280);border:1px solid oklch(76% .12 280)}.act-link{color:var(--brand-600);font-size:12px;font-weight:600;text-decoration:none;transition:color .1s}.act-link:hover{color:var(--brand-700);text-decoration:underline}.system-health{flex-direction:column;gap:8px;display:flex}.sh-status{border-bottom:1px solid var(--border-subtle);align-items:center;gap:10px;padding:8px 0;display:flex}.sh-status:last-child{border-bottom:none}.sh-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.sh-dot.ok{background:var(--risk-low-text)}.sh-dot.warn{background:var(--risk-med-text)}.sh-dot.err{background:var(--risk-high-text)}.sh-service{color:var(--text-primary);flex:1;font-size:13px;font-weight:500}.sh-label{color:var(--text-muted);font-size:11px}.sh-val{color:var(--text-secondary);font-size:12px;font-weight:600}.btn-submit{font-family:var(--font-body);color:#fff;background:var(--brand-600);cursor:pointer;border:none;border-radius:9px;padding:9px 20px;font-size:13px;font-weight:600;transition:background .15s}.btn-submit:hover{background:var(--brand-700)}.btn-warn{font-family:var(--font-body);color:#fff;background:var(--risk-high-text);cursor:pointer;border:none;border-radius:9px;padding:9px 20px;font-size:13px;font-weight:600;transition:opacity .15s}.btn-warn:hover{opacity:.88}.btn-test{font-family:var(--font-body);color:var(--brand-600);background:var(--brand-50);border:1.5px solid var(--brand-300);cursor:pointer;border-radius:9px;padding:9px 18px;font-size:13px;font-weight:600;transition:background .15s}.btn-test:hover{background:var(--brand-100)}.danger-zone{border:1.5px solid var(--risk-high-border);background:var(--risk-high-bg);border-radius:12px;padding:18px 20px}.danger-item{border-bottom:1px solid var(--risk-high-border);justify-content:space-between;align-items:flex-start;gap:16px;padding:12px 0;display:flex}.danger-item:last-child{border-bottom:none}.color-row{align-items:center;gap:14px;padding:10px 0;display:flex}.color-swatch{border:2px solid var(--border-subtle);cursor:pointer;border-radius:8px;flex-shrink:0;width:32px;height:32px;transition:transform .1s}.color-swatch:hover{transform:scale(1.08)}.audit-item{border-bottom:1px solid var(--border-subtle);align-items:flex-start;gap:10px;padding:8px 0;font-size:12px;display:flex}.audit-item:last-child{border-bottom:none}.audit-link{color:var(--brand-600);font-size:12px;font-weight:500;text-decoration:none}.audit-link:hover{text-decoration:underline}.access-icon{background:var(--bg-app);border-radius:8px;flex-shrink:0;place-items:center;width:32px;height:32px;font-size:15px;display:grid}.access-label{color:var(--text-primary);font-size:13px;font-weight:600}.access-sub{color:var(--text-muted);margin-top:2px;font-size:12px}.pp-div{background:var(--border-subtle);height:1px;margin:6px 0}.form-helper{color:var(--text-muted);margin-top:4px;font-size:12px}.tpl-row{border-bottom:1px solid var(--border-subtle);align-items:center;gap:12px;padding:12px 0;display:flex}.tpl-row:last-child{border-bottom:none}.tpl-meta{flex:1;min-width:0}.tpl-actions{flex-shrink:0;gap:8px;display:flex}.approve{font-family:var(--font-body);color:#fff;background:var(--risk-low-text);cursor:pointer;border:none;border-radius:8px;padding:6px 14px;font-size:12px;font-weight:600;transition:opacity .15s}.approve:hover{opacity:.88}.reject{font-family:var(--font-body);color:#fff;background:var(--risk-high-text);cursor:pointer;border:none;border-radius:8px;padding:6px 14px;font-size:12px;font-weight:600;transition:opacity .15s}.reject:hover{opacity:.88}.badge-approved{background:var(--risk-low-bg);color:var(--risk-low-text);border:1px solid var(--risk-low-border)}.badge-pending{background:var(--risk-med-bg);color:var(--risk-med-text);border:1px solid var(--risk-med-border)}.badge-rejected{background:var(--risk-high-bg);color:var(--risk-high-text);border:1px solid var(--risk-high-border)}.sm-row{border-bottom:1px solid var(--border-subtle);align-items:center;gap:12px;padding:10px 0;display:flex}.sm-row:last-child{border-bottom:none}.et-item{border-bottom:1px solid var(--border-subtle);align-items:center;gap:10px;padding:8px 0;font-size:12px;display:flex}.et-item:last-child{border-bottom:none}.et-icon{border-radius:7px;flex-shrink:0;place-items:center;width:28px;height:28px;font-size:13px;display:grid}.et-enroll{background:var(--brand-100);color:var(--brand-700)}.et-complete{background:var(--risk-low-bg);color:var(--risk-low-text)}.et-login{background:var(--bg-hover);color:var(--text-muted)}.check-row{color:var(--text-secondary);align-items:center;gap:8px;padding:4px 0;font-size:13px;display:flex}.course-fpanel.open{opacity:1;pointer-events:auto;transform:scale(1)translateY(0)}.cat-risk{background:var(--risk-high-bg);color:var(--risk-high-text);border:1px solid var(--risk-high-border);border-radius:9999px}.cat-custom,.cat-risk{padding:2px 9px;font-size:10px;font-weight:700}.cat-custom{background:var(--bg-hover);color:var(--text-muted);border:1px solid var(--border-subtle);border-radius:9999px}.pc-chip{border:1px solid #0000;border-radius:9999px;align-items:center;gap:5px;padding:3px 9px;font-size:10px;font-weight:700;display:inline-flex}.ep-risk{background:var(--risk-high-bg);color:var(--risk-high-text)}.range-row{align-items:center;gap:10px;display:flex}.range-val{font-family:var(--font-display);color:var(--brand-600);text-align:right;min-width:36px;font-size:16px;font-weight:800}.fp2-back{background:var(--bg-app);cursor:pointer;width:28px;height:28px;color:var(--text-muted);border:none;border-radius:7px;flex-shrink:0;place-items:center;font-size:15px;font-weight:700;transition:background .1s;display:grid}.fp2-body{scrollbar-width:thin;flex:1;padding:15px 18px;overflow-y:auto}.fp2-close{cursor:pointer;width:28px;height:28px;color:var(--text-muted);background:0 0;border:none;border-radius:7px;flex-shrink:0;place-items:center;font-size:14px;transition:background .1s;display:grid}.fp2-hdr{border-bottom:1px solid var(--border-subtle);flex-shrink:0;align-items:flex-start;gap:10px;padding:15px 18px 12px;display:flex}.cp-lbl{color:var(--text-muted);font-size:12px}.cp-prog-wrap{background:var(--border-subtle);border-radius:9999px;flex:1;height:7px;margin:0 8px;overflow:hidden}.cp-row{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:8px 0;font-size:13px;display:flex}.tp-body{scrollbar-width:thin;flex:1;padding:15px 18px;overflow-y:auto}.tp-close{cursor:pointer;width:28px;height:28px;color:var(--text-muted);background:0 0;border:none;border-radius:7px;flex-shrink:0;place-items:center;font-size:14px;transition:background .1s;display:grid}.tp-foot{border-top:1px solid var(--border-subtle);flex-wrap:wrap;gap:8px;padding:14px 18px}.tp-foot,.tp-hdr{flex-shrink:0;display:flex}.tp-hdr{border-bottom:1px solid var(--border-subtle);align-items:flex-start;gap:10px;padding:15px 18px 12px}.cards-grid{grid-template-columns:repeat(3,1fr);margin-bottom:24px}.pc-body{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;display:grid}.pc-comment{margin-top:12px}.btn-approve{background:var(--risk-low-bg);color:var(--risk-low-text);border:1px solid var(--risk-low-border);border-radius:9999px}.btn-approve,.btn-reject{padding:9px 20px;font-size:13px;transition:background .1s}.btn-reject{background:var(--risk-crit-bg);color:var(--risk-crit-text);border:1px solid var(--risk-crit-border);border-radius:9999px}.danger-item-row{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:14px 0;display:flex}.di-label{color:var(--text-primary);font-size:13px;font-weight:600}.di-sub{color:var(--text-muted);margin-top:1px;font-size:11px}.mc-footer{border-top:1px solid var(--border-subtle);align-items:center;gap:10px;padding-top:14px;display:flex}.mc-header{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:18px;display:flex}.mc-icon{background:var(--brand-100);border-radius:10px;flex-shrink:0;place-items:center;width:42px;height:42px;font-size:20px;display:grid}.cat-rec{background:var(--brand-100);color:var(--brand-900);border:none}.mono{font-family:var(--font-mono);line-height:1.6}.pc-avatar-wrap{margin-top:-36px;margin-bottom:12px;padding:0 24px}.access-badge{background:oklch(96.2% .04 25);align-items:center;gap:8px;margin-top:14px;padding:10px 12px;display:flex}.access-badge,.btn-revoke{border:1px solid oklch(72% .14 25)}.btn-revoke{color:var(--risk-crit-text);background:var(--risk-crit-bg);border-radius:6px;flex-shrink:0;padding:5px 10px}.chip-green{background:var(--risk-low-bg);color:var(--risk-low-text);border:1px solid var(--risk-low-border);border-radius:9999px}.chip-amber,.chip-green{padding:2px 9px;font-size:10px;font-weight:700}.chip-amber{background:var(--risk-med-bg);color:var(--risk-med-text);border:1px solid var(--risk-med-border);border-radius:9999px}.dot-amber{background:var(--risk-med-text);border-radius:50%;width:8px;height:8px}.fp2-close,.tp-close{cursor:pointer;width:28px;height:28px;color:var(--text-muted);background:0 0;border:none;border-radius:7px;place-items:center;font-size:15px;transition:background .1s;display:grid}.fp2-close:hover,.tp-close:hover{background:var(--bg-hover)}.btn-approve{background:var(--risk-low-text)}.btn-approve,.btn-reject{font-family:var(--font-body);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:6px 14px;font-size:12px;font-weight:600}.btn-reject{background:var(--risk-high-text)}.et-openmaic{color:oklch(40% .13 280);background:oklch(96.2% .028 280)}.et-risk{background:var(--risk-high-bg);color:var(--risk-high-text)}.et-submit{background:var(--brand-100);color:var(--brand-700)}.mono{font-family:var(--font-mono,ui-monospace,monospace);font-size:12px}.access-badge{background:var(--bg-app);border:1px solid var(--border-subtle);border-radius:8px;padding:4px 10px;font-size:11px}.btn-revoke{font-family:var(--font-body);color:var(--risk-high-text);background:var(--risk-high-bg);border:1px solid var(--risk-high-border);cursor:pointer;border-radius:8px;padding:5px 12px;font-size:12px;font-weight:600}.cards-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;display:grid}.dot-red{background:var(--risk-crit-text)}.health-name{color:var(--text-primary);font-weight:500}.health-pct{font-variant-numeric:tabular-nums;font-weight:600}.health-row{border-bottom:1px solid var(--border-subtle);padding:10px 0}.health-status{border-radius:9999px;padding:2px 8px;font-weight:600}.hs-ok{background:var(--risk-low-bg)}.hs-warn{background:var(--risk-med-bg)}.inst-abbr{font-size:11px}.inst-name{font-weight:600}.fp2-foot{flex-wrap:wrap;padding:14px 18px}.fp2-lbl{font-size:12px}.fp2-row{justify-content:space-between;align-items:center;padding:8px 0;font-size:13px}.fp2-sl{letter-spacing:.08em;text-transform:uppercase;color:var(--text-disabled);margin:14px 0 8px;font-size:10px;font-weight:700}.fp2-stat{text-align:center;border-radius:9px;padding:10px 12px}.fp2-stat-grid{margin-bottom:14px}.fp2-stat-v{line-height:1}.fp2-val{font-weight:500}.fpbtn{border-radius:8px;flex:1;padding:9px 14px;transition:background .12s,transform .1s}.receded{opacity:.28;filter:blur(.5px);transition:opacity .28s,transform .28s;transform:scale(.84)translate(36px)translateY(-8px)}.role-l2panel{background:var(--bg-surface);z-index:310;opacity:0;pointer-events:none;border-radius:16px;flex-direction:column;width:480px;max-width:calc(100vw - 32px);transition:opacity .22s,transform .22s;display:flex;position:fixed;top:16px;bottom:16px;right:16px;overflow:hidden;transform:scale(.96)translateY(8px);box-shadow:0 20px 60px #0000004d}.dot-green{background:var(--risk-low-text)}.dot-green,.dot-red{border-radius:50%;flex-shrink:0;width:8px;height:8px}.dot-red{background:var(--risk-high-text)}.fill-green{background:var(--risk-low-text)}.fill-amber{background:var(--risk-med-text)}.fill-orange{background:oklch(56% .15 45)}.health-list{flex-direction:column;gap:6px;display:flex}.health-row{align-items:center;gap:10px;padding:6px 0;display:flex}.health-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.health-name{color:var(--text-secondary);flex:1;font-size:13px}.health-pct{color:var(--text-primary);font-size:12px;font-weight:700}.health-status{letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:700}.hs-ok{color:var(--risk-low-text)}.hs-warn{color:var(--risk-med-text)}.inst-name{font-family:var(--font-display);color:var(--text-primary);font-size:13px;font-weight:700}.inst-abbr{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);font-size:10px;font-weight:700}.fp2-row{border-bottom:1px solid var(--border-subtle);align-items:flex-start;gap:8px;padding:6px 0;display:flex}.fp2-row:last-child{border-bottom:none}.fp2-lbl{color:var(--text-muted);flex-shrink:0;width:80px;font-size:11px}.fp2-val{color:var(--text-primary);font-size:12px;font-weight:600}.fp2-stat-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.fp2-stat{background:var(--bg-app);border-radius:8px;padding:8px 10px}.fp2-stat-v{font-family:var(--font-display);color:var(--text-primary);font-size:18px;font-weight:800}.fp2-stat-l{margin-top:2px;font-size:10px}.fp2-sl,.fp2-stat-l{color:var(--text-muted)}.fp2-sl{margin-bottom:4px;font-size:11px}.fp2-foot{border-top:1px solid var(--border-subtle);flex-shrink:0;gap:8px;padding:12px 18px;display:flex}.fpbtn{font-family:var(--font-body);cursor:pointer;border:none;border-radius:9px;padding:8px 12px;font-size:12px;font-weight:600;transition:background .12s}.fpbtn-primary{background:var(--brand-600);color:#fff;flex:1}.fpbtn-primary:hover{background:var(--brand-700)}.fpbtn-sec{background:var(--bg-app);color:var(--text-secondary);border:1.5px solid var(--border-subtle)}.fpbtn-danger{background:var(--risk-high-bg);color:var(--risk-high-text);border:1px solid var(--risk-high-border)}.receded{opacity:.4;pointer-events:none}.role-l2panel{background:var(--brand-100);color:var(--brand-700);border-radius:9999px;padding:2px 8px;font-size:10px;font-weight:700}.main-grid{grid-template-columns:65fr 35fr}.wb-chip{letter-spacing:.06em;text-transform:uppercase;padding:4px 12px}.role-radio-card{align-items:flex-start;gap:10px;margin-bottom:8px;padding:11px 14px;transition:border-color .12s;display:flex}.user-fpanel{background:var(--bg-surface);z-index:300;opacity:0;pointer-events:none;border-radius:16px;flex-direction:column;width:480px;transition:opacity .22s,transform .22s;display:flex;position:fixed;top:16px;bottom:16px;right:16px;overflow:hidden;transform:scale(.96)translateY(8px);box-shadow:0 20px 60px #0000004d}.user-fpanel.open{opacity:1;pointer-events:auto;transform:scale(1)translateY(0)}.cp-sl{letter-spacing:.08em;text-transform:uppercase;color:var(--text-disabled);margin:14px 0 8px;font-size:10px;font-weight:700}.cp-stat-grid{margin-bottom:14px}.cp-stat-v{line-height:1}.tp-health-bar{max-width:120px;height:6px}.tp-health-fill{height:6px}.tp-health-row{border-bottom:1px solid var(--border-subtle);justify-content:space-between;padding:8px 0}.pc-creator{margin-top:3px;font-size:13px}.pc-detail{color:var(--text-secondary);font-size:13px}.pc-hdr{align-items:flex-start;gap:12px;margin-bottom:14px}.blue{background:var(--brand-600)}.off{background:var(--border-strong)}.orange{background:var(--risk-high-text)}.form-input-sm{color:var(--text-primary);background:var(--bg-surface);border:1.5px solid var(--border-subtle);border-radius:8px;width:140px;padding:8px 12px;font-size:13px}.logo-upload{border:2px dashed var(--border-subtle);background:var(--bg-app);padding:28px;transition:border-color .2s}.mc-meta-item{font-size:12px}.mc-perf{background:var(--brand-100);border-radius:10px;gap:16px;margin-bottom:14px;padding:12px 14px;display:flex}.mc-status{align-items:center;gap:6px;font-size:12px;font-weight:600;display:flex}.preview-label{letter-spacing:.1em;color:oklch(53% .012 215);margin-bottom:8px;font-size:10px}.preview-panel{font-family:var(--font-mono);color:oklch(85% .01 215);background:oklch(16.5% .008 215);min-height:100px;line-height:1.7;position:relative}.pc-info{padding:0 24px 20px}.pc-name{letter-spacing:-.01em;font-size:18px;font-weight:800}.pc-ava{width:72px;height:72px;color:oklch(44% .15 25);border:4px solid var(--bg-surface);background:oklch(96.2% .04 25);font-size:24px;font-weight:800}.main-grid{grid-template-columns:1fr 360px;align-items:start;gap:20px;display:grid}.right-col{flex-direction:column;gap:20px;display:flex}.wb-chip{border-radius:9999px;align-items:center;gap:5px;padding:4px 10px;font-size:11px;font-weight:700;display:inline-flex}.role-radio-card{border:1.5px solid var(--border-subtle);cursor:pointer;border-radius:10px;padding:12px 14px;transition:border-color .15s}.role-radio-card:has(input:checked){border-color:var(--brand-600);background:var(--brand-50)}.user-fpanel{max-width:calc(100vw - 32px)}.cp-stat-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.cp-stat-l{color:var(--text-muted);margin-top:2px;font-size:10px}.cp-stat-v{font-family:var(--font-display);color:var(--text-primary);font-size:18px;font-weight:800}.cp-sl{color:var(--text-muted);margin-bottom:4px;font-size:11px}.tp-health-bar{background:var(--border-subtle);border-radius:9999px;flex:1;height:5px;overflow:hidden}.tp-health-fill{background:var(--risk-low-text);border-radius:9999px;height:100%}.tp-health-row{align-items:center;gap:8px;padding:5px 0;display:flex}.blue{background:var(--brand-100);color:var(--brand-700)}.off{opacity:.35}.orange{color:oklch(44% .14 45);background:oklch(96.8% .045 60)}.evt-enter{animation:slideUp .3s ease-out both}.form-input-sm{font-family:var(--font-body);background:var(--bg-app);border:1px solid var(--border-subtle);border-radius:7px;outline:none;width:100%;padding:6px 10px;font-size:12px}.logo-upload{border:2px dashed var(--border-strong);text-align:center;cursor:pointer;border-radius:10px;padding:20px;transition:border-color .15s}.logo-upload:hover{border-color:var(--brand-400)}.logo-upload-icon{margin-bottom:8px;font-size:24px}.mc-badge{border-radius:9999px;padding:2px 7px;font-size:9px;font-weight:700}.mc-meta-item{color:var(--text-muted);align-items:center;gap:4px;font-size:11px;display:flex}.mc-perf{color:var(--risk-low-text);font-size:11px;font-weight:600}.mc-status{border-radius:50%;flex-shrink:0;width:8px;height:8px}.preview-panel{background:var(--bg-app);font-family:var(--font-mono,ui-monospace,monospace);color:var(--text-secondary);border-radius:10px;min-height:80px;padding:16px;font-size:12px;line-height:1.65}.preview-label{color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase;margin-bottom:6px;font-size:11px;font-weight:700}.preview-cursor{background:var(--brand-600);vertical-align:-2px;width:2px;height:14px;animation:blink 1s ease-in-out infinite;display:inline-block}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.pc-divider{background:var(--border-subtle);height:1px;margin:12px 0}.pc-info{flex:1;min-width:0}.pc-name{font-size:15px;color:var(--text-primary)}.pc-ava,.pc-name{font-weight:700;font-family:var(--font-display)}.pc-ava{background:var(--brand-200);width:48px;height:48px;color:var(--brand-700);border-radius:50%;flex-shrink:0;place-items:center;font-size:18px;display:grid}.pc-avatar-wrap{align-items:center;gap:14px;display:flex}.pc-detail{color:var(--text-muted);margin-top:2px;font-size:12px}.pc-hdr{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.pc-footer{border-top:1px solid var(--border-subtle);gap:8px;padding-top:12px;display:flex}.pc-creator{color:var(--text-muted);font-size:11px}.pc-comment{color:var(--text-secondary);font-size:12px;line-height:1.6}.wb-chips{margin-top:12px}.cp-val{font-weight:500}.cpbtn{border-radius:8px;flex:1;min-width:90px;padding:9px 14px;transition:background .12s,transform .1s}.tp-lbl{font-size:12px}.tp-logo{width:46px;height:46px;font-family:var(--font-display);border-radius:12px;font-weight:800}.tp-row{justify-content:space-between;align-items:center;padding:8px 0;font-size:13px}.tp-stat-grid{grid-template-columns:1fr 1fr;margin-bottom:14px}.tp-stat-v{font-size:18px;line-height:1}.pending-card{background:var(--bg-surface);border:1px solid var(--risk-med-border,var(--border-subtle));border-radius:14px;margin-bottom:16px;padding:24px;transition:box-shadow .15s}.pg-arrow{width:auto;min-width:36px;padding:0 10px}.pg-btns{align-items:center;gap:4px}.prog-mini{flex:1;max-width:80px;height:5px}.model-chip{color:var(--brand-900);border:1px solid var(--brand-300);border-radius:7px;align-items:center;gap:6px;padding:4px 10px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;display:inline-flex}.radio-opt{color:var(--text-primary);font-size:13px}.model-card{border-radius:14px;margin-bottom:20px;padding:22px}.perf-item{color:var(--text-muted);font-size:12px}.prompt-card{cursor:pointer;align-items:flex-start;gap:16px;margin-bottom:12px;padding:18px 20px;display:flex}.settings-content{flex:1;padding:32px 32px 60px;overflow-y:auto}.right-panel{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:14px;overflow:hidden}.sess-current{padding:2px 6px}.wb-chips{flex-wrap:wrap;gap:8px;display:flex}.cpbtn{font-family:var(--font-body);cursor:pointer;border:none;border-radius:9px;padding:8px 12px;font-size:12px;font-weight:600;transition:background .12s}.cpbtn-primary{background:var(--brand-600);color:#fff;flex:1}.cpbtn-sec{background:var(--bg-app);color:var(--text-secondary);border:1.5px solid var(--border-subtle)}.cpbtn-danger{background:var(--risk-high-bg);color:var(--risk-high-text);border:1px solid var(--risk-high-border)}.cp-val{color:var(--text-primary);font-size:13px;font-weight:600}.tp-row{border-bottom:1px solid var(--border-subtle);align-items:flex-start;gap:12px;padding:10px 0;display:flex}.tp-row:last-child{border-bottom:none}.tp-lbl{color:var(--text-muted);flex-shrink:0;width:80px;padding-top:2px;font-size:11px}.tp-logo{background:var(--bg-app);border-radius:8px;flex-shrink:0;place-items:center;width:32px;height:32px;font-size:14px;display:grid}.tp-stat-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.tp-stat{background:var(--bg-app);text-align:center;border-radius:8px;padding:8px}.tp-stat-v{font-family:var(--font-display);color:var(--text-primary);font-size:16px;font-weight:800}.tp-stat-l{color:var(--text-muted);margin-top:2px;font-size:10px}.pg-btns{border-top:1px solid var(--border-subtle);justify-content:flex-end;gap:8px;padding:16px;display:flex}.pending-card{background:var(--risk-med-bg);border:1px solid var(--risk-med-border);border-radius:12px;padding:14px 16px}.pill-dark{color:#fff;background:oklch(16.5% .008 215)}.pill-purple{color:oklch(38% .13 280);background:oklch(96% .038 280);border:1px solid oklch(76% .12 280)}.prog-mini{background:var(--border-subtle);border-radius:9999px;height:4px;overflow:hidden}.logo-upload-text{color:var(--text-muted);font-size:12px}.model-chip{background:var(--brand-100);color:var(--brand-700);border-radius:9999px;padding:2px 8px;font-size:10px;font-weight:700;display:inline-block}.radio-opt{cursor:pointer;align-items:center;gap:8px;display:flex}.model-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;transition:box-shadow .15s;overflow:hidden}.model-card:hover{box-shadow:var(--shadow-panel)}.mc-title{font-family:var(--font-display);color:var(--text-primary);font-size:14px;font-weight:700}.perf-item{align-items:center;gap:8px;padding:6px 0;display:flex}.prompt-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;margin-bottom:10px;padding:16px 20px;transition:box-shadow .15s,border-color .15s}.prompt-card:hover{box-shadow:var(--shadow-panel);border-color:var(--brand-200)}.settings-layout{grid-template-columns:240px 1fr;align-items:start;gap:24px;display:grid}.right-panel,.settings-content{flex-direction:column;gap:16px;display:flex}.sess-item{border-bottom:1px solid var(--border-subtle);align-items:flex-start;gap:10px;padding:10px 0;display:flex}.sess-item:last-child{border-bottom:none}.sess-device{color:var(--text-primary);font-size:13px;font-weight:600}.sess-meta{color:var(--text-muted);margin-top:2px;font-size:11px}.sess-current{background:var(--risk-low-bg);color:var(--risk-low-text);border-radius:9999px;padding:2px 7px;font-size:10px;font-weight:700}.m-tab.active{background:var(--brand-600);color:#fff;font-weight:600;box-shadow:0 1px 2px #0000001a}.modal-tab.active{color:var(--brand-600);border-bottom:2px solid var(--brand-600);font-weight:600}.modal-tab-content{display:none}.modal-tab-content.active{display:block}.page-content{width:100%;max-width:100%;padding:28px 28px 48px}@media (max-width:640px){.page-content{padding:16px 16px 32px}}.vis-card.selected{border-color:var(--brand-600);background:var(--brand-50)}.vis-card.selected .vis-card-radio{background:var(--brand-600);border-color:var(--brand-600);justify-content:center;align-items:center;display:flex}.vis-card.selected .vis-card-radio:after{content:"";background:#fff;border-radius:50%;width:8px;height:8px;display:block}.vis-card.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.mod-bar-bg{background:var(--border-subtle);border-radius:99px;flex:1;height:6px;overflow:hidden}.mod-bar-bg .mod-bar-fill{background:var(--brand-600);border-radius:99px;height:100%;transition:width .3s}.risk-score-wrap{background:var(--border-subtle);border-radius:99px;flex:1;height:6px;overflow:hidden}.risk-score-fill{border-radius:99px;height:100%;transition:width .3s}.actions-dropdown{z-index:150!important}.modal-overlay{z-index:400!important}.panel,.stat-card{opacity:1!important;animation:none!important}.editor-layout{gap:0;height:calc(100vh - 112px);display:flex;overflow:hidden}.module-panel{border-right:1px solid var(--border-subtle);background:var(--bg-surface);flex-direction:column;width:260px;min-width:220px;max-width:300px;display:flex;overflow:hidden}.module-panel-hdr{border-bottom:1px solid var(--border-subtle);flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 16px 10px;display:flex}.module-panel-title{font-family:var(--font-display);color:var(--text-primary);font-size:13px;font-weight:700}.mod-list{flex:1;padding:8px;overflow-y:auto}.mod-row{cursor:pointer;border-radius:8px;align-items:center;gap:10px;margin-bottom:2px;padding:9px 10px;transition:background .12s;display:flex}.mod-row:hover{background:var(--bg-hover)}.mod-row.active{background:var(--brand-50);border:1px solid var(--brand-200)}.mod-num{background:var(--bg-app);border:1px solid var(--border-subtle);width:22px;height:22px;color:var(--text-muted);border-radius:6px;flex-shrink:0;place-items:center;font-size:11px;font-weight:700;display:grid}.mod-row.active .mod-num{background:var(--brand-600);border-color:var(--brand-600);color:#fff}.mod-row-title{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13px;font-weight:500;overflow:hidden}.content-panel{background:var(--bg-app);flex-direction:column;flex:1;display:flex;overflow:hidden}.cp-header{border-bottom:1px solid var(--border-subtle);background:var(--bg-surface);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:14px 20px;display:flex}.cp-title{font-family:var(--font-display);color:var(--text-primary);flex:1;min-width:0;font-size:15px;font-weight:700}.cp-body{flex:1;padding:16px 20px;overflow-y:auto}.ci-card{border:1px solid var(--border-subtle);background:var(--bg-surface);border-radius:10px;align-items:center;gap:12px;margin-bottom:8px;padding:12px 14px;transition:box-shadow .15s,border-color .15s;display:flex}.ci-card:hover{border-color:var(--border-strong);box-shadow:0 2px 8px #0000000f}.ci-icon{background:var(--brand-50);width:34px;height:34px;color:var(--brand-600);border-radius:8px;flex-shrink:0;place-items:center;display:grid}.ci-body{flex:1;min-width:0}.ci-title{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.ci-sub{color:var(--text-muted);margin-top:1px;font-size:11px}.ci-actions{flex-shrink:0;gap:4px;display:flex}.add-ci-btn{border:1.5px dashed var(--border-strong);color:var(--text-secondary);cursor:pointer;width:100%;font-size:13px;font-family:var(--font-body);background:0 0;border-radius:10px;align-items:center;gap:8px;margin-top:4px;padding:10px 14px;transition:border-color .15s,color .15s,background .15s;display:flex}.add-ci-btn:hover{border-color:var(--brand-400);color:var(--brand-600);background:var(--brand-50)}.cp-empty{color:var(--text-muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;padding:40px;font-size:14px;display:flex}.nav-section-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);opacity:.7;padding:16px 12px 4px}.nav-badge,.nav-section-label{font-size:10px;font-weight:700}.nav-badge{background:var(--risk-high-text);color:#fff;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:auto;padding:0 5px;line-height:1;display:inline-flex}.nav-badge.brand{background:var(--brand-600)}.pill{border-radius:99px;align-items:center;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.pill-blue{color:oklch(30% .12 245);background:oklch(92% .04 245)}.pill-green{color:oklch(30% .12 145);background:oklch(93% .05 145)}.pill-amber{color:oklch(40% .14 75);background:oklch(95% .06 75)}.pill-purple{color:oklch(30% .12 300);background:oklch(93% .05 300)}.page-hdr-row,.page-hdr:has(>.page-hdr-actions),.page-hdr:has(>:last-child button){justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.page-hdr-row>:first-child,.page-hdr:has(>.page-hdr-actions)>:first-child,.page-hdr:has(>:last-child button)>:first-child{flex:auto;min-width:0}.page-hdr-actions,.page-hdr-row>:last-child,.page-hdr:has(>:last-child button)>:last-child{flex-wrap:wrap;flex:none;justify-content:flex-end;align-items:center;gap:10px;display:flex}@media (max-width:640px){.page-hdr-row,.page-hdr:has(>.page-hdr-actions),.page-hdr:has(>:last-child button){flex-direction:column;align-items:stretch}.page-hdr-actions,.page-hdr-row>:last-child,.page-hdr:has(>:last-child button)>:last-child{justify-content:flex-start}}.panel>.panel-hdr,.panel>.section-hdr{border-bottom:1px solid var(--border-subtle)}.panel>.panel-hdr,.panel>.panel-title,.panel>.section-hdr{box-sizing:border-box;margin:0!important;padding:16px 20px!important}.panel>.panel-title{display:block}.panel>.panel-hdr+.panel-body,.panel>.panel-title+.panel-body,.panel>.section-hdr+.panel-body{padding-top:20px}.modal,.modal-box,[role=dialog][data-state=open]{opacity:1!important}.modal-backdrop,.modal-overlay,[role=dialog][data-state=open]::backdrop{opacity:1}.data-table tbody tr,.data-table td,.skills-table tbody tr,.skills-table td,.table-wrap tbody tr,.table-wrap td{z-index:0;position:relative}.data-table tbody tr:hover,.skills-table tbody tr:hover,.table-wrap tbody tr:hover{z-index:1}.data-table td:has(.action-menu-wrap),.data-table td:has(.actions-dropdown),.data-table td:has(.actions-menu),.skills-table td:has(.action-menu-wrap),.skills-table td:has(.actions-dropdown),.skills-table td:has(.actions-menu),.table-wrap td:has(.action-menu-wrap),.table-wrap td:has(.actions-dropdown),.table-wrap td:has(.actions-menu){z-index:2;overflow:visible}.action-menu-wrap,.actions-menu{z-index:3;position:relative}.main-tabs.main-tabs-underline{border:0;border-bottom:1px solid var(--border-subtle);background:0 0;border-radius:0;gap:18px;width:100%;padding:0}.main-tabs.main-tabs-underline .m-tab{color:var(--text-muted);border-radius:0;padding:10px 0 12px;position:relative;background:0 0!important}.main-tabs.main-tabs-underline .m-tab:after{content:"";background:var(--brand-600);opacity:0;border-radius:9999px;height:2px;transition:opacity .15s;position:absolute;bottom:-1px;left:0;right:0}.main-tabs.main-tabs-underline .m-tab.active,.main-tabs.main-tabs-underline .m-tab:hover{color:var(--text-primary)}.main-tabs.main-tabs-underline .m-tab.active:after{opacity:1}.path-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.path-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;gap:12px;overflow:visible;opacity:1!important;padding:20px!important;animation:none!important}.path-card .pc-header{align-items:flex-start;margin-bottom:0}.path-card .pc-title{margin:0}.path-card .pc-desc{min-height:36px}.path-card .pc-meta{align-items:flex-start;gap:16px;display:flex}.path-card .meta-item{background:0 0;border-radius:0;min-width:0;padding:0}.path-card .meta-val{color:var(--text-primary);font-size:14px;font-weight:700;line-height:1.2;display:block}.path-card .meta-lbl{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-top:2px;font-size:10px;font-weight:600;display:block}.path-card .pc-actions{border-top:0;gap:8px;margin-top:2px;padding-top:0;display:flex}.path-card .pc-actions a{text-decoration:none}.path-card .btn-sm{min-height:30px}.panel .course-card{border:0;border-bottom:1px solid var(--border-subtle);cursor:default;box-shadow:none;background:0 0;border-radius:0;align-items:center;gap:12px;padding:12px 0;display:flex;overflow:visible;transform:none}.panel .course-card:last-child{border-bottom:0}.panel .course-card:hover{border-color:var(--border-subtle);box-shadow:none;transform:none}.panel .course-card .cc-icon{border-radius:10px;flex-shrink:0;place-items:center;width:40px;height:40px;font-size:18px;display:grid}.panel .course-card .cc-info{flex:1;min-width:0}.panel .course-card .cc-title{font-family:var(--font-display);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;margin:0 0 3px;font-size:14px;font-weight:700;display:block;overflow:hidden}.panel .course-card .cc-meta{color:var(--text-muted);flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:8px;margin-bottom:8px;font-size:11px;display:flex}.panel .course-card .prog-bar{width:100%}.panel .course-card .cc-right{text-align:right;flex-shrink:0}.panel .course-card .cc-right a,.panel .course-card .cc-right button{text-decoration:none}.panel a:has(.qa-btn){color:inherit;text-decoration:none;display:block}.qa-btn{background:var(--bg-app);border:1px solid var(--border-subtle);width:100%;color:var(--text-primary);font-family:var(--font-body);text-align:left;cursor:pointer;border-radius:9px;align-items:center;gap:10px;margin-bottom:8px;padding:10px 14px;display:flex}.qa-btn:hover{background:var(--bg-hover);border-color:var(--border-strong)}.qa-icon{border-radius:7px;flex-shrink:0;place-items:center;width:28px;height:28px;font-size:14px;display:grid}.user-row>div:last-child{min-width:0}.pp-context-lg,.user-role{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.pp-context-lg{color:var(--text-secondary);margin-top:2px;font-size:11px;font-weight:600}.profile-popup,.topbar-profile-popup{width:min(280px,100vw - 24px)}.profile-popup{right:auto}.content>.stats-row .stat-card{flex-direction:row;align-items:center;gap:14px;padding:18px 20px}.content>.stats-row .stat-card .sc-icon{margin-bottom:0}.content>.stats-row .stat-card .sc-right{text-align:left;align-items:flex-start}.two-col>div:first-child>.panel:first-child{margin-bottom:20px}.panel .course-card{gap:14px;padding:14px 0}.panel .course-card .cc-meta span+span:before{content:"•";color:var(--text-muted);margin-right:8px}.filter-tabs{border-bottom:1px solid var(--border-subtle);gap:4px}.filter-tabs .f-tab{border-bottom:2px solid #0000;border-radius:9px 9px 0 0}.filter-tabs .f-tab.active{border-bottom-color:var(--brand-600)}.action-menu-dropdown,.actions-dropdown,[data-radix-popper-content-wrapper]{z-index:200!important}.l1-backdrop{z-index:300}.l1-panel{z-index:301}.l2-backdrop{z-index:400}.l3-backdrop,.modal-overlay{z-index:500!important}.l3-modal{z-index:501}.panel-hdr{flex-shrink:0;justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.panel-title{font-family:var(--font-display);color:var(--text-primary);font-size:14px;font-weight:700}@keyframes rowIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.row-in{animation:rowIn .25s ease-out both}.row-in:first-child{animation-delay:40ms}.row-in:nth-child(2){animation-delay:80ms}.row-in:nth-child(3){animation-delay:.12s}.row-in:nth-child(4){animation-delay:.16s}.row-in:nth-child(5){animation-delay:.2s}.row-in:nth-child(6){animation-delay:.24s}.page-hdr{flex-wrap:wrap!important;justify-content:space-between!important;align-items:flex-start!important;gap:12px!important;margin-bottom:24px!important;display:flex!important}.page-hdr:not(:has(>button,>a[class],>[class*=btn])){flex-direction:column;align-items:flex-start}.page-hdr>.page-desc,.page-hdr>.page-sub,.page-hdr>.page-title{flex-shrink:0;max-width:100%}.page-hdr-row{justify-content:space-between!important;align-items:flex-start!important;gap:12px!important;width:100%!important;display:flex!important}.page-hdr-row>:first-child{flex:1;min-width:0}.page-hdr-row>:last-child{flex-shrink:0}.path-grid .path-card,.path-grid-6 .path-card{opacity:1!important;animation:none!important}.path-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))!important;gap:16px!important;display:grid!important}.path-grid-6{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.path-card .progress-fill{width:var(--fill-w,0)!important;animation:none!important}.paths-grid .path-card{opacity:1!important;animation:none!important}.path-card .progress-bar-bg .progress-fill,.paths-grid .path-card .progress-fill{background:var(--brand-600);width:var(--fill-w,0)!important;animation:none!important}.path-card .progress-bar-bg .progress-fill,.path-grid .path-card .progress-fill,.paths-grid .path-card .progress-fill{animation:none!important}.rb-crit{background:var(--risk-crit-bg);color:var(--risk-crit-text);border:1px solid var(--risk-crit-border)}.step.done .step-circle,.step.done .step-num{background:var(--brand-600)!important;color:#fff!important;border-color:var(--brand-600)!important}.step.active .step-circle,.step.active .step-num{box-shadow:0 0 0 4px var(--brand-100)!important}.step-connector.completed,.step-line.completed{background:var(--brand-600)!important}.step-label{color:var(--text-muted);margin-top:4px;font-size:10px;font-weight:600}.step.active .step-label{color:var(--brand-600)}.step.done .step-label{color:var(--text-secondary)}.form-input:focus,.form-input:focus-visible{border-color:var(--brand-400)!important;box-shadow:0 0 0 3px var(--brand-100)!important;outline:none!important}.form-label{letter-spacing:.02em;color:var(--text-secondary)!important;font-size:12px!important}.page-btn:hover:not(:disabled):not(.active),.pg-btn:hover:not(:disabled):not(.active){background:var(--brand-100)!important;border-color:var(--brand-300)!important;color:var(--brand-700)!important}.page-btn.active,.pg-btn.active{font-weight:700!important}.page-sub{color:var(--text-muted);font-size:14px;line-height:1.5}.sk,.skeleton{background-size:200% 100%!important;animation-duration:1.5s!important}.radio-card{border:1.5px solid var(--border-subtle);cursor:pointer;background:var(--bg-surface);border-radius:10px;align-items:flex-start;gap:10px;padding:12px 14px;transition:border-color .15s,background .15s;display:flex}.radio-card:hover{border-color:var(--brand-300);background:var(--brand-50)}.radio-card.selected{border-color:var(--brand-600);background:var(--brand-50);box-shadow:0 0 0 3px var(--brand-100)}.radio-card.disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.radio-indicator{border:2px solid var(--border-strong);border-radius:50%;flex-shrink:0;place-items:center;width:16px;height:16px;margin-top:2px;display:grid}.radio-card.selected .radio-indicator{border-color:var(--brand-600);background:var(--brand-600)}.radio-card.selected .radio-indicator:after{content:"";background:#fff;border-radius:50%;width:6px;height:6px}.np-icon{border-radius:50%!important}.np-icon-crit{background:var(--risk-crit-bg)!important;color:var(--risk-crit-text)!important}@keyframes ctaPulse{0%,to{box-shadow:0 0 oklch(59.8% .188 215/.6)}50%{box-shadow:0 0 0 8px #0000}}.btn-hero-primary{animation:ctaPulse 2.5s ease-in-out infinite}.feat-card-hover{transition:transform .18s,box-shadow .18s}.feat-card-hover:hover{box-shadow:var(--shadow-panel);transform:translateY(-5px)}[data-reveal]{opacity:0;transition:opacity .5s,transform .5s;transform:translateY(20px)}[data-reveal].revealed{opacity:1;transform:translateY(0)}@media (max-width:768px){.auth-layout,.split-panel,[class*=auth-]>.split-panel{flex-direction:column!important;height:auto!important;min-height:100dvh!important}.auth-left,.split-left{flex-direction:row!important;align-items:center!important;gap:16px!important;min-height:180px!important;padding:24px!important}.auth-props,.auth-trust,.left-sub{display:none!important}.auth-right,.split-right{flex:1!important;padding:24px 20px 32px!important;overflow-y:auto!important}.field-row,.form-row-2,.role-cards{grid-template-columns:1fr!important}}@media (max-width:640px){.onboarding-dots{display:none!important}.step-card,.step-container{border-radius:14px!important;margin:12px!important;padding:20px 16px!important}.step-hero{min-height:auto!important;padding:32px 20px 24px!important}.hero-kpis,.topic-grid{grid-template-columns:repeat(2,1fr)!important}.course-cards,.plan-cards,.type-cards{grid-template-columns:1fr!important}.oh-row{flex-wrap:wrap!important;gap:6px!important}}@media (max-width:768px){.features-grid,.team-grid,.values-grid{grid-template-columns:1fr!important}.hiw-connector{display:none!important}.contact-grid,.plans-grid{grid-template-columns:1fr!important}.split-panel{flex-direction:column!important;height:auto!important;min-height:100dvh!important;overflow-y:auto!important}.auth-left,.split-left{flex-direction:row!important;flex-shrink:0!important;align-items:center!important;gap:14px!important;min-height:160px!important;max-height:220px!important;padding:20px 24px!important}.auth-props,.auth-trust,.left-props,.left-sub,.left-trust{display:none!important}.left-tagline{font-size:20px!important;line-height:1.3!important}.auth-right,.split-right{flex:1!important;width:100%!important;max-width:100%!important;padding:28px 20px 40px!important;overflow-y:auto!important}.field-row,.form-row-2,.role-cards{grid-template-columns:1fr!important}.role-cards{gap:10px!important}}@media (max-width:640px){.step-card,.step-container{border-radius:14px!important;width:calc(100% - 20px)!important;margin:10px!important;padding:20px 16px!important}.step-hero{min-height:auto!important;padding:28px 16px 20px!important}.hero-kpis{gap:10px!important}.hero-kpis,.topic-grid{grid-template-columns:repeat(2,1fr)!important}.topic-grid{gap:8px!important}.course-cards,.plan-cards,.type-cards{grid-template-columns:1fr!important}}@media (max-width:768px){.features-grid,.team-grid,.values-grid{grid-template-columns:1fr!important;gap:12px!important}.plans-grid{gap:16px!important}.contact-grid,.plans-grid{grid-template-columns:1fr!important}.hiw-connector{display:none!important}.hero-h1{font-size:clamp(28px,7vw,48px)!important}.stats-row-grid{grid-template-columns:repeat(2,1fr)!important}.comparison-table{display:none!important}.comparison-mobile-note{display:block!important}}@media (max-width:480px){.hero-kpis{grid-template-columns:1fr 1fr!important}.plans-grid{gap:12px!important}}.slideover-panel{top:calc(var(--topnav-h,52px) + 16px)!important}@keyframes spinnerRotate{to{transform:rotate(1turn)}}@keyframes spinnerRotateCCW{to{transform:rotate(-1turn)}}.spinner-orbit-inner,.spinner-orbit-outer{border-style:solid;border-color:#0000;border-radius:50%;animation:spinnerRotate 1.2s linear infinite;position:absolute}.spinner-orbit-outer{border-top-color:var(--brand-600);border-width:3px;inset:0}.spinner-orbit-inner{border-top-color:var(--brand-300);border-width:2px;animation-duration:.8s;animation-direction:reverse;inset:6px}.spinner-arc{border-style:solid;border-color:var(--border-subtle);border-top-color:var(--brand-600);border-radius:50%;animation:spinnerRotate .75s linear infinite;display:inline-block}.spinner-dots span{background:var(--brand-600);border-radius:50%;width:7px;height:7px;animation:dotPulse 1.2s ease-in-out infinite}.spinner-dots span:nth-child(2){animation-delay:.2s}.spinner-dots span:nth-child(3){animation-delay:.4s}.spinner-dual:before{border-top-color:var(--brand-600);animation:spinnerRotate .8s linear infinite}.spinner-dual:after{border-bottom-color:var(--brand-400);animation:spinnerRotateCCW 1.1s linear infinite}.l1-panel.l2-receded,.slideover-panel.l2-receded{opacity:.28!important;filter:blur(.5px)!important;pointer-events:none!important;transition:opacity .25s,transform .25s,filter .25s!important;transform:scale(.84)translate(36px)translateY(-8px)!important}.l2-panel{right:16px;top:calc(var(--topnav-h,52px) + 16px);width:480px;max-width:calc(100vw - 32px);box-shadow:var(--shadow-float,0 20px 56px #00000047);background:var(--bg-surface);z-index:401;opacity:0;pointer-events:none;border-radius:16px;flex-direction:column;transition:opacity .22s,transform .22s;display:flex;position:fixed;bottom:16px;overflow:hidden;transform:scale(.96)translate(24px)}.l2-panel.open{opacity:1;pointer-events:auto;transform:scale(1)translate(0)}.btn-primary{padding:9px 20px!important;font-size:13px!important}.page-title{font-size:20px!important}.notif-popup,.np-popup{width:360px!important}.btn-outline,.btn-secondary{position:relative;overflow:hidden}@keyframes popIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@keyframes checkDraw{0%{stroke-dashoffset:40px}to{stroke-dashoffset:0}}@keyframes featuredGlow{0%,to{box-shadow:0 0 0 0 var(--brand-200),var(--shadow-panel)}50%{box-shadow:0 0 0 6px oklch(87% .08 215/.4),var(--shadow-panel)}}@keyframes ssoProgress{0%{width:0}to{width:85%}}.path-card .progress-bar-bg .progress-fill,.path-card .progress-fill,.path-grid .path-card .progress-fill,.paths-grid .path-card .progress-fill{width:unset;background:var(--brand-600);border-radius:9999px;height:100%;min-height:4px}.path-card .progress-bar-bg{background:var(--border-subtle);border-radius:9999px;width:100%;height:5px;overflow:hidden}.path-card .progress-bar-bg .progress-fill,.path-card .progress-fill,.path-grid .path-card .progress-fill,.paths-grid .path-card .progress-fill{min-width:0;width:var(--pct,var(--fill-w,0))!important;background:var(--brand-600)!important;border-radius:9999px!important;height:100%!important;animation:none!important}.path-card .progress-bar-bg{background:var(--border-subtle)!important;border-radius:9999px!important;height:5px!important;overflow:hidden!important}.card .card-title{font-family:var(--font-display);color:var(--text-primary);align-items:center;gap:6px;margin-bottom:12px;line-height:1.3;display:flex;letter-spacing:normal!important;font-size:14px!important;font-weight:700!important}.path-grid .path-card,.paths-grid .path-card{padding:0!important;overflow:hidden!important}.path-grid .path-card .path-body,.paths-grid .path-card .path-body{padding:14px 16px}.path-grid .path-card .path-footer,.paths-grid .path-card .path-footer{padding:10px 16px}.overview-grid .card .card-title,.tab-panel .card .card-title,div.card>div.card-title{letter-spacing:0!important;margin-bottom:12px!important;font-size:13px!important;font-weight:700!important}.page-hdr-row,.page-hdr.page-hdr-row{flex-flow:wrap!important;justify-content:space-between!important;align-items:flex-start!important;gap:12px!important;display:flex!important}.content>.page-hdr-row,.content>.page-hdr.page-hdr-row,div.page-hdr.page-hdr-row{flex-flow:wrap!important;justify-content:space-between!important;align-items:flex-start!important;gap:16px!important}.openmaic-review-grid{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:20px;display:grid}.openmaic-review-main{padding:22px}.openmaic-score-card{border:1px solid var(--border-subtle);background:var(--bg-app);border-radius:14px;padding:16px}.openmaic-score-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.openmaic-diagnostic-card,.openmaic-score-metric{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:10px;padding:12px}.openmaic-diagnostic-grid{grid-template-columns:1fr 1fr;gap:10px;margin-top:14px;display:grid}.openmaic-preview-frame{border:1px solid var(--border-subtle);background:var(--bg-app);border-radius:14px;padding:8px;overflow:hidden}.openmaic-preview-frame iframe{background:#fff;border:0;border-radius:10px;width:100%;height:320px;display:block}@media (max-width:1100px){.openmaic-review-grid{grid-template-columns:1fr}.openmaic-review-side{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.openmaic-review-side .panel{margin-bottom:0}}@media (max-width:760px){.openmaic-review-side,.openmaic-score-metrics{grid-template-columns:1fr}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(1turn)}}@keyframes pulse{50%{opacity:.5}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}@keyframes accordion-down{0%{height:0}to{height:var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto)))))}}@keyframes accordion-up{0%{height:var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto)))))}to{height:0}}
/*# sourceMappingURL=77ed80e1daf34c4e.css.map*/