/*! 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-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-border-style:solid;--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-duration:initial;--tw-ease:initial;--tw-content:"";--tw-space-x-reverse:0}}}@layer theme{:host,:root{--font-sans:-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-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-black:#000;--spacing:.25rem;--container-xs:20rem;--container-sm:24rem;--container-5xl:64rem;--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);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-brand-blue:var(--color-brand-blue);--color-brand-turquoise:var(--color-brand-turquoise);--color-success:var(--color-success);--color-warning:var(--color-warning);--color-danger:var(--color-danger);--color-info:var(--color-info);--color-rarity-common:var(--color-rarity-common);--color-rarity-rare:var(--color-rarity-rare);--color-rarity-epic:var(--color-rarity-epic);--color-rarity-legendary:var(--color-rarity-legendary)}}@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}}@layer components;@layer utilities{.\@container{container-type: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-0{top:0}.top-1\.5{top:calc(var(--spacing) * 1.5)}.top-3\.5{top:calc(var(--spacing) * 3.5)}.top-4{top:calc(var(--spacing) * 4)}.right-0{right:0}.right-1{right:var(--spacing)}.right-3{right:calc(var(--spacing) * 3)}.right-4{right:calc(var(--spacing) * 4)}.bottom-0{bottom:0}.left-0{left:0}.z-10{z-index:10}.z-20{z-index:20}.z-50,.z-\[50\]{z-index:50}.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-1{margin:var(--spacing)}.m-2{margin:calc(var(--spacing) * 2)}.mx-2{margin-inline:calc(var(--spacing) * 2)}.mx-3\.5{margin-inline:calc(var(--spacing) * 3.5)}.mx-auto{margin-inline:auto}.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);margin-top:1.2em;margin-bottom:1.2em;font-size:1.25em;line-height:1.6}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);font-weight:500;text-decoration:underline}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:decimal}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:disc}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-counters);font-weight:400}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.25em;font-weight:600}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"“""”""‘""’";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em;font-style:italic;font-weight:500}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:0;margin-bottom:.888889em;font-size:2.25em;font-weight:800;line-height:1.11111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:900}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:2em;margin-bottom:1em;font-size:1.5em;font-weight:700;line-height:1.33333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:800}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.6em;margin-bottom:.6em;font-size:1.25em;font-weight:600;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.5em;margin-bottom:.5em;font-weight:600;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em;display:block}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-kbd);box-shadow:0 0 0 1px var(--tw-prose-kbd-shadows),0 3px 0 var(--tw-prose-kbd-shadows);padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;border-radius:.3125rem;padding-inline-start:.375em;font-family:inherit;font-size:.875em;font-weight:500}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-size:.875em;font-weight:600}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after,.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);padding-top:.857143em;padding-inline-end:1.14286em;padding-bottom:.857143em;border-radius:.375rem;margin-top:1.71429em;margin-bottom:1.71429em;padding-inline-start:1.14286em;font-size:.875em;font-weight:400;line-height:1.71429;overflow-x:auto}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit;background-color:#0000;border-width:0;border-radius:0;padding:0}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after,.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){table-layout:auto;width:100%;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.71429}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);vertical-align:bottom;padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em;font-weight:600}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);margin-top:.857143em;font-size:.875em;line-height:1.42857}.prose{--tw-prose-body:oklch(37.3% .034 259.733);--tw-prose-headings:oklch(21% .034 264.665);--tw-prose-lead:oklch(44.6% .03 256.802);--tw-prose-links:oklch(21% .034 264.665);--tw-prose-bold:oklch(21% .034 264.665);--tw-prose-counters:oklch(55.1% .027 264.364);--tw-prose-bullets:oklch(87.2% .01 258.338);--tw-prose-hr:oklch(92.8% .006 264.531);--tw-prose-quotes:oklch(21% .034 264.665);--tw-prose-quote-borders:oklch(92.8% .006 264.531);--tw-prose-captions:oklch(55.1% .027 264.364);--tw-prose-kbd:oklch(21% .034 264.665);--tw-prose-kbd-shadows:oklab(21% -.00316127 -.0338527/.1);--tw-prose-code:oklch(21% .034 264.665);--tw-prose-pre-code:oklch(92.8% .006 264.531);--tw-prose-pre-bg:oklch(27.8% .033 256.848);--tw-prose-th-borders:oklch(87.2% .01 258.338);--tw-prose-td-borders:oklch(92.8% .006 264.531);--tw-prose-invert-body:oklch(87.2% .01 258.338);--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:oklch(70.7% .022 261.325);--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:oklch(70.7% .022 261.325);--tw-prose-invert-bullets:oklch(44.6% .03 256.802);--tw-prose-invert-hr:oklch(37.3% .034 259.733);--tw-prose-invert-quotes:oklch(96.7% .003 264.542);--tw-prose-invert-quote-borders:oklch(37.3% .034 259.733);--tw-prose-invert-captions:oklch(70.7% .022 261.325);--tw-prose-invert-kbd:#fff;--tw-prose-invert-kbd-shadows:#ffffff1a;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:oklch(87.2% .01 258.338);--tw-prose-invert-pre-bg:#00000080;--tw-prose-invert-th-borders:oklch(44.6% .03 256.802);--tw-prose-invert-td-borders:oklch(37.3% .034 259.733);font-size:1rem;line-height:1.75}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.571429em;padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.\!hidden{display:none!important}.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}.inline-grid{display:inline-grid}.table{display:table}.aspect-square{aspect-ratio:1}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.h-2{height:calc(var(--spacing) * 2)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.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-11{height:calc(var(--spacing) * 11)}.h-12{height:calc(var(--spacing) * 12)}.h-\[1px\]{height:1px}.h-full{height:100%}.h-svh{height:100svh}.min-h-0{min-height:0}.min-h-11{min-height:calc(var(--spacing) * 11)}.min-h-screen{min-height:100vh}.min-h-svh{min-height:100svh}.w-1{width:var(--spacing)}.w-2{width:calc(var(--spacing) * 2)}.w-3{width:calc(var(--spacing) * 3)}.w-3\/4{width:75%}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-7{width:calc(var(--spacing) * 7)}.w-10{width:calc(var(--spacing) * 10)}.w-12{width:calc(var(--spacing) * 12)}.w-24{width:calc(var(--spacing) * 24)}.w-36{width:calc(var(--spacing) * 36)}.w-48{width:calc(var(--spacing) * 48)}.w-72{width:calc(var(--spacing) * 72)}.w-\[--sidebar-width\]{width:--sidebar-width}.w-\[1px\]{width:1px}.w-auto{width:auto}.w-full{width:100%}.max-w-5xl{max-width:var(--container-5xl)}.max-w-\[--skeleton-width\]{max-width:--skeleton-width}.max-w-none{max-width:none}.max-w-sm{max-width:var(--container-sm)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:0}.min-w-5{min-width:calc(var(--spacing) * 5)}.flex-1{flex:1}.flex-shrink,.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1)}.-translate-x-1\/2,.-translate-x-px{translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-x-px{--tw-translate-x:-1px}.translate-x-px{--tw-translate-x:1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:var(--spacing)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}: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-12>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 12) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 12) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-2{column-gap:calc(var(--spacing) * 2)}.gap-x-4{column-gap:calc(var(--spacing) * 4)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-clip{overflow-x:clip}.overflow-x-scroll{overflow-x:scroll}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.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-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-\[\#303137\]{border-color:#303137}.border-input{border-color:var(--input)}.border-sidebar-border{border-color:var(--sidebar-border)}.border-transparent{border-color:#0000}.bg-\[\#121418\]{background-color:#121418}.bg-background{background-color:var(--background)}.bg-black\/80{background-color:#000c}@supports (color:color-mix(in lab,red,red)){.bg-black\/80{background-color:color-mix(in oklab,var(--color-black) 80%,transparent)}}.bg-border{background-color:var(--border)}.bg-card{background-color:var(--card)}.bg-destructive{background-color:var(--destructive)}.bg-muted{background-color:var(--muted)}.bg-primary{background-color:var(--primary)}.bg-secondary{background-color:var(--secondary)}.bg-sidebar{background-color:var(--sidebar)}.bg-sidebar-border{background-color:var(--sidebar-border)}.bg-transparent{background-color:#0000}.p-0{padding:0}.p-1{padding:var(--spacing)}.p-2{padding:calc(var(--spacing) * 2)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.p-9{padding:calc(var(--spacing) * 9)}.px-1{padding-inline:var(--spacing)}.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)}.px-8{padding-inline:calc(var(--spacing) * 8)}.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-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-10{padding-block:calc(var(--spacing) * 10)}.pt-0{padding-top:0}.pt-4{padding-top:calc(var(--spacing) * 4)}.text-center{text-align:center}.text-left{text-align:left}.font-\[family-name\:var\(--font-interface\)\]{font-family:var(--font-interface)}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--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))}.leading-none{--tw-leading:1;line-height:1}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.text-\[\#f4f2ed\]{color:#f4f2ed}.text-card-foreground{color:var(--card-foreground)}.text-destructive-foreground{color:var(--destructive-foreground)}.text-foreground{color:var(--foreground)}.text-muted-foreground{color:var(--muted-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-sidebar-foreground,.text-sidebar-foreground\/70{color:var(--sidebar-foreground)}@supports (color:color-mix(in lab,red,red)){.text-sidebar-foreground\/70{color:color-mix(in oklab,var(--sidebar-foreground) 70%,transparent)}}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.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,)}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-70{opacity:.7}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a)}.shadow,.shadow-\[0_0_0_1px_hsl\(var\(--sidebar-border\)\)\]{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_0_0_1px_hsl\(var\(--sidebar-border\)\)\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,hsl(var(--sidebar-border)))}.shadow-\[0_12px_30px_\#0006\]{--tw-shadow:0 12px 30px var(--tw-shadow-color,#0006)}.shadow-\[0_12px_30px_\#0006\],.shadow-none{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 #0000}.ring{--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)}.ring-sidebar-ring{--tw-ring-color:var(--sidebar-ring)}.ring-offset-background{--tw-ring-offset-color:var(--background)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px)}.blur,.invert{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,)}.invert{--tw-invert:invert(100%)}.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,)}.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-\[left\,right\,width\]{transition-property:left,right,width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[margin\,opacity\]{transition-property:margin,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\,height\,padding\]{transition-property:width,height,padding;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\]{transition-property:width;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-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))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.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-linear{--tw-ease:linear;transition-timing-function:linear}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.group-focus-within\/menu-item\:opacity-100:is(:where(.group\/menu-item):focus-within *){opacity:1}@media (hover:hover){.group-hover\/menu-item\:opacity-100:is(:where(.group\/menu-item):hover *){opacity:1}}.group-has-\[\[data-sidebar\=menu-action\]\]\/menu-item\:pr-8:is(:where(.group\/menu-item):has([data-sidebar=menu-action]) *){padding-right:calc(var(--spacing) * 8)}.group-data-\[collapsible\=icon\]\:-mt-8:is(:where(.group)[data-collapsible=icon] *){margin-top:calc(var(--spacing) * -8)}.group-data-\[collapsible\=icon\]\:hidden:is(:where(.group)[data-collapsible=icon] *){display:none}.group-data-\[collapsible\=icon\]\:\!size-8:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--spacing) * 8)!important;height:calc(var(--spacing) * 8)!important}.group-data-\[collapsible\=icon\]\:w-\[--sidebar-width-icon\]:is(:where(.group)[data-collapsible=icon] *){width:--sidebar-width-icon}.group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)_\+_theme\(spacing\.4\)\)\]:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--sidebar-width-icon) + 1rem)}.group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)_\+_theme\(spacing\.4\)_\+2px\)\]:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--sidebar-width-icon) + 1rem + 2px)}.group-data-\[collapsible\=icon\]\:overflow-hidden:is(:where(.group)[data-collapsible=icon] *){overflow:hidden}.group-data-\[collapsible\=icon\]\:\!p-0:is(:where(.group)[data-collapsible=icon] *){padding:0!important}.group-data-\[collapsible\=icon\]\:\!p-2:is(:where(.group)[data-collapsible=icon] *){padding:calc(var(--spacing) * 2)!important}.group-data-\[collapsible\=icon\]\:opacity-0:is(:where(.group)[data-collapsible=icon] *){opacity:0}.group-data-\[collapsible\=offcanvas\]\:right-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(:where(.group)[data-collapsible=offcanvas] *){right:calc(var(--sidebar-width) * -1)}.group-data-\[collapsible\=offcanvas\]\:left-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(:where(.group)[data-collapsible=offcanvas] *){left:calc(var(--sidebar-width) * -1)}.group-data-\[collapsible\=offcanvas\]\:w-0:is(:where(.group)[data-collapsible=offcanvas] *){width:0}.group-data-\[collapsible\=offcanvas\]\:translate-x-0:is(:where(.group)[data-collapsible=offcanvas] *){--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.group-data-\[side\=left\]\:-right-4:is(:where(.group)[data-side=left] *){right:calc(var(--spacing) * -4)}.group-data-\[side\=left\]\:border-r:is(:where(.group)[data-side=left] *){border-right-style:var(--tw-border-style);border-right-width:1px}.group-data-\[side\=right\]\:left-0:is(:where(.group)[data-side=right] *){left:0}.group-data-\[side\=right\]\:rotate-180:is(:where(.group)[data-side=right] *){rotate:180deg}.group-data-\[side\=right\]\:border-l:is(:where(.group)[data-side=right] *){border-left-style:var(--tw-border-style);border-left-width:1px}.group-data-\[variant\=floating\]\:border:is(:where(.group)[data-variant=floating] *){border-style:var(--tw-border-style);border-width:1px}.group-data-\[variant\=floating\]\:border-sidebar-border:is(:where(.group)[data-variant=floating] *){border-color:var(--sidebar-border)}.group-data-\[variant\=floating\]\:shadow:is(:where(.group)[data-variant=floating] *){--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)}@media (hover:hover){.peer-hover\/menu-button\:text-sidebar-accent-foreground:is(:where(.peer\/menu-button):hover~*){color:var(--sidebar-accent-foreground)}}.peer-data-\[active\=true\]\/menu-button\:text-sidebar-accent-foreground:is(:where(.peer\/menu-button)[data-active=true]~*){color:var(--sidebar-accent-foreground)}.peer-data-\[size\=default\]\/menu-button\:top-1\.5:is(:where(.peer\/menu-button)[data-size=default]~*){top:calc(var(--spacing) * 1.5)}.peer-data-\[size\=lg\]\/menu-button\:top-2\.5:is(:where(.peer\/menu-button)[data-size=lg]~*){top:calc(var(--spacing) * 2.5)}.peer-data-\[size\=sm\]\/menu-button\:top-1:is(:where(.peer\/menu-button)[data-size=sm]~*){top:var(--spacing)}.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(--foreground)}.placeholder\:text-muted-foreground::placeholder{color:var(--muted-foreground)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:-inset-2:after{content:var(--tw-content);inset:calc(var(--spacing) * -2)}.after\:inset-y-0:after{content:var(--tw-content);inset-block:0}.after\:left-1\/2:after{content:var(--tw-content);left:50%}.after\:w-\[2px\]:after{content:var(--tw-content);width:2px}.group-data-\[collapsible\=offcanvas\]\:after\:left-full:is(:where(.group)[data-collapsible=offcanvas] *):after{content:var(--tw-content);left:100%}@media (hover:hover){.hover\:bg-accent:hover{background-color:var(--accent)}.hover\:bg-destructive\/80:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-destructive\/80:hover{background-color:color-mix(in oklab,var(--destructive) 80%,transparent)}}.hover\:bg-destructive\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab,var(--destructive) 90%,transparent)}}.hover\:bg-primary\/80:hover{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/80:hover{background-color:color-mix(in oklab,var(--primary) 80%,transparent)}}.hover\:bg-primary\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,var(--primary) 90%,transparent)}}.hover\:bg-secondary\/80:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab,var(--secondary) 80%,transparent)}}.hover\:bg-sidebar-accent:hover{background-color:var(--sidebar-accent)}.hover\:text-accent-foreground:hover{color:var(--accent-foreground)}.hover\:text-foreground:hover{color:var(--foreground)}.hover\:text-sidebar-accent-foreground:hover{color:var(--sidebar-accent-foreground)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-\[0_0_0_1px_hsl\(var\(--sidebar-accent\)\)\]:hover{--tw-shadow:0 0 0 1px var(--tw-shadow-color,hsl(var(--sidebar-accent)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.group-data-\[collapsible\=offcanvas\]\:hover\:bg-sidebar:is(:where(.group)[data-collapsible=offcanvas] *):hover{background-color:var(--sidebar)}.hover\:after\:bg-sidebar-border:hover:after{content:var(--tw-content);background-color:var(--sidebar-border)}}.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);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-ring:focus{--tw-ring-color:var(--ring)}.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-none:focus{--tw-outline-style:none;outline-style:none}.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-ring:focus-visible{--tw-ring-color:var(--ring)}.focus-visible\:ring-sidebar-ring:focus-visible{--tw-ring-color:var(--sidebar-ring)}.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\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.active\:bg-sidebar-accent:active{background-color:var(--sidebar-accent)}.active\:text-sidebar-accent-foreground:active{color:var(--sidebar-accent-foreground)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.has-\[\[data-variant\=inset\]\]\:bg-sidebar:has([data-variant=inset]){background-color:var(--sidebar)}.aria-disabled\:pointer-events-none[aria-disabled=true]{pointer-events:none}.aria-disabled\:opacity-50[aria-disabled=true]{opacity:.5}.data-\[active\=true\]\:bg-sidebar-accent[data-active=true]{background-color:var(--sidebar-accent)}.data-\[active\=true\]\:font-medium[data-active=true]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.data-\[active\=true\]\:text-sidebar-accent-foreground[data-active=true]{color:var(--sidebar-accent-foreground)}.data-\[state\=closed\]\:duration-300[data-state=closed]{--tw-duration:.3s;transition-duration:.3s}.data-\[state\=open\]\:bg-secondary[data-state=open]{background-color:var(--secondary)}.data-\[state\=open\]\:opacity-100[data-state=open]{opacity:1}.data-\[state\=open\]\:duration-500[data-state=open]{--tw-duration:.5s;transition-duration:.5s}@media (hover:hover){.data-\[state\=open\]\:hover\:bg-sidebar-accent[data-state=open]:hover{background-color:var(--sidebar-accent)}.data-\[state\=open\]\:hover\:text-sidebar-accent-foreground[data-state=open]:hover{color:var(--sidebar-accent-foreground)}}@media (min-width:40rem){.sm\:flex{display:flex}.sm\:max-w-sm{max-width:var(--container-sm)}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}: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)))}.sm\:text-left{text-align:left}}@media (min-width:48rem){.md\:block{display:block}.md\:flex{display:flex}.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.md\:opacity-0{opacity:0}.md\:peer-data-\[variant\=inset\]\:m-2:is(:where(.peer)[data-variant=inset]~*){margin:calc(var(--spacing) * 2)}.md\:peer-data-\[variant\=inset\]\:ml-0:is(:where(.peer)[data-variant=inset]~*){margin-left:0}.md\:peer-data-\[variant\=inset\]\:shadow:is(:where(.peer)[data-variant=inset]~*){--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)}.md\:peer-data-\[state\=collapsed\]\:peer-data-\[variant\=inset\]\:ml-2:is(:where(.peer)[data-state=collapsed]~*):is(:where(.peer)[data-variant=inset]~*){margin-left:calc(var(--spacing) * 2)}}.after\:md\:hidden:after{content:var(--tw-content)}@media (min-width:48rem){.after\:md\:hidden:after{display:none}}@media (min-width:64rem){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&\>button\]\:hidden>button{display:none}.\[\&\>span\:last-child\]\:truncate>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.\[\&\>svg\]\:size-4>svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&\>svg\]\:shrink-0>svg{flex-shrink:0}.\[\&\>svg\]\:text-sidebar-accent-foreground>svg{color:var(--sidebar-accent-foreground)}[data-side=left] .\[\[data-side\=left\]_\&\]\:cursor-w-resize{cursor:w-resize}[data-side=left][data-collapsible=offcanvas] .\[\[data-side\=left\]\[data-collapsible\=offcanvas\]_\&\]\:-right-2{right:calc(var(--spacing) * -2)}[data-side=left][data-state=collapsed] .\[\[data-side\=left\]\[data-state\=collapsed\]_\&\]\:cursor-e-resize,[data-side=right] .\[\[data-side\=right\]_\&\]\:cursor-e-resize{cursor:e-resize}[data-side=right][data-collapsible=offcanvas] .\[\[data-side\=right\]\[data-collapsible\=offcanvas\]_\&\]\:-left-2{left:calc(var(--spacing) * -2)}[data-side=right][data-state=collapsed] .\[\[data-side\=right\]\[data-state\=collapsed\]_\&\]\:cursor-w-resize{cursor:w-resize}}:root{--color-copper:#ff6b2b;--color-copper-hover:#ff864f;--color-copper-ink:#923200;--color-brand-blue:var(--cosmetic-accent);--color-brand-turquoise:var(--cosmetic-accent);--color-brand-hover:var(--cosmetic-accent-hover);--color-paper:#eae7df;--color-ink:#141518;--color-interface-secondary:#c2bfb8;--color-interface-muted:#aaa79f;--color-interface-separator:#303137;--color-interface-outline:#74767d;--color-state-success:#62d4a1;--color-state-warning:#ffc36e;--color-state-danger:#ff929b;--color-bg-base:#f2f1ed;--color-bg-elevated:#faf9f6;--color-bg-overlay:#fff;--color-bg-sunken:#efece6;--color-border-subtle:#e2dfd7;--color-border-default:#d0ccc2;--color-text-primary:#141518;--color-text-secondary:#5c5952;--color-text-muted:#858178;--color-text-disabled:#b8b4aa;--color-text-faint:#9e9a90;--color-success:#10b981;--color-warning:#d97706;--color-danger:#ef4444;--color-info:#3b82f6;--color-rarity-common:#858178;--color-rarity-rare:#3b82f6;--color-rarity-epic:#a855f7;--color-rarity-legendary:#f59e0b;--color-category-cybersec:#ff6b2b;--color-category-dev:#3b82f6;--color-category-network:#10b981;--radius:0;--sidebar-width:240px;--sidebar-width-collapsed:60px;--background:var(--color-bg-base);--foreground:var(--color-text-primary);--card:var(--color-bg-elevated);--card-foreground:var(--color-text-primary);--popover:var(--color-bg-overlay);--popover-foreground:var(--color-text-primary);--primary:var(--color-brand-blue);--primary-foreground:#fff;--secondary:#e5e1d8;--secondary-foreground:var(--color-text-secondary);--muted:#dedad0;--muted-foreground:var(--color-text-muted);--accent:var(--cosmetic-accent);--accent-foreground:var(--color-bg-base);--destructive:var(--color-danger);--destructive-foreground:#fff;--border:var(--color-border-default);--input:var(--color-border-subtle);--ring:var(--color-brand-blue);--sidebar:var(--color-bg-base);--sidebar-foreground:var(--color-text-secondary);--sidebar-primary:var(--color-brand-blue);--sidebar-primary-foreground:#fff;--sidebar-accent:var(--color-brand-blue)}@supports (color:color-mix(in lab,red,red)){:root{--sidebar-accent:color-mix(in srgb,var(--color-brand-blue) 10%,transparent)}}:root{--sidebar-accent-foreground:var(--color-text-primary);--sidebar-border:var(--color-border-subtle);--sidebar-ring:var(--color-brand-blue)}.dark{--color-bg-base:#0b0c0e;--color-bg-elevated:#121418;--color-bg-overlay:#191c22;--color-bg-sunken:#0d0e12;--color-border-subtle:#303137;--color-border-default:#44454a;--color-text-primary:#f4f2ed;--color-text-secondary:#c2bfb8;--color-text-muted:#aaa79f;--color-text-disabled:#5d5b56;--color-text-faint:#9e9b93;--color-success:#34d399;--color-warning:#fbbf24;--color-danger:#f87171;--color-info:#60a5fa;--color-rarity-common:#9e9b93;--color-rarity-rare:#60a5fa;--color-rarity-epic:#c084fc;--color-rarity-legendary:#fbbf24;--color-category-cybersec:#ff6b2b;--color-category-dev:#60a5fa;--color-category-network:#34d399;--ring:var(--cosmetic-accent);--secondary:#191c22;--secondary-foreground:var(--color-text-secondary);--muted:#191c22;--muted-foreground:var(--color-text-muted);--sidebar:#0b0c0e;--sidebar-foreground:#c2bfb8;--sidebar-primary:var(--cosmetic-accent);--sidebar-primary-foreground:#0b0c0e;--sidebar-accent:var(--cosmetic-accent)}@supports (color:color-mix(in lab,red,red)){.dark{--sidebar-accent:color-mix(in srgb,var(--cosmetic-accent) 8%,transparent)}}.dark{--sidebar-accent-foreground:var(--cosmetic-accent);--sidebar-border:#303137;--sidebar-ring:var(--cosmetic-accent)}:root{--cosmetic-accent:var(--color-copper);--cosmetic-accent-hover:var(--color-copper-hover);--cosmetic-accent-ink:var(--color-copper-ink);--cosmetic-hex-fill:.16;--cosmetic-hex-stroke:2.5;--cosmetic-hex-dash:0;--cosmetic-hex-line:solid;--cosmetic-hex-glow:0;--cosmetic-frame-accent:var(--color-border-default);--cosmetic-frame-glow:0;--cosmetic-terminal-bg:var(--color-bg-elevated);--cosmetic-terminal-fg:var(--color-text-secondary)}[data-accent=accent-turquoise]{--cosmetic-accent:var(--color-copper);--cosmetic-accent-hover:var(--color-copper-hover);--cosmetic-accent-ink:var(--color-copper-ink)}[data-accent=accent-blue]{--cosmetic-accent:#4d8bff;--cosmetic-accent-hover:#74a5ff;--cosmetic-accent-ink:#1f4fbf}[data-accent=accent-amber]{--cosmetic-accent:#ffb547;--cosmetic-accent-hover:#ffc670;--cosmetic-accent-ink:#7a4a00}[data-accent=accent-magenta]{--cosmetic-accent:#ff4dd2;--cosmetic-accent-hover:#ff75dc;--cosmetic-accent-ink:#9c1279}[data-accent=accent-violet]{--cosmetic-accent:#b14dff;--cosmetic-accent-hover:#c274ff;--cosmetic-accent-ink:#6420b0}[data-accent=accent-acid]{--cosmetic-accent:#39ff14;--cosmetic-accent-hover:#6bff4f;--cosmetic-accent-ink:#1d6b00}[data-accent]{--color-brand-blue:var(--cosmetic-accent);--color-brand-turquoise:var(--cosmetic-accent);--color-brand-hover:var(--cosmetic-accent-hover);--primary:var(--cosmetic-accent);--accent:var(--cosmetic-accent);--ring:var(--cosmetic-accent);--sidebar-primary:var(--cosmetic-accent);--sidebar-accent:var(--cosmetic-accent)}@supports (color:color-mix(in lab,red,red)){[data-accent]{--sidebar-accent:color-mix(in srgb,var(--cosmetic-accent) 8%,transparent)}}[data-accent]{--sidebar-accent-foreground:var(--cosmetic-accent);--sidebar-ring:var(--cosmetic-accent)}[data-hex=hex-solid]{--cosmetic-hex-fill:.16;--cosmetic-hex-stroke:2.5;--cosmetic-hex-dash:0;--cosmetic-hex-glow:0;--cosmetic-hex-line:solid}[data-hex=hex-outline]{--cosmetic-hex-fill:0;--cosmetic-hex-stroke:2.5;--cosmetic-hex-dash:0;--cosmetic-hex-glow:0;--cosmetic-hex-line:solid}[data-hex=hex-neon]{--cosmetic-hex-fill:.08;--cosmetic-hex-stroke:3.2;--cosmetic-hex-dash:0;--cosmetic-hex-glow:.7;--cosmetic-hex-line:solid}[data-hex=hex-circuit]{--cosmetic-hex-fill:.1;--cosmetic-hex-stroke:2.4;--cosmetic-hex-dash:5 3;--cosmetic-hex-glow:.12;--cosmetic-hex-line:dashed}[data-hex=hex-glitch]{--cosmetic-hex-fill:.08;--cosmetic-hex-stroke:3;--cosmetic-hex-dash:9 2;--cosmetic-hex-glow:.5;--cosmetic-hex-line:dashed}[data-hex=hex-prisme]{--cosmetic-hex-fill:.18;--cosmetic-hex-stroke:3.4;--cosmetic-hex-dash:0;--cosmetic-hex-glow:.6;--cosmetic-hex-line:double}[data-frame=frame-standard]{--cosmetic-frame-accent:var(--color-border-default);--cosmetic-frame-glow:0}[data-frame=frame-carbon]{--cosmetic-frame-accent:#8892a0;--cosmetic-frame-glow:.15}[data-frame=frame-gilded]{--cosmetic-frame-accent:gold;--cosmetic-frame-glow:.4}[data-frame=frame-hologram]{--cosmetic-frame-accent:var(--cosmetic-accent);--cosmetic-frame-glow:.5}[data-frame=frame-elite]{--cosmetic-frame-accent:#b14dff;--cosmetic-frame-glow:.5}[data-terminal=theme-midnight-ops]{--cosmetic-terminal-bg:var(--color-bg-elevated);--cosmetic-terminal-fg:var(--color-text-secondary)}[data-terminal=theme-acid]{--cosmetic-terminal-bg:#001b00;--cosmetic-terminal-fg:#39ff14}[data-terminal=theme-amber-mono]{--cosmetic-terminal-bg:#1a1200;--cosmetic-terminal-fg:#ffb000}[data-terminal=theme-synthwave]{--cosmetic-terminal-bg:#1a0b2e;--cosmetic-terminal-fg:#ff6ad5}[data-terminal=theme-ghost]{--cosmetic-terminal-bg:#0e0e14;--cosmetic-terminal-fg:#9aa0b5}[data-terminal=theme-red-team]{--cosmetic-terminal-bg:#1a0000;--cosmetic-terminal-fg:#ff5b5b}:root{--color-division-bronze:#c77b3a;--color-division-argent:#aeb7c7;--color-division-or:#ffb547;--color-division-platine:#7fe3e0;--color-division-diamant:#0affd4;--color-promote:#34d399;--color-relegate:#ff5b6e}.lesson-card{background:var(--color-bg-elevated);border:1px solid var(--color-border-subtle);border-radius:0;transition:border-color .18s,background-color .18s,transform .18s cubic-bezier(.16,1,.3,1);box-shadow:0 1px #ffffff08}.lesson-card:hover{border-color:var(--color-border-default);background:var(--color-bg-overlay);transform:translateY(-2px)}@media (prefers-reduced-motion:reduce){.lesson-card{transition:none}.lesson-card:hover{transform:none}}:root{--page-gutter:16px;--page-space-top:24px;--page-space-bottom:80px}@media (min-width:768px){:root{--page-gutter:28px;--page-space-top:28px;--page-space-bottom:96px}}@media (min-width:1280px){:root{--page-gutter:36px;--page-space-top:32px;--page-space-bottom:110px}}.modal-shell{z-index:200;background:#000b;justify-content:center;align-items:center;padding:24px;animation:modal-shell-fade .18s;display:flex;position:fixed;inset:0}.modal-shell--bare{outline:none;padding:0}.modal-shell__frame{border:1px solid var(--color-interface-outline,#74767d);background:#121418;outline:none;flex-direction:column;width:100%;max-height:calc(100dvh - 48px);animation:modal-shell-fade .16s ease-out;display:flex;position:relative;box-shadow:0 12px 30px #0006}.modal-shell__head{border-bottom:1px solid var(--color-interface-separator,#303137);background:#191c22;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:20px 24px;display:flex}.modal-shell__eyebrow{font-family:var(--font-interface,var(--font-sans));color:var(--cosmetic-accent-hover,var(--cosmetic-accent));font-size:13px;font-weight:600}.modal-shell__eyebrow+.modal-shell__title{margin-top:6px}.modal-shell__title{font-family:var(--font-display,var(--font-sans));color:#f4f2ed;font-size:32px;font-weight:600;line-height:1.05}.modal-shell__meta{font-family:var(--font-interface,var(--font-sans));color:#aaa79f;margin-top:6px;font-size:13px;line-height:1.5}.modal-shell__close{border:1px solid var(--color-interface-outline,#74767d);color:#c2bfb8;cursor:pointer;background:0 0;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.modal-shell__close:hover{border-color:var(--cosmetic-accent-hover,var(--cosmetic-accent));color:#f4f2ed}.modal-shell__body{min-height:0;overflow-y:auto}.modal-shell__actions{border-top:1px solid var(--color-interface-separator,#303137);flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;align-items:center;gap:12px;padding:20px 24px;display:flex}@keyframes modal-shell-fade{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.modal-shell,.modal-shell__frame{animation:none}}.modal-shell.side-drawer-root{-webkit-backdrop-filter:none;background:0 0;padding:0;animation:none;display:block}.side-drawer__backdrop{background:#000b;animation:modal-shell-fade .18s;position:absolute;inset:0}.side-drawer{border-left:1px solid var(--color-interface-outline,#74767d);background:#121418;flex-direction:column;animation:modal-shell-fade .18s ease-out;display:flex;position:absolute;top:0;bottom:0;right:0;box-shadow:0 12px 30px #0006}.side-drawer--docked{z-index:39;outline:none;position:fixed}@media (prefers-reduced-motion:reduce){.side-drawer,.side-drawer__backdrop{animation:none}}.side-drawer__head{border-bottom:1px solid var(--color-interface-separator,#303137);min-height:72px;font-family:var(--font-interface,var(--font-sans));color:#f4f2ed;flex-shrink:0;align-items:center;gap:10px;padding:14px 20px;font-size:13px;display:flex}.side-drawer__dot{display:none}.side-drawer__close,.side-drawer__meta{color:#c2bfb8;margin-left:auto}.side-drawer__close{border:1px solid var(--color-interface-outline,#74767d);cursor:pointer;background:0 0;place-items:center;width:44px;height:44px;transition:color .15s,border-color .15s;display:grid}.side-drawer__meta+.side-drawer__close{margin-left:0}.side-drawer__close:hover{color:#f4f2ed;border-color:var(--cosmetic-accent-hover,var(--cosmetic-accent))}.side-drawer__body{flex-direction:column;flex:1;min-height:0;display:flex;overflow-y:auto}.side-drawer__foot{border-top:1px solid var(--color-interface-separator,#303137);font-family:var(--font-interface,var(--font-sans));color:#aaa79f;flex-shrink:0;justify-content:space-between;gap:12px;padding:12px 20px;font-size:13px;display:flex}@keyframes cl-skel-shimmer{0%{background-position:-700px 0}to{background-position:700px 0}}.cl-skel{background-color:#191c22;background-image:linear-gradient(90deg,#0000 0 30%,oklab(96.1304% .000165403 .00698197/.07) 50%,#0000 70% 100%);background-repeat:no-repeat;background-size:700px 100%;animation:cl-skel-shimmer 1.6s ease-in-out infinite}:where(span.cl-skel){max-width:100%;display:inline-block}.cl-skel-card{border:1px solid var(--color-interface-separator,#303137);background:#121418}@media (prefers-reduced-motion:reduce){.cl-skel{background-image:none;animation:none}}body{--cl-select-font:var(--font-interface),Arial,sans-serif;--cl-select-panel-bg:#121418;--cl-select-panel-border:#303137;--cl-select-border:#74767d;--cl-select-option-fg:#f4f2ed;--cl-select-option-active-bg:#191c22;--cl-select-accent:var(--cosmetic-accent-hover);--cl-select-fg-muted:#aaa79f}body *,body :after,body :before{border-radius:0!important}body :is(.modal-shell,.side-drawer,[data-sonner-toaster],[role=menu],[role=listbox]){font-family:var(--font-interface),Arial,sans-serif}body .modal-shell{-webkit-backdrop-filter:none;background:#000b}body .modal-shell__frame{box-shadow:none;background:#121418;border-color:#74767d;animation:secondary-enter .16s ease-out}body .modal-shell__head{background:#191c22;padding:20px 24px}body .modal-shell__eyebrow,body .modal-shell__meta,body .side-drawer__head{font-family:var(--font-interface),Arial,sans-serif;letter-spacing:0;text-transform:none;font-size:13px}body .modal-shell__title{font:600 36px/1.05 var(--font-display),Arial Narrow,sans-serif}body :is(.modal-shell__close,.side-drawer__close){width:44px;height:44px}body .side-drawer__close:hover{border-color:var(--cosmetic-accent-hover)}body [role=option]{min-height:44px;font-family:var(--font-interface),Arial,sans-serif!important;font-size:14px!important}body .modal-shell__actions{padding:20px 24px}body .modal-shell.side-drawer-root{background:0 0}body .side-drawer__backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;background:#000b}body .side-drawer{box-shadow:none;background:#121418;border-color:#74767d}body .side-drawer__head{color:#f4f2ed;min-height:72px;padding:14px 20px}body .side-drawer__dot{display:none}body .side-drawer__title{font:600 32px/1.1 var(--font-display),Arial Narrow,sans-serif}body .news-entry[data-latest=true] .news-entry__node{box-shadow:none}body :is(.modal-shell,.side-drawer) :is(input:not([type=hidden]):not([type=checkbox]):not([type=radio]),textarea){font-family:var(--font-interface),Arial,sans-serif;font-size:16px}body :is(.modal-shell,.side-drawer) :is(button,[role=combobox]){min-height:44px}body :is(.modal-shell,.side-drawer) .btn{letter-spacing:0;text-transform:none;font-size:14px;font-family:var(--font-interface),Arial,sans-serif!important}body :is(.modal-shell,.side-drawer) .mono-label{font-family:var(--font-interface),Arial,sans-serif;letter-spacing:0;text-transform:none}body :is(.modal-shell,.side-drawer,.cookie-notice) :is(a,button,input,textarea,[role=combobox]):focus-visible{outline:2px solid var(--cosmetic-accent-hover);outline-offset:3px}body .cookie-notice .btn{color:#141518;background:var(--cosmetic-accent);min-height:44px;font-family:var(--font-interface),Arial,sans-serif;text-transform:none;letter-spacing:0}body .cookie-notice .btn:hover{background:var(--cosmetic-accent-hover)}body .level-reached{color:#141518;background:#eae7df;padding:24px}body .level-up-recap>.level-reached{margin-bottom:24px}body .level-reached__eyebrow,body .level-reached__label{color:#55524d;font-family:var(--font-interface),Arial,sans-serif;letter-spacing:0;text-transform:none}body .level-reached__figure{font-family:var(--font-display),sans-serif;-webkit-text-fill-color:var(--cosmetic-accent-ink);color:var(--cosmetic-accent-ink);text-shadow:none;background:0 0}body .news-log{font-family:var(--font-interface),Arial,sans-serif}body [data-sonner-toaster] [data-sonner-toast][data-styled=true]{box-shadow:none;font-family:var(--font-interface),Arial,sans-serif;background:#121418;border-color:#74767d}body [data-sonner-toaster] [data-sonner-toast][data-styled=true] [data-description]{color:#c2bfb8;font:14px/1.6 var(--font-interface),Arial,sans-serif}body [data-sonner-toaster] [data-sonner-toast][data-styled=true] :is([data-button],[data-cancel]){min-height:44px;font:600 13px var(--font-interface),Arial,sans-serif;letter-spacing:0;text-transform:none}body .fp-panel{box-shadow:none;background:#121418;border:1px solid #74767d}body :is(.fp-head-label,.fp-section,.fp-meta,.fp-note){font-family:var(--font-interface),Arial,sans-serif;letter-spacing:0;text-transform:none}body .fp-head-label{font:600 28px var(--font-display),sans-serif}body .fp-note{color:#aaa79f;font-size:14px;line-height:1.7}body .fp-panel button{min-height:44px}body .news-entry__title{font:600 28px/1.15 var(--font-display),sans-serif}body :is(.news-entry__version,.news-entry__latest,.news-entry__date,.news-change__type){font-family:var(--font-interface),Arial,sans-serif;letter-spacing:0;text-transform:none}body :is(.news-entry__node,.news-chip__dot){box-shadow:none;animation:none}@keyframes secondary-enter{0%{opacity:0}to{opacity:1}}@media (max-width:600px){body .modal-shell:not(.modal-shell--bare):not(.side-drawer-root){padding:16px}body .modal-shell__frame{max-height:calc(100dvh - 32px)}body .modal-shell__title{font-size:30px}}@media (prefers-reduced-motion:reduce){body :is(.modal-shell,.modal-shell__frame,.side-drawer,.side-drawer__backdrop){transition:none!important;animation:none!important}}@media (prefers-reduced-motion:no-preference){#contenu>:first-child{animation:cl-page-in .36s cubic-bezier(.16,1,.3,1) backwards}:is(.lessons-catalogue__grid>*,.active-card,.trophy-card,.dfx-card,.trn-card,.dl-card,.tk-row,.fo-list>li,.forum-home-directory li,.badge-card,.news-entry,.cls-card,.pp-row,.notif-row,.settings-card){animation:cl-rise .42s cubic-bezier(.16,1,.3,1) .28s backwards}:is(.lessons-catalogue__grid>*,.active-card,.trophy-card,.dfx-card,.trn-card,.dl-card,.tk-row,.fo-list>li,.forum-home-directory li,.badge-card,.news-entry,.cls-card,.pp-row,.notif-row,.settings-card):first-child{animation-delay:0s}:is(.lessons-catalogue__grid>*,.active-card,.trophy-card,.dfx-card,.trn-card,.dl-card,.tk-row,.fo-list>li,.forum-home-directory li,.badge-card,.news-entry,.cls-card,.pp-row,.notif-row,.settings-card):nth-child(2){animation-delay:40ms}:is(.lessons-catalogue__grid>*,.active-card,.trophy-card,.dfx-card,.trn-card,.dl-card,.tk-row,.fo-list>li,.forum-home-directory li,.badge-card,.news-entry,.cls-card,.pp-row,.notif-row,.settings-card):nth-child(3){animation-delay:80ms}:is(.lessons-catalogue__grid>*,.active-card,.trophy-card,.dfx-card,.trn-card,.dl-card,.tk-row,.fo-list>li,.forum-home-directory li,.badge-card,.news-entry,.cls-card,.pp-row,.notif-row,.settings-card):nth-child(4){animation-delay:.12s}:is(.lessons-catalogue__grid>*,.active-card,.trophy-card,.dfx-card,.trn-card,.dl-card,.tk-row,.fo-list>li,.forum-home-directory li,.badge-card,.news-entry,.cls-card,.pp-row,.notif-row,.settings-card):nth-child(5){animation-delay:.16s}:is(.lessons-catalogue__grid>*,.active-card,.trophy-card,.dfx-card,.trn-card,.dl-card,.tk-row,.fo-list>li,.forum-home-directory li,.badge-card,.news-entry,.cls-card,.pp-row,.notif-row,.settings-card):nth-child(6){animation-delay:.2s}:is(.lessons-catalogue__grid>*,.active-card,.trophy-card,.dfx-card,.trn-card,.dl-card,.tk-row,.fo-list>li,.forum-home-directory li,.badge-card,.news-entry,.cls-card,.pp-row,.notif-row,.settings-card):nth-child(7){animation-delay:.24s}:is(.catalogue-lesson,.active-card,.trophy-card,.dfx-card,.trn-card,.dl-card,.fo-topic,.badge-card,.cls-card,.locker-card){transition:transform .2s cubic-bezier(.16,1,.3,1),border-color .2s,background-color .2s,box-shadow .2s}@media (hover:hover){:is(.catalogue-lesson,.active-card,.trophy-card,.dfx-card,.trn-card,.dl-card,.fo-topic,.badge-card,.cls-card,.locker-card):hover{transform:translateY(-2px)}.catalogue-artwork__brand svg{transition:transform .32s cubic-bezier(.16,1,.3,1)}:is(a,button,article):hover .catalogue-artwork__brand svg{transform:translate(4px,-4px)}}.btn{transition:background-color .16s,border-color .16s,color .16s,box-shadow .16s,transform .12s}.btn:active:not(:disabled):not([aria-disabled=true]){transform:translateY(1px)}:is(.btn,a) :is(.lucide-arrow-up-right,.lucide-arrow-right,.lucide-chevron-right){transition:transform .2s cubic-bezier(.16,1,.3,1)}@media (hover:hover){:is(.btn,a):hover .lucide-arrow-up-right{transform:translate(2px,-2px)}:is(.btn,a):hover :is(.lucide-arrow-right,.lucide-chevron-right){transform:translate(3px)}}.sidebar-nav-item{transition:background-color .18s,color .18s}.sidebar-nav-item svg{transition:transform .2s cubic-bezier(.16,1,.3,1)}@media (hover:hover){.sidebar-nav-item:hover:not([aria-current=page]) svg{transform:translate(3px)}}.tabs__tab{transition:background-color .18s,color .18s,border-color .18s}.pbar__fill{transform-origin:0;animation:cl-fill .7s cubic-bezier(.16,1,.3,1) .15s backwards}}@keyframes cl-page-in{0%{opacity:0;transform:translateY(10px)}}@keyframes cl-rise{0%{opacity:0;transform:translateY(8px)}}@keyframes cl-fill{0%{transform:scaleX(0)}}:root,[data-accent]{--brand-blue:var(--color-brand-blue);--brand-blue-hover:var(--cosmetic-accent-hover);--brand-turquoise:var(--cosmetic-accent);--brand-turquoise-hover:var(--cosmetic-accent-hover);--brand-gradient:linear-gradient(var(--cosmetic-accent),var(--cosmetic-accent));--teal:var(--cosmetic-accent);--bg-base:var(--color-bg-base);--bg-primary:var(--color-bg-base);--bg-card:var(--color-bg-elevated);--bg-card-hover:var(--color-bg-overlay);--bg-input:var(--color-bg-sunken);--border:var(--color-border-default);--border-subtle:var(--color-border-subtle);--border-strong:#383e4c;--fg-primary:var(--color-text-primary);--fg-secondary:var(--color-text-secondary);--fg-tertiary:var(--color-text-muted);--fg-disabled:var(--color-text-disabled);--fg-inverse:var(--color-bg-base);--amber:var(--color-rarity-legendary);--warning:var(--amber);--red:var(--color-danger);--danger:var(--color-danger);--dur-fast:.12s;--dur-base:.18s;--dur-slow:.28s;--ease-out:cubic-bezier(.16,1,.3,1)}:root{--font-display:var(--font-sans);--font-body:var(--font-sans)}body{--font-sans:var(--font-interface);--font-body:var(--font-interface)}*,:after,:before{box-sizing:border-box}body,html{background-color:var(--color-bg-base);color:var(--color-text-primary);font-family:var(--font-sans),system-ui,sans-serif;scroll-behavior:smooth;margin:0;scroll-padding-top:80px}::selection{background:var(--cosmetic-accent)}@supports (color:color-mix(in lab,red,red)){::selection{background:color-mix(in srgb,var(--cosmetic-accent) 26%,transparent)}}::selection{color:var(--color-text-primary)}aside[data-state=collapsed] .sidebar-group-label,aside[data-state=collapsed] .sidebar-label{display:none}aside[data-state=collapsed] .sidebar-group+.sidebar-group{border-top:1px solid var(--color-border-subtle)}aside[data-state=collapsed] .sidebar-account-row,aside[data-state=collapsed] .sidebar-logo,aside[data-state=collapsed] .sidebar-nav-item{justify-content:center;padding-left:0;padding-right:0}aside[data-state=collapsed] .sidebar-nav-item{gap:0}.sidebar-wrapper{height:100vh;transition:width ease-linear .2s,min-width ease-linear .2s;background:var(--color-bg-base);border-right:1px solid var(--color-border-subtle);flex-direction:column;flex-shrink:0;padding-bottom:12px;display:flex;position:sticky;top:0;overflow:hidden auto}@media (max-width:1023px){.sidebar-wrapper{z-index:49;background:var(--color-bg-base);border-right:1px solid var(--color-border-subtle);height:100dvh;transition:transform .2s ease-in-out;position:fixed;top:0;left:0;transform:translate(-100%);width:280px!important;min-width:280px!important}.sidebar-wrapper[data-mobile-open=true]{transform:translate(0)}.sidebar-mobile-backdrop{z-index:48;background:#000000b8;position:fixed;inset:0}}@media (prefers-reduced-motion:reduce){.sidebar-wrapper{transition:none}}.sidebar-fallback{display:none}@media (min-width:1024px){.sidebar-fallback{background:var(--color-bg-base);border-right:1px solid var(--color-border-subtle);flex-shrink:0;width:240px;display:block}}*,:after,:before{transition-property:background-color,border-color,color,fill,stroke;transition-duration:.15s;transition-timing-function:ease}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{transition-duration:0s!important;animation-duration:0s!important}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}@keyframes sidebar-pulse{0%,to{opacity:.4;transform:scale(1)}50%{opacity:.8;transform:scale(1.08)}}@keyframes xp-shimmer{0%{transform:translate(-100%)}to{transform:translate(400%)}}@keyframes fade-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes glow-border{0%,to{opacity:.6}50%{opacity:1}}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.level-reached{text-align:center}.level-reached__eyebrow{font-family:var(--font-interface),sans-serif;color:#aaa79f;margin-bottom:18px;font-size:13px;font-weight:600}.level-reached__figure{font-family:var(--font-display,sans-serif);color:var(--cosmetic-accent);margin-bottom:6px;font-size:72px;font-weight:800;line-height:1}.level-reached__label{font-family:var(--font-interface),sans-serif;color:#f4f2ed;margin-bottom:24px;font-size:14px;font-weight:600}.level-reached--sm{background:#191c22;border:1px solid #303137;margin-bottom:16px;padding:14px 16px}.level-reached--sm .level-reached__eyebrow{margin-bottom:6px}.level-reached--sm .level-reached__figure{margin-bottom:4px;font-size:40px}.level-reached--sm .level-reached__label{margin-bottom:0}.pbar{background:#303137;height:4px;position:relative;overflow:hidden}.pbar--xs{height:3px}.pbar--md{height:6px}.pbar--lg{height:8px}.pbar--xl{height:12px}.pbar--open{overflow:visible}.pbar__fill{background:var(--cosmetic-accent);position:absolute;top:0;bottom:0;left:0}.pbar--warning .pbar__fill{background:var(--color-state-warning)}.pbar--color .pbar__fill{background:var(--pbar-color)}.pbar--animated .pbar__fill{transition:width .7s ease-out}.pbar__fill--tip:after{content:"";background:#f4f2ed;width:2px;position:absolute;top:-3px;bottom:-3px;right:-1px}.pbar__mark{background:var(--color-text-secondary);width:2px;position:absolute;top:-5px;bottom:-5px}@media (prefers-reduced-motion:reduce){.pbar--animated .pbar__fill{transition:none}}.tabs{border-bottom:1px solid #303137;flex-wrap:wrap;gap:8px 2px;margin-bottom:20px;display:flex}.tabs,.tabs__tab{align-items:center}.tabs__tab{min-height:44px;font-family:var(--font-interface),sans-serif;color:#aaa79f;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;gap:8px;margin-bottom:-1px;padding:0 18px;font-size:14px;font-weight:600;transition:color .15s;display:inline-flex;position:relative}.tabs__tab:hover{color:#f4f2ed}.tabs__tab[data-active=true]{color:#f4f2ed;border-bottom-color:var(--cosmetic-accent)}.tabs__count{font-family:var(--font-mono),monospace;color:#aaa79f;border:1px solid #303137;padding:1px 6px;font-size:12px;font-weight:700}.tabs__tab[data-active=true] .tabs__count{color:var(--cosmetic-accent-hover);border-color:var(--cosmetic-accent)}@supports (color:color-mix(in lab,red,red)){.tabs__tab[data-active=true] .tabs__count{border-color:color-mix(in srgb,var(--cosmetic-accent) 55%,transparent)}}.tabs__trailing{font-family:var(--font-interface),sans-serif;color:#aaa79f;align-items:center;gap:8px;margin-left:auto;padding:0 4px;font-size:13px;display:inline-flex}.pills{flex-wrap:wrap;gap:8px;display:flex}.pill{--pill-color:var(--color-text-secondary);color:#c2bfb8;min-height:40px;font-family:var(--font-interface),sans-serif;cursor:pointer;background:0 0;border:1px solid #74767d;align-items:center;gap:8px;padding:0 16px;font-size:14px;font-weight:600;transition:color .15s,border-color .15s,background .15s;display:inline-flex}.pill:hover{color:#f4f2ed;border-color:#f4f2ed}.pill[data-active=true]{color:#f4f2ed;border-color:var(--pill-color);box-shadow:inset 0 -2px 0 var(--pill-color);background:#191c22}.pill__dot{background:var(--pill-color);width:8px;height:8px}.pill__count{font-family:var(--font-mono),monospace;color:#aaa79f;border:1px solid #303137;padding:1px 6px;font-size:12px;font-weight:700}.pill[data-active=true] .pill__count{color:var(--pill-color);border-color:var(--pill-color)}@supports (color:color-mix(in lab,red,red)){.pill[data-active=true] .pill__count{border-color:color-mix(in oklab,var(--pill-color) 38%,transparent)}}@media (prefers-reduced-motion:reduce){.pill,.tabs__tab{transition:none}}.bk{display:none}.gradient-title em{color:var(--cosmetic-accent);font-style:normal}.section-head{font:600 26px/1.1 var(--font-display),sans-serif;color:#f4f2ed;margin:0}.card{background:#121418;border:1px solid #303137}.card--sunken{background:#0d0e12;border-color:#303137}.card--ghost{box-shadow:none;background:0 0}.mono-label{font-family:var(--font-interface),sans-serif;letter-spacing:0;text-transform:none;font-size:13px;font-weight:600}.mono-label--xs{font-size:12px}.btn,.mono-label--md{font-size:14px}.btn{height:44px;font-family:var(--font-interface),sans-serif;letter-spacing:0;text-transform:none;white-space:nowrap;cursor:pointer;color:#0b0c0e;background:var(--cosmetic-accent);border:1px solid var(--cosmetic-accent);justify-content:center;justify-self:start;align-items:center;gap:10px;padding:0 22px;font-weight:700;text-decoration:none;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.btn:hover:not(:disabled):not([aria-disabled=true]){background:var(--cosmetic-accent-hover);border-color:var(--cosmetic-accent-hover)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled,.btn[aria-disabled=true]{opacity:.45;cursor:not-allowed;pointer-events:none}.btn:focus-visible{outline:2px solid var(--cosmetic-accent-hover);outline-offset:3px}.btn svg{flex-shrink:0;width:15px;height:15px}.btn--ghost{color:#f4f2ed;background:0 0;border-color:#74767d}.btn--ghost:hover:not(:disabled):not([aria-disabled=true]){color:#f4f2ed;background:#191c22;border-color:#f4f2ed}.btn--accent{color:#0b0c0e;background:var(--cosmetic-accent);border-color:var(--cosmetic-accent)}.btn--accent:hover:not(:disabled):not([aria-disabled=true]){background:var(--cosmetic-accent-hover);border-color:var(--cosmetic-accent-hover)}.btn--accent.btn--ghost{color:var(--cosmetic-accent-hover);border-color:var(--cosmetic-accent);background:0 0}.btn--accent.btn--ghost:hover:not(:disabled):not([aria-disabled=true]){color:#0b0c0e;background:var(--cosmetic-accent);border-color:var(--cosmetic-accent)}.btn--danger{color:#141518;background:var(--color-state-danger);border-color:var(--color-state-danger)}.btn--danger:hover:not(:disabled):not([aria-disabled=true]){background:#ffb3b9;border-color:#ffb3b9}.btn--danger.btn--ghost{color:var(--color-state-danger);border-color:var(--color-state-danger);background:0 0}@supports (color:color-mix(in lab,red,red)){.btn--danger.btn--ghost{border-color:color-mix(in srgb,var(--color-state-danger) 55%,transparent)}}.btn--danger.btn--ghost:hover:not(:disabled):not([aria-disabled=true]){color:var(--color-state-danger);border-color:var(--color-state-danger);background:#191c22}.btn--warning{color:#141518;background:var(--color-state-warning);border-color:var(--color-state-warning)}.btn--warning:hover:not(:disabled):not([aria-disabled=true]){background:#ffd699;border-color:#ffd699}.btn--gold.btn--ghost{color:var(--color-state-success);border-color:var(--color-state-success);background:0 0}@supports (color:color-mix(in lab,red,red)){.btn--gold.btn--ghost{border-color:color-mix(in srgb,var(--color-state-success) 55%,transparent)}}.btn--gold.btn--ghost:hover:not(:disabled):not([aria-disabled=true]){color:var(--color-state-success);border-color:var(--color-state-success);background:#191c22}.btn--sm{gap:8px;height:36px;padding:0 14px;font-size:13px}.btn--lg{height:48px;padding:0 26px;font-size:15px}.btn--block{justify-self:stretch;width:100%;display:flex}.confirm-step{flex-wrap:wrap;align-items:center;gap:6px 8px;display:inline-flex}.confirm-step__question{font:600 13px var(--font-interface),sans-serif;color:var(--color-state-danger)}.confirm-step__detail{font:13px/1.5 var(--font-interface),sans-serif;color:#aaa79f;flex-basis:100%}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.hljs{color:var(--color-text-secondary);background:0 0}.hljs-keyword,.hljs-name,.hljs-selector-tag,.hljs-tag,.hljs-type{color:var(--color-info)}.hljs-selector-attr,.hljs-selector-class,.hljs-string,.hljs-template-variable,.hljs-variable{color:var(--color-brand-turquoise)}.hljs-literal,.hljs-number{color:var(--color-warning)}.hljs-comment,.hljs-quote{color:var(--color-text-muted);font-style:italic}.hljs-built_in,.hljs-class .hljs-title,.hljs-function,.hljs-title{color:#b14dff}.hljs-attr,.hljs-attribute{color:var(--color-text-secondary)}.hljs-operator,.hljs-punctuation{color:var(--color-text-muted)}.hljs-meta{color:var(--color-text-disabled)}.hljs-deletion{color:var(--color-danger)}.hljs-addition{color:var(--color-brand-turquoise)}.prose{--tw-prose-body:var(--color-text-secondary);--tw-prose-headings:var(--color-text-primary);--tw-prose-lead:var(--color-text-secondary);--tw-prose-links:var(--cosmetic-accent-hover);--tw-prose-bold:var(--color-text-primary);--tw-prose-counters:var(--color-text-muted);--tw-prose-bullets:var(--color-brand-turquoise);--tw-prose-hr:var(--color-border-subtle);--tw-prose-quotes:var(--color-text-secondary);--tw-prose-quote-borders:var(--color-brand-turquoise);--tw-prose-captions:var(--color-text-muted);--tw-prose-code:var(--color-brand-turquoise);--tw-prose-pre-code:var(--color-text-secondary);--tw-prose-pre-bg:var(--color-bg-elevated);--tw-prose-th-borders:var(--color-border-subtle);--tw-prose-td-borders:var(--color-border-subtle);--tw-prose-invert-body:var(--color-text-secondary);--tw-prose-invert-headings:var(--color-text-primary)}.prose pre{font-size:inherit;line-height:inherit;background:0 0;border-radius:0;margin:0;padding:0}.prose :not(pre)>code:after,.prose :not(pre)>code:before{content:none}article.lesson-content{counter-reset:h2-counter;isolation:isolate;width:100%;min-width:0;max-width:960px;margin-inline:auto;padding-bottom:20px}article.lesson-content>:is(p,ul,ol,h1,h2,h3,h4,h5,h6,blockquote,table,hr,dl){max-width:var(--lesson-measure);margin-inline:0}.lesson-block{min-width:0;margin-block:28px;margin-inline:0;container:lesson-block/inline-size}.lesson-block>*{margin-block:0!important}.lesson-block[data-width=prose]{max-width:var(--lesson-measure)}.lesson-block[data-width=wide]{max-width:none}.lesson-block:is([data-component=Callout],[data-component=ExternalLink]){margin-block:24px}.lesson-block[data-component=ExternalLink]:has(+.lesson-block[data-component=ExternalLink]){margin-bottom:8px}.lesson-block[data-component=ExternalLink]+.lesson-block[data-component=ExternalLink]{margin-top:8px}.lesson-block:is([data-component=Quiz],[data-component=QuizGroup]){margin-block:56px 0}.linux-terminal__screen{height:380px}.sim-terminal__screen{height:320px}.code-playground__editor{height:220px}.python-challenge__editor{height:240px}.php-lab__preview{height:220px}.lesson-block .linux-terminal__screen{height:clamp(380px,42cqi,560px)}.lesson-block .sim-terminal__screen{height:clamp(320px,36cqi,480px)}.lesson-block .code-playground__editor{height:clamp(220px,30cqi,420px)}.lesson-block .python-challenge__editor{height:clamp(240px,32cqi,440px)}.lesson-block .php-lab__preview{height:clamp(220px,32cqi,400px)}article.lesson-content>p{color:var(--color-text-secondary);margin-top:0;margin-bottom:20px;font-size:17px;line-height:1.75}article.lesson-content>:is(ul,ol,dl){font-size:17px;line-height:1.75}:is(article.lesson-content,.lesson-callout__body)>:is(p,ul,ol,blockquote,table,h1,h2,h3,h4) a{color:var(--color-text-primary);text-decoration:underline;-webkit-text-decoration-color:var(--cosmetic-accent);text-decoration-color:var(--cosmetic-accent);text-underline-offset:4px;text-decoration-thickness:1px;transition:color .15s,text-decoration-thickness .15s}:is(article.lesson-content,.lesson-callout__body)>:is(p,ul,ol,blockquote,table,h1,h2,h3,h4) a:hover{color:var(--cosmetic-accent-hover);text-decoration-thickness:2px}:is(article.lesson-content,.lesson-callout__body)>:is(p,h1,h2,h3,h4)>code,:is(article.lesson-content,.lesson-callout__body)>:is(p,ul,ol,blockquote,table,h1,h2,h3,h4) :not(pre)>code{border:1px solid var(--color-border-subtle);color:var(--cosmetic-accent-hover);font-size:.82em;font-family:var(--font-mono),"Courier New",monospace;background:#191c22;border-radius:0;padding:1px 6px}.glossary-term{-webkit-text-decoration:underline dotted var(--cosmetic-accent);text-decoration:underline dotted var(--cosmetic-accent);text-underline-offset:3px;cursor:help;position:relative}.glossary-term:focus-visible{outline:1px solid var(--cosmetic-accent,var(--color-brand-turquoise));outline-offset:2px}.glossary-tip{z-index:30;left:var(--glossary-shift,0);background:var(--color-bg-elevated);border:1px solid var(--color-border-subtle);border-left:3px solid var(--cosmetic-accent,var(--color-brand-turquoise));width:max-content;max-width:min(320px,80vw);color:var(--color-text-secondary);text-align:left;white-space:normal;padding:10px 12px;font-size:13px;font-style:normal;font-weight:400;line-height:1.5;display:none;position:absolute;top:calc(100% + 6px)}.glossary-tip strong{color:var(--color-text-primary);margin-right:4px}.glossary-term:focus-within>.glossary-tip,.glossary-term:focus>.glossary-tip,.glossary-term:hover>.glossary-tip{display:block}.find-the-flaw__line:not(:disabled):hover{color:var(--color-text-primary)!important}.find-the-flaw__line:focus-visible{outline:1px solid var(--cosmetic-accent,var(--color-brand-turquoise));outline-offset:-1px}.phishing-email__part:not(:disabled):hover{background:#ffffff0a!important}.phishing-email__part:focus-visible{outline:1px solid var(--cosmetic-accent,var(--color-brand-turquoise));outline-offset:-1px}:is(article.lesson-content,.lesson-callout__body)>:is(ul,ol,blockquote) ul,:is(article.lesson-content,.lesson-callout__body)>ul{padding-left:1.5em}:is(article.lesson-content,.lesson-callout__body)>:is(ul,ol,blockquote) li{color:var(--color-text-secondary)}:is(article.lesson-content,.lesson-callout__body)>:is(ul,ol,blockquote) ul>li,:is(article.lesson-content,.lesson-callout__body)>ul>li{padding-left:.25em}:is(article.lesson-content,.lesson-callout__body)>ul>li::marker{content:"■ ";color:var(--cosmetic-accent);font-size:.55em}:is(article.lesson-content,.lesson-callout__body)>:is(ul,ol,blockquote) ul>li::marker{content:"■ ";color:var(--cosmetic-accent);font-size:.55em}:is(article.lesson-content,.lesson-callout__body)>ol>li::marker{color:var(--cosmetic-accent-hover);font-family:var(--font-mono),monospace;font-size:.8em;font-weight:600}:is(article.lesson-content,.lesson-callout__body)>:is(ul,ol,blockquote) ol>li::marker{color:var(--cosmetic-accent-hover);font-family:var(--font-mono),monospace;font-size:.8em;font-weight:600}:is(article.lesson-content,.lesson-callout__body)>:is(p,ul,ol,blockquote,table,h1,h2,h3,h4) strong{color:var(--color-text-primary);font-weight:600}:is(article.lesson-content,.lesson-callout__body)>:is(p,ul,ol,blockquote,table,h1,h2,h3,h4) em{color:var(--color-text-secondary);font-style:italic}.lesson-callout__body>:is(p,ul,ol){margin:0}.lesson-callout__body>*+:is(p,ul,ol){margin-top:8px}article.lesson-content>h1{color:var(--color-text-primary);letter-spacing:-.02em;margin-top:0;margin-bottom:1.5rem;font-size:26px;font-weight:700;line-height:1.2}article.lesson-content>h2{counter-increment:h2-counter;letter-spacing:-.025em;color:var(--color-text-primary);grid-template-columns:auto 1fr;align-items:baseline;column-gap:12px;margin-top:3.5rem;margin-bottom:1.25rem;padding-left:24px;font-size:clamp(30px,3vw,40px);font-weight:700;line-height:1.05;display:grid;position:relative}article.lesson-content>h2:first-child{margin-top:0}article.lesson-content>h2:before{content:counter(h2-counter,decimal-leading-zero);font-family:var(--font-mono),"Courier New",monospace;color:var(--color-text-disabled);letter-spacing:.04em;font-size:14px;font-weight:500}article.lesson-content>h2:after{content:"";background:var(--cosmetic-accent);width:3px;position:absolute;top:.3em;bottom:.25em;left:0}article.lesson-content>h3{color:var(--color-text-secondary);letter-spacing:.01em;margin-top:1.75rem;margin-bottom:.6rem;font-size:16px;font-weight:600}article.lesson-content>h4{color:var(--color-text-muted);letter-spacing:.08em;text-transform:uppercase;margin-top:1.5rem;margin-bottom:.5rem;font-size:14px;font-weight:600}article.lesson-content>blockquote{border:1px solid #303137;border-left:3px solid var(--cosmetic-accent);background:#191c22;margin-block:1.75rem;padding:20px 24px;position:relative}article.lesson-content>blockquote:before{content:"Retenir";font-family:var(--font-display),sans-serif;text-transform:uppercase;letter-spacing:.02em;color:var(--cosmetic-accent-hover);margin-bottom:10px;font-size:18px;font-weight:700;line-height:1;display:block}article.lesson-content>blockquote p{color:var(--color-text-primary);margin:0;font-size:16px;line-height:1.65}article.lesson-content>blockquote p+p{margin-top:8px}article.lesson-content>blockquote p strong{color:var(--cosmetic-accent-hover);font-weight:600}article.lesson-content>blockquote p code{border:1px solid var(--color-border-subtle);color:var(--cosmetic-accent-hover);background:#0b0c0e}.lesson-callout{color:var(--color-text-secondary);background:#121418;gap:14px;padding:16px 20px;font-size:15px;line-height:1.65;display:flex}.lesson-callout__icon{width:28px;height:28px;font:700 16px/1 var(--font-display),sans-serif;border:1px solid;flex-shrink:0;place-items:center;margin-top:1px;display:grid}.lesson-callout__title{font:700 22px/1.15 var(--font-display),sans-serif;margin-bottom:6px}.lesson-code{margin:1.5rem 0}.lesson-code__head{border:1px solid #303137;border-left:3px solid var(--cosmetic-accent);background:#191c22;border-bottom:0;justify-content:space-between;align-items:center;gap:12px;min-height:44px;padding-left:16px;display:flex}.lesson-code__name{align-items:center;gap:10px;min-width:0;display:flex}.lesson-code__file{text-overflow:ellipsis;white-space:nowrap;font:12px/1.4 var(--font-mono),monospace;color:#c2bfb8;overflow:hidden}.lesson-code__lang{font:11px/1 var(--font-mono),monospace;color:#aaa79f;flex-shrink:0}.lesson-code__danger{border:1px solid var(--color-category-cybersec);color:var(--color-category-cybersec);font:600 11px/1 var(--font-interface),sans-serif;flex-shrink:0;padding:3px 7px}.lesson-code-copy{color:#aaa79f;min-width:44px;min-height:44px;font:500 12px/1 var(--font-interface),sans-serif;cursor:pointer;background:0 0;border:0;flex-shrink:0;justify-content:center;align-items:center;gap:6px;padding:0 14px;transition:color .15s,background .15s;display:inline-flex}.lesson-code-copy:hover{color:#f4f2ed;background:#121418}.lesson-code-copy[data-copied=true]{color:var(--cosmetic-accent-hover)}.lesson-code-copy:focus-visible{outline:2px solid var(--cosmetic-accent-hover);outline-offset:-2px}.lesson-link{color:#f4f2ed;background:#121418;border:1px solid #303137;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;padding:16px 20px;text-decoration:none;transition:background .15s,border-color .15s;display:grid}.lesson-link:hover{border-color:var(--cosmetic-accent);background:#191c22}.lesson-link:focus-visible{outline:2px solid var(--cosmetic-accent-hover);outline-offset:2px;border-color:var(--cosmetic-accent)}.lesson-link__body{gap:4px;min-width:0;display:grid}.lesson-link__source{font:12px/1.4 var(--font-mono),monospace;color:#aaa79f;overflow-wrap:anywhere}.lesson-link__title{font:600 16px/1.35 var(--font-interface),sans-serif;color:#f4f2ed;overflow-wrap:anywhere}.lesson-link__description{color:#c2bfb8;font-size:14px;line-height:1.55}.lesson-link__arrow{color:#aaa79f;width:20px;height:20px;transition:transform .2s,color .15s}.lesson-link:is(:hover,:focus-visible) .lesson-link__arrow{color:var(--cosmetic-accent-hover);transform:translate(3px,-3px)}.lesson-link-inline{color:var(--color-text-primary);text-decoration:underline;-webkit-text-decoration-color:var(--cosmetic-accent);text-decoration-color:var(--cosmetic-accent);text-underline-offset:4px;text-decoration-thickness:1px;transition:color .15s}.lesson-link-inline:hover{color:var(--cosmetic-accent-hover)}.lesson-link-inline__arrow{vertical-align:-.02em;width:.75em;height:.75em;margin-left:3px;transition:transform .2s;display:inline-block}.lesson-link-inline:is(:hover,:focus-visible) .lesson-link-inline__arrow{transform:translate(2px,-2px)}.lesson-link-invalid{font:12px/1.5 var(--font-mono),monospace;color:var(--color-category-cybersec)}@media (prefers-reduced-motion:reduce){.lesson-code-copy,.lesson-link,.lesson-link-inline,.lesson-link-inline__arrow,.lesson-link__arrow{transition:none}}.link-cta{transition:color .18s,border-color .18s}.link-cta:hover{color:var(--color-text-primary)!important;border-bottom-color:var(--color-text-muted)!important}.link-action{transition:color .18s,gap .18s}.link-action:hover{color:var(--color-brand-turquoise)!important}.review-row{transition:background .15s}.review-row:hover{background:var(--color-bg-overlay)!important}@media (prefers-reduced-motion:reduce){.link-action,.link-cta,.review-row{transition:none}}.sidebar-logo{height:56px;color:var(--color-text-primary);border-bottom:1px solid var(--color-border-subtle);flex-shrink:0;align-items:center;gap:11px;padding:0 20px;text-decoration:none;transition:opacity .15s;display:flex}.sidebar-logo:hover{opacity:.9}.sidebar-wordmark{font-family:var(--font-sans);letter-spacing:.08em;color:var(--color-text-primary);white-space:nowrap;font-size:14px;font-weight:800}.sidebar-wordmark em{color:var(--cosmetic-accent);font-style:normal}.sidebar-scroll{flex:1;padding:12px 12px 10px;overflow:hidden auto}.sidebar-group{flex-direction:column;gap:2px;padding:8px 0;display:flex}.sidebar-group+.sidebar-group{border-top:1px solid var(--color-border-subtle)}.sidebar-group-label{letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted);padding:4px 10px 8px;font-size:10px;font-weight:700;display:block}.sidebar-group-label,.sidebar-nav-item{font-family:var(--font-sans);white-space:nowrap}.sidebar-nav-item{height:38px;color:var(--color-text-secondary);border-left:3px solid #0000;align-items:center;gap:12px;padding:0 12px;font-size:13px;font-weight:500;text-decoration:none;transition:color .15s,background-color .15s,border-color .15s;display:flex}.sidebar-nav-item:hover,.sidebar-nav-item[aria-current=page]{color:var(--color-text-primary);background-color:var(--color-bg-elevated)}.sidebar-nav-item[aria-current=page]{border-left-color:var(--cosmetic-accent);font-weight:700}.sidebar-nav-icon{color:var(--color-text-secondary);flex-shrink:0;transition:color .15s;display:inline-flex}.sidebar-nav-item:hover .sidebar-nav-icon{color:var(--color-text-primary)}.sidebar-nav-item[aria-current=page] .sidebar-nav-icon{color:var(--cosmetic-accent)}.sidebar-nav-text{text-overflow:ellipsis;flex:1;overflow:hidden}.sidebar-nav-count{font-family:var(--font-mono);background:var(--cosmetic-accent);padding:2px 6px;font-size:10px;font-weight:700}@supports (color:color-mix(in lab,red,red)){.sidebar-nav-count{background:color-mix(in srgb,var(--cosmetic-accent) 14%,transparent)}}.sidebar-nav-count{color:var(--cosmetic-accent)}.sidebar-account{border-top:1px solid var(--color-border-subtle);flex-shrink:0;padding:12px}.sidebar-account-tray{background:var(--color-bg-overlay);border:1px solid var(--color-border-default);grid-template-columns:1fr 1fr;gap:6px;margin-bottom:8px;padding:6px;display:grid}.sidebar-account-tray-btn{background:var(--color-bg-sunken);height:28px;color:var(--color-text-secondary);font-family:var(--font-sans);justify-content:center;align-items:center;padding:0 8px;font-size:11px;font-weight:600;text-decoration:none;transition:color .15s,background-color .15s;display:inline-flex}.sidebar-account-tray-btn:hover{color:var(--color-text-primary);background:var(--color-bg-elevated)}.sidebar-account-row{background:var(--color-bg-elevated);border:1px solid var(--color-border-subtle);align-items:center;gap:10px;padding:8px 10px;display:flex}.sidebar-account-user{min-width:0;color:inherit;flex:1;align-items:center;gap:10px;text-decoration:none;display:flex}.sidebar-account-user:hover b{color:var(--cosmetic-accent)}:is(.sidebar-avatar-frame,.navbar-avatar-frame,.profile-avatar-frame,.pp-avatar,.cl-avatar-frame){--avatar-ring:var(--cosmetic-hex-accent,var(--cosmetic-accent));--avatar-scale:.6;padding:calc(3px * var(--avatar-scale));border:calc(var(--cosmetic-hex-stroke) * var(--avatar-scale) * 1px) var(--cosmetic-hex-line) var(--avatar-ring);background:var(--avatar-ring);flex-shrink:0;place-items:center;display:inline-grid}@supports (color:color-mix(in lab,red,red)){:is(.sidebar-avatar-frame,.navbar-avatar-frame,.profile-avatar-frame,.pp-avatar,.cl-avatar-frame){background:color-mix(in srgb,var(--avatar-ring) calc(var(--cosmetic-hex-fill) * 100%),#121418)}}:is(.sidebar-avatar-frame,.navbar-avatar-frame,.profile-avatar-frame,.pp-avatar,.cl-avatar-frame){outline:calc(2px * var(--avatar-scale) + .5px) solid var(--cosmetic-frame-accent);outline-offset:calc(3px * var(--avatar-scale));transition:border-color var(--dur-base) var(--ease-out),outline-color var(--dur-base) var(--ease-out)}:is(.sidebar-avatar-frame,.navbar-avatar-frame,.profile-avatar-frame,.pp-avatar,.cl-avatar-frame)>:is(img,span){object-fit:cover;color:#f4f2ed;background:#191c22;place-items:center;width:100%;height:100%;display:grid;overflow:hidden}.sidebar-avatar-frame{flex-shrink:0;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);width:38px;height:38px}.sidebar-avatar{object-fit:cover;width:32px;height:32px;font-family:var(--font-display);letter-spacing:.02em;place-items:center;font-size:14px;font-weight:700;display:grid;overflow:hidden}.sidebar-account-text{flex-direction:column;gap:2px;min-width:0;display:flex}.sidebar-account-text b{color:var(--color-text-primary);font-size:13px;font-weight:700;transition:color .15s}.sidebar-account-text b,.sidebar-account-text span{font-family:var(--font-sans);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sidebar-account-text span{color:var(--color-text-muted);font-size:11px}.sidebar-icon-btn{width:30px;height:30px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;place-items:center;transition:color .15s,background-color .15s;display:grid;position:relative}.sidebar-icon-btn:hover{color:var(--color-text-primary);background-color:var(--color-bg-overlay)}.sidebar-signout:hover{color:var(--color-danger)}.sidebar-account-rail{flex-direction:column;align-items:center;gap:2px;margin-top:8px;display:flex}aside[data-state=collapsed] .sidebar-account{padding:12px 8px}[data-sidebar=trigger]{color:var(--color-text-muted);transition:color .18s}[data-sidebar=trigger]:hover{color:var(--color-text-secondary)!important}.navbar-search-input:focus{box-shadow:none;border-color:var(--cosmetic-accent)!important}.navbar-me{cursor:pointer;place-items:center;width:34px;height:34px;margin-left:4px;text-decoration:none;transition:background-color .18s;display:grid}.navbar-me:hover{background-color:var(--color-bg-elevated)}.news-chip{height:32px;font:600 13px var(--font-interface),sans-serif;letter-spacing:0;text-transform:none;color:#c2bfb8;cursor:pointer;background:0 0;border:1px solid #303137;align-items:center;gap:7px;padding:0 10px;text-decoration:none;transition:color .15s,border-color .15s,background-color .15s;display:inline-flex;position:relative}.news-chip:hover{color:#f4f2ed;background:#191c22;border-color:#74767d}.news-chip--fresh{color:#f4f2ed;border-color:var(--cosmetic-accent);background:0 0}.news-chip--fresh:hover{border-color:var(--cosmetic-accent-hover);background:#191c22}.news-chip__dot{background:var(--cosmetic-accent);width:8px;height:8px;position:absolute;top:-4px;right:-4px;box-shadow:0 0 0 2px #0b0c0e}@media (max-width:560px){.news-chip__label{display:none}}.news-log{padding:20px 24px 8px}.news-log__lede{font-family:var(--font-body);color:#aaa79f;margin:0 0 28px;font-size:14px;line-height:1.6}.news-log__list{margin:0;padding:0;list-style:none}.news-entry{padding:0 0 32px 34px;position:relative}.news-entry:before{content:"";background:#303137;width:1px;position:absolute;top:20px;bottom:0;left:11px}.news-entry__node{background:#121418;border:2px solid #74767d;width:11px;height:11px;position:absolute;top:6px;left:6px}.news-entry[data-latest=true] .news-entry__node{background:var(--cosmetic-accent);border-color:var(--cosmetic-accent)}.news-entry__head{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;display:flex}.news-entry__version{font:700 12px var(--font-mono);color:#f4f2ed;background:#0b0c0e;border:1px solid #74767d;padding:4px 10px}.news-entry[data-latest=true] .news-entry__version{border-color:var(--cosmetic-accent);background:#0b0c0e}.news-entry__latest{font:600 13px var(--font-interface),sans-serif;color:var(--cosmetic-accent-hover)}.news-entry__date{font:13px var(--font-interface),sans-serif;color:#aaa79f;margin-left:auto}.news-entry__title{font-family:var(--font-display),sans-serif;color:#f4f2ed;margin:0 0 14px;font-size:28px;font-weight:600;line-height:1.15}.news-entry__changes{gap:10px;margin:0;padding:0;list-style:none;display:grid}.news-change{align-items:flex-start;gap:12px;display:flex}.news-change__type{min-width:96px;font:600 12px var(--font-interface),sans-serif;text-align:center;border:1px solid;flex-shrink:0;margin-top:1px;padding:3px 8px}.news-change__text{min-width:0;font-family:var(--font-body);color:#c2bfb8;overflow-wrap:anywhere;font-size:14px;line-height:1.55}@media (max-width:480px){.news-log{padding:16px 16px 4px}.news-change{flex-direction:column;gap:6px}}.settings-drawer-body{flex:1;min-height:0;display:flex}.settings-drawer-nav{border-right:1px solid var(--color-border-subtle);flex-shrink:0;width:176px;padding:12px 0;overflow-y:auto}.settings-drawer-content{flex:1;min-width:0;padding:20px;overflow-y:auto}@media (max-width:720px){.settings-drawer-body{flex-direction:column}.settings-drawer-nav{border-right:none;border-bottom:1px solid var(--color-border-subtle);width:auto;padding:8px 12px;overflow-x:auto}.settings-drawer-nav .settings-nav{flex-direction:row;gap:4px}.settings-drawer-nav .settings-nav__label{display:none!important}.settings-drawer-nav .settings-nav>button{white-space:nowrap;flex-shrink:0}}.settings-nav{flex-direction:column;gap:2px;display:flex}@media (max-width:600px){.settings-profile__row{grid-template-columns:1fr!important}}@media (max-width:680px){.settings-visibility{grid-template-columns:1fr!important}}.copy-button{color:#c2bfb8;min-height:36px;font-family:var(--font-interface),sans-serif;cursor:pointer;background:0 0;border:1px solid #74767d;flex-shrink:0;padding:0 12px;font-size:13px;font-weight:600;transition:color .2s,border-color .2s}.copy-button:hover{color:#f4f2ed;border-color:#f4f2ed}.copy-button--copied{color:var(--cosmetic-accent-hover);border-color:var(--cosmetic-accent)}.stat-tile{flex-direction:column;min-width:0;display:flex}.stat-tile--center{text-align:center;align-items:center}.stat-tile__label{font-family:var(--font-interface),sans-serif;color:#aaa79f;align-items:center;gap:6px;font-weight:600;display:flex}.stat-tile__idx{font-family:var(--font-mono),monospace;color:#74767d}.stat-tile__value{font-family:var(--font-display),sans-serif;color:#f4f2ed;font-weight:700;line-height:1}.stat-tile__sub{font-family:var(--font-interface),sans-serif;color:#aaa79f}.stat-tile--sm{border:1px solid #303137;gap:2px;padding:10px 4px}.stat-tile--sm .stat-tile__label{order:2;font-size:12px}.stat-tile--sm .stat-tile__value{font-size:22px}.stat-tile--md{background:#121418;border:1px solid #303137;gap:6px;padding:14px 16px}.stat-tile--md .stat-tile__label{font-size:13px}.stat-tile--md .stat-tile__value{font-size:34px}.stat-tile--lg{gap:14px;padding:26px 28px 22px}.stat-tile--lg .stat-tile__label{font-size:13px}.stat-tile--lg .stat-tile__value{font-size:48px}.stat-tile--lg .stat-tile__sub{margin-top:-4px;font-size:13px}.empty-state{text-align:center;background:#121418;border:1px solid #303137;flex-direction:column;align-items:center;gap:10px;padding:64px 32px;display:flex}.empty-state__glyph{color:#aaa79f;margin-bottom:6px}.empty-state__title{font-family:var(--font-display),sans-serif;color:#f4f2ed;margin:0;font-size:30px;font-weight:600;line-height:1.1}.empty-state__message{max-width:520px;font-family:var(--font-interface),sans-serif;color:#c2bfb8;margin:0;font-size:15px;line-height:1.6}.empty-state__action{margin-top:12px}.navbar-avatar-frame{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);width:34px;height:34px}.chrome-actions .navbar-avatar-frame{width:37px;height:37px}.navbar-avatar{object-fit:cover;width:28px;height:28px;font-family:var(--font-display);letter-spacing:.02em;place-items:center;font-size:13px;font-weight:700;display:grid;overflow:hidden}.lesson-author__avatar{background:var(--cosmetic-accent);width:34px;height:34px}@supports (color:color-mix(in lab,red,red)){.lesson-author__avatar{background:color-mix(in srgb,var(--cosmetic-accent) 18%,var(--color-bg-overlay))}}.lesson-author__avatar{object-fit:cover;font-family:var(--font-mono);color:var(--cosmetic-accent);flex-shrink:0;place-items:center;font-size:12px;font-weight:700;display:grid;overflow:hidden}.lesson-author__avatar--gone{background:var(--color-bg-overlay);color:var(--color-text-muted)}.profile-avatar{object-fit:cover;width:100%;height:100%;font-family:var(--font-sans);letter-spacing:-.03em;place-items:center;font-weight:800;display:grid}span.profile-avatar{letter-spacing:-.04em;color:#0000;-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:56px;line-height:1}.navbar-icon-link{width:36px;height:36px;color:var(--color-text-muted);border:1px solid #0000;justify-content:center;align-items:center;text-decoration:none;transition:color .15s,background-color .15s;display:inline-flex}.navbar-icon-link:hover{color:var(--color-text-primary);background-color:var(--color-bg-elevated)}.breadcrumb-link{transition:color .15s}.breadcrumb-link:hover{color:var(--color-text-primary)!important}.back-link{transition:color .15s}.back-link:hover{color:var(--color-text-secondary)!important}.card-lift{transition:border-color .2s,transform .2s}.card-lift:hover{border-color:#74767d!important}.notif-bell{transition:color .15s}.panel-button{cursor:pointer;color:#aaa79f;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;width:36px;height:36px;transition:all .15s;display:inline-flex;position:relative}.panel-button--open{color:#f4f2ed;border-color:var(--cosmetic-accent);background:#191c22}.notif-bell:hover{color:var(--color-text-secondary)!important}.notif-row{width:100%;font:inherit;color:inherit;text-align:left;border:0;border-bottom:1px solid #303137;gap:12px;padding:14px 18px;text-decoration:none;transition:background-color .15s;display:flex}a.notif-row,button.notif-row{cursor:pointer}a.notif-row:hover,button.notif-row:hover{background-color:#191c22!important}.notif-row:focus-visible{outline:2px solid var(--cosmetic-accent-hover);outline-offset:-2px}.notif-item{border-bottom:1px solid #303137}.notif-item>.notif-row{border-bottom:0}.notif-answer{flex-wrap:wrap;align-items:center;gap:8px;margin:0;padding:0 18px 14px 62px;display:flex}.notif-answer--said{color:#aaa79f}.notif-answer--said,.notif-answer-error{font:13px var(--font-interface),sans-serif}.notif-answer-error{color:var(--color-state-danger);flex-basis:100%}.hint-row:hover:not(:disabled):not([aria-disabled=true]){border-color:#f4f2ed}.hint-revealed:focus-visible,.hint-row:focus-visible{outline:2px solid var(--cosmetic-accent-hover);outline-offset:3px}.footer-link{align-items:center;min-height:44px;transition:color .18s;display:inline-flex}.footer-link:hover{color:var(--color-text-secondary)!important}@media (prefers-reduced-motion:reduce){.back-link,.breadcrumb-link,.card-lift,.footer-link,.notif-bell,.notif-row{transition:none}.card-lift:hover{transform:none}}.chx,.fo-page,.learning-dashboard,.lesson-page,.page-container,.pc2-root .pc2,.tle-page{width:100%;max-width:none;padding:var(--page-space-top) var(--page-gutter) var(--page-space-bottom);margin:0 auto;position:relative}.navbar-header{gap:12px;padding:0 12px}@media (min-width:768px){.navbar-header{gap:24px;padding:0 28px}}.dash{z-index:0;flex-direction:column;gap:24px;width:100%;max-width:none;margin:0;display:flex;position:relative}.dash-num{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.dash-hero{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px 36px;padding-bottom:4px;display:flex}.dash-hero-date{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:8px;font-size:11px}.dash-hero h1{font-family:var(--font-sans);letter-spacing:-.03em;color:var(--color-text-primary);margin:0;font-size:clamp(28px,3vw,38px);font-weight:800;line-height:1.05}.dash-hero h1 em{color:var(--cosmetic-accent);font-style:normal}.dash-hero-sub{color:var(--color-text-secondary);flex-wrap:wrap;align-items:center;gap:8px 14px;margin:10px 0 0;font-size:14px;display:flex}.dash-hero-sub b{color:var(--color-text-primary);font-weight:700}.dash-hero-sub .dash-hero-link,.dash-hero-sub a{color:inherit;border-bottom:1px solid var(--color-border-default);text-decoration:none;transition:color .15s,border-color .15s}.dash-hero-sub .dash-hero-link{font:inherit;cursor:pointer;background:0 0;border-top:0;border-left:0;border-right:0;padding:0}.dash-hero-sub .dash-hero-link:hover,.dash-hero-sub a:hover{color:var(--color-text-primary);border-color:var(--cosmetic-accent)}.dash-hero-sep{background:var(--color-text-faint);width:4px;height:4px}.dash-flame{align-items:center;gap:6px;display:inline-flex}.dash-flame svg{width:15px;height:15px;color:var(--cosmetic-accent)}.dash-studio-grid{grid-template-columns:minmax(0,1.65fr) minmax(380px,1fr);align-items:start;gap:20px;display:grid}.dash-studio-col{flex-direction:column;gap:20px;min-width:0;display:flex}.dash-overview-card{background:var(--color-bg-elevated);border:1px solid var(--color-border-subtle);padding:24px 28px;box-shadow:0 1px #ffffff08}.dash-overview-head,.dash-panel-head{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.dash-overview-head h2,.dash-panel-title{font-family:var(--font-sans);letter-spacing:-.01em;color:var(--color-text-primary);margin:0;font-size:16px;font-weight:700}.dash-panel-badge{background:var(--color-bg-sunken);border:1px solid var(--color-border-default);height:30px;font-family:var(--font-sans);color:var(--color-text-secondary);align-items:center;gap:8px;padding:0 12px;font-size:12px;font-weight:600;text-decoration:none;display:inline-flex}a.dash-panel-badge:hover{color:var(--color-text-primary);border-color:var(--cosmetic-accent)}.dash-tray-2col{background:var(--color-bg-sunken);grid-template-columns:1fr 1fr;gap:8px;padding:8px;display:grid}.dash-stat-box,.dash-tray-2col{border:1px solid var(--color-border-subtle)}.dash-stat-box{background:var(--color-bg-elevated);flex-direction:column;justify-content:space-between;gap:10px;min-height:132px;padding:20px 24px;display:flex}.dash-stat-box--elevated{background:var(--color-bg-overlay);border:1px solid var(--color-border-default);box-shadow:0 12px 32px #00000059}.dash-stat-label{font-family:var(--font-sans);color:var(--color-text-secondary);align-items:center;gap:8px;font-size:12px;font-weight:600;display:flex}.dash-stat-label svg{width:16px;height:16px;color:var(--color-text-secondary)}.dash-stat-row,.dash-stat-val-row{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:14px;margin-top:6px;display:flex}.dash-stat-val{font-family:var(--font-sans);letter-spacing:-.04em;color:var(--color-text-primary);font-size:clamp(34px,3.2vw,44px);font-weight:800;line-height:1}.dash-delta-pill,.dash-stat-delta{font-family:var(--font-mono);background:var(--color-success);align-items:center;gap:5px;padding:4px 10px;font-size:11px;font-weight:700;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.dash-delta-pill,.dash-stat-delta{background:color-mix(in srgb,var(--color-success) 12%,transparent)}}.dash-delta-pill,.dash-stat-delta{color:var(--color-success);border:1px solid var(--color-success)}@supports (color:color-mix(in lab,red,red)){.dash-delta-pill,.dash-stat-delta{border:1px solid color-mix(in srgb,var(--color-success) 28%,transparent)}}.dash-delta-pill--emerald{background:var(--color-success)}@supports (color:color-mix(in lab,red,red)){.dash-delta-pill--emerald{background:color-mix(in srgb,var(--color-success) 12%,transparent)}}.dash-delta-pill--emerald{color:var(--color-success);border:1px solid var(--color-success)}@supports (color:color-mix(in lab,red,red)){.dash-delta-pill--emerald{border:1px solid color-mix(in srgb,var(--color-success) 28%,transparent)}}.dash-delta-pill--copper,.dash-stat-delta--copper{background:var(--cosmetic-accent)}@supports (color:color-mix(in lab,red,red)){.dash-delta-pill--copper,.dash-stat-delta--copper{background:color-mix(in srgb,var(--cosmetic-accent) 12%,transparent)}}.dash-delta-pill--copper,.dash-stat-delta--copper{color:var(--cosmetic-accent);border:1px solid var(--cosmetic-accent)}@supports (color:color-mix(in lab,red,red)){.dash-delta-pill--copper,.dash-stat-delta--copper{border:1px solid color-mix(in srgb,var(--cosmetic-accent) 28%,transparent)}}.dash-stat-sub{font-family:var(--font-mono);color:var(--color-text-muted);font-size:11px}.dash-lvl{background:var(--color-bg-elevated);border:1px solid var(--color-border-subtle);color:inherit;align-items:center;gap:16px;padding:12px 18px;text-decoration:none;display:flex}.dash-ring{flex-shrink:0;width:68px;height:68px;position:relative}.dash-ring svg{width:100%;height:100%;display:block}.dash-ring-n{font-family:var(--font-sans);letter-spacing:-.04em;color:var(--color-text-primary);place-items:center;font-size:24px;font-weight:800;display:grid;position:absolute;inset:0}.dash-lvl-text{flex-direction:column;gap:2px;min-width:0;display:flex}.dash-lvl-text>b{color:var(--color-text-primary);font-size:14px;font-weight:700}.dash-lvl-xp{font-family:var(--font-mono);color:var(--color-text-secondary);font-size:11.5px}.dash-lvl-next,.dash-lvl-rank{color:var(--color-text-muted);font-size:11.5px}.dash-lvl-next b{color:var(--cosmetic-accent);font-weight:600}.dash-lvl-rank b{color:var(--color-text-secondary);font-weight:600}.dash-now{border-top:1px solid var(--color-border-subtle);flex-direction:column;gap:22px;margin-top:22px;padding-top:22px;display:flex;position:relative}.dash-now--text{grid-template-columns:1fr}.dash-now-main{flex-direction:column;align-items:flex-start;gap:6px;min-width:0;display:flex}.dash-now-copy{flex:320px;min-width:0}.dash-now-label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--cosmetic-accent);flex-wrap:wrap;align-items:center;gap:10px;font-size:11px;font-weight:700;display:flex}.dash-now-label span{color:var(--color-text-muted);letter-spacing:.04em;text-transform:none;font-weight:500}.dash-now h2{font-family:var(--font-sans);letter-spacing:-.02em;color:var(--color-text-primary);text-wrap:balance;margin:4px 0 0;font-size:clamp(20px,2vw,24px);font-weight:800;line-height:1.2}.dash-now p{max-width:64ch;color:var(--color-text-secondary);margin:2px 0 0;font-size:13.5px;line-height:1.55}.dash-now-foot{flex-wrap:wrap;align-items:center;gap:12px 16px;width:100%;margin-top:10px;display:flex}.dash-now-meta{font-family:var(--font-mono);color:var(--color-text-muted);font-size:11.5px}.dash-now-aside{color:var(--color-text-secondary);border-bottom:1px solid var(--color-border-default);margin-left:auto;font-size:12.5px;text-decoration:none;transition:color .15s,border-color .15s}.dash-now-aside:hover{color:var(--color-text-primary);border-color:var(--cosmetic-accent)}.dash-route{flex-direction:column;gap:12px;min-width:0;display:flex}.dash-route-head{color:var(--color-text-secondary);justify-content:space-between;align-items:center;gap:12px;font-size:12.5px;font-weight:600;display:flex}.dash-route-head .dash-num{color:var(--color-text-muted);font-size:11.5px}.dash-route-nodes{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;display:grid}.dash-chapter-node{background:var(--color-bg-sunken);border:1px solid var(--color-border-subtle);color:inherit;text-align:left;flex-direction:column;justify-content:space-between;align-items:stretch;gap:12px;padding:12px 14px;text-decoration:none;transition:border-color .15s,background-color .15s,transform .15s;display:flex}.dash-chapter-node:hover{border-color:var(--color-border-default);transform:translateY(-2px)}.dash-chapter-node--done{border-color:var(--color-success)}@supports (color:color-mix(in lab,red,red)){.dash-chapter-node--done{border-color:color-mix(in srgb,var(--color-success) 32%,var(--color-border-subtle))}}.dash-chapter-node--now{background:var(--color-bg-overlay);border-color:var(--cosmetic-accent);box-shadow:0 10px 26px #00000059}.dash-chapter-node-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.dash-chapter-node-num{font-family:var(--font-mono);letter-spacing:.08em;color:var(--color-text-muted);font-size:11px;font-weight:700}.dash-chapter-node--done .dash-chapter-node-num{color:var(--color-success)}.dash-chapter-node--now .dash-chapter-node-num{color:var(--cosmetic-accent)}.dash-chapter-icon,.dash-chapter-node-icon{background:var(--color-bg-elevated);border:1px solid var(--color-border-default);width:24px;height:24px;color:var(--color-text-muted);font-family:var(--font-mono);flex-shrink:0;place-items:center;font-size:11px;font-weight:700;display:inline-grid}.dash-chapter-node-icon svg{width:13px;height:13px;display:block}.dash-chapter-node--done .dash-chapter-icon,.dash-chapter-node--done .dash-chapter-node-icon{background:var(--color-success)}@supports (color:color-mix(in lab,red,red)){.dash-chapter-node--done .dash-chapter-icon,.dash-chapter-node--done .dash-chapter-node-icon{background:color-mix(in srgb,var(--color-success) 14%,transparent)}}.dash-chapter-node--done .dash-chapter-icon,.dash-chapter-node--done .dash-chapter-node-icon{border-color:var(--color-success)}@supports (color:color-mix(in lab,red,red)){.dash-chapter-node--done .dash-chapter-icon,.dash-chapter-node--done .dash-chapter-node-icon{border-color:color-mix(in srgb,var(--color-success) 40%,transparent)}}.dash-chapter-node--done .dash-chapter-icon,.dash-chapter-node--done .dash-chapter-node-icon{color:var(--color-success)}.dash-chapter-node--now .dash-chapter-icon,.dash-chapter-node--now .dash-chapter-node-icon{background:var(--cosmetic-accent);border-color:var(--cosmetic-accent);color:#0b0c0e}.dash-chapter-node-title,.dash-chapter-title{font-family:var(--font-sans);color:var(--color-text-secondary);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;max-width:100%;font-size:12px;font-weight:600;line-height:1.35;display:-webkit-box;overflow:hidden}.dash-chapter-node--done .dash-chapter-node-title{color:var(--color-text-primary)}.dash-chapter-node--now .dash-chapter-node-title,.dash-chapter-node--now .dash-chapter-title{color:var(--color-text-primary);font-weight:700}.dash-chapter-status{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);font-size:10px}.dash-chapter-node--done .dash-chapter-status{color:var(--color-success)}.dash-chapter-node--now .dash-chapter-status{color:var(--cosmetic-accent);font-weight:700}.dash-route-track{justify-content:space-between;align-items:center;height:28px;padding:0 2px;display:flex;position:relative}.dash-route-line,.dash-route-lit{height:2px;margin-top:-1px;position:absolute;top:50%;left:6px}.dash-route-line{background:var(--color-border-default);right:6px}.dash-route-lit{background:var(--cosmetic-accent);max-width:calc(100% - 12px)}.dash-node{background:var(--color-bg-elevated);border:2px solid var(--color-border-default);width:12px;height:12px;display:block;position:relative}.dash-node--done{background:var(--color-success);border-color:var(--color-success)}.dash-node--now{background:var(--color-bg-sunken);border:3px solid var(--cosmetic-accent);width:18px;height:18px}.dash-route-foot{color:var(--color-text-muted);justify-content:space-between;align-items:baseline;gap:12px;font-size:12px;display:flex}.dash-route-foot b{color:var(--color-text-primary);font-weight:700}.dash-route-foot a{color:var(--color-text-secondary);border-bottom:1px solid var(--color-border-default);text-decoration:none;transition:color .15s,border-color .15s}.dash-route-foot a:hover{color:var(--color-text-primary);border-color:var(--cosmetic-accent)}.dash-cols{grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);align-items:start;gap:20px;display:grid}.dash-cols--single{grid-template-columns:minmax(0,1fr)}.dash-sec{background:var(--color-bg-elevated);border:1px solid var(--color-border-subtle);flex-direction:column;gap:14px;min-width:0;padding:24px 26px;display:flex;box-shadow:0 1px #ffffff08}.dash-sec-head{align-items:center;gap:10px;display:flex}.dash-sec-head h2{font-family:var(--font-sans);letter-spacing:-.01em;color:var(--color-text-primary);margin:0;font-size:16px;font-weight:700;line-height:1.3}.dash-sec-count{font-family:var(--font-mono);background:var(--color-bg-sunken);border:1px solid var(--color-border-subtle);padding:3px 9px;font-size:11px}.dash-sec-count,.dash-sec-link{color:var(--color-text-secondary)}.dash-sec-link{white-space:nowrap;margin-left:auto;font-size:12.5px;font-weight:600;text-decoration:none;transition:color .15s}.dash-sec-link:hover{color:var(--cosmetic-accent)}.dash-rev-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.dash-live-item{border-top:1px solid var(--color-border-subtle);color:inherit;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px 0;text-decoration:none;transition:opacity .15s;display:grid}.dash-live-text{flex-direction:column;gap:2px;min-width:0;display:flex}.dash-rev:hover .dash-rev-title{color:var(--cosmetic-accent)}.dash-rev-icon{background:var(--color-bg-sunken);border:1px solid var(--color-border-default);width:40px;height:40px;color:var(--color-text-secondary);flex-shrink:0;place-items:center;display:grid}.dash-rev-icon svg{width:18px;height:18px;display:block}.dash-rev-icon--active{background:var(--cosmetic-accent)}@supports (color:color-mix(in lab,red,red)){.dash-rev-icon--active{background:color-mix(in srgb,var(--cosmetic-accent) 12%,transparent)}}.dash-rev-icon--active{border-color:var(--cosmetic-accent)}@supports (color:color-mix(in lab,red,red)){.dash-rev-icon--active{border-color:color-mix(in srgb,var(--cosmetic-accent) 36%,transparent)}}.dash-rev-icon--active{color:var(--cosmetic-accent)}.dash-rev-dot{width:8px;height:8px}.dash-rev-title{color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:700;transition:color .15s;overflow:hidden}.dash-friend-when{color:var(--color-text-secondary);margin-top:3px;font-size:12px;font-weight:500;display:block}.dash-rev-right{flex-direction:column;align-items:flex-end;gap:4px;display:flex}.dash-rev-due{font-family:var(--font-mono);background:var(--color-bg-sunken);border:1px solid var(--color-border-default);color:var(--color-text-secondary);white-space:nowrap;padding:3px 8px;font-size:10.5px;font-weight:700}.dash-rev-due--late{background:var(--cosmetic-accent)}@supports (color:color-mix(in lab,red,red)){.dash-rev-due--late{background:color-mix(in srgb,var(--cosmetic-accent) 12%,transparent)}}.dash-rev-due--late{border-color:var(--cosmetic-accent)}@supports (color:color-mix(in lab,red,red)){.dash-rev-due--late{border-color:color-mix(in srgb,var(--cosmetic-accent) 32%,transparent)}}.dash-rev-due--late{color:var(--cosmetic-accent)}.dash-rev-min{font-family:var(--font-mono);white-space:nowrap;font-size:11px}.dash-rev-min,.dash-rev-note{color:var(--color-text-muted)}.dash-rev-note{margin:4px 0 0;font-size:12.5px;line-height:1.5}.dash-week{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;display:grid}.dash-card{border:1px solid var(--color-border-subtle);min-width:0;padding:22px 24px;box-shadow:0 1px #ffffff08}.dash-card,.dash-card--streak{background:var(--color-bg-elevated)}.dash-card-head{align-items:center;gap:10px;margin-bottom:14px;display:flex}.dash-card-head h3{font-family:var(--font-sans);color:var(--color-text-primary);margin:0;font-size:16px;font-weight:700;line-height:1.3}.dash-card-head>span{font-family:var(--font-mono);background:var(--color-bg-sunken);border:1px solid var(--color-border-subtle);color:var(--color-text-secondary);white-space:nowrap;margin-left:auto;padding:3px 9px;font-size:11.5px}.dash-card-head a{color:inherit;text-decoration:none}.dash-card-head a:hover{color:var(--color-text-primary)}.dash-qbar{margin-bottom:10px}.dash-quest-list{margin:0;padding:0;list-style:none}.dash-quest{align-items:center;gap:12px;padding:12px 0;display:flex}.dash-quest+.dash-quest{border-top:1px solid var(--color-border-subtle)}.dash-chk{background:var(--color-bg-sunken);border:1.5px solid var(--color-border-default);color:#0b0c0e;flex-shrink:0;place-items:center;width:20px;height:20px;display:grid}.dash-chk svg{width:12px;height:12px}.dash-quest--claimed .dash-chk,.dash-quest--done .dash-chk{background:var(--color-success);border-color:var(--color-success)}.dash-quest-title{min-width:0;color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:13.5px;font-weight:600;overflow:hidden}.dash-quest--claimed .dash-quest-title,.dash-quest-right{color:var(--color-text-muted)}.dash-quest-right{font-family:var(--font-mono);white-space:nowrap;font-size:12px}.dash-quest-right b{color:var(--cosmetic-accent);font-weight:700}.dash-quest-claimed{font-family:var(--font-mono);color:var(--color-success);white-space:nowrap;font-size:11px}.dash-bonus{border:1px solid var(--color-border-default);background:var(--color-bg-sunken);color:var(--color-text-secondary);flex-wrap:wrap;align-items:center;gap:4px 12px;margin-top:12px;padding:12px 14px;font-size:12.5px;display:flex}.dash-bonus-title{width:100%;font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--cosmetic-accent);font-size:10px;font-weight:700}.dash-bonus b{color:var(--color-text-primary);font-weight:700}.dash-streak-top{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.dash-streak-top b{font-family:var(--font-sans);letter-spacing:-.04em;color:var(--color-text-primary);font-size:32px;font-weight:800;line-height:1}.dash-streak-top b.dash-streak-top--off{color:var(--color-text-muted)}.dash-streak-top span{color:var(--color-text-secondary);font-size:13.5px}.dash-days{background:var(--color-bg-sunken);border:1px solid var(--color-border-subtle);grid-template-columns:repeat(7,1fr);gap:10px;margin-top:16px;padding:16px;display:grid}.dash-day{height:92px;font-family:var(--font-mono);color:var(--color-text-muted);flex-direction:column;justify-content:flex-end;align-items:center;gap:8px;font-size:11px;display:flex}.dash-day i{background:var(--color-bg-elevated);border:1px solid var(--color-border-default);width:100%;height:22px;display:block}.dash-day--on i{background:var(--color-success);height:54px}@supports (color:color-mix(in lab,red,red)){.dash-day--on i{background:color-mix(in srgb,var(--color-success) 24%,var(--color-bg-elevated))}}.dash-day--on i{border-color:var(--color-success)}.dash-day--today.dash-day--on i{background:var(--cosmetic-accent);border-color:var(--cosmetic-accent);height:64px}.dash-day--today span{color:var(--cosmetic-accent);font-weight:700}.dash-day--future i{border:1px dashed var(--color-border-default);background:0 0;height:16px}.dash-freeze{color:var(--color-text-muted);margin:14px 0 0;font-size:12.5px;line-height:1.5}.dash-freeze b{color:var(--color-text-primary);font-weight:600}.dash-streak-year{border-top:1px solid var(--color-border-subtle);margin-top:16px;padding-top:16px}.dash-streak-year .dash-figs{margin-bottom:18px}.dash-heat-head{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted);justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;font-size:10px;display:flex}.dash-heat-legend{align-items:center;gap:4px;display:inline-flex}.dash-heat{max-width:100%;padding-bottom:4px;overflow-x:auto}.dash-heat-months{display:flex}.dash-heat-days,.dash-heat-gutter{flex-shrink:0;width:28px}.dash-heat-months>div{font-family:var(--font-mono);color:var(--color-text-muted);grid-auto-columns:11px;grid-auto-flow:column;column-gap:3px;font-size:9.5px;display:grid}.dash-heat-months>div span{white-space:nowrap}.dash-heat-body{margin-top:6px;display:flex}.dash-heat-days{font-family:var(--font-mono);color:var(--color-text-muted);grid-template-rows:repeat(7,11px);row-gap:3px;font-size:9px;display:grid}.dash-heat-days span{align-items:center;display:flex}.dash-heat-grid{grid-template-rows:repeat(7,11px);grid-auto-columns:11px;grid-auto-flow:column;gap:3px;display:grid}.dash-heat-cell{background:var(--color-bg-sunken);border:1px solid var(--color-border-subtle);width:11px;height:11px;display:block}.dash-heat-cell[data-level="1"]{background:var(--cosmetic-accent)}@supports (color:color-mix(in lab,red,red)){.dash-heat-cell[data-level="1"]{background:color-mix(in srgb,var(--cosmetic-accent) 28%,var(--color-bg-sunken))}}.dash-heat-cell[data-level="2"]{background:var(--cosmetic-accent)}@supports (color:color-mix(in lab,red,red)){.dash-heat-cell[data-level="2"]{background:color-mix(in srgb,var(--cosmetic-accent) 58%,var(--color-bg-sunken))}}.dash-heat-cell[data-level="3"]{background:var(--cosmetic-accent)}.dash-heat-cell--future{border:1px dashed var(--color-border-default);background:0 0}.dash-me{background:var(--color-bg-sunken);border:1px solid var(--color-border-subtle);justify-content:space-between;align-items:center;gap:20px 32px;padding:16px 20px}.dash-figs,.dash-me{flex-wrap:wrap;display:flex}.dash-figs{gap:12px 28px}.dash-fig{align-items:baseline;gap:8px;display:flex}.dash-fig b{font-family:var(--font-sans);letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--color-text-primary);font-size:20px;font-weight:800;line-height:1}.dash-fig b small{color:var(--color-text-muted);margin-left:2px;font-size:12px;font-weight:600}.dash-fig>span{color:var(--color-text-muted);flex-direction:column;font-size:12.5px;display:flex}.dash-fig>span small{color:var(--color-text-faint);font-size:11px}.dash-badges{flex-wrap:wrap;gap:12px 20px}.dash-badge,.dash-badges{align-items:center;display:flex}.dash-badge{gap:10px;min-width:0}.dash-badge div{flex-direction:column;gap:2px;min-width:0;display:flex}.dash-badge b{color:var(--color-text-primary);white-space:nowrap;font-size:13px;font-weight:600}.dash-badge div span{font-size:11px}.dash-badges-link{color:var(--color-text-secondary);font-size:12.5px;font-weight:600;text-decoration:none;transition:color .15s}.dash-badges-link:hover{color:var(--cosmetic-accent)}@media (max-width:1150px){.dash-cols,.dash-studio-grid{grid-template-columns:1fr}}@media (max-width:767px){.dash{gap:20px}.dash-tray-2col{grid-template-columns:1fr}.dash-lvl{width:100%}.dash-card,.dash-overview-card,.dash-sec{padding:18px}.dash-rev-min{display:none}.dash-me{padding:14px}}.lessons-catalog-grid{grid-template-columns:1fr;gap:16px;display:grid}@media (min-width:768px){.lessons-catalog-grid{grid-template-columns:repeat(2,1fr);gap:20px}}@media (min-width:1280px){.lessons-catalog-grid{grid-template-columns:repeat(3,1fr)}}.lesson-locked{height:100%;text-decoration:none;display:block;position:relative}.lesson-locked>:first-child{opacity:.38;filter:saturate(.35);transition:opacity .18s,filter .18s}.lesson-locked:focus-visible>:first-child,.lesson-locked:hover>:first-child{opacity:.55;filter:saturate(.5)}.lesson-locked__chip{z-index:2;max-width:calc(100% - 28px);font-family:var(--font-interface),sans-serif;color:#c2bfb8;background:#121418;border:1px solid #74767d;align-items:center;gap:7px;padding:5px 10px;font-size:12px;font-weight:600;display:inline-flex;position:absolute;top:14px;right:14px}.lesson-locked__chip svg{flex:none}.lesson-locked__path{text-overflow:ellipsis;white-space:nowrap;letter-spacing:.06em;text-transform:none;color:var(--color-text-muted);font-weight:500;overflow:hidden}.catalog-header-grid{border-bottom:1px solid var(--color-border-default);grid-template-columns:1fr;align-items:end;gap:24px;margin-bottom:32px;padding-bottom:28px;display:grid}@media (min-width:1280px){.catalog-header-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:48px;margin-bottom:40px;padding-bottom:32px}}.filter-bar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:28px;display:flex}.grid-3-col{grid-template-columns:1fr;gap:16px;display:grid}@media (min-width:768px){.grid-3-col{grid-template-columns:repeat(2,1fr);gap:20px}}@media (min-width:1280px){.grid-3-col{grid-template-columns:repeat(3,1fr)}}.landing-nav{padding:14px 16px}@media (min-width:768px){.landing-nav{padding:18px 32px}}@media (min-width:1280px){.landing-nav{padding:18px 56px}}.landing-nav-actions{align-items:center;gap:12px;display:flex}.landing-nav-signin{--nav-signin-x:20px;display:inline-flex}@media (max-width:599px){.landing-nav-actions{gap:8px}.landing-nav-signin{--nav-signin-x:12px}}@media (max-width:439px){.landing-nav-wordmark{display:none}}@media (max-width:339px){.landing-nav-signin{--nav-signin-x:8px}}.landing-cta-long{display:none}.landing-cta-short{display:inline}@media (min-width:640px){.landing-cta-long{display:inline}.landing-cta-short{display:none}}.landing-hero-grid{grid-template-columns:1fr;gap:40px;padding:48px 16px 40px;display:grid}@media (min-width:768px){.landing-hero-grid{gap:56px;padding:64px 32px 60px}}@media (min-width:1024px){.landing-hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:72px;padding:96px 56px 80px}}.landing-cta-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}@media (min-width:640px){.landing-cta-row{gap:14px}}.landing-stats-strip{padding:14px 16px}@media (min-width:768px){.landing-stats-strip{padding:20px 32px}}@media (min-width:1280px){.landing-stats-strip{padding:20px 56px}}.landing-section-pad{padding:48px 16px}@media (min-width:768px){.landing-section-pad{padding:72px 32px}}@media (min-width:1280px){.landing-section-pad{padding:100px 56px}}.landing-section-pad-bottom{padding:0 16px 48px}@media (min-width:768px){.landing-section-pad-bottom{padding:0 32px 72px}}@media (min-width:1280px){.landing-section-pad-bottom{padding:0 56px 100px}}.landing-cta-section{padding:64px 16px}@media (min-width:768px){.landing-cta-section{padding:96px 32px}}@media (min-width:1280px){.landing-cta-section{padding:120px 56px}}.landing-footer-inner{padding:32px 16px}@media (min-width:768px){.landing-footer-inner{padding:40px 32px}}@media (min-width:1280px){.landing-footer-inner{padding:40px 56px}}.onboarding-content{padding:44px 16px 80px}@media (min-width:768px){.onboarding-content{padding:44px 32px 120px}}.onboarding-card{padding:26px 18px 22px}@media (min-width:640px){.onboarding-card{padding:32px 36px 28px}}.onboarding-stats{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.onboarding-stats>*{min-width:0;padding:16px 14px}.onboarding-stats>:nth-child(odd){border-right:1px solid var(--color-border-default)}.onboarding-stats>:nth-child(n+3){border-top:1px solid var(--color-border-default)}@media (min-width:640px){.onboarding-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.onboarding-stats>*{border-right:1px solid var(--color-border-default)}.onboarding-stats>:nth-child(n+3){border-top:0}.onboarding-stats>:last-child{border-right:0}}.onboarding-actions{flex-wrap:wrap;gap:12px;display:flex}.onboarding-actions>.btn{flex:auto}@media (max-width:639px){.onboarding-actions>.btn,.onboarding-card .btn{white-space:normal;text-align:center;height:auto;min-height:50px;padding-top:10px;padding-bottom:10px;line-height:1.4}}@media (max-width:767px){.onboarding-bar__label{display:none!important}.onboarding-bar__signout{margin-left:auto;position:relative}.onboarding-bar__signout:after{content:"";position:absolute;inset:-6px -4px}}.contact-wrapper{padding:24px 16px 80px!important}@media (min-width:768px){.contact-wrapper{padding:40px 24px 120px!important}}.contact-success{padding:48px 16px!important}@media (min-width:768px){.contact-success{padding:80px 24px!important}}.verify-meta-grid{grid-template-columns:1fr}@media (min-width:768px){.verify-meta-grid{grid-template-columns:repeat(3,1fr)}}.verify-main-content{padding:32px 16px 60px}@media (min-width:768px){.verify-main-content{padding:52px 32px 80px}}.profile-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow:hidden}@media (min-width:1024px){.profile-stats-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}.profile-stats-cell{border-right:1px solid var(--color-border-subtle);border-bottom:1px solid var(--color-border-subtle);padding:24px 22px 22px;position:relative;overflow:hidden}.profile-stats-cell:nth-child(2n){border-right:none}.profile-stats-cell:last-child{border-bottom:none;border-right:none;grid-column:1/-1}@media (min-width:1024px){.profile-stats-cell{border-bottom:none;padding:28px 24px 24px}.profile-stats-cell,.profile-stats-cell:nth-child(2n){border-right:1px solid var(--color-border-subtle)}.profile-stats-cell:last-child{border-right:none;grid-column:auto}}.profile-xp-bar{flex-direction:column;gap:20px;padding:20px 16px;display:flex}@media (min-width:768px){.profile-xp-bar{grid-template-columns:minmax(120px,auto) 1fr minmax(160px,auto);align-items:center;gap:24px;padding:24px;display:grid}}@media (min-width:1280px){.profile-xp-bar{grid-template-columns:minmax(140px,auto) 1fr minmax(180px,auto);gap:32px;padding:28px 32px}}.lesson-page{--lesson-measure:95rem;width:100%;min-width:0}html:has(.lesson-toolbar){scroll-padding-top:136px}.lesson-review-banner{color:var(--color-text-secondary);background:#ffb54712;border:1px solid #ffb54773;margin:0 0 24px;padding:12px 16px;font-size:13.5px;line-height:1.5}.lesson-review-banner b{color:var(--color-rarity-legendary);font-weight:700}.lesson-head{margin:0 0 30px}.lesson-head .pg-crumb{margin-bottom:20px}.lesson-head__title{font-family:var(--font-display,var(--font-sans));letter-spacing:-.025em;color:var(--color-text-primary);overflow-wrap:break-word;margin:0 0 16px;font-size:clamp(36px,4.8vw,68px);font-weight:700;line-height:1}.lesson-head__lede{max-width:var(--lesson-measure);color:var(--color-text-secondary);margin:0 0 24px;font-size:17px;line-height:1.7}.lesson-head__chips{border-block:1px solid #303137;flex-wrap:wrap;align-items:center;margin:0;padding:14px 0;list-style:none;display:flex}.lesson-chip{min-height:24px;font-family:var(--font-interface),sans-serif;color:#c2bfb8;white-space:nowrap;border-left:1px solid #303137;align-items:center;gap:8px;padding:0 16px;font-size:13px;line-height:1.4;display:inline-flex}.lesson-chip:first-child{border-left:0;padding-left:0}.lesson-chip[data-kind=data]{font-family:var(--font-mono),monospace;font-variant-numeric:tabular-nums;font-size:12px}.lesson-chip--status{color:#f4f2ed;border-left:0;margin-left:auto;padding-right:0;font-weight:500}.lesson-chip__mark{background:var(--cosmetic-accent);flex-shrink:0;width:8px;height:8px}.lesson-chip--status[data-completed=true] .lesson-chip__mark{border-left:2px solid var(--color-success);border-bottom:2px solid var(--color-success);background:0 0;width:10px;height:6px;transform:translateY(-2px)rotate(-45deg)}@media (max-width:600px){.lesson-head__chips{row-gap:10px}.lesson-chip--status{flex-basis:100%;margin-left:0;padding-left:0}}.lesson-toolbar{z-index:35;color:#f4f2ed;font-family:var(--font-interface),sans-serif;background:#121418;border:1px solid #303137;align-items:center;gap:12px;margin-bottom:36px;padding:0 5px 0 14px;display:flex;position:sticky;container:lesson-toolbar/inline-size}.lesson-toolbar__where{flex:1;align-items:center;gap:14px;min-width:0;display:flex}.lesson-toolbar__count{font-family:var(--font-display),sans-serif;white-space:nowrap;font-variant-numeric:tabular-nums;flex-shrink:0;align-items:baseline;font-weight:700;line-height:1;display:inline-flex}.lesson-toolbar__count b{color:#f4f2ed;font-size:30px;font-weight:700}.lesson-toolbar__total{color:#aaa79f;margin-left:2px;font-size:17px}.lesson-toolbar__word{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.lesson-toolbar__track{pointer-events:none;flex-direction:column;justify-content:center;gap:8px;display:flex;position:absolute;inset:auto 0 0}.lesson-toolbar__name{text-overflow:ellipsis;white-space:nowrap;color:#c2bfb8;font-size:13px;font-weight:500;line-height:16px;display:none;overflow:hidden}.lesson-toolbar__segments{gap:2px;min-width:0;display:flex;overflow:hidden}.lesson-toolbar__segment{background:#303137;border:0;flex:1 1 0;min-width:1px;height:3px;padding:0;position:relative}.lesson-toolbar__segment[data-state=done]{background:#c2bfb8}.lesson-toolbar__segment[data-state=current]{background:var(--cosmetic-accent)}button.lesson-toolbar__segment{cursor:pointer;transition:background .15s}button.lesson-toolbar__segment[data-state=ahead]{background:#74767d}button.lesson-toolbar__segment:before{content:"";position:absolute;inset:-8px 0}button.lesson-toolbar__segment:hover{background:#f4f2ed}.lesson-toolbar__group{flex-shrink:0;align-items:center;gap:4px;display:flex}.lesson-toolbar__sep{background:#303137;flex-shrink:0;width:1px;height:28px}.lesson-toolbar__btn{color:#f4f2ed;min-width:44px;height:44px;font:500 13px/1 var(--font-interface),sans-serif;white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #303137;justify-content:center;align-items:center;gap:8px;padding:0 12px;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.lesson-toolbar__btn:hover:not(:disabled){background:#191c22;border-color:#74767d}.lesson-toolbar__btn:focus-visible{outline:2px solid var(--cosmetic-accent-hover);outline-offset:2px}.lesson-toolbar__btn:disabled{color:#74767d;cursor:not-allowed}.lesson-toolbar__btn--next{background:var(--cosmetic-accent);border-color:var(--cosmetic-accent);color:#0b0c0e;font-weight:600}.lesson-toolbar__btn--next:hover:not(:disabled){background:var(--cosmetic-accent-hover);border-color:var(--cosmetic-accent-hover)}.lesson-toolbar__btn--next:disabled{color:#aaa79f;background:#191c22;border-color:#303137}.lesson-toolbar__btn[aria-expanded=true],.lesson-toolbar__btn[aria-pressed=true]{color:#141518;background:#eae7df;border-color:#eae7df}.lesson-toolbar__btn[aria-expanded=true]:hover,.lesson-toolbar__btn[aria-pressed=true]:hover{background:#f4f2ed;border-color:#f4f2ed}.lesson-toolbar__icon{flex-shrink:0;width:16px;height:16px}.lesson-toolbar .lesson-toolbar__focus,.lesson-toolbar__label,.lesson-toolbar__xp{display:none}.lesson-toolbar__xp{height:22px;font:600 11px/1 var(--font-mono),monospace;border:1px solid #0b0c0e59;align-items:center;padding:0 6px}.lesson-toolbar__busy{border:2px solid;flex-shrink:0;width:14px;height:14px;position:relative;overflow:hidden}.lesson-toolbar__busy>span{transform-origin:0;background:currentColor;animation:lesson-toolbar-busy .9s ease-in-out infinite;position:absolute;inset:0}@keyframes lesson-toolbar-busy{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media (min-width:1024px){.lesson-toolbar .lesson-toolbar__focus{display:inline-flex}}@container lesson-toolbar (min-width:560px){.lesson-toolbar__btn{padding:0 14px}.lesson-toolbar__steps .lesson-toolbar__label{display:inline}}@container lesson-toolbar (min-width:760px){.lesson-toolbar__label{display:inline}}@container lesson-toolbar (min-width:820px){.lesson-toolbar__xp{display:inline-flex}}@container lesson-toolbar (min-width:880px){.lesson-toolbar{gap:16px;padding-left:18px}.lesson-toolbar__track{pointer-events:auto;flex:1;min-width:0;position:static}.lesson-toolbar__name{display:block}.lesson-toolbar__segments{gap:3px;overflow:visible}.lesson-toolbar__segment{min-width:2px;height:6px}}@media (pointer:coarse){.lesson-toolbar__segments{pointer-events:none}}@media (prefers-reduced-motion:reduce){.lesson-toolbar__btn,button.lesson-toolbar__segment{transition:none}.lesson-toolbar__busy>span{animation:none;transform:scaleX(.5)}}.lesson-end,.lesson-pending{max-width:var(--lesson-measure);margin-inline:0}.lesson-pending{border:1px solid #303137;border-left:3px solid var(--color-warning);font:500 13px/1.6 var(--font-interface),sans-serif;color:var(--color-warning);background:#121418;align-items:center;gap:10px;margin-top:16px;margin-bottom:0;padding:12px 16px;display:flex}.lesson-plan{gap:28px;padding:16px 20px 24px}.lesson-plan,.lesson-plan__list{flex-direction:column;display:flex}.lesson-plan__list{border-top:1px solid #303137;margin:0;padding:0;list-style:none}.lesson-plan__list>li{border-bottom:1px solid #303137}.lesson-plan__item{text-align:left;width:100%;min-height:56px;font:400 14px/1.4 var(--font-interface),sans-serif;color:#aaa79f;cursor:pointer;background:0 0;border:0;border-left:3px solid #0000;grid-template-columns:34px minmax(0,1fr) 20px;align-items:center;gap:12px;padding:10px 12px;transition:background .15s,color .15s;display:grid}.lesson-plan__item[data-state=done]{color:#c2bfb8}.lesson-plan__item[aria-current=step]{color:#141518;border-left-color:var(--cosmetic-accent-ink);background:#eae7df;font-weight:600}.lesson-plan__item:not(:disabled):not([aria-current]):hover{color:#f4f2ed;background:#191c22}.lesson-plan__item:disabled{cursor:default}.lesson-plan__item:focus-visible{outline:2px solid var(--cosmetic-accent-hover);outline-offset:-2px}.lesson-plan__item[aria-current=step]:focus-visible{outline-color:#141518}.lesson-plan__num{font:700 22px/1 var(--font-display),sans-serif;font-variant-numeric:tabular-nums;color:#74767d}.lesson-plan__item[data-state=done] .lesson-plan__mark,.lesson-plan__item[data-state=done] .lesson-plan__num{color:var(--cosmetic-accent-hover)}.lesson-plan__item[aria-current=step] .lesson-plan__num{color:var(--cosmetic-accent-ink)}.lesson-plan__mark{place-items:center;width:20px;height:20px;display:grid}.lesson-plan__mark svg{width:16px;height:16px}.lesson-plan__here{background:var(--cosmetic-accent-ink);width:8px;height:8px}@media (prefers-reduced-motion:reduce){.lesson-plan__item{transition:none}}.side-drawer--docked.lesson-notes{top:56px}main:has(.lesson-notes.side-drawer--docked){padding-right:400px}main:has(.lesson-notes--wide.side-drawer--docked){padding-right:560px}.lesson-notes .side-drawer__foot{flex-wrap:wrap;row-gap:6px}.lesson-notes__lesson{background:#191c22;border-bottom:1px solid #303137;gap:2px;margin:0;padding:14px 20px;font-size:14px;line-height:1.4;display:grid}.lesson-notes__lesson>span{color:#aaa79f;font-size:12px}.lesson-notes__lesson>b{color:#f4f2ed;overflow-wrap:anywhere;font-weight:600}.lesson-notes__format{border-bottom:1px solid #303137;flex-shrink:0;align-items:center;gap:2px;padding:6px 12px;display:flex}.lesson-notes__format-sep{background:#303137;width:1px;height:18px;margin:0 6px}.lesson-notes__tool{color:#c2bfb8;width:36px;height:36px;font-family:var(--font-interface),sans-serif;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:0;place-items:center;font-size:14px;transition:background .15s,border-color .15s;display:grid}.lesson-notes__tool:hover{color:#f4f2ed;background:#191c22;border-color:#303137}.lesson-notes__expand{color:#c2bfb8;cursor:pointer;background:0 0;border:1px solid #74767d;place-items:center;width:36px;height:36px;display:grid}.lesson-notes__expand[aria-pressed=true]{color:#141518;background:#eae7df;border-color:#eae7df}.lesson-notes__editor{resize:none;color:#f4f2ed;width:100%;min-height:160px;font-family:var(--font-interface),sans-serif;background:0 0;border:none;outline:none;flex:1;padding:18px 20px;font-size:15px;line-height:1.75}.lesson-notes__editor::placeholder{color:#74767d}.lesson-notes__status{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:inline-flex}.lesson-notes__status-mark{background:var(--cosmetic-accent);flex-shrink:0;width:8px;height:8px}.lesson-notes__status-mark[data-status=saving]{background:var(--color-warning)}.lesson-notes__status-mark[data-status=error]{background:var(--color-danger)}.lesson-notes__retry{color:var(--cosmetic-accent-hover);font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.lesson-notes__facts{flex-wrap:wrap;align-items:center;gap:6px 14px;display:inline-flex}.lesson-notes__all{color:var(--cosmetic-accent-hover);text-decoration:none}.lesson-notes__all:hover{text-underline-offset:3px;text-decoration:underline}@media (prefers-reduced-motion:reduce){.lesson-notes__tool{transition:none}}@media (pointer:coarse){.lesson-notes .side-drawer__close,.lesson-notes__expand,.lesson-notes__tool{width:44px;height:44px}}.lesson-next-bar{grid-template-columns:minmax(0,1fr);display:grid}.lesson-next-bar__preview{border-bottom:1px solid var(--color-border-default)}.lesson-next-bar__actions{z-index:1;flex-wrap:wrap;align-items:center;gap:12px;padding:16px 20px;display:flex;position:relative}.lesson-next-bar__hint{font-family:var(--font-mono,monospace);color:var(--color-text-muted);margin:0;font-size:11px;line-height:1.5}@media (min-width:768px){.lesson-next-bar{grid-template-columns:minmax(0,1fr) auto}.lesson-next-bar__preview{border-bottom:0;border-right:1px solid var(--color-border-default)}.lesson-next-bar__actions{flex-wrap:nowrap;align-items:stretch;gap:0;padding:0}.lesson-next-bar__hint{border-right:1px solid var(--color-border-default);align-items:center;max-width:240px;padding:0 24px;display:flex}}.lesson-rating-qa-grid{border-top:1px solid var(--color-border-subtle);grid-template-columns:minmax(0,1fr);gap:24px;margin-top:40px;padding-top:36px;display:grid}@media (min-width:1280px){.lesson-rating-qa-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:32px;margin-top:56px;padding-top:48px}}.lesson-author-card{border:1px solid var(--color-border-subtle);background:var(--color-bg-sunken);transition:border-color .15s,background .15s}a:hover>.lesson-author-card{border-color:var(--cosmetic-accent)}@supports (color:color-mix(in lab,red,red)){a:hover>.lesson-author-card{border-color:color-mix(in srgb,var(--cosmetic-accent) 40%,transparent)}}a:hover>.lesson-author-card{background:var(--cosmetic-accent)}@supports (color:color-mix(in lab,red,red)){a:hover>.lesson-author-card{background:color-mix(in srgb,var(--cosmetic-accent) 3%,transparent)}}@media (prefers-reduced-motion:reduce){.lesson-author-card{transition:none}}.chx-hero{gap:32px;margin-bottom:40px}.chx-body,.chx-hero{grid-template-columns:minmax(0,1fr);align-items:start;display:grid}.chx-body{gap:40px}.chx-rail{flex-direction:column;gap:36px;display:flex}@media (min-width:1081px){.chx-hero{grid-template-columns:minmax(0,1.6fr) minmax(380px,1fr);gap:56px;margin-bottom:56px}.chx-body{grid-template-columns:minmax(0,1.85fr) minmax(320px,1fr);gap:48px}.chx-rail{position:sticky}}.challenge-instructions p{font-family:var(--font-interface),sans-serif;color:#c2bfb8;margin:0 0 16px;font-size:15px;line-height:1.75}.challenge-instructions h1,.challenge-instructions h2,.challenge-instructions h3{font-family:var(--font-display),sans-serif;letter-spacing:0;text-transform:none;color:#f4f2ed;margin:28px 0 12px;font-weight:600;line-height:1.1}.challenge-instructions h1{font-size:32px}.challenge-instructions h2{font-size:28px}.challenge-instructions h3{margin:24px 0 10px;font-size:24px}.challenge-instructions ol,.challenge-instructions ul{font-family:var(--font-interface),sans-serif;color:#c2bfb8;margin:0 0 16px;padding-left:1.4em;font-size:15px;line-height:1.7}.challenge-instructions :is(ul,ol)>li::marker{color:#aaa79f;font-family:var(--font-interface),sans-serif}.challenge-instructions code{font-family:var(--font-mono);color:#f4f2ed;background:#191c22;border:1px solid #303137;padding:1px 6px;font-size:.86em}.challenge-instructions pre{background:#121418;border:1px solid #303137;margin:0 0 20px;padding:16px 20px;overflow-x:auto}.challenge-instructions pre code{color:#c2bfb8;background:0 0;border:none;padding:0;font-size:13px}.challenge-instructions blockquote{color:#c2bfb8;border-left:3px solid #74767d;margin:0 0 16px;padding:10px 16px}.challenge-instructions strong{color:#f4f2ed;font-weight:600}.challenge-instructions a{color:var(--cosmetic-accent-hover);text-underline-offset:3px;text-decoration:underline}.challenge-instructions hr{border:none;border-top:1px solid #303137;margin:24px 0}.legal-back-link{color:var(--color-text-muted);font-size:13px;font-family:var(--font-mono);text-decoration:none;transition:color .2s}.legal-back-link:hover{color:var(--color-text-secondary)}.class-roster__item{border-bottom:1px solid var(--color-border-subtle);justify-content:space-between;align-items:baseline;gap:12px;min-width:0;padding:7px 0;display:flex}.class-roster__name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--color-text-primary);font-size:14px;overflow:hidden}.class-roster__meta{font-family:var(--font-mono,monospace);letter-spacing:.08em;color:var(--color-text-muted);flex:none;font-size:10.5px}.pg-crumb{max-width:100%;font-family:var(--font-interface),sans-serif;color:#aaa79f;flex-wrap:wrap;align-items:center;gap:4px 8px;margin-bottom:26px;font-size:13px;display:inline-flex}.pg-crumb b{color:#c2bfb8;font-weight:600}.pg-crumb__sep{color:#74767d}.pg-crumb__leaf{color:#f4f2ed;overflow-wrap:anywhere;font-weight:600}.pg-crumb__link{color:inherit;overflow-wrap:anywhere;text-decoration:none;transition:color .15s}.pg-crumb__link:hover{color:#f4f2ed;text-decoration:underline;-webkit-text-decoration-color:var(--cosmetic-accent);text-decoration-color:var(--cosmetic-accent);text-underline-offset:4px}.pg-eyebrow{font:600 13px/1.5 var(--font-interface),sans-serif;letter-spacing:0;text-transform:none;color:#aaa79f;margin-bottom:14px}.pg-eyebrow b{color:var(--cosmetic-accent-hover);font-weight:600}.pg-title{font-family:var(--font-display),sans-serif;letter-spacing:0;color:#f4f2ed;margin:0 0 18px;font-size:clamp(40px,5.4vw,72px);font-weight:700;line-height:1}.pg-lede{color:#c2bfb8;max-width:62ch;margin:0 0 44px;font-size:15px;line-height:1.65}.cls-stack{gap:22px;display:grid}.cls-card{border:1px solid var(--color-border-default);border-left:3px solid var(--color-brand-turquoise);background:var(--color-bg-sunken);padding:22px 24px}.cls-card--taught{border-left-color:var(--color-rarity-rare)}.cls-card__eyebrow{font-family:var(--font-interface),sans-serif;letter-spacing:0;text-transform:none;color:var(--color-text-muted);margin-bottom:6px;font-size:12px}.cls-card__title{font-family:var(--font-sans);letter-spacing:-.01em;color:var(--color-text-primary);margin:0 0 4px;font-size:22px;font-weight:700}.cls-stats{flex-wrap:wrap;gap:10px;margin-bottom:20px;display:flex}.cls-stat{background:#121418;border:1px solid #303137;flex:116px;padding:10px 12px}.cls-stat__value{font-family:var(--font-mono);color:var(--color-text-primary);font-size:19px;font-weight:700;line-height:1.1}.cls-stat__value[data-tone=accent]{color:var(--color-brand-turquoise)}.cls-stat__value[data-tone=warning]{color:var(--color-warning)}.cls-stat__of{color:var(--color-text-muted);font-size:12px}.cls-stat__label{margin-top:4px}.cls-stat__label,.cls-subhead{font-family:var(--font-interface),sans-serif;letter-spacing:0;text-transform:none;color:var(--color-text-muted);font-size:12px}.cls-subhead{margin:18px 0 10px}.cls-card__title+.cls-subhead{margin-top:12px}.cls-people{gap:0;margin:0;padding:0;list-style:none;display:grid}.cls-person{border-bottom:1px solid var(--color-border-subtle);grid-template-columns:minmax(0,1fr) minmax(90px,260px) 200px;align-items:center;gap:6px 16px;padding:10px 0;display:grid}@media (max-width:560px){.cls-person{grid-template-columns:minmax(0,1fr) auto}.cls-person__bar{grid-column:1/-1}}.cls-person:last-child{border-bottom:none}.cls-person[data-self=true] .cls-person__name{color:var(--color-brand-turquoise)}.cls-person__name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--color-text-primary);font-size:14px;overflow:hidden}.cls-person__name a{color:inherit;text-decoration:none}.cls-person__name a:hover{color:var(--color-brand-turquoise)}.cls-person__who{align-items:center;min-width:0;display:flex}.cls-person__who>.add-friend-mark,.cls-person__who>.add-friend-sent{flex:none}.cls-person__meta{letter-spacing:0;white-space:nowrap;text-align:right}.cls-empty,.cls-person__meta{font-family:var(--font-interface),sans-serif;color:var(--color-text-muted);font-size:12px}.cls-empty{margin:0}.cls-group{margin-bottom:40px}.cls-group__school{font-family:var(--font-sans);color:var(--color-text-primary);margin:0 0 2px;font-size:20px;font-weight:700}.cls-group__city{color:var(--color-text-muted);margin-bottom:18px}.cls-group__city,.cls-group__intake{font-family:var(--font-interface),sans-serif;letter-spacing:0;text-transform:none;font-size:12px}.cls-group__intake{color:var(--color-text-faint);margin:0 0 12px}.cls-card--work{border-left-color:var(--color-warning)}.cls-work-block{margin:4px 0 20px}.cls-work{margin:0;padding:0;list-style:none}.cls-work__row{border-bottom:1px solid var(--color-border-subtle);grid-template-columns:auto minmax(0,1fr) auto;align-items:baseline;gap:4px 12px;padding:10px 0;display:grid}.cls-work__row:last-child{border-bottom:none}.cls-work__mark{width:14px;font-family:var(--font-mono);color:var(--color-text-muted);text-align:center;font-size:12px}.cls-work__row[data-state=done] .cls-work__mark{color:var(--color-brand-turquoise)}.cls-work__row[data-state=late] .cls-work__mark{color:var(--color-danger)}.cls-work__row[data-state=done] .cls-work__title{color:var(--color-text-muted);text-decoration:line-through}.cls-work__body{gap:2px;min-width:0;display:grid}.cls-work__title{color:var(--color-text-primary);font-size:14px;text-decoration:none}.cls-work__title:hover{color:var(--color-brand-turquoise)}.cls-work__note{overflow-wrap:anywhere;line-height:1.5}.cls-work__due,.cls-work__note{font-family:var(--font-interface),sans-serif;color:var(--color-text-muted);font-size:12px}.cls-work__due{letter-spacing:0;white-space:nowrap}.cls-work__row[data-state=late] .cls-work__due{color:var(--color-danger)}.cls-work__remove{font-family:var(--font-interface),sans-serif;letter-spacing:0;text-transform:none;color:var(--color-text-muted);border:1px solid var(--color-border-default);cursor:pointer;white-space:nowrap;background:0 0;padding:4px 9px;font-size:12px;text-decoration:none;display:inline-block}.cls-work__remove:hover:not(:disabled){color:var(--cosmetic-accent);border-color:var(--cosmetic-accent)}@supports (color:color-mix(in lab,red,red)){.cls-work__remove:hover:not(:disabled){border-color:color-mix(in srgb,var(--cosmetic-accent) 45%,transparent)}}.cls-work__remove[data-tone=bad]:hover:not(:disabled){color:var(--color-danger);border-color:var(--color-state-danger)}.cls-work__remove:disabled{opacity:.4;cursor:default}.cls-work__tools{flex-shrink:0;gap:6px;display:flex}.cls-assign{background:#121418;border:1px solid #303137;margin-top:14px}.cls-assign__head{font-family:var(--font-interface),sans-serif;letter-spacing:0;text-transform:none;color:var(--color-text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;padding:9px 12px;font-size:12px;list-style:none}.cls-assign__head::-webkit-details-marker{display:none}.cls-assign__head:before{content:"+ ";color:var(--color-text-muted)}.cls-assign[open]>.cls-assign__head:before{content:"− ";color:var(--color-brand-turquoise)}.cls-assign__head:hover{color:var(--color-text-primary)}.cls-assign__form{border-top:1px solid var(--color-border-subtle);gap:12px;padding:4px 12px 14px;display:grid}.cls-field{gap:5px;display:grid}.cls-field__label{letter-spacing:0;text-transform:none;color:#c2bfb8;font-weight:600}.cls-field__hint,.cls-field__label{font-family:var(--font-interface),sans-serif;font-size:13px}.cls-field__hint{color:#aaa79f;line-height:1.5}.cls-input{color:#f4f2ed;width:100%;min-height:44px;font-family:var(--font-interface),sans-serif;background:#0b0c0e;border:1px solid #74767d;outline:none;padding:10px 12px;font-size:14px}.cls-input:focus{border-color:var(--cosmetic-accent)}.cls-input option{background:var(--color-bg-elevated);color:var(--color-text-primary);padding:3px 0}.cls-alert{border-left:2px solid var(--cosmetic-accent);font-family:var(--font-interface),sans-serif;color:#c2bfb8;background:#121418;margin:0;padding:10px 12px;font-size:13px;line-height:1.5}.cls-alert[data-tone=bad]{border-left-color:var(--color-state-danger);color:var(--color-state-danger);background:#121418}.cls-grid2{grid-template-columns:1fr;gap:12px;display:grid}@media (min-width:560px){.cls-grid2{grid-template-columns:repeat(2,minmax(0,1fr))}}.cls-input--code{font-family:var(--font-mono),monospace;resize:vertical;tab-size:2;font-size:13px;line-height:1.6}.tle-form{gap:22px;margin-top:28px;display:grid}.tle-meta{background:#121418;border:1px solid #303137;gap:14px;padding:18px;display:grid}.tle-grid3,.tle-grid4{grid-template-columns:1fr;align-items:start;gap:14px;display:grid}@media (min-width:620px){.tle-grid3,.tle-grid4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1000px){.tle-grid4{grid-template-columns:repeat(4,minmax(0,1fr))}.tle-grid3{grid-template-columns:repeat(3,minmax(0,1fr))}}.tle-editor{gap:8px;display:grid}.tle-editor__head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.tle-actions{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.tle-back{font-family:var(--font-interface),sans-serif;letter-spacing:0;text-transform:none;color:var(--color-text-muted);font-size:12px;text-decoration:none}.tle-back:hover{color:var(--cosmetic-accent)}.cls-card__bar{justify-content:space-between;align-items:baseline;gap:14px;margin-bottom:14px}.cls-card__bar,.cls-chips{flex-wrap:wrap;display:flex}.cls-chips{gap:8px}.cls-chip{font-family:var(--font-interface),sans-serif;letter-spacing:0;color:var(--color-text-muted);border:1px solid var(--color-border-default);white-space:nowrap;padding:3px 9px;font-size:12px}.cls-chip b{color:var(--color-text-secondary);font-weight:700}.cls-chip[data-tone=accent]{border-color:var(--cosmetic-accent)}@supports (color:color-mix(in lab,red,red)){.cls-chip[data-tone=accent]{border-color:color-mix(in srgb,var(--cosmetic-accent) 35%,transparent)}}.cls-chip[data-tone=accent] b{color:var(--cosmetic-accent)}.cls-chip[data-tone=warning]{border-color:var(--color-state-warning)}.cls-chip[data-tone=warning] b{color:var(--color-state-warning)}.cls-teachers{flex-wrap:wrap;gap:8px;margin:0 0 18px;padding:0;list-style:none;display:flex}.cls-teacher{border:1px solid var(--color-border-default);background:var(--color-bg-sunken);align-items:center;gap:10px;padding:8px 12px 8px 8px;display:flex}.cls-teacher__mark{border:1px solid var(--cosmetic-accent);width:28px;height:28px;font:700 13px var(--font-display);color:#f4f2ed;background:#191c22;flex-shrink:0;place-items:center;display:grid}.cls-teacher__body{line-height:1.35;display:grid}.cls-teacher__body b{font-family:var(--font-sans);color:var(--color-text-primary);font-size:13px;font-weight:700}.cls-teacher__body span{font-family:var(--font-interface),sans-serif;color:var(--color-text-muted);font-size:12px}.cls-people--ranked .cls-person{grid-template-columns:26px minmax(0,1fr) minmax(90px,260px) 200px}.cls-person__rank{font-family:var(--font-mono);color:var(--color-text-faint);font-size:11px}.cls-person[data-self=true] .cls-person__rank,.cls-person__you{color:var(--cosmetic-accent)}.cls-person__you{font:700 12px var(--font-interface),sans-serif;letter-spacing:0;text-transform:none;border:1px solid var(--cosmetic-accent);margin-left:8px;padding:1px 5px}@supports (color:color-mix(in lab,red,red)){.cls-person__you{border:1px solid color-mix(in srgb,var(--cosmetic-accent) 35%,transparent)}}@media (max-width:560px){.cls-people--ranked .cls-person{grid-template-columns:22px minmax(0,1fr)}.cls-people--ranked .cls-person .cls-person__bar,.cls-people--ranked .cls-person .cls-person__meta{grid-column:1/-1}}.pb-cols{grid-template-columns:1fr;gap:16px;display:grid}@media (min-width:900px){.pb-cols{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}.pb-panel{background:#121418;border:1px solid #303137;align-content:start;gap:10px;padding:16px;display:grid}.pb-panel__head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.pb-chosen{counter-reset:none;gap:4px;margin:0;padding:0;list-style:none;display:grid}.pb-chosen__row{border:1px solid var(--color-border-subtle);background:var(--color-bg-sunken);grid-template-columns:26px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 10px;display:grid}.pb-chosen__rank{font-family:var(--font-mono);color:var(--cosmetic-accent);font-size:11px;font-weight:700}.pb-chosen__title,.pb-pool__title{min-width:0;font-family:var(--font-sans);color:var(--color-text-primary);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:8px;font-size:13px;display:flex;overflow:hidden}.pb-chosen__tools{gap:4px;display:flex}.pb-tag{font:700 12px var(--font-interface),sans-serif;letter-spacing:0;text-transform:none;color:var(--cosmetic-accent);border:1px solid var(--cosmetic-accent);flex-shrink:0;padding:1px 5px}@supports (color:color-mix(in lab,red,red)){.pb-tag{border:1px solid color-mix(in srgb,var(--cosmetic-accent) 35%,transparent)}}.pb-icon{width:24px;height:24px;font-family:var(--font-mono);color:var(--color-text-muted);border:1px solid var(--color-border-default);cursor:pointer;background:0 0;place-items:center;font-size:12px;display:grid}.pb-icon:hover:not(:disabled){color:var(--cosmetic-accent);border-color:var(--cosmetic-accent)}@supports (color:color-mix(in lab,red,red)){.pb-icon:hover:not(:disabled){border-color:color-mix(in srgb,var(--cosmetic-accent) 45%,transparent)}}.pb-icon[data-tone=bad]:hover:not(:disabled){color:var(--color-danger);border-color:var(--color-state-danger)}.pb-icon:disabled{opacity:.3;cursor:default}.pb-pool{gap:2px;max-height:420px;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.pb-pool__row{text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;grid-template-columns:16px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;padding:7px 8px;display:grid}.pb-pool__row:hover{border-color:var(--cosmetic-accent)}@supports (color:color-mix(in lab,red,red)){.pb-pool__row:hover{border-color:color-mix(in srgb,var(--cosmetic-accent) 35%,transparent)}}.pb-pool__row:hover{background:var(--cosmetic-accent)}@supports (color:color-mix(in lab,red,red)){.pb-pool__row:hover{background:color-mix(in srgb,var(--cosmetic-accent) 4%,transparent)}}.pb-pool__plus{font-family:var(--font-mono);color:var(--cosmetic-accent);font-size:13px}.pb-pool__cat{font:12px var(--font-interface),sans-serif;letter-spacing:0;color:var(--color-text-muted);flex-shrink:0}.cls-card--resource{border-left-color:#74767d}.cls-res{gap:14px;margin:0;padding:0;list-style:none;display:grid}.cls-res__item{border-bottom:1px solid var(--color-border-subtle);padding:12px 0}.cls-res__item:last-child{border-bottom:none}.cls-res__head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:14px;display:flex}.cls-res__title{color:var(--color-text-primary);font-size:14px;text-decoration:none}a.cls-res__title:hover{color:var(--cosmetic-accent-hover)}.cls-res__meta{font-family:var(--font-interface),sans-serif;color:var(--color-text-muted);white-space:nowrap;font-size:12px}.cls-res__body{background:var(--color-bg-elevated);font-family:var(--font-mono);white-space:pre-wrap;overflow-wrap:anywhere;border-left:2px solid #74767d;margin:10px 0 0;padding:11px 13px;font-size:12px;line-height:1.6}.cls-check,.cls-res__body{color:var(--color-text-secondary)}.cls-check{cursor:pointer;align-items:center;gap:9px;font-size:12.5px;display:flex}.cls-check input{accent-color:var(--color-brand-turquoise);flex-shrink:0}.cw-count{color:var(--cosmetic-accent);font-weight:700}.cw-filters{gap:8px;margin-bottom:8px;display:grid}.cw-cats{flex-wrap:wrap;gap:4px;display:flex}.cw-cat{font-family:var(--font-interface),sans-serif;letter-spacing:0;text-transform:none;color:var(--color-text-muted);border:1px solid var(--color-border-default);cursor:pointer;background:0 0;padding:4px 10px;font-size:12px}.cw-cat:hover{color:var(--color-text-secondary)}.cw-cat[data-active=true]{color:var(--cosmetic-accent);border-color:var(--cosmetic-accent)}@supports (color:color-mix(in lab,red,red)){.cw-cat[data-active=true]{border-color:color-mix(in srgb,var(--cosmetic-accent) 45%,transparent)}}.cw-cat[data-active=true]{background:var(--cosmetic-accent)}@supports (color:color-mix(in lab,red,red)){.cw-cat[data-active=true]{background:color-mix(in srgb,var(--cosmetic-accent) 6%,transparent)}}.cw-pool{border:1px solid var(--color-border-default);background:#0009;gap:2px;max-height:260px;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.cw-pool__row{text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:14px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;padding:7px 10px;display:grid}.cw-pool__row:hover{background:var(--cosmetic-accent)}@supports (color:color-mix(in lab,red,red)){.cw-pool__row:hover{background:color-mix(in srgb,var(--cosmetic-accent) 5%,transparent)}}.cw-pool__row[data-chosen=true]{background:var(--cosmetic-accent)}@supports (color:color-mix(in lab,red,red)){.cw-pool__row[data-chosen=true]{background:color-mix(in srgb,var(--cosmetic-accent) 10%,transparent)}}.cw-pool__mark{font-family:var(--font-mono);color:var(--color-text-faint);font-size:10px}.cw-pool__row[data-chosen=true] .cw-pool__mark{color:var(--cosmetic-accent)}.cw-pool__title{min-width:0;font-family:var(--font-sans);color:var(--color-text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.cw-pool__cat{font:12px var(--font-interface),sans-serif;letter-spacing:0;color:var(--color-text-muted);flex-shrink:0}.gs-panel{max-height:min(70vh,460px);font-family:var(--font-interface),sans-serif;z-index:60;background:#121418;border:1px solid #303137;padding:0;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 12px 30px #0006}.gs-group-label{font:600 12px var(--font-interface),sans-serif;letter-spacing:0;text-transform:none;color:#aaa79f;padding:12px 14px 6px}.gs-row{text-align:left;cursor:pointer;background:0 0;border:0;border-left:2px solid #0000;align-items:center;gap:12px;width:100%;min-height:44px;padding:6px 14px 6px 12px;transition:background-color .12s,border-color .12s;display:flex}.gs-row--active{border-left-color:var(--cosmetic-accent);background:#191c22}.gs-row-mark{border:1px solid #303137;flex-shrink:0;place-items:center;width:24px;height:24px;display:grid}.gs-row-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.gs-row-title{color:#f4f2ed;font-size:14px;font-weight:600}.gs-row-sub,.gs-row-title{font-family:var(--font-interface),sans-serif;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.gs-row-meta,.gs-row-sub{color:#aaa79f;font-size:12px}.gs-row-meta{font-family:var(--font-interface),sans-serif;flex-shrink:0}.gs-empty{color:#aaa79f;justify-content:space-between;align-items:center;gap:12px;padding:14px;display:flex}.gs-empty,.gs-empty-action{font-family:var(--font-interface),sans-serif;font-size:13px}.gs-empty-action{min-height:36px;color:#f4f2ed;cursor:pointer;background:0 0;border:1px solid #74767d;flex-shrink:0;padding:0 12px;font-weight:600;transition:border-color .14s,background-color .14s}.gs-empty-action:hover{border-color:var(--cosmetic-accent);background:#191c22}.gs-footer{font-family:var(--font-interface),sans-serif;color:#aaa79f;border-top:1px solid #303137;gap:14px;padding:8px 14px;font-size:12px;display:flex}.wr-closed{text-align:center;justify-items:center;gap:14px;padding-top:clamp(48px,12vh,140px);display:grid}.wr-closed__eyebrow{font:600 13px var(--font-interface),sans-serif;letter-spacing:0;text-transform:none;color:var(--cosmetic-accent-hover);margin:0}.wr-closed__year{font-family:var(--font-display),sans-serif;color:#f4f2ed;margin:0;font-size:clamp(64px,18vw,160px);font-weight:700;line-height:1}.wr-closed__lede{max-width:44ch;font-family:var(--font-body);color:var(--color-text-secondary);margin:0;font-size:15px;line-height:1.7}.wr-closed__when{font:14px var(--font-interface),sans-serif;color:#c2bfb8;border:1px solid #74767d;margin:10px 0 0;padding:10px 18px}.wr-closed__when b{color:var(--cosmetic-accent-hover)}.wr-closed__hint{font:13px var(--font-interface),sans-serif;color:#aaa79f;margin:0}.wr-closed .btn{justify-self:center;margin-top:10px}.tk-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.tk-row{border:1px solid #303137;border-left:3px solid var(--cosmetic-accent);background:#121418;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:14px 16px;text-decoration:none;transition:border-color .15s,background .15s;display:grid}.tk-row:hover{border-color:#74767d;border-left-color:var(--cosmetic-accent);background:#191c22}.tk-row__body{gap:4px;min-width:0;display:grid}.tk-row__subject{font-family:var(--font-interface),sans-serif;color:#f4f2ed;overflow-wrap:anywhere;font-size:15px;font-weight:700}.tk-row__meta{font:12px var(--font-interface),sans-serif;color:#aaa79f}.tk-status{font:600 12px var(--font-interface),sans-serif;letter-spacing:0;text-transform:none;white-space:nowrap;border:1px solid;flex-shrink:0;padding:3px 9px}.tk-status[data-tone=accent]{color:var(--cosmetic-accent-hover);border-color:var(--cosmetic-accent)}.tk-status[data-tone=warning]{color:var(--color-state-warning);border-color:var(--color-state-warning)}.tk-status[data-tone=muted]{color:#aaa79f;border-color:#74767d}.tk-head{align-items:center;gap:16px;margin:18px 0 22px;display:flex}.tk-thread{gap:10px;margin:0 0 24px;padding:0;list-style:none;display:grid}.tk-msg{background:#121418;border:1px solid #303137;border-left:3px solid #74767d;padding:12px 15px}.tk-msg[data-staff=true]{color:#141518;border-color:#eae7df;border-left-color:var(--cosmetic-accent);background:#eae7df}.tk-msg__who{font:600 12px var(--font-interface),sans-serif;letter-spacing:0;text-transform:none;color:#aaa79f;margin-bottom:6px;display:block}.tk-msg[data-staff=true] .tk-msg__who{color:#55524d}.tk-msg[data-staff=true] .tk-msg__body{color:#141518}.tk-msg__body{font-family:var(--font-body);color:var(--color-text-secondary);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:14px;line-height:1.7}.tk-reply{background:#121418;border:1px solid #303137;padding:16px}.tk-follow-up{font:inherit;color:var(--cosmetic-accent-hover);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.tk-new{gap:16px;padding:20px;display:grid}.tk-new__lede{font-family:var(--font-body);color:var(--color-text-secondary);margin:0;font-size:14px;line-height:1.6}.tk-new__message{resize:vertical;min-height:140px;line-height:1.6}.tk-new__error{font:13px/1.5 var(--font-interface),sans-serif;color:var(--color-state-danger);margin:0}.tk-checklist{color:#141518;background:#eae7df;border:0;margin-top:6px;padding:14px 16px}.tk-checklist__title{font:700 13px var(--font-interface),sans-serif;letter-spacing:0;text-transform:none;color:#141518;margin:0 0 8px}.tk-checklist ul{color:#55524d;margin:0;padding-left:18px;font-size:14px;line-height:1.7}.navbar-badge{min-width:16px;height:16px;font:700 11px var(--font-mono);text-align:center;color:#0b0c0e;background:var(--cosmetic-accent);padding:0 4px;line-height:16px;position:absolute;top:2px;right:2px}.friend-mark{vertical-align:-2px;flex-shrink:0;margin-left:6px;line-height:0}.friend-mark,.wr-chip{align-items:center;display:inline-flex}.wr-chip{height:32px;font:600 13px var(--font-interface),sans-serif;letter-spacing:0;text-transform:none;color:#f4f2ed;border:1px solid var(--cosmetic-accent);cursor:pointer;background:0 0;gap:7px;padding:0 10px;transition:background-color .15s,border-color .15s}.wr-chip:hover{border-color:var(--cosmetic-accent-hover);background:#191c22}.wr-chip__year{font-family:var(--font-mono),monospace;color:#c2bfb8}@media (max-width:560px){.wr-chip__year{display:none}}@media (max-width:420px){.wr-chip__label{display:none}}.wr-chip--fresh{color:#0b0c0e;background:var(--cosmetic-accent)}.wr-chip--fresh .wr-chip__year{color:#0b0c0e}.wr-chip--fresh:hover{background:var(--cosmetic-accent-hover)}@media (prefers-reduced-motion:reduce){.wr-chip{transition:none}}.fp-panel{width:340px}.fp-panel,.notif-panel{z-index:1000;background:#121418;border:1px solid #303137;max-height:480px;position:absolute;top:calc(100% + 10px);right:0;overflow-y:auto;box-shadow:0 12px 30px #0006}.notif-panel{width:360px}@media (max-width:767px){.fp-panel,.notif-panel{width:auto;position:fixed;top:64px;left:8px;right:8px}}.fp-head{z-index:1;background:#121418;border-bottom:1px solid #303137;justify-content:space-between;gap:12px;padding:14px 18px;position:sticky;top:0}.fp-head,.fp-head-label{align-items:center;display:flex}.fp-head-label{font:600 13px var(--font-interface),sans-serif;letter-spacing:0;text-transform:none;color:#f4f2ed;gap:6px}.fp-head-rule{background:var(--cosmetic-accent);width:12px;height:1px;display:inline-block}.fp-head-count{font:700 12px var(--font-mono),monospace;color:var(--cosmetic-accent-hover)}.fp-note{font:13px/1.6 var(--font-interface),sans-serif;padding:22px 18px}.fp-note,.fp-section{color:#aaa79f;margin:0}.fp-section{font:600 12px var(--font-interface),sans-serif;letter-spacing:0;text-transform:none;padding:12px 18px 6px}.fp-list{margin:0;padding:0;list-style:none}.fp-row{border-bottom:1px solid #303137;flex-wrap:wrap;align-items:center;gap:6px 10px;padding:9px 18px;display:flex}.fp-row:last-child{border-bottom:0}.fp-avatar{width:28px;height:28px;font:700 12px var(--font-display);color:#f4f2ed;object-fit:cover;background:#191c22;border:1px solid #44454a;flex-shrink:0;place-items:center;display:grid}.fp-identity{flex-direction:column;flex:64px;gap:1px;min-width:0;display:flex}.fp-name{font-family:var(--font-interface),sans-serif;color:#f4f2ed;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;text-decoration:none;overflow:hidden}a.fp-name:hover{color:var(--cosmetic-accent-hover)}.fp-meta{font:12px var(--font-interface),sans-serif;color:#aaa79f}.fp-actions{flex-shrink:0;align-items:center;gap:6px;margin-left:auto;display:flex}.fp-error{font:13px var(--font-interface),sans-serif;color:var(--color-state-danger)}.add-friend{vertical-align:middle;align-items:center;gap:6px;margin-left:8px;display:inline-flex}.add-friend-btn{font:600 12px var(--font-interface),sans-serif;letter-spacing:0;text-transform:none;color:var(--cosmetic-accent-hover);border:1px solid var(--cosmetic-accent);cursor:pointer;background:0 0;padding:2px 7px}.add-friend-btn:hover:not(:disabled){color:#0b0c0e;background:var(--cosmetic-accent)}.add-friend-btn:focus-visible{outline:2px solid var(--cosmetic-accent-hover);outline-offset:3px}.add-friend-btn:disabled{opacity:.55;cursor:progress}@media (pointer:coarse){.add-friend-btn{position:relative}.add-friend-btn:before{content:"";position:absolute;inset:-14px -6px}}.add-friend-sent{font:12px var(--font-interface),sans-serif;color:#aaa79f;margin-left:8px}.add-friend-mark{margin-left:6px}.add-friend-error{font:12px var(--font-interface),sans-serif;color:var(--color-state-danger);white-space:normal}.fp-find{border-bottom:1px solid #303137;flex-direction:column;gap:6px;padding:0 18px 12px;display:flex}.fp-find-label{padding-left:0;padding-right:0}.fp-find-row{gap:6px;display:flex}.fp-find-input{min-width:0;min-height:44px;font:14px var(--font-interface),sans-serif;color:#f4f2ed;background:#0b0c0e;border:1px solid #74767d;flex:1;padding:0 12px}.fp-find-input:focus-visible{outline:2px solid var(--cosmetic-accent-hover);outline-offset:-1px}.fp-find-input[aria-invalid=true]{border-color:var(--color-state-danger)}.dlc{--dlc-ink:var(--cosmetic-accent)}@supports (color:color-mix(in lab,red,red)){.dlc{--dlc-ink:color-mix(in srgb,var(--cosmetic-accent) 58%,var(--color-text-primary))}}.dlc{gap:18px;padding:20px;display:grid}.dark .dlc{--dlc-ink:var(--cosmetic-accent)}.dlc .empty-state{padding:40px 24px}.dlc-friends{border:0;min-width:0;margin:0;padding:0}.dlc-friends legend{margin-bottom:8px;padding:0}.dlc-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.dlc-card{min-width:0;position:relative}.dlc-card__input{opacity:0;width:1px;height:1px;position:absolute}.dlc-card__box{background:var(--color-bg-sunken);border:1px solid var(--color-border-default);cursor:pointer;height:100%;transition:border-color var(--dur-fast) ease,background var(--dur-fast) ease;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.dlc-card__box:hover{border-color:var(--color-text-muted)}.dlc-card__input:checked+.dlc-card__box{background:var(--cosmetic-accent)}@supports (color:color-mix(in lab,red,red)){.dlc-card__input:checked+.dlc-card__box{background:color-mix(in srgb,var(--cosmetic-accent) 8%,var(--color-bg-sunken))}}.dlc-card__input:checked+.dlc-card__box{border-color:var(--dlc-ink)}.dlc-card__input:focus-visible+.dlc-card__box{outline:2px solid var(--dlc-ink);outline-offset:2px}.dlc-card__avatar{width:40px;height:40px;font:700 13px var(--font-sans);color:var(--color-text-secondary);background:var(--color-bg-elevated);border:1px solid var(--color-border-default);object-fit:cover;place-items:center;display:grid}.dlc-card__who{gap:3px;min-width:0;display:grid}.dlc-card__name{font:600 14px var(--font-interface),sans-serif;color:#f4f2ed}.dlc-card__meta,.dlc-card__name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.dlc-card__meta{font:12px var(--font-interface),sans-serif;color:#aaa79f}.dlc-card__tick{border:1px solid #74767d;width:16px;height:16px}.dlc-card__input:checked+.dlc-card__box .dlc-card__tick{background:var(--dlc-ink);border-color:var(--dlc-ink);box-shadow:inset 0 0 0 3px #121418}.dlc-card[data-busy=true] .dlc-card__box{cursor:default;border-style:dashed}.dlc-card[data-busy=true] .dlc-card__box:hover{border-color:var(--color-border-default)}.dlc-card[data-busy=true] .dlc-card__avatar{opacity:.6}.dlc-card__busy{font:12px var(--font-interface),sans-serif;color:#aaa79f;grid-column:2/-1}.dlc-card__link{color:var(--dlc-ink);text-underline-offset:3px;text-decoration:underline}.dlc-card--loading{background:var(--color-bg-sunken);border:1px solid var(--color-border-subtle);height:66px}.dlc-note{color:var(--color-text-secondary);margin:10px 0 0;font-size:13px;line-height:1.55}.dlc .cls-field .dlc-note{margin:0}@media (prefers-reduced-motion:reduce){.dlc-card__box{transition:none}}[data-sonner-toaster] [data-sonner-toast][data-styled=true]{--toast-edge:var(--cosmetic-accent);border:1px solid #74767d;border-left:3px solid var(--toast-edge);font-family:var(--font-interface),sans-serif;color:#f4f2ed;background:#121418;gap:12px;padding:14px 16px;box-shadow:0 12px 30px #0006}[data-sonner-toaster] [data-sonner-toast][data-type=success]{--toast-edge:var(--color-state-success)}[data-sonner-toaster] [data-sonner-toast][data-type=error]{--toast-edge:var(--color-state-danger)}[data-sonner-toaster] [data-sonner-toast][data-type=warning]{--toast-edge:var(--color-state-warning)}[data-sonner-toaster] [data-sonner-toast][data-type=info]{--toast-edge:#c2bfb8}[data-sonner-toaster] [data-sonner-toast][data-styled=true] [data-icon]{color:var(--toast-edge);margin:0}[data-sonner-toaster] [data-sonner-toast][data-styled=true] [data-title]{font:600 14px/1.45 var(--font-interface),sans-serif;color:#f4f2ed}[data-sonner-toaster] [data-sonner-toast][data-styled=true] [data-description]{font:14px/1.6 var(--font-interface),sans-serif;color:#c2bfb8;margin-top:4px}[data-sonner-toaster] [data-sonner-toast][data-styled=true] [data-button]{height:auto;min-height:44px;font:600 13px var(--font-interface),sans-serif;letter-spacing:0;text-transform:none;border:1px solid var(--cosmetic-accent);background:var(--cosmetic-accent);color:#0b0c0e;padding:0 14px}[data-sonner-toaster] [data-sonner-toast][data-styled=true] [data-cancel]{color:#f4f2ed;background:0 0;border-color:#74767d}[data-sonner-toaster] [data-sonner-toast][data-styled=true] [data-close-button]{color:#c2bfb8;background:#121418;border-color:#74767d}[data-sonner-toaster] [data-sonner-toast][data-styled=true] [data-close-button]:hover{color:#f4f2ed;border-color:var(--toast-edge)}.skip-link{z-index:100;background:var(--cosmetic-accent);color:#0b0c0e;font-family:var(--font-interface),sans-serif;padding:10px 16px;font-size:14px;font-weight:700;text-decoration:none;position:absolute;top:-100px;left:12px}.skip-link:focus{top:12px}#contenu:focus{outline:none}:where(input,textarea,select,[contenteditable=true]):focus-visible{outline-offset:1px;outline:2px solid var(--cosmetic-accent)!important}@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-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-border-style{syntax:"*";inherits:false;initial-value:solid}@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-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@keyframes spin{to{transform:rotate(1turn)}}