/*! tailwindcss v4.2.1 | 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)))){:host,:root{--shimmer-angle:20deg}*,::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-border-style:solid;--tw-leading:initial;--tw-font-weight: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-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0;--scroll-fade-t:0px;--scroll-fade-b:0px;--scroll-fade-s:0px;--scroll-fade-e:0px;--scroll-fade-mask:initial;--shimmer-image:initial;--shimmer-text-fill:initial}}}@layer theme{:host,:root{--font-sans:"Segoe UI",Arial,sans-serif;--font-serif:ui-serif,Georgia,Cambria,"Times New Roman",Times,serif;--font-mono:"JetBrains Mono",monospace;--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-lg:32rem;--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);--font-weight-medium:500;--font-weight-semibold:600;--radius-xs:.125rem;--ease-in-out:cubic-bezier(.4,0,.2,1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:"Segoe UI",Arial,sans-serif;--default-mono-font-family:"JetBrains Mono",monospace}}@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,ui-sans-serif,system-ui,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{-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{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}button{font:inherit}a{color:inherit;text-decoration:none}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.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}.inset-0{inset:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.top-4{top:calc(var(--spacing) * 4)}.top-\[50\%\]{top:50%}.right-2{right:calc(var(--spacing) * 2)}.right-4{right:calc(var(--spacing) * 4)}.left-\[50\%\]{left:50%}.z-50{z-index:50}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.my-1{margin-block:calc(var(--spacing) * 1)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.table{display:table}.field-sizing-content{field-sizing:content}.size-3\.5{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.size-16{width:calc(var(--spacing) * 16);height:calc(var(--spacing) * 16)}.h-6{height:calc(var(--spacing) * 6)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-12{height:calc(var(--spacing) * 12)}.h-32{height:calc(var(--spacing) * 32)}.h-\[calc\(100\%-1px\)\]{height:calc(100% - 1px)}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-px{height:1px}.max-h-\(--radix-select-content-available-height\){max-height:var(--radix-select-content-available-height)}.min-h-16{min-height:calc(var(--spacing) * 16)}.w-fit{width:fit-content}.w-full{width:100%}.max-w-\[calc\(100\%-2rem\)\]{max-width:calc(100% - 2rem)}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-\[8rem\]{min-width:8rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.flex-1{flex:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.origin-\(--radix-select-content-transform-origin\){transform-origin:var(--radix-select-content-transform-origin)}.translate-x-\[-50\%\]{--tw-translate-x:-50%}.translate-x-\[-50\%\],.translate-y-\[-50\%\]{translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-\[-50\%\]{--tw-translate-y:-50%}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-default{cursor:default}.scroll-my-1{scroll-margin-block:calc(var(--spacing) * 1)}.grid-rows-\[auto_1fr\]{grid-template-rows:auto 1fr}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.place-content-center{place-content:center}.place-items-center{place-items:center}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-4{gap:calc(var(--spacing) * 4)}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-\[4px\]{border-radius:4px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-xs{border-radius:var(--radius-xs)}.border{border-style:var(--tw-border-style);border-width:1px}.border-input{border-color:var(--input)}.border-transparent{border-color:#0000}.bg-background{background-color:var(--background)}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black) 50%,transparent)}}.bg-border{background-color:var(--border)}.bg-destructive{background-color:var(--destructive)}.bg-muted{background-color:var(--muted)}.bg-popover{background-color:var(--popover)}.bg-primary{background-color:var(--primary)}.bg-secondary{background-color:var(--secondary)}.bg-transparent{background-color:#0000}.p-1{padding:calc(var(--spacing) * 1)}.p-6{padding:calc(var(--spacing) * 6)}.p-\[3px\]{padding:3px}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pl-2{padding-left:calc(var(--spacing) * 2)}.text-center{text-align:center}.font-mono{font-family:JetBrains Mono,monospace}.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-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-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)}.whitespace-nowrap{white-space:nowrap}.text-current{color:currentColor}.text-foreground\/60{color:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.text-foreground\/60{color:color-mix(in oklab,var(--foreground) 60%,transparent)}}.text-muted-foreground{color:var(--muted-foreground)}.text-popover-foreground{color:var(--popover-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-white{color:var(--color-white)}.italic{font-style:italic}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a)}.shadow-lg,.shadow-md{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-offset-background{--tw-ring-offset-color:var(--background)}.outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.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-\[color\,box-shadow\]{transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-none{transition-property:none}.duration-200{--tw-duration:.2s;transition-duration:.2s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.paused{animation-play-state:paused}.running{animation-play-state:running}.group-data-\[orientation\=horizontal\]\/tabs\:h-9:is(:where(.group\/tabs)[data-orientation=horizontal] *){height:calc(var(--spacing) * 9)}.group-data-\[orientation\=vertical\]\/tabs\:h-fit:is(:where(.group\/tabs)[data-orientation=vertical] *){height:fit-content}.group-data-\[orientation\=vertical\]\/tabs\:w-full:is(:where(.group\/tabs)[data-orientation=vertical] *){width:100%}.group-data-\[orientation\=vertical\]\/tabs\:flex-col:is(:where(.group\/tabs)[data-orientation=vertical] *){flex-direction:column}.group-data-\[orientation\=vertical\]\/tabs\:justify-start:is(:where(.group\/tabs)[data-orientation=vertical] *){justify-content:flex-start}.group-data-\[size\=sm\]\/alert-dialog-content\:grid:is(:where(.group\/alert-dialog-content)[data-size=sm] *){display:grid}.group-data-\[size\=sm\]\/alert-dialog-content\:grid-cols-2:is(:where(.group\/alert-dialog-content)[data-size=sm] *){grid-template-columns:repeat(2,minmax(0,1fr))}.group-data-\[variant\=line\]\/tabs-list\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *){background-color:#0000}.selection\:bg-primary ::selection{background-color:var(--primary)}.selection\:bg-primary::selection{background-color:var(--primary)}.selection\:text-primary-foreground ::selection{color:var(--primary-foreground)}.selection\:text-primary-foreground::selection{color:var(--primary-foreground)}.file\:inline-flex::file-selector-button{display:inline-flex}.file\:h-7::file-selector-button{height:calc(var(--spacing) * 7)}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\:text-foreground::file-selector-button{color:var(--foreground)}.placeholder\:text-muted-foreground::placeholder{color:var(--muted-foreground)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:bg-foreground:after{content:var(--tw-content);background-color:var(--foreground)}.after\:opacity-0:after{content:var(--tw-content);opacity:0}.after\:transition-opacity:after{content:var(--tw-content);transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.group-data-\[orientation\=horizontal\]\/tabs\:after\:inset-x-0:is(:where(.group\/tabs)[data-orientation=horizontal] *):after{content:var(--tw-content);inset-inline:calc(var(--spacing) * 0)}.group-data-\[orientation\=horizontal\]\/tabs\:after\:bottom-\[-5px\]:is(:where(.group\/tabs)[data-orientation=horizontal] *):after{content:var(--tw-content);bottom:-5px}.group-data-\[orientation\=horizontal\]\/tabs\:after\:h-0\.5:is(:where(.group\/tabs)[data-orientation=horizontal] *):after{content:var(--tw-content);height:calc(var(--spacing) * .5)}.group-data-\[orientation\=vertical\]\/tabs\:after\:inset-y-0:is(:where(.group\/tabs)[data-orientation=vertical] *):after{content:var(--tw-content);inset-block:calc(var(--spacing) * 0)}.group-data-\[orientation\=vertical\]\/tabs\:after\:-right-1:is(:where(.group\/tabs)[data-orientation=vertical] *):after{content:var(--tw-content);right:calc(var(--spacing) * -1)}.group-data-\[orientation\=vertical\]\/tabs\:after\:w-0\.5:is(:where(.group\/tabs)[data-orientation=vertical] *):after{content:var(--tw-content);width:calc(var(--spacing) * .5)}@media (hover:hover){.hover\:bg-accent:hover{background-color:var(--accent)}.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\/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\:text-accent-foreground:hover{color:var(--accent-foreground)}.hover\:text-foreground:hover{color:var(--foreground)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}}.focus\:bg-accent:focus{background-color:var(--accent)}.focus\:text-accent-foreground:focus{color:var(--accent-foreground)}.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-hidden:focus{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.focus\:outline-hidden:focus{outline-offset:2px;outline:2px solid #0000}}.focus-visible\:border-ring:focus-visible{border-color:var(--ring)}.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:color-mix(in oklab,var(--destructive) 20%,transparent)}}.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab,var(--ring) 50%,transparent)}}.focus-visible\:outline-1:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\:outline-ring:focus-visible{outline-color:var(--ring)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.has-data-\[slot\=alert-dialog-media\]\:grid-rows-\[auto_auto_1fr\]:has([data-slot=alert-dialog-media]){grid-template-rows:auto auto 1fr}.has-data-\[slot\=alert-dialog-media\]\:gap-x-6:has([data-slot=alert-dialog-media]){column-gap:calc(var(--spacing) * 6)}.has-\[\>svg\]\:px-1\.5:has(>svg){padding-inline:calc(var(--spacing) * 1.5)}.has-\[\>svg\]\:px-2\.5:has(>svg){padding-inline:calc(var(--spacing) * 2.5)}.has-\[\>svg\]\:px-3:has(>svg){padding-inline:calc(var(--spacing) * 3)}.has-\[\>svg\]\:px-4:has(>svg){padding-inline:calc(var(--spacing) * 4)}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--destructive)}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab,var(--destructive) 20%,transparent)}}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[orientation\=horizontal\]\:flex-col[data-orientation=horizontal]{flex-direction:column}.data-\[placeholder\]\:text-muted-foreground[data-placeholder]{color:var(--muted-foreground)}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:calc(var(--spacing) * 1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:calc(var(--spacing) * 1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}.data-\[size\=default\]\:h-9[data-size=default]{height:calc(var(--spacing) * 9)}.data-\[size\=sm\]\:h-8[data-size=sm]{height:calc(var(--spacing) * 8)}.data-\[size\=sm\]\:max-w-xs[data-size=sm]{max-width:var(--container-xs)}:is(.\*\:data-\[slot\=select-value\]\:line-clamp-1>*)[data-slot=select-value]{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}:is(.\*\:data-\[slot\=select-value\]\:flex>*)[data-slot=select-value]{display:flex}:is(.\*\:data-\[slot\=select-value\]\:items-center>*)[data-slot=select-value]{align-items:center}:is(.\*\:data-\[slot\=select-value\]\:gap-2>*)[data-slot=select-value]{gap:calc(var(--spacing) * 2)}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:var(--background)}.data-\[state\=active\]\:text-foreground[data-state=active]{color:var(--foreground)}.group-data-\[variant\=default\]\/tabs-list\:data-\[state\=active\]\:shadow-sm:is(:where(.group\/tabs-list)[data-variant=default] *)[data-state=active]{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]{background-color:#0000}.group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:shadow-none:is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]{--tw-shadow:0 0 #0000;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-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:after\:opacity-100:is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]:after{content:var(--tw-content);opacity:1}.data-\[state\=checked\]\:border-primary[data-state=checked]{border-color:var(--primary)}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:var(--primary)}.data-\[state\=checked\]\:text-primary-foreground[data-state=checked]{color:var(--primary-foreground)}.data-\[state\=closed\]\:animate-out[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=open\]\:animate-in[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:var(--accent)}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:var(--muted-foreground)}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}.data-\[variant\=line\]\:rounded-none[data-variant=line]{border-radius:0}@media (min-width:40rem){.sm\:max-w-lg{max-width:var(--container-lg)}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:text-left{text-align:left}.sm\:group-data-\[size\=default\]\/alert-dialog-content\:row-span-2:is(:where(.group\/alert-dialog-content)[data-size=default] *){grid-row:span 2/span 2}.sm\:group-data-\[size\=default\]\/alert-dialog-content\:place-items-start:is(:where(.group\/alert-dialog-content)[data-size=default] *){place-items:start}.sm\:group-data-\[size\=default\]\/alert-dialog-content\:text-left:is(:where(.group\/alert-dialog-content)[data-size=default] *){text-align:left}.sm\:group-data-\[size\=default\]\/alert-dialog-content\:group-has-data-\[slot\=alert-dialog-media\]\/alert-dialog-content\:col-start-2:is(:where(.group\/alert-dialog-content)[data-size=default] *):is(:where(.group\/alert-dialog-content):has([data-slot=alert-dialog-media]) *){grid-column-start:2}.sm\:group-data-\[size\=default\]\/alert-dialog-content\:has-data-\[slot\=alert-dialog-media\]\:grid-rows-\[auto_1fr\]:is(:where(.group\/alert-dialog-content)[data-size=default] *):has([data-slot=alert-dialog-media]){grid-template-rows:auto 1fr}.data-\[size\=default\]\:sm\:max-w-lg[data-size=default]{max-width:var(--container-lg)}}@media (min-width:48rem){.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}@media (prefers-color-scheme:dark){.dark\:border-input{border-color:var(--input)}.dark\:bg-destructive\/60{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-destructive\/60{background-color:color-mix(in oklab,var(--destructive) 60%,transparent)}}.dark\:bg-input\/30{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-input\/30{background-color:color-mix(in oklab,var(--input) 30%,transparent)}}.dark\:text-muted-foreground{color:var(--muted-foreground)}@media (hover:hover){.dark\:hover\:bg-accent\/50:hover{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-accent\/50:hover{background-color:color-mix(in oklab,var(--accent) 50%,transparent)}}.dark\:hover\:bg-input\/50:hover{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-input\/50:hover{background-color:color-mix(in oklab,var(--input) 50%,transparent)}}.dark\:hover\:text-foreground:hover{color:var(--foreground)}}.dark\:focus-visible\:ring-destructive\/40:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:focus-visible\:ring-destructive\/40:focus-visible{--tw-ring-color:color-mix(in oklab,var(--destructive) 40%,transparent)}}.dark\:aria-invalid\:ring-destructive\/40[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:aria-invalid\:ring-destructive\/40[aria-invalid=true]{--tw-ring-color:color-mix(in oklab,var(--destructive) 40%,transparent)}}.dark\:data-\[state\=active\]\:border-input[data-state=active]{border-color:var(--input)}.dark\:data-\[state\=active\]\:bg-input\/30[data-state=active]{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:data-\[state\=active\]\:bg-input\/30[data-state=active]{background-color:color-mix(in oklab,var(--input) 30%,transparent)}}.dark\:data-\[state\=active\]\:text-foreground[data-state=active]{color:var(--foreground)}.dark\:group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:border-transparent:is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]{border-color:#0000}.dark\:group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]{background-color:#0000}.dark\:data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:var(--primary)}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_svg\:not\(\[class\*\=\'text-\'\]\)\]\:text-muted-foreground svg:not([class*=text-]){color:var(--muted-foreground)}:is(.\*\:\[span\]\:last\:flex>*):is(span):last-child{display:flex}:is(.\*\:\[span\]\:last\:items-center>*):is(span):last-child{align-items:center}:is(.\*\:\[span\]\:last\:gap-2>*):is(span):last-child{gap:calc(var(--spacing) * 2)}:is(.\*\:\[svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-8>*):is(svg:not([class*=size-])){width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}}.react-flow{--xy-edge-stroke-default:#b1b1b7;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#555;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#ffffff80;--xy-minimap-background-color-default:#fff;--xy-minimap-mask-background-color-default:#f0f0f099;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#e2e2e2;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:transparent;--xy-background-pattern-dots-color-default:#91919a;--xy-background-pattern-lines-color-default:#eee;--xy-background-pattern-cross-color-default:#e2e2e2;background-color:var(--xy-background-color,var(--xy-background-color-default));--xy-node-color-default:inherit;--xy-node-border-default:1px solid #1a192b;--xy-node-background-color-default:#fff;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #00000014;--xy-node-boxshadow-selected-default:0 0 0 .5px #1a192b;--xy-node-border-radius-default:3px;--xy-handle-background-color-default:#1a192b;--xy-handle-border-color-default:#fff;--xy-selection-background-color-default:#0059dc14;--xy-selection-border-default:1px dotted #0059dccc;--xy-controls-button-background-color-default:#fefefe;--xy-controls-button-background-color-hover-default:#f4f4f4;--xy-controls-button-color-default:inherit;--xy-controls-button-color-hover-default:inherit;--xy-controls-button-border-color-default:#eee;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#fff;--xy-edge-label-color-default:inherit;--xy-resize-background-color-default:#3367d9;direction:ltr}.react-flow.dark{--xy-edge-stroke-default:#3e3e3e;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#727272;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#96969640;--xy-minimap-background-color-default:#141414;--xy-minimap-mask-background-color-default:#3c3c3c99;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#2b2b2b;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:#141414;--xy-background-pattern-dots-color-default:#555;--xy-background-pattern-lines-color-default:#333;--xy-background-pattern-cross-color-default:#333;--xy-node-color-default:#f8f8f8;--xy-node-border-default:1px solid #3c3c3c;--xy-node-background-color-default:#1e1e1e;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #ffffff14;--xy-node-boxshadow-selected-default:0 0 0 .5px #999;--xy-handle-background-color-default:#bebebe;--xy-handle-border-color-default:#1e1e1e;--xy-selection-background-color-default:#c8c8dc14;--xy-selection-border-default:1px dotted #c8c8dccc;--xy-controls-button-background-color-default:#2b2b2b;--xy-controls-button-background-color-hover-default:#3e3e3e;--xy-controls-button-color-default:#f8f8f8;--xy-controls-button-color-hover-default:#fff;--xy-controls-button-border-color-default:#5b5b5b;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#141414;--xy-edge-label-color-default:#f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props,var(--xy-background-color,var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width,var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke,var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width,var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{pointer-events:none;position:absolute;overflow:visible}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path,.react-flow__edge.selected .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected,var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;position:absolute;overflow:visible}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default;position:absolute}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.react-flow__nodesselection-rect{pointer-events:all;cursor:grab;position:absolute}.react-flow__handle{pointer-events:none;background-color:var(--xy-handle-background-color,var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color,var(--xy-handle-border-color-default));border-radius:100%;width:6px;min-width:5px;height:6px;min-height:5px;position:absolute}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;bottom:0;left:50%;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{z-index:5;margin:15px;position:absolute}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.bottom.center,.react-flow__panel.top.center{left:50%;transform:translate(-15px)translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px)translateY(-50%)}.react-flow__attribution{background:var(--xy-attribution-background-color,var(--xy-attribution-background-color-default));margin:0;padding:2px 3px;font-size:10px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10px}}.react-flow__edgelabel-renderer{pointer-events:none}.react-flow__edgelabel-renderer,.react-flow__viewport-portal{-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__minimap{background:var(--xy-minimap-background-color-props,var(--xy-minimap-background-color,var(--xy-minimap-background-color-default)))}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var(--xy-minimap-mask-background-color-props,var(--xy-minimap-mask-background-color,var(--xy-minimap-mask-background-color-default)));stroke:var(--xy-minimap-mask-stroke-color-props,var(--xy-minimap-mask-stroke-color,var(--xy-minimap-mask-stroke-color-default)));stroke-width:var(--xy-minimap-mask-stroke-width-props,var(--xy-minimap-mask-stroke-width,var(--xy-minimap-mask-stroke-width-default)))}.react-flow__minimap-node{fill:var(--xy-minimap-node-background-color-props,var(--xy-minimap-node-background-color,var(--xy-minimap-node-background-color-default)));stroke:var(--xy-minimap-node-stroke-color-props,var(--xy-minimap-node-stroke-color,var(--xy-minimap-node-stroke-color-default)));stroke-width:var(--xy-minimap-node-stroke-width-props,var(--xy-minimap-node-stroke-width,var(--xy-minimap-node-stroke-width-default)))}.react-flow__background-pattern.dots{fill:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-dots-color-default)))}.react-flow__background-pattern.lines{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-lines-color-default)))}.react-flow__background-pattern.cross{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-cross-color-default)))}.react-flow__controls{box-shadow:var(--xy-controls-box-shadow,var(--xy-controls-box-shadow-default));flex-direction:column;display:flex}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{background:var(--xy-controls-button-background-color,var(--xy-controls-button-background-color-default));border:none;border-bottom:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)));width:26px;height:26px;color:var(--xy-controls-button-color-props,var(--xy-controls-button-color,var(--xy-controls-button-color-default)));cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;padding:4px;display:flex}.react-flow__controls-button svg{fill:currentColor;width:100%;max-width:12px;max-height:12px}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-default,.react-flow__node-group,.react-flow__node-input,.react-flow__node-output{border-radius:var(--xy-node-border-radius,var(--xy-node-border-radius-default));width:150px;color:var(--xy-node-color,var(--xy-node-color-default));text-align:center;border:var(--xy-node-border,var(--xy-node-border-default));background-color:var(--xy-node-background-color,var(--xy-node-background-color-default));padding:10px;font-size:12px}.react-flow__node-default.selectable:hover,.react-flow__node-group.selectable:hover,.react-flow__node-input.selectable:hover,.react-flow__node-output.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover,var(--xy-node-boxshadow-hover-default))}.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible,.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected,var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color,var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color,var(--xy-selection-background-color-default));border:var(--xy-selection-border,var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var(--xy-controls-button-background-color-hover-props,var(--xy-controls-button-background-color-hover,var(--xy-controls-button-background-color-hover-default)));color:var(--xy-controls-button-color-hover-props,var(--xy-controls-button-color-hover,var(--xy-controls-button-color-hover-default)))}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)))}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.bottom,.react-flow__resize-control.top{cursor:ns-resize}.react-flow__resize-control.bottom.right,.react-flow__resize-control.top.left{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border:1px solid #fff;border-radius:1px;width:5px;height:5px;translate:-50% -50%}.react-flow__resize-control.handle.left{top:50%;left:0}.react-flow__resize-control.handle.right{top:50%;left:100%}.react-flow__resize-control.handle.top{top:0;left:50%}.react-flow__resize-control.handle.bottom{top:100%;left:50%}.react-flow__resize-control.handle.bottom.left,.react-flow__resize-control.handle.top.left{left:0}.react-flow__resize-control.handle.bottom.right,.react-flow__resize-control.handle.top.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border-style:solid;border-width:0}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;height:100%;top:0;transform:translate(-50%)}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.bottom,.react-flow__resize-control.line.top{width:100%;height:1px;left:0;transform:translateY(-50%)}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color,var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color,var(--xy-edge-label-color-default))}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}@property --scroll-fade-t{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-b{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-s{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-e{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-mask{syntax:"*";inherits:false}@property --shimmer-angle{syntax:"<angle>";inherits:true;initial-value:20deg}@property --shimmer-image{syntax:"*";inherits:false}@property --shimmer-text-fill{syntax:"*";inherits:false}@media (prefers-reduced-motion:reduce){.shimmer{-webkit-text-fill-color:currentColor;background-image:none;animation:none}}@font-face{font-family:JetBrains Mono;src:url(/_next/static/media/JetBrainsMono_400Regular.faa83a2f.woff2)format("woff2");font-display:swap;font-weight:400}@font-face{font-family:JetBrains Mono;src:url(/_next/static/media/JetBrainsMono_700Bold.82a58631.woff2)format("woff2");font-display:swap;font-weight:700}:root{color-scheme:light;--background:#f4f6f7;--foreground:#252329;--card:#fff;--card-foreground:#252329;--popover:#fff;--popover-foreground:#252329;--primary:#1b5b6d;--primary-foreground:#fff;--secondary:#e9eef0;--secondary-foreground:#1b5b6d;--muted:#eef1f2;--muted-foreground:#655a63;--accent:#edf2f3;--accent-foreground:#1b5b6d;--destructive:#a83c40;--border:#e4e0de;--input:#ddd6d8;--ring:#c5313b;--chart-1:#1b5b6d;--chart-2:#c5313b;--chart-3:#427766;--chart-4:#446381;--chart-5:#958178;--radius:.6rem;--sidebar:#fff;--sidebar-foreground:#252329;--sidebar-primary:#1b5b6d;--sidebar-primary-foreground:#fff;--sidebar-accent:#edf2f3;--sidebar-accent-foreground:#1b5b6d;--sidebar-border:#e4e0de;--sidebar-ring:#c5313b}*{box-sizing:border-box}body{background:var(--background);color:var(--foreground);margin:0;font-family:Segoe UI,Arial,sans-serif;font-size:16px;line-height:1.55}a,button,input,textarea{touch-action:manipulation}a,button:not(:disabled){cursor:pointer}button:disabled{cursor:default}a:focus-visible,button:focus-visible{outline-offset:4px;outline:2px solid #c5313b}svg{flex-shrink:0}p{margin:0}::selection{background:#d6e4e8}code,kbd{font-family:JetBrains Mono,monospace}code{font-size:.87em}.site-header{background:#fff;border-bottom:1px solid #e2dedb;align-items:center;gap:28px;height:78px;padding:0 max(28px,50vw - 680px);display:flex}.wordmark{letter-spacing:-1.25px;color:#204a56;white-space:nowrap;font-family:Cambria,Georgia,serif;font-size:28px;font-weight:700}.wordmark .logo-dot{color:#99262e}.header-course{color:#77717a;border-left:1px solid #e4dfdc;padding-left:28px;font-size:14px}.guide-button{color:#665d65;gap:8px;margin-left:auto;font-weight:400!important}.main-shell{max-width:1360px;margin:auto;padding:32px 28px 0}.page-intro{justify-content:space-between;padding-bottom:25px}.eyebrow,.page-intro{align-items:center;display:flex}.eyebrow{letter-spacing:1.65px;color:#7c6858;gap:7px;font-size:12px;font-weight:600}.mini-bracket{color:#c5313b;letter-spacing:-2px;margin-right:3px;font-family:JetBrains Mono,monospace;font-size:15px}h1{color:#233c43;letter-spacing:-1px;margin:6px 0 9px;font-family:Cambria,Georgia,serif;font-size:38px;font-weight:700;line-height:1.2}.title-period{color:#c9323c}.page-intro p{color:#766e73;font-size:15px}.progress-overview{border-left:1px solid #d6dfe2;min-width:154px;padding-left:24px}.progress-label{letter-spacing:1.2px;color:#81716a;font-size:12px;font-weight:600}.progress-overview b{color:#1b5b6d;font-family:Georgia,serif;font-size:29px}.progress-overview div>span{color:#8b8082;font-size:14px}.progress-segments{gap:5px;margin-top:6px;display:flex}.progress-segments i{background:#e4ddda;border-radius:3px;width:24px;height:4px}.progress-segments i.done{background:#1b5b6d}.mode-tabs{gap:0!important}.mode-bar{border-bottom:1px solid #ddd6d4;justify-content:space-between;align-items:center;display:flex}.mode-list{gap:25px!important;height:46px!important;padding:0!important}.mode-list [data-slot=tabs-trigger]{color:#837a7c;flex:initial!important;border:0!important;border-radius:0!important;gap:8px!important;height:46px!important;padding:0 1px!important}.mode-list [data-state=active]{color:#1b5b6d!important;font-weight:600!important}.mode-list [data-slot=tabs-trigger]:after{background:#1b5b6d!important;height:2px!important;bottom:-1px!important}.mode-context{color:#92868a;font-size:13px}.mode-content{outline:none;margin-top:0!important}.exercise-strip{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:22px 0;display:grid}.exercise-strip button{text-align:left;color:#776e73;background:#fcfbfa;border:1px solid #e4dedd;border-radius:7px;align-items:center;gap:10px;min-width:0;padding:12px 13px;transition:background .2s,border-color .2s;display:flex}.exercise-strip button>span:nth-child(2){white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.exercise-strip button:hover{background:#e9eff1}.exercise-strip button.active{color:#fff;background:#1b5b6d;border-color:#1b5b6d;box-shadow:0 3px 10px #1b5b6d12}.step-number{border:1px solid #e1d7d6;border-radius:50%;flex-shrink:0;place-items:center;width:24px;height:24px;font-family:JetBrains Mono,monospace;font-size:12px;display:grid}.active .step-number{color:#fff;background:#ffffff1c;border-color:#ffffff36}.complete:not(.active) .step-number{color:#3d7655;background:#e6eee7;border-color:#d4e2d6}.step-arrow{opacity:.8;margin-left:auto}.workspace-grid{grid-template-columns:310px minmax(0,1fr);align-items:start;gap:25px;display:grid}.task-panel{background:#fff;border:1px solid #e4ddda;border-radius:9px;padding:23px 22px;overflow:hidden;box-shadow:0 2px 2px #22333802}.task-meta{color:#c7323c;letter-spacing:1.2px;justify-content:space-between;margin-bottom:11px;font-weight:600}.task-meta,.task-meta span+span{align-items:center;font-size:12px;display:flex}.task-meta span+span{letter-spacing:0;color:#8e868a;gap:4px;font-weight:400}.task-panel h2{color:#233c43;letter-spacing:-.4px;margin:0 0 12px;font-family:Cambria,Georgia,serif;font-size:27px;font-weight:700;line-height:1.18}.concept-label{color:#547e8a;background:#eef2f3;border-radius:4px;margin-bottom:14px;padding:3px 8px;display:inline-flex}.task-intro{color:#797077;font-size:15px;line-height:1.7}.task-steps{gap:14px;margin:22px 0;padding:0;list-style:none;display:grid}.task-steps li{align-items:flex-start;gap:10px;display:flex}.task-steps li>span{color:#ce3a44;background:#edf5f7;border-radius:4px;flex-shrink:0;place-items:center;width:20px;height:20px;margin-top:2px;font-size:12px;display:grid}.task-steps p{color:#625a61;font-size:14px;line-height:1.65}.prediction-card{background:#f2f7f8;border:1px solid #dfebee;border-radius:7px;padding:14px}.prediction-card label{color:#93252c;align-items:center;gap:7px;font-size:14px;font-weight:600;display:flex}.prediction-card p{color:#877b6f;margin:8px 0 10px;font-size:13px;line-height:1.6}.prediction-card textarea{resize:vertical;border-color:#d0dee2;min-height:66px;font-size:14px;box-shadow:none!important;background:#fff!important}.prediction-card small{color:#978b7e;margin-top:7px;line-height:1.5;display:block}.hint-section{margin-top:13px}.hint-button{color:#b02c35;justify-content:flex-start;gap:7px;width:100%;height:35px;padding:0 4px;font-size:13px}.hint-button>span{color:#a39889;margin-left:auto;font-size:12px}.hint{color:#73685a;border-left:2px solid #d14851;margin:14px 0;padding:2px 0 3px 10px;font-size:13px}.hint b{color:#bd2f39;font-size:12px}.hint p{margin-top:5px;line-height:1.7}.coding-area{min-width:0}.editor-card{background:#fff;border:1px solid #dcd7d8;border-radius:9px;overflow:hidden;box-shadow:0 3px 12px #23424b06}.editor-head{background:#fbfafb;border-bottom:1px solid #e9e5e6;justify-content:space-between;height:48px;padding:0 13px 0 20px}.editor-head,.file-label{align-items:center;display:flex}.file-label{color:#78616e;gap:9px;font-family:JetBrains Mono,monospace;font-size:12px}.file-label svg{color:#7e969c}.editor-tools{align-items:center;gap:4px;display:flex}.language-label{color:#8e848d;margin-right:11px;font-size:12px}.editor-tools button{color:#918390;background:0 0;border:0;border-radius:4px;place-items:center;width:30px;height:29px;font-size:12px;display:grid}.editor-tools button:hover{color:#1b5b6d;background:#e8edee}.editor-tools button:disabled{opacity:.3}.code-editor{height:300px;overflow:hidden}.editor-actions{background:#fff;border-top:1px solid #ece7e8;justify-content:space-between;align-items:center;gap:10px;padding:12px 16px;display:flex}.primary-actions,.secondary-actions{align-items:center;gap:9px;display:flex}.run-button{box-shadow:0 3px 5px #1b5b6d12;color:#fff!important;background:#1b5b6d!important;height:38px!important;padding:0 17px!important;font-size:14px!important}.run-button:hover{background:#164a59!important}.run-button kbd{opacity:.55;border-left:1px solid #ffffff30;margin-left:3px;padding-left:11px;font-size:12px;font-weight:400}.check-button{height:38px!important;box-shadow:none!important;color:#506970!important;border-color:#dbd3d6!important;padding:0 12px!important;font-size:13px!important}.stop-button{color:#2f88a1!important;font-size:13px!important}.secondary-actions{color:#93858d;gap:0}.secondary-actions button{width:34px!important;height:33px!important}.output-card{background:#fff;border:1px solid #dcd7d8;border-radius:9px;margin-top:16px;overflow:hidden}.output-card>[data-slot=tabs]{gap:0}.output-head{background:#fcfbfc;border-bottom:1px solid #e9e4e7;justify-content:space-between;align-items:center;height:45px;padding:0 14px 0 18px;display:flex}.output-tabs{gap:20px!important;height:44px!important;padding:0!important}.output-tabs [data-slot=tabs-trigger]{color:#8b8088;border-radius:0;gap:6px;font-size:12px;font-weight:400;height:44px!important;padding:0!important}.output-tabs [data-state=active]{font-weight:600;color:#1b5b6d!important}.output-tabs [data-slot=tabs-trigger]:after{background:#1b5b6d!important;height:2px!important;bottom:-1px!important}.tab-count{color:#4d737e;background:#e4ebed;border-radius:4px;padding:1px 4px;font-size:12px}.clear-output{color:#a1949c;background:0 0;border:0;place-items:center;width:26px;height:28px;display:grid}.clear-output:disabled{opacity:.3}.batch-panel,.plots-panel,.terminal-panel,.tests-panel{scrollbar-width:thin;height:240px;padding:17px 20px;overflow:auto;margin:0!important}.terminal-panel{background:#fcfbfc}.terminal-empty{align-items:flex-start;gap:13px;padding:18px 0;display:flex}.terminal-symbol{color:#baa9b1;font-family:JetBrains Mono,monospace;font-size:20px}.terminal-empty b{color:#8f838c;font-size:14px;font-weight:400}.terminal-empty p{color:#b0a4ab;margin-top:4px;font-size:12px}.terminal-log{white-space:pre-wrap;overflow-wrap:anywhere;color:#48404b;margin:0;font-family:JetBrains Mono,monospace;font-size:14px;line-height:1.85}.log-input{color:#a72a32;font-weight:700}.log-prompt{color:#1b5b6d}.log-system{color:#b92e37;font-size:12px;font-style:italic}.terminal-input{color:#c2313a;background:#fff;border:1px solid #d55961;border-radius:5px;align-items:center;gap:7px;margin:9px 0;padding:7px 10px;display:flex}.terminal-input input{color:#52414c;background:0 0;border:0;outline:none;flex:1;min-width:0;font-family:JetBrains Mono,monospace;font-size:14px}.terminal-input input::placeholder{color:#b0a2a7;font-family:Segoe UI,Arial,sans-serif;font-size:13px}.terminal-input button{background:0 0;border:0;padding:4px;display:grid}.execution-finished{color:#8c9791;align-items:center;gap:4px;margin-top:18px;font-size:12px;display:flex}.error-card{background:#f0f8fa;border-left:2px solid #62a9bd;border-radius:4px;margin-top:8px;padding:12px 14px}.error-card>div{color:#3b869b;align-items:flex-start;gap:9px;display:flex}.error-card b{font-size:14px;font-weight:600}.error-card b span{color:#72a4b2;margin-top:2px;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:400;display:block}.error-card p{color:#618e9b;margin:8px 0;font-size:13px;line-height:1.7}.error-card summary{color:#5d94a3;cursor:pointer;font-size:12px}.error-card pre{white-space:pre-wrap;overflow-wrap:anywhere;color:#53808d;margin-top:8px;font-family:JetBrains Mono,monospace;font-size:12px;line-height:1.7}.empty-panel{text-align:center;color:#a18c97;flex-direction:column;justify-content:center;align-items:center;gap:6px;height:100%;font-size:13px;display:flex}.empty-panel>svg{color:#b9a8b0;width:25px;height:25px;margin-bottom:3px}.empty-panel b{color:#8c7883;font-weight:500}.empty-panel p{color:#aa99a2;max-width:330px;font-size:12px;line-height:1.65}.empty-panel button{height:32px;margin-top:8px;font-size:12px}.test-summary{margin-bottom:13px}.test-summary b{color:#8b6750;font-size:15px;font-weight:600}.test-summary.success b{color:#427657}.test-summary p{color:#9c8a80;margin-top:3px;font-size:12px}.test-row{border-top:1px solid #f0eceb;align-items:flex-start;gap:8px;padding:9px 0;display:flex}.test-row svg{margin-top:2px}.test-row b{font-size:13px;font-weight:500}.test-row p{color:#998779;margin-top:3px;font-size:12px;line-height:1.6}.test-row.passed{color:#537c60}.test-row.needs-work{color:#b22d36}.plots-panel{height:auto;min-height:240px;max-height:520px;padding:12px}.plots-panel .empty-panel{min-height:210px}.plots-panel figure{margin:0}.plots-panel figure img{object-fit:contain;width:100%;max-width:850px;height:auto}.plots-panel figure a{color:#6c868d;justify-content:flex-end;align-items:center;gap:5px;padding:7px;font-size:12px;display:flex}.batch-panel label{font-size:14px;font-weight:600}.batch-panel p{color:#8e7e89;margin:5px 0 10px;font-size:12px}.batch-panel textarea{background:#fff;font-family:JetBrains Mono,monospace;font-size:14px}.workspace-status{color:#a09198;justify-content:space-between;gap:10px;min-height:20px;margin:11px 1px 0;display:flex}.workspace-status>span{align-items:center;gap:4px;display:flex}.runtime-status.ready{color:#75867a}.status-dot{background:#72967e;border-radius:50%;width:5px;height:5px;margin-right:2px;display:inline-block}.runtime-status button{color:#1b5b6d;margin-left:5px;text-decoration:underline}.save-error{color:#ad6b39}.compatibility-note{color:#938376;margin:8px 0;font-size:12px}.compatibility-note button{color:#1b5b6d;text-decoration:underline}.reflection-card{background:#f3f7f2;border:1px solid #dce4db;border-radius:9px;margin-top:20px;padding:20px}.reflection-title{color:#50745b;align-items:flex-start;gap:10px;display:flex}.reflection-title h3{margin:0 0 6px;font-family:Georgia,serif;font-size:21px}.reflection-title p{font-size:14px;line-height:1.6}.reflection-card textarea{box-shadow:none;background:#fff;margin:14px 0;font-size:14px}.reflection-card>button{color:#fff;background:#50745b;font-size:13px}.completion-note{color:#52705a;font-size:14px}.example-bar{align-items:center;gap:14px;min-height:76px;padding:20px 0;display:flex}.example-bar>span:first-child{color:#8c7d86;font-size:13px}.example-bar>[data-slot=select-trigger]{min-width:220px;box-shadow:none;background:#fff;height:38px;font-size:14px}.example-week{color:#9b898e;margin-left:auto;font-size:12px}.free-tip{border-top:1px solid #eee8e6;margin-top:28px;padding-top:20px}.free-tip svg{color:#d0444d}.free-tip h3{color:#74646c;margin:10px 0 8px;font-size:15px;font-weight:600}.free-tip p{color:#8f8189;font-size:14px;line-height:1.7}.small-note{color:#a5979c;margin-top:30px;font-size:12px;line-height:1.7}.site-footer{color:#a19698;border-top:1px solid #e5dfdc;justify-content:space-between;align-items:center;gap:18px;margin-top:32px;padding:20px 0 24px;font-size:12px;display:flex}.site-footer>span:first-child a{color:#87737d;font-weight:600}.site-footer>a{color:#82757b;align-items:center;gap:6px;display:flex}.footer-dot{color:#b7a494;margin:0 7px}.guide-dialog{background:#fff!important;max-width:560px!important}.guide-dialog li,.guide-dialog p{color:#786975;font-size:15px;line-height:1.7}.guide-steps{gap:10px;margin:4px 0;padding-left:22px;list-style:decimal;display:grid}.notice{background:#eef5f7;border-radius:6px;padding:14px}.focus-mode .example-bar,.focus-mode .exercise-strip,.focus-mode .mode-bar,.focus-mode .page-intro,.focus-mode .site-footer,.focus-mode .site-header,.focus-mode .task-panel{display:none}.focus-mode .workspace-grid{grid-template-columns:1fr}.focus-mode .main-shell{max-width:1500px;padding-top:20px}.focus-mode .code-editor{height:calc(100vh - 450px);min-height:330px}.spin{animation:spin 1.1s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@media (min-width:1500px){.main-shell{padding-top:38px}.code-editor{height:340px}.batch-panel,.terminal-panel,.tests-panel{height:250px}.workspace-grid{grid-template-columns:325px minmax(0,1fr);gap:30px}}@media (max-width:1100px){.workspace-grid{grid-template-columns:280px minmax(0,1fr);gap:18px}.task-panel{padding:20px 17px}.exercise-strip{gap:6px}.exercise-strip button{gap:6px;padding:11px 9px;font-size:12px}.run-button kbd,.step-arrow{display:none}.header-course{font-size:12px}.code-editor{height:320px}}@media (max-width:800px){.site-header{gap:12px;height:67px;padding:0 19px}.wordmark{font-size:24px}.header-course{display:none}.guide-button{padding:0 7px;font-size:12px}.main-shell{padding:25px 18px 0}.page-intro{padding-bottom:22px}h1{font-size:32px}.page-intro p{font-size:13px}.eyebrow{font-size:12px}.progress-overview{min-width:120px;padding-left:15px}.progress-label{font-size:12px}.progress-segments i{width:18px}.mode-context{display:none}.workspace-grid{grid-template-columns:1fr}.exercise-strip{scrollbar-width:thin;gap:8px;padding:17px 0;display:flex;overflow-x:auto}.exercise-strip button{flex-shrink:0;padding:9px 12px}.task-panel{padding:20px}.task-panel h2{font-size:25px}.task-intro{font-size:15px}.task-steps{gap:9px;margin:16px 0}.prediction-card{margin-top:18px}.prediction-card textarea{min-height:58px}.code-editor{height:290px}.example-week,.site-footer>span:nth-child(2){display:none}.free-tip{padding-top:15px}.free-tip,.small-note{margin-top:15px}.free-tip p{font-size:14px}.batch-panel,.terminal-panel,.tests-panel{height:260px}}@media (max-width:480px){.wordmark{font-size:22px}.guide-button{width:36px;font-size:0}.guide-button svg{width:19px;height:19px}.progress-overview{border:0;min-width:80px;padding:0}.progress-label{letter-spacing:.7px;font-size:12px}.progress-overview b{font-size:25px}.progress-overview div>span{font-size:12px}.progress-segments i{width:12px}.page-intro p{max-width:215px;line-height:1.6}h1{font-size:29px}.mode-list{gap:22px!important}.mode-list [data-slot=tabs-trigger]{font-size:13px!important}.editor-head{padding:0 8px 0 13px}.language-label{display:none}.editor-actions{gap:3px;padding:10px}.primary-actions{gap:6px}.run-button{padding:0 12px!important;font-size:13px!important}.check-button{padding:0 9px!important;font-size:12px!important}.secondary-actions button{width:28px!important}.output-tabs{gap:18px!important}.workspace-status{font-size:12px}.example-bar{gap:8px}.example-bar>span:first-child{font-size:12px}.example-bar>[data-slot=select-trigger]{min-width:190px;max-width:calc(100% - 93px);font-size:12px}.focus-mode .main-shell{padding:10px}.terminal-log{font-size:13px}.file-label{font-size:12px}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.site-header{height:68px}.main-shell{padding-top:25px}.page-intro{padding-bottom:18px}h1{font-size:35px}.exercise-strip{padding-top:17px;padding-bottom:17px}.code-editor{height:270px}.task-intro{color:#6d636b;font-size:16px}.task-steps p{color:#5c535c;font-size:15px}.prediction-card p{color:#7b6b5d;font-size:14px}.prediction-card small{color:#87796d;font-size:12px}.hint,.hint-button{font-size:14px}.concept-label{font-size:12px}.mode-list [data-slot=tabs-trigger]{font-size:14px!important}.exercise-strip button{font-size:14px}.check-button{font-size:14px!important}.output-tabs [data-slot=tabs-trigger]{font-size:14px}.terminal-empty b{font-size:15px}.terminal-empty p{color:#94838c;font-size:13px}.workspace-status{font-size:12px}.file-label{font-size:13px}.error-card p,.test-row b{font-size:14px}.test-row p{font-size:13px}.free-tip p{font-size:15px}.progress-label,.task-meta{font-size:12px}.prediction-card label{font-size:15px}@media (min-width:1500px){.code-editor{height:310px}}@media (max-width:1100px){.exercise-strip button{font-size:13px}}@media (max-width:800px){.site-header{height:64px}.main-shell{padding-top:22px}.code-editor{height:280px}.task-steps p{font-size:16px}.progress-label{font-size:12px}}@media (max-width:480px){h1{font-size:29px}.file-label,.progress-label,.workspace-status{font-size:12px}.output-tabs [data-slot=tabs-trigger]{font-size:13px}}@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-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{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:""}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}.course-site{min-height:100vh;background:#f4f6f7}.course-header nav{margin-left:auto;display:flex;align-items:center;gap:22px;color:#78616d;font-size:14px}.course-header nav>a{display:flex;align-items:center;gap:6px}.course-header nav>a:hover{color:#1b5b6d}.course-header nav button{font-size:14px;gap:6px;padding:0 5px}.course-main{max-width:1440px;margin:auto;padding:28px 32px 0}.course-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px}.course-heading .eyebrow{font-size:12px}.course-heading h1{font-size:36px;margin:9px 0}.course-heading p{font-size:16px;color:#786b74}.course-progress{display:flex;flex-direction:column;min-width:166px;border-left:1px solid #e1d9d9;padding-left:24px}.course-progress>b{font-family:Georgia,serif;color:#1b5b6d;font-size:30px;font-weight:400}.course-progress>b>span{font-size:20px;color:#756a6f}.course-progress>span{font-size:13px;color:#7b6772}.week-bar{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ddd4d8}.week-bar>[data-slot=tabs-list]{height:48px;gap:26px;padding:0}.week-bar [data-slot=tabs-trigger]{padding:0 0 12px;height:48px;color:#7a6972;font-size:15px;gap:10px;font-weight:500}.week-bar [data-slot=tabs-trigger]>span{font-size:14px;font-weight:400}.week-bar [data-state=active]{color:#1b5b6d!important}.week-bar [data-slot=tabs-trigger]:after{background:#1b5b6d!important;bottom:-1px;height:2px}.week-bar>button{font-size:14px;color:#7a6972}.chapter-nav{display:flex;gap:8px;padding:15px 0 20px;overflow-x:auto}.chapter-nav>button{flex:1;min-width:0;display:flex;align-items:center;gap:9px;border:1px solid #e2dce0;border-radius:7px;background:#fff;padding:12px 13px;font-size:14px;color:#7a6a73;white-space:nowrap}.chapter-nav>button>span{width:23px;height:23px;display:grid;place-items:center;border:1px solid #dfe4e6;border-radius:50%;font:12px JetBrains Mono,monospace;flex-shrink:0}.chapter-nav>button[aria-current=step]{background:#1b5b6d;border-color:#1b5b6d;color:white}.chapter-nav>button[aria-current=step]>span{border-color:#ffffff40;background:#ffffff16}.chapter-nav>button>svg{margin-left:auto}.lesson-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:26px;align-items:start}.lesson-context{background:#fff;border:1px solid #dce2e4;padding:22px;border-radius:9px}.lesson-number{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#a22830;letter-spacing:1px;font-weight:600}.lesson-number small{font-size:12px;font-weight:400;color:#7b6b74;letter-spacing:0}.lesson-context h2{font-size:28px;font-family:Cambria,Georgia,serif;font-weight:700;line-height:1.2;color:#28454d;margin:13px 0}.lesson-context>p{font-size:16px;line-height:1.8;color:#776671}.learning-aim{border-top:1px solid #e7ecee;margin-top:24px;padding-top:20px;color:#a62932}.learning-aim>svg{margin-bottom:9px}.learning-aim>b{font-size:14px;font-weight:600}.learning-aim>p{color:#7a6a5e;font-size:14px;line-height:1.8;margin-top:8px}.course-hint{border-top:1px solid #e7ecee;padding-top:12px;margin-top:20px}.course-hint button{width:100%;justify-content:flex-start;padding:0;font-size:14px;color:#a12830}.course-hint p{font-size:14px;line-height:1.8;color:#7c695e;background:#f0f8f9;padding:12px;border-radius:6px;margin-top:6px}.lesson-context>.lesson-source{font-size:12px;line-height:1.65;color:#76696f;margin-top:22px}.lesson-activity{min-width:0;background:#fff;border:1px solid #e3dce0;border-radius:10px;padding:26px 28px}.activity-kicker{font-size:12px;letter-spacing:1.4px;font-weight:600;color:#a42931;margin-bottom:10px}.lesson-activity h2{font-family:Cambria,Georgia,serif;font-weight:700;font-size:29px;line-height:1.25;color:#294850;margin:0 0 14px}.activity-intro{font-size:16px;color:#796974;line-height:1.8;margin-bottom:22px}.principles{display:grid;grid-template-columns:1fr 1fr;gap:0 26px;margin:8px 0 22px}.principles>article{display:flex;gap:12px;padding:17px 0;border-bottom:1px solid #e5eaec}.principles>article>span{font:12px JetBrains Mono,monospace;color:#a22830;margin-top:3px}.principles h3{font-size:17px;color:#465f66;font-weight:600;margin:0 0 5px}.principles p{font-size:15px;color:#796874}.principles small{font-size:14px;line-height:1.7;color:#7d6a75;display:block;margin-top:5px}.instruction-task{padding:19px;background:#eef6f8;border:1px solid #d5e9ee;border-radius:8px}.instruction-task>label{font:700 23px Cambria,Georgia,serif;color:#6e4e35}.instruction-task>p{font-size:15px;color:#826b57;margin:8px 0 12px}.instruction-task textarea{background:white;border-color:#ded3c5;margin-bottom:14px;font-size:16px;line-height:1.8}.lesson-activity button{font-size:14px}.lesson-activity [data-slot=button]{box-shadow:none;min-height:37px}.activity-feedback{display:flex;align-items:flex-start;gap:10px;border:1px solid;border-radius:7px;padding:14px 16px;margin-top:18px;font-size:15px;line-height:1.8}.activity-feedback>svg{margin-top:4px}.activity-feedback.good{color:#426b50;border-color:#dce6db;background:#f5f8f3}.activity-feedback.review{color:#99262e;border-color:#cae4eb;background:#f1f8fa}.lesson-next{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #e7ecee;padding-top:18px;margin-top:24px;gap:12px}.lesson-next>span{font-size:12px;color:#786973}.ordering-list{list-style:none;display:grid;gap:9px;padding:0;margin:20px 0}.ordering-list>li{display:flex;align-items:center;gap:11px;border:1px solid #dce4e6;border-radius:7px;padding:11px;background:#fff;transition:background .2s,border-color .2s}.ordering-list>li.current{background:#edf6f8;border-color:#d24952}.ordering-list>li>svg{color:#766c72}.order-number{font:12px JetBrains Mono,monospace;color:#7d6a76;min-width:16px}.ordering-list p{font-size:16px;line-height:1.6;flex:1;color:#63515f}.ordering-list li>div{display:flex;gap:2px}.ordering-list [data-slot=button]{color:#7e6979;width:28px;min-height:32px;height:32px}.activity-actions{display:flex;gap:10px;flex-wrap:wrap}.step-observation{font-size:15px;line-height:1.7;padding:14px;color:#96252d;background:#eef6f9;margin-top:14px;border-radius:7px}.gio-guide{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0 15px}.gio-guide>span{display:flex;flex-direction:column;background:#f5f7f8;border-radius:6px;padding:11px 13px;color:#7d6a76;font-size:14px}.gio-guide b{font-size:15px;color:#506e76;font-weight:600}.gio-items{margin-bottom:20px}.gio-items>div{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid #e5eaec;padding:13px 0}.gio-items p{font-size:16px;color:#73616e}.gio-items [data-slot=select-trigger]{width:155px;flex-shrink:0;font-size:14px;min-height:40px;box-shadow:none}.plan-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.plan-fields label:first-child{grid-column:1/-1}.decomposition label,.plan-fields label{font-size:14px;color:#7c6575;display:flex;flex-direction:column;gap:7px}.decomposition input,.plan-fields input{font-size:15px;min-height:41px;box-shadow:none}.form-label{display:block;font-size:15px;color:#546a70;margin:18px 0 9px;font-weight:500}.lesson-activity textarea{font-size:16px;line-height:1.8;box-shadow:none}.self-check{margin:20px 0;padding:17px;background:#f6f8f8;border-radius:7px}.self-check>b{font-size:15px;color:#55696f;display:block;margin-bottom:12px}.self-check label{display:flex;align-items:flex-start;gap:10px;color:#7d6978;font-size:15px;margin:11px 0}.self-check [data-slot=checkbox]{margin-top:4px}.self-check+label+textarea{margin-bottom:16px}.activity-footnote{font-size:13px;line-height:1.8;color:#7a6874;margin:11px 0 16px}.decomposition{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:20px 0}.decomposition>article{padding:15px;background:#fcfafb;border:1px solid #dfe6e8;border-radius:7px}.decomposition h3{color:#536d74;font-size:18px;font-family:Cambria,Georgia,serif;margin:0 0 16px;display:flex;gap:9px;align-items:center;font-weight:700}.decomposition h3>span{color:#a62932;font:12px JetBrains Mono,monospace}.decomposition label{margin:12px 0}.decomposition textarea{font-size:15px;min-height:145px;background:#fff}.pseudo-example{display:grid;grid-template-columns:1fr 1fr;border:1px solid #e1e9eb;background:#fbf8fa;border-radius:8px;margin:20px 0;padding:16px 18px;gap:18px}.pseudo-example p{font-size:16px;color:#7f6577;line-height:1.8}.pseudo-example p+p{border-left:1px solid #d8e1e4;padding-left:20px;color:#546b71}.pseudo-example span{display:block;font-size:12px;color:#667d83;letter-spacing:.5px;margin-bottom:4px}.pseudo-tools{display:flex;justify-content:space-between;align-items:center;gap:15px}.pseudo-tools>label{font-size:16px;color:#537179;font-weight:500}.pseudo-tools>button{font-size:13px}.pseudo-columns{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:18px}.pseudo-columns textarea{min-height:310px;font-family:JetBrains Mono,monospace;font-size:14px;background:#fdfcfc;border-color:#d4dfe2}.pseudocode-preview{margin:0;padding:16px;list-style:none;background:#f4f7f8;border:1px solid #dae7eb;border-radius:7px}.pseudocode-preview li{display:flex;gap:10px;color:#7a6a57;font-size:15px;line-height:1.7;margin:5px 0;overflow-wrap:anywhere}.pseudocode-preview li>span{color:#a42931;font:12px JetBrains Mono,monospace;min-width:20px;margin-top:4px}.pseudocode-preview .pseudo-empty{color:#7a6d5f;font-size:14px}.symbols-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:24px}.symbol-card{padding:20px;border:1px solid #e0e6e8;border-radius:8px;background:#fdfbfc}.symbol-demo{position:relative;width:150px;height:60px;display:grid;place-items:center;color:#56757d;margin-bottom:20px}.symbol-demo.decision{height:74px}.symbol-demo svg{position:absolute;inset:0;width:100%;height:100%;stroke:#73929b;stroke-width:1.3;fill:#f0f5f7}.symbol-demo.decision svg{fill:#ebf5f8;stroke:#d14952}.symbol-demo>span{position:relative;font-size:14px}.symbol-card h3{font-size:17px;font-weight:600;color:#506970;margin:0 0 7px}.symbol-card p{font-size:15px;line-height:1.75;color:#7e6876}.concept-note{display:flex;gap:14px;padding:18px;background:#eef6f9;border:1px solid #cfe6ed;border-radius:7px;margin:24px 0;color:#9d272f}.concept-note h3{font-size:16px;color:#9e2830;margin:0 0 6px;font-weight:600}.concept-note p{font-size:15px;line-height:1.8;color:#a72a32}.bridge-example{display:flex;align-items:center;justify-content:space-between;gap:22px;margin:25px 0;padding:23px;border:1px solid #dbe5e8;background:#faf6f8;border-radius:8px}.bridge-example span{display:block;font-size:12px;color:#816775;margin-bottom:10px}.bridge-example p{font-size:17px;color:#567179}.bridge-example code{font-size:15px;color:#1b5b6d;overflow-wrap:anywhere}.bridge-example>svg{color:#806674}.next-week{border-top:1px solid #e0e7e9;margin-top:32px;padding-top:24px;display:flex;gap:14px;color:#a12830}.next-week h3{font:700 23px Cambria,Georgia,serif;color:#526f77;margin:0 0 8px}.next-week p{font-size:15px;line-height:1.7;color:#657d84;margin-bottom:15px}.calculation-plan{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0}.calculation-plan>div{background:#faf7f9;border:1px solid #e3ebed;padding:17px;border-radius:6px}.calculation-plan b{color:#577c86;font-size:16px;font-weight:600}.calculation-plan p{font-size:15px;line-height:1.8;color:#7e6675;margin-top:10px}.diagram-lesson{grid-template-columns:1fr}.diagram-lesson>.lesson-context{display:none}.diagram-lesson>.lesson-activity{background:transparent;border:0;padding:0}.diagram-intro{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:0 0 17px}.diagram-intro h2{font-size:25px;margin:0 0 5px}.diagram-intro p{font-size:14px;color:#7d6676}.diagram-reflection{display:flex;justify-content:space-between;align-items:center;gap:24px;background:#f2f6f0;border:1px solid #dfe7d9;border-radius:7px;padding:16px 20px;margin-top:20px}.diagram-reflection p{font-size:15px;line-height:1.7;color:#61725b}.diagram-reflection button{flex-shrink:0}.curriculum-dialog{max-width:680px!important}.curriculum-list{list-style:none;padding:0;margin:0;max-height:56vh;overflow:auto}.curriculum-list>li{display:flex;align-items:center;gap:15px;padding:12px 4px;border-bottom:1px solid #e6ecee;color:#7d6a76}.curriculum-list li>span{font:12px JetBrains Mono,monospace;width:25px}.curriculum-list li>b{font-size:15px;font-weight:400;flex:1}.curriculum-list li>small{font-size:12px}.curriculum-list li.available{color:#1b5b6d}.course-small{font-size:14px;line-height:1.7;color:#7e6777}.return-course{font-size:14px;color:#816676;white-space:nowrap}.flow-editor{border:1px solid #d4dcde;border-radius:10px;background:white;overflow:hidden;min-width:0}.flow-editor-bar{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:13px 17px;border-bottom:1px solid #e0e6e8;background:#fcfafb}.flow-editor-bar>div:first-child{display:flex;align-items:center;gap:8px;font-size:15px;color:#536d74}.flow-editor-bar b{font-weight:600}.flow-file-actions{display:flex;gap:3px;flex-wrap:wrap}.flow-file-actions button{font-size:13px;color:#816676;gap:5px}.shape-toolbar{display:flex;align-items:center;gap:9px;padding:13px 17px;border-bottom:1px solid #e0e6e8;flex-wrap:wrap}.shape-toolbar>span{font-size:13px;color:#7c6975;margin-right:5px}.shape-toolbar button{font-size:14px;gap:9px;background:white;border-color:#d7dfe1;height:37px;color:#607980;box-shadow:none}.shape-mini{display:block;width:27px;height:20px;position:relative}.shape-mini .shape-svg{width:100%;height:100%;position:absolute;inset:0;stroke-width:7;fill:#f4f9fa;stroke:#7e9da6}.shape-mini .shape-decision{fill:#e9f3f6;stroke:#d24952}.flow-workspace{display:grid;grid-template-columns:minmax(0,1fr) 270px;min-width:0}.flow-canvas{position:relative;height:620px;min-width:0;background:#fcfbfa;border-right:1px solid #dfe5e7}.flow-canvas .react-flow__attribution{font-size:12px;background:#ffffffaa;color:#796a72;bottom:3px;right:4px}.flow-canvas .react-flow__node{outline:none}.flow-canvas .react-flow__node:focus-visible{outline:2px dashed #1b5b6d;outline-offset:7px;border-radius:6px}.lesson-node{width:210px;height:76px;position:relative;display:flex;align-items:center;justify-content:center}.lesson-node.decision{height:100px}.lesson-node>.shape-svg{position:absolute;width:100%;height:100%;inset:0;stroke:#7c9da6;stroke-width:1.5;fill:white;filter:drop-shadow(0 3px 2px #1b5b6d08)}.lesson-node.end>.shape-svg,.lesson-node.start>.shape-svg{fill:#e7f0f3;stroke:#65929e}.lesson-node.decision>.shape-svg{fill:#ecf5f8;stroke:#d1464f}.node-label{position:relative;text-align:center;font-size:16px;line-height:1.4;max-width:164px;color:#526d74;overflow-wrap:anywhere;max-height:64px;overflow:hidden}.lesson-node.data .node-label{max-width:146px}.lesson-node.decision .node-label{max-width:130px;max-height:65px}.lesson-node.selected>.shape-svg{stroke:#1b5b6d;stroke-width:2.8}.lesson-node.visited>.shape-svg{fill:#edf4eb;stroke:#819876}.lesson-node.tracing>.shape-svg{fill:#d1e7ed;stroke:#ac262f;stroke-width:3}.lesson-node .react-flow__handle{width:10px;height:10px;background:#7ea0a9;border:2px solid #fff;z-index:5}.lesson-node .react-flow__handle:hover{background:#1b5b6d;width:13px;height:13px}.branch-label{position:absolute;top:calc(50% - 23px);font-size:12px;color:#9c272f;pointer-events:none}.branch-label.yes{right:calc(100% + 2px)}.branch-label.no{left:calc(100% + 2px)}.canvas-help{position:absolute;top:13px;left:14px;right:14px;pointer-events:none;font-size:12px;color:#786972;background:#fcfbfae6;padding:5px 8px;width:fit-content;max-width:calc(100% - 28px);border-radius:4px}.canvas-controls{position:absolute;bottom:16px;left:16px;display:flex;box-shadow:0 2px 6px #3657600c}.canvas-controls button{height:33px;width:34px;border-color:#d9e2e4;border-radius:0;color:#637e85;background:white;box-shadow:none}.canvas-controls button:first-child{border-radius:6px 0 0 6px}.canvas-controls button:last-child{border-radius:0 6px 6px 0}.canvas-controls button+button{border-left:0}.canvas-empty{position:absolute;top:40%;left:15%;right:15%;text-align:center;pointer-events:none;font-size:16px;line-height:1.8;color:#7b6772}.flow-inspector{padding:10px 16px 18px;max-height:620px;overflow-y:auto;scrollbar-width:thin}.flow-inspector [data-slot=tabs-list]{height:44px;width:100%;justify-content:space-between;gap:8px}.flow-inspector [data-slot=tabs-trigger]{font-size:14px;color:#816678;padding:8px 0}.flow-inspector [data-slot=tabs-trigger]:after{background:#1b5b6d}.flow-inspector [data-slot=select-trigger]{width:100%;box-shadow:none;font-size:13px;min-height:38px}.flow-inspector [data-slot=select-value]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;display:block}.flow-inspector input{font-size:14px;box-shadow:none;min-height:39px}.flow-label{font-size:13px;color:#657d84;display:block;margin:14px 0 7px;font-weight:500}.inspector-help{font-size:14px;line-height:1.8;color:#806678;margin:13px 0}.inspector-note{font-size:12px;line-height:1.8;color:#7f6875;margin-top:20px}.delete-node{font-size:13px!important;color:#608691;min-height:34px!important;height:34px;background:#fffafb}.flow-examples{display:grid;gap:8px;border-top:1px solid #e6ecee;padding-top:17px;margin-top:24px}.flow-examples>b{font-size:13px;color:#657f86;font-weight:500;margin-bottom:4px}.flow-examples>button{font-size:13px;color:#637e86;min-height:34px!important;height:34px;box-shadow:none}.connect-button{width:100%;margin-top:18px;font-size:14px}.connection-list{margin-top:22px;font-size:13px;color:#806576}.connection-list>b{font-weight:500}.connection-list>div{border-top:1px solid #e6ecee;display:flex;align-items:center;gap:6px;margin-top:8px;padding-top:10px}.connection-list>div>span{flex:1;line-height:1.5;overflow-wrap:anywhere}.connection-list small{display:block;color:#7c6972;font-size:12px;margin:3px 0}.connection-list button{width:28px;height:30px;min-height:30px!important;color:#816875}.check-flow{margin-top:15px;font-size:14px;width:100%;min-height:39px}.flow-issues{margin-top:18px;color:#8e6542}.flow-issues>b{font-size:14px;font-weight:500;display:block;margin-bottom:10px}.flow-issues>button{display:block;text-align:left;padding:12px;background:#eff7f9;border:1px solid #cee6ec;border-radius:6px;font-size:13px;line-height:1.7;color:#a42931;margin:8px 0;width:100%}.flow-success{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:15px;margin-top:18px;border:1px solid #dce7d5;background:#f4f8f0;border-radius:6px;color:#617556;font-size:14px;line-height:1.7}.flow-success b{font-weight:600}.flow-success p{font-size:13px}.flow-bottom{display:flex;justify-content:space-between;border-top:1px solid #dde5e7;padding:9px 17px;font-size:12px;color:#816878;gap:12px}.flow-notice{padding:12px 18px;font-size:14px;line-height:1.7;color:#9f2830;background:#ebf5f8;border-top:1px solid #cee6ec}.trace-panel{padding:17px 20px;background:#fff;border-top:1px solid #dfe6e8}.trace-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.trace-heading>div{display:flex;align-items:center;gap:8px;color:#628189;font-size:15px}.trace-heading b{font-weight:500}.trace-heading button{font-size:13px;color:#648189;min-height:33px!important;height:33px}.trace-panel>p{font-size:14px;color:#816778;margin-top:10px}.trace-panel>small{display:block;font-size:12px;color:#7b6975;line-height:1.7;margin-top:10px}.trace-current{display:flex;align-items:center;gap:15px;padding:14px 0;margin-top:10px;flex-wrap:wrap}.trace-current>span{font-size:12px;color:#a62a32}.trace-current>strong{font-size:17px;color:#896855;font-weight:500;flex:1}.trace-current>div{display:flex;gap:8px}.trace-current button{font-size:13px;min-height:35px!important}.trace-end{font-size:14px;color:#607455;font-weight:500}.trace-history{list-style:decimal;display:flex;gap:8px 28px;flex-wrap:wrap;margin:0;padding-left:18px;color:#7e6877;font-size:13px}.flow-loading{padding:60px 24px;text-align:center;color:#806878;font-size:16px}.standalone-flow .course-heading{margin-bottom:25px}.standalone-flow .flow-canvas,.standalone-flow .flow-inspector{height:650px;max-height:650px}@media(min-width:1500px){.course-main{padding-top:32px}.flow-canvas{height:690px}.flow-inspector{max-height:690px}}@media(max-width:1150px){.course-header nav{gap:15px}.course-header .header-course{display:none}.course-main{padding:24px 22px 0}.lesson-layout{grid-template-columns:245px minmax(0,1fr);gap:18px}.lesson-activity{padding:22px}.lesson-context{padding:18px}.chapter-nav>button{font-size:13px;padding:11px 10px;gap:6px}.chapter-nav>button>svg{display:none}.decomposition{grid-template-columns:1fr}.decomposition article{display:grid;grid-template-columns:1fr 1fr;gap:0 15px}.decomposition h3,.decomposition label:last-child{grid-column:1/-1}.decomposition textarea{min-height:110px}.diagram-lesson{grid-template-columns:1fr}.course-heading h1{font-size:32px}.flow-workspace{grid-template-columns:minmax(0,1fr) 250px}.bridge-example{flex-direction:column;align-items:flex-start}.bridge-example>svg{transform:rotate(90deg)}.calculation-plan{grid-template-columns:1fr}.week-bar [data-slot=tabs-trigger]>span{font-size:13px}}@media(max-width:800px){.course-header nav{gap:15px}.course-header nav button,.course-header nav>a{font-size:13px}.course-main{padding:22px 18px 0}.course-heading{align-items:flex-start;gap:15px;margin-bottom:20px}.course-heading h1{font-size:29px}.course-heading p{font-size:15px}.course-heading .eyebrow{font-size:12px;letter-spacing:1px}.course-progress{display:none}.week-bar>[data-slot=tabs-list]{gap:25px}.week-bar [data-slot=tabs-trigger]{font-size:15px}.week-bar [data-slot=tabs-trigger]>span{display:none}.week-bar>button{font-size:13px}.chapter-nav{gap:8px;padding-bottom:16px}.chapter-nav>button{flex:none;padding:10px 12px;font-size:14px}.lesson-layout{grid-template-columns:1fr;gap:15px}.lesson-context{padding:18px}.lesson-context h2{margin:10px 0;font-size:26px}.lesson-context .learning-aim,.lesson-context>.lesson-source{display:none}.course-hint{margin-top:13px;padding-top:5px}.course-hint p{margin-top:1px}.lesson-activity{padding:22px}.principles{gap:0 18px}.principles article{gap:8px}.principles p{font-size:15px}.principles small{font-size:13px}.pseudo-columns{grid-template-columns:1fr}.pseudo-columns textarea{min-height:260px}.diagram-lesson .lesson-activity{padding:0}.flow-workspace{grid-template-columns:minmax(0,1fr) 235px}.flow-canvas{height:570px}.flow-inspector{padding:8px 12px;max-height:570px}.flow-file-actions{gap:0}.shape-toolbar{gap:7px;padding:11px 13px}.shape-toolbar button{font-size:13px;gap:6px;padding:0 10px}.shape-toolbar>span{display:none}.shape-mini{width:23px;height:18px}.diagram-reflection{align-items:flex-start;gap:12px}.diagram-reflection,.standalone-flow .course-heading{flex-direction:column}.flow-editor-bar{align-items:flex-start}.flow-editor-bar>div:first-child,.return-course{font-size:14px}}@media(max-width:600px){.course-header nav>a span,.course-header nav>button span{display:none}.course-header nav{gap:17px}.course-header nav svg{width:18px;height:18px}.course-header nav>a{min-height:36px;padding:7px}.course-header{padding:0 16px}.course-main{padding:20px 14px 0}.course-heading h1{font-size:28px;line-height:1.2}.course-heading .eyebrow{font-size:12px;letter-spacing:.6px}.course-heading p{font-size:15px;line-height:1.7}.week-bar>button{font-size:12px;gap:5px}.lesson-activity{padding:20px 17px}.lesson-activity h2{font-size:26px}.principles{grid-template-columns:1fr}.principles>article{padding:13px 0;gap:13px}.principles small{font-size:14px}.instruction-task{padding:15px}.instruction-task>label{font-size:21px}.instruction-task [data-slot=button]{width:100%;font-size:13px}.ordering-list>li{gap:7px;padding:9px}.ordering-list p{font-size:15px}.ordering-list>li>svg{display:none}.ordering-list li>div{flex-direction:column}.gio-guide{gap:5px}.gio-guide>span{padding:10px 9px;font-size:12px}.gio-guide b{font-size:14px}.gio-items>div{align-items:flex-start;gap:10px}.gio-items p{font-size:15px}.gio-items [data-slot=select-trigger]{width:116px;font-size:13px}.plan-fields{grid-template-columns:1fr}.self-check label{font-size:14px;line-height:1.7}.lesson-next{flex-direction:column;align-items:flex-end;gap:12px}.decomposition>article{grid-template-columns:1fr}.decomposition label{grid-column:1/-1}.pseudo-example{grid-template-columns:1fr;gap:12px}.pseudo-example p+p{border-left:0;border-top:1px solid #d8e1e4;padding-left:0;padding-top:12px}.pseudo-tools{flex-direction:column;align-items:flex-start;gap:10px}.symbols-grid{grid-template-columns:1fr;gap:14px}.symbol-card{padding:20px}.symbol-card p{font-size:16px}.bridge-example{padding:17px}.bridge-example code{font-size:13px}.lesson-activity [data-slot=button]{max-width:100%}.curriculum-list>li{gap:9px}.curriculum-list li>b{font-size:14px}.curriculum-list li>small{display:none}.flow-editor-bar{flex-direction:column;gap:8px;padding:12px}.flow-file-actions{justify-content:space-between;width:100%}.flow-file-actions button{padding:0 6px;font-size:12px}.flow-file-actions button svg{width:14px}.shape-toolbar{gap:6px;padding:10px}.shape-toolbar button{font-size:12px;padding:0 9px;height:34px}.shape-toolbar .shape-mini{width:21px}.flow-workspace{grid-template-columns:1fr}.flow-canvas{height:500px;border-right:0;border-bottom:1px solid #dfe5e7}.flow-inspector{max-height:450px;min-height:230px;padding:12px 18px}.flow-inspector [data-slot=select-trigger],.flow-inspector [data-slot=tabs-trigger],.flow-inspector input{font-size:15px}.flow-label{font-size:14px}.flow-inspector .inspector-help{font-size:15px}.flow-examples{grid-template-columns:1fr 1fr;margin-top:16px}.flow-examples>b{grid-column:1/-1}.flow-examples button{font-size:13px}.canvas-help{font-size:12px;padding:4px;top:7px;left:8px}.flow-bottom{font-size:12px;padding:9px 12px}.trace-panel{padding:15px}.trace-heading{gap:8px}.trace-heading>div{font-size:14px}.trace-heading button{font-size:12px;padding:0 8px}.trace-current{gap:10px}.trace-current>strong{font-size:16px;min-width:65%}.trace-current button{font-size:13px}.diagram-intro p{font-size:14px;line-height:1.7}.standalone-flow .flow-canvas{height:530px}.standalone-flow .flow-inspector{height:auto;max-height:470px}.diagram-reflection button{font-size:12px;white-space:normal;height:auto;min-height:38px;padding:8px 10px}}.lesson-activity .game-loading{min-height:min(720px,85vh);display:grid;place-items:center}.site-header>.hocam-oturum{--oturum-renk:#78616d;--oturum-vurgu:#1b5b6d}.course-header>.hocam-oturum{margin-left:0}