/*! tailwindcss v4.2.2 | 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)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-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}}}@layer theme{:root,:host{--font-sans:"Chivo", ui-sans-serif, system-ui, sans-serif;--font-serif:"Chivo", ui-sans-serif, system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--spacing:.25rem;--container-lg:32rem;--container-2xl:42rem;--container-5xl:64rem;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--leading-tight:1.25;--leading-snug:1.375;--leading-relaxed:1.625;--radius-xl:.75rem;--radius-2xl:1rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-surface:var(--surface);--color-hover:var(--hover)}}@layer base{*,:after,:before,::backdrop{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}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;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{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{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}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,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{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-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]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.inset-y-0{inset-block:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.top-\[22px\]{top:22px}.top-\[max\(22px\,calc\(env\(safe-area-inset-top\)\+12px\)\)\]{top:max(22px,calc(env(safe-area-inset-top) + 12px))}.right-0{right:calc(var(--spacing) * 0)}.right-\[22px\]{right:22px}.left-0{left:calc(var(--spacing) * 0)}.isolate{isolation:isolate}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.z-\[2147483001\]{z-index:2147483001}.order-last{order:9999}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.-mx-3{margin-inline:calc(var(--spacing) * -3)}.mx-auto{margin-inline:auto}.-my-1{margin-block:calc(var(--spacing) * -1)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-7{margin-top:calc(var(--spacing) * 7)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-16{margin-top:calc(var(--spacing) * 16)}.mr-auto{margin-right:auto}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.-ml-8{margin-left:calc(var(--spacing) * -8)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.table{display:table}.h-2{height:calc(var(--spacing) * 2)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-7{height:calc(var(--spacing) * 7)}.h-64{height:calc(var(--spacing) * 64)}.h-128{height:calc(var(--spacing) * 128)}.min-h-0{min-height:calc(var(--spacing) * 0)}.min-h-screen{min-height:100vh}.w-2{width:calc(var(--spacing) * 2)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-4{width:calc(var(--spacing) * 4)}.w-7{width:calc(var(--spacing) * 7)}.w-104{width:calc(var(--spacing) * 104)}.w-208{width:calc(var(--spacing) * 208)}.w-\[20\%\]{width:20%}.w-fit{width:fit-content}.w-full{width:100%}.w-screen{width:100vw}.max-w-2xl{max-width:var(--container-2xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-\[48ch\]{max-width:48ch}.max-w-\[52ch\]{max-width:52ch}.max-w-\[68ch\]{max-width:68ch}.max-w-lg{max-width:var(--container-lg)}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-\[44rem\]{min-width:44rem}.flex-1{flex:1}.flex-none{flex:none}.shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.origin-top-left{transform-origin:0 0}.translate-x-0{--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-full{--tw-translate-x:100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-50{--tw-scale-x:50%;--tw-scale-y:50%;--tw-scale-z:50%;scale:var(--tw-scale-x) var(--tw-scale-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-pointer{cursor:pointer}.resize{resize:both}.scroll-mt-20{scroll-margin-top:calc(var(--spacing) * 20)}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-\[2\.75rem_10rem_minmax\(0\,1fr\)_7\.5rem\]{grid-template-columns:2.75rem 10rem minmax(0,1fr) 7.5rem}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-\[0\.4rem\]{gap:.4rem}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-x-5{column-gap:calc(var(--spacing) * 5)}.gap-y-1{row-gap:calc(var(--spacing) * 1)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-\[0\.5rem\]{border-radius:.5rem}.rounded-\[8px\]{border-radius:8px}.rounded-full{border-radius:3.40282e38px}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.bg-\[var\(--scrim\)\]{background-color:var(--scrim)}.bg-surface{background-color:var(--color-surface)}.bg-transparent{background-color:#0000}.p-1{padding:calc(var(--spacing) * 1)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-3\.5{padding-inline:calc(var(--spacing) * 3.5)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-\[0\.45em\]{padding-inline:.45em}.px-\[0\.45rem\]{padding-inline:.45rem}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-\[0\.1rem\]{padding-block:.1rem}.py-\[0\.6rem\]{padding-block:.6rem}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-10{padding-top:calc(var(--spacing) * 10)}.pt-16{padding-top:calc(var(--spacing) * 16)}.pt-24{padding-top:calc(var(--spacing) * 24)}.pr-5{padding-right:calc(var(--spacing) * 5)}.pb-10{padding-bottom:calc(var(--spacing) * 10)}.pb-16{padding-bottom:calc(var(--spacing) * 16)}.pb-\[0\.5rem\]{padding-bottom:.5rem}.pb-\[20px\]{padding-bottom:20px}.pl-8{padding-left:calc(var(--spacing) * 8)}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.text-\[0\.75rem\]{font-size:.75rem}.text-\[0\.875rem\]{font-size:.875rem}.text-\[0\.6875rem\]{font-size:.6875rem}.text-\[0\.8125rem\]{font-size:.8125rem}.text-\[0\.9375rem\]{font-size:.9375rem}.text-\[1\.375rem\]{font-size:1.375rem}.text-\[1\.0625rem\]{font-size:1.0625rem}.text-\[1rem\]{font-size:1rem}.text-\[2\.25rem\]{font-size:2.25rem}.text-\[2rem\]{font-size:2rem}.leading-\[1\.05\]{--tw-leading:1.05;line-height:1.05}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[-0\.01em\]{--tw-tracking:-.01em;letter-spacing:-.01em}.tracking-\[0\.1em\]{--tw-tracking:.1em;letter-spacing:.1em}.tracking-\[0\.02em\]{--tw-tracking:.02em;letter-spacing:.02em}.tracking-\[0\.08em\]{--tw-tracking:.08em;letter-spacing:.08em}.tracking-\[0\.09em\]{--tw-tracking:.09em;letter-spacing:.09em}.text-pretty{text-wrap:pretty}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.opacity-0{opacity:0}.opacity-60{opacity:.6}.shadow-\[-8px_0_24px_rgba\(0\,0\,0\,0\.08\)\]{--tw-shadow:-8px 0 24px var(--tw-shadow-color,#00000014);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.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-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-340{--tw-duration:.34s;transition-duration:.34s}.ease-\[cubic-bezier\(0\.16\,1\,0\.3\,1\)\]{--tw-ease:cubic-bezier(.16,1,.3,1);transition-timing-function:cubic-bezier(.16,1,.3,1)}@media (hover:hover){.group-hover\:-translate-x-0\.5:is(:where(.group):hover *){--tw-translate-x:calc(var(--spacing) * -.5);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\:translate-x-0\.5:is(:where(.group):hover *){--tw-translate-x:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\:-translate-y-0\.5:is(:where(.group):hover *){--tw-translate-y:calc(var(--spacing) * -.5);translate:var(--tw-translate-x) var(--tw-translate-y)}}.first\:mt-0:first-child{margin-top:calc(var(--spacing) * 0)}@media (hover:hover){.hover\:bg-hover:hover{background-color:var(--color-hover)}.hover\:bg-surface:hover{background-color:var(--color-surface)}}@media (min-width:40rem){.sm\:mt-24{margin-top:calc(var(--spacing) * 24)}.sm\:-ml-14{margin-left:calc(var(--spacing) * -14)}.sm\:grid-cols-\[8\.5rem_1fr\]{grid-template-columns:8.5rem 1fr}.sm\:grid-cols-\[9\.5rem_1fr\]{grid-template-columns:9.5rem 1fr}.sm\:items-baseline{align-items:baseline}.sm\:gap-x-5{column-gap:calc(var(--spacing) * 5)}.sm\:gap-x-6{column-gap:calc(var(--spacing) * 6)}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}.sm\:px-8{padding-inline:calc(var(--spacing) * 8)}.sm\:pt-6{padding-top:calc(var(--spacing) * 6)}.sm\:pt-16{padding-top:calc(var(--spacing) * 16)}.sm\:pt-28{padding-top:calc(var(--spacing) * 28)}.sm\:pr-6{padding-right:calc(var(--spacing) * 6)}.sm\:pl-14{padding-left:calc(var(--spacing) * 14)}.sm\:text-\[0\.875rem\]{font-size:.875rem}.sm\:text-\[1\.75rem\]{font-size:1.75rem}.sm\:text-\[1rem\]{font-size:1rem}.sm\:text-\[2\.5rem\]{font-size:2.5rem}.sm\:text-\[2\.75rem\]{font-size:2.75rem}}@media (min-width:64rem){.lg\:left-\[20\%\]{left:20%}.lg\:order-0{order:0}.lg\:mt-3{margin-top:calc(var(--spacing) * 3)}.lg\:mt-6{margin-top:calc(var(--spacing) * 6)}.lg\:mt-8{margin-top:calc(var(--spacing) * 8)}.lg\:-ml-24{margin-left:calc(var(--spacing) * -24)}.lg\:block{display:block}.lg\:hidden{display:none}.lg\:inline-flex{display:inline-flex}.lg\:min-h-full{min-height:100%}.lg\:w-80{width:calc(var(--spacing) * 80)}.lg\:min-w-0{min-width:calc(var(--spacing) * 0)}.lg\:flex-col{flex-direction:column}.lg\:flex-row{flex-direction:row}.lg\:items-start{align-items:flex-start}.lg\:gap-y-2{row-gap:calc(var(--spacing) * 2)}.lg\:self-start{align-self:flex-start}.lg\:overflow-y-auto{overflow-y:auto}.lg\:border-t-0{border-top-style:var(--tw-border-style);border-top-width:0}.lg\:border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.lg\:py-8{padding-block:calc(var(--spacing) * 8)}.lg\:pl-24{padding-left:calc(var(--spacing) * 24)}}@media (min-width:80rem){.xl\:w-96{width:calc(var(--spacing) * 96)}}@media (hover:hover){.\[\@media\(hover\:hover\)\]\:block{display:block}}}:root{--white:#fff;--steel-50:#e7eaed;--steel-100:#d0d4d8;--steel-200:#c3c8cd;--steel-300:#a6acb2;--steel-400:#9aa1a9;--steel-500:#767c83;--steel-550:#6b727a;--steel-600:#4a4f55;--steel-700:#3a4048;--steel-800:#2c3138;--steel-900:#24282d;--steel-950:#16191c;--vermilion-500:#c8341a;--vermilion-400:#ff6a4d;--blue-500:#1e4fd8;--blue-400:#3b6dff;--lime-500:#a8cc1f;--lime-400:#c9f23a;--teal-500:#12897f;--teal-400:#24bdb8;--galley-ink:#ebe7dc;--galley-mid:#97948b;--galley-faint:#63615a;--galley-edge:#45433d;--galley-hair:#2c2b27;--galley-panel:#1c1b18;--galley-ground:#111110;--galley-vermilion:#e0563c;--bg:var(--steel-200);--surface:var(--steel-100);--hover:var(--steel-200);--ink:var(--steel-950);--muted:var(--steel-600);--faint:var(--steel-500);--line:var(--steel-300);--line-strong:var(--steel-500);--rule:var(--steel-950);--accent:var(--vermilion-500);--accent-soft:var(--accent)}@supports (color:color-mix(in lab,red,red)){:root{--accent-soft:color-mix(in srgb, var(--accent) 14%, transparent)}}:root{--on-accent:var(--white);--scrim:var(--steel-300);--tone-vermilion:var(--vermilion-500);--tone-blue:var(--blue-500);--tone-lime:var(--lime-500);--tone-teal:var(--teal-500)}.dark{--bg:var(--galley-ground);--surface:var(--galley-panel);--hover:var(--galley-hair);--ink:var(--galley-ink);--muted:var(--galley-mid);--faint:var(--galley-faint);--line:var(--galley-hair);--line-strong:var(--galley-edge);--rule:var(--galley-ink);--accent:var(--galley-vermilion);--accent-soft:var(--accent)}@supports (color:color-mix(in lab,red,red)){.dark{--accent-soft:color-mix(in srgb, var(--accent) 16%, transparent)}}.dark{--scrim:var(--galley-hair);--tone-vermilion:var(--vermilion-400);--tone-blue:var(--blue-400);--tone-lime:var(--lime-400);--tone-teal:var(--teal-400)}html{scroll-behavior:smooth;background:var(--bg);overflow-x:hidden}@media (prefers-reduced-motion:reduce){.route-panel{transition:none}}body{font-family:var(--font-sans);background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0;font-size:1rem;line-height:1.6}::selection{background:var(--accent);color:var(--on-accent)}body :not(.canvas-root,.canvas-root *,.route-panel){box-shadow:none!important;border-radius:0!important}.text-ink{color:var(--ink)}.text-muted{color:var(--muted)}.text-faint{color:var(--faint)}.text-accent{color:var(--accent)}.bg-base{background:var(--bg)}.bg-surface{background:var(--surface)}.bg-accent-soft{background:var(--accent-soft)}.border-line{border-color:var(--line)}.border-line-strong{border-color:var(--line-strong)}.font-sans{font-family:var(--font-sans)}.font-serif{font-family:var(--font-serif)}.text-pretty{text-wrap:pretty}.text-balance{text-wrap:balance}.tnum{font-variant-numeric:tabular-nums}.section-label{font-family:var(--font-sans);letter-spacing:-.01em;color:var(--ink);font-size:1.0625rem;font-weight:700}.section-rule{background:var(--rule);height:1px}.mark{background:var(--surface);border:1px solid var(--line);width:2.25rem;height:2.25rem;color:var(--muted);font-family:var(--font-mono);letter-spacing:.06em;flex:none;place-items:center;font-size:.6875rem;font-weight:500;display:grid}.row{border-radius:.5rem;align-items:baseline;gap:1rem;margin:0 -.75rem;padding:.9rem .75rem;transition:background-color .18s;display:flex;position:relative}a.row:hover{background:var(--surface)}.ulink{color:var(--ink);background-image:linear-gradient(var(--line-strong),var(--line-strong));background-position:0 100%;background-repeat:no-repeat;background-size:100% 1px;text-decoration:none;transition:background-size .2s,color .2s}.ulink:hover{color:var(--accent);background-image:linear-gradient(var(--accent),var(--accent))}.dot{background:var(--accent);width:.5rem;height:.5rem;box-shadow:0 0 0 4px var(--accent-soft);border-radius:9999px}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.rise{animation:.7s cubic-bezier(.16,1,.3,1) both rise}.d1{animation-delay:50ms}.d2{animation-delay:.11s}.d3{animation-delay:.18s}.d4{animation-delay:.26s}.reveal{opacity:0;transform:translateY(16px)}.reveal.in{opacity:1;transition:opacity .7s,transform .7s cubic-bezier(.16,1,.3,1);transform:translateY(0)}.project-canvas .canvas-root [data-cv-part=zoom],.canvas-root[data-cv-fullbleed] [data-cv-part=zoom]{right:72px}.canvas-preview{animation:.3s cubic-bezier(.16,1,.3,1) both rise}@keyframes fade{0%{opacity:0}to{opacity:1}}.tip-in{animation:.14s ease-out both fade}@media (prefers-reduced-motion:reduce){.rise{animation:none}.reveal{opacity:1;transform:none}.canvas-preview,.tip-in{animation:none}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-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}.canvas-root{position:relative;width:100%;height:100%;overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none}.canvas-root[data-coop]{touch-action:pan-x pan-y}.canvas-root .cv-lock{position:absolute;left:22px;bottom:22px;z-index:40;width:28px;height:28px;pointer-events:none}.canvas-root .cv-lock-btn{pointer-events:auto;flex:none;box-sizing:border-box;display:flex;align-items:center;justify-content:center;width:28px;height:28px;cursor:default}.canvas-root .cv-lock>span{position:absolute;left:calc(100% + 8px);top:50%;transform:translateY(-50%);white-space:nowrap}.canvas-root[data-coop][data-engaged]{touch-action:none}.canvas-root .cv-interact-lock{position:absolute;top:0;right:0;bottom:0;left:0;z-index:45;display:flex;align-items:center;justify-content:center;cursor:default;touch-action:pan-x pan-y;-webkit-touch-callout:none;user-select:none;-webkit-user-select:none}.canvas-root .cv-interact-lock>span{transform:translateY(2px)}@media (hover: hover){.canvas-root .cv-interact-lock:hover>span{transform:translateY(0)}}.canvas-root .cv-scrollbar{position:absolute;z-index:42;pointer-events:none}.canvas-root .cv-scrollbar-x{left:4px;right:12px;bottom:4px;height:5px}.canvas-root .cv-scrollbar-y{top:4px;bottom:12px;right:4px;width:5px}.canvas-root .cv-scrollbar-thumb{position:absolute;pointer-events:auto;touch-action:none}.canvas-root .cv-scrollbar-x .cv-scrollbar-thumb{top:0;bottom:0;cursor:ew-resize}.canvas-root .cv-scrollbar-y .cv-scrollbar-thumb{left:0;right:0;cursor:ns-resize}.canvas-root[data-fit=fullscreen]{position:fixed;top:0;right:0;bottom:0;left:0;width:auto;height:auto}.canvas-root[data-cv-fullbleed]{position:fixed;top:0;right:0;bottom:0;left:0;width:auto;height:auto;z-index:2147483000}.canvas-root *{box-sizing:border-box}.canvas-root .cv-viewport{position:absolute;top:0;right:0;bottom:0;left:0;cursor:default}.canvas-root .cv-center-lines{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:41}.canvas-root .cv-center-lines:before,.canvas-root .cv-center-lines:after{position:absolute}.canvas-root .cv-center-lines:before{top:0;bottom:0;left:50%;width:1px;transform:translate(-.5px)}.canvas-root .cv-center-lines:after{left:0;right:0;top:50%;height:1px;transform:translateY(-.5px)}.canvas-root[data-tool=select]:not([data-readonly]):not([data-panning]) .cv-viewport{cursor:var(--cv-cur-edit),default}.canvas-root[data-tool=select]:not([data-readonly]):has(.cv-node[data-dragging]) .cv-viewport{cursor:var(--cv-cur-edit-hover),grabbing}.canvas-root[data-tool=hand] .cv-viewport,.canvas-root[data-space] .cv-viewport,.canvas-root[data-panning] .cv-viewport{cursor:grab}.canvas-root[data-panning] .cv-viewport{cursor:grabbing}.canvas-root[data-tool=note] .cv-viewport,.canvas-root[data-tool=text] .cv-viewport,.canvas-root[data-tool=md] .cv-viewport,.canvas-root[data-tool=code] .cv-viewport{cursor:crosshair}.canvas-root[data-tool=scale]:not([data-readonly]) .cv-viewport,.canvas-root[data-tool=scale]:not([data-readonly]) .cv-node{cursor:nwse-resize}.canvas-root[data-tool=pen] .cv-viewport,.canvas-root[data-tool=line] .cv-viewport,.canvas-root[data-tool=arrow] .cv-viewport,.canvas-root[data-tool=rect] .cv-viewport,.canvas-root[data-tool=ellipse] .cv-viewport,.canvas-root[data-tool=frame] .cv-viewport{cursor:crosshair}.canvas-root .cv-world{position:absolute;top:0;left:0;width:0;height:0;transform-origin:0 0}.canvas-root .cv-shapeWrap{position:absolute;top:0;left:0;width:0;height:0;pointer-events:none}.canvas-root .cv-shapeSvg{position:absolute;top:0;left:0;width:1px;height:1px;overflow:visible;pointer-events:none}.canvas-root .cv-shape{pointer-events:stroke}.canvas-root .cv-shape.cv-fillable{pointer-events:all}.canvas-root[data-tool=select] .cv-shape{cursor:move}.canvas-root[data-tool=select]:not([data-readonly]) .cv-shape{cursor:var(--cv-cur-edit-hover),move}.canvas-root .cv-node{position:absolute;top:0;left:0;transform-origin:0 0}.canvas-root[data-tool=select]:not([data-readonly]) .cv-node{cursor:var(--cv-cur-edit-hover),grab}.canvas-root .cv-node[data-dragging]{cursor:var(--cv-cur-edit-hover),grabbing}.canvas-root .cv-sticky{width:210px;min-height:180px}.canvas-root .cv-sticky .cv-txt{min-height:130px;white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere}.canvas-root .cv-sticky[data-editing="1"] .cv-txt{cursor:text}.canvas-root .cv-tblock .cv-txt{white-space:pre}.canvas-root .cv-tblock[data-editing="1"] .cv-txt{cursor:text}.canvas-root .cv-tblock[data-w] .cv-txt{white-space:pre-wrap;word-break:break-word}.canvas-root .cv-node[data-editing="1"]{cursor:text}.canvas-root .cv-node.cv-frame{width:200px;height:140px}.canvas-root .cv-frame .cv-frame-body{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.canvas-root .cv-node.cv-image,.canvas-root .cv-node.cv-video{overflow:hidden}.canvas-root .cv-node.cv-image.cv-svg{overflow:visible}.canvas-root .cv-node.cv-image img{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;object-position:left top;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;pointer-events:none}.canvas-root .cv-node.cv-image.cv-svg img{object-fit:contain}.canvas-root .cv-node.cv-video video{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;object-position:left top;-webkit-user-select:none;user-select:none;pointer-events:none}.canvas-root .cv-node.cv-html{overflow:hidden}.canvas-root .cv-node.cv-html .cv-html-frame{display:block;width:100%;height:100%;max-width:none;pointer-events:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.canvas-root .cv-node.cv-html .cv-html-shield{position:absolute;top:0;right:0;bottom:0;left:0;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.canvas-root .cv-node.cv-html.cv-live .cv-html-frame{pointer-events:auto}.canvas-root .cv-node.cv-video .cv-vctrl{position:absolute;left:6px;right:6px;bottom:6px;display:flex;align-items:center;gap:2px;-webkit-user-select:none;user-select:none;cursor:default}.canvas-root .cv-node.cv-video .cv-vplay{display:flex;align-items:center;justify-content:center;width:22px;height:22px;flex:none;cursor:default}.canvas-root .cv-node.cv-video .cv-vplay svg{width:12px;height:12px}.canvas-root .cv-node.cv-video .cv-vbar{flex:1;display:flex;align-items:center;height:16px;cursor:default;touch-action:none}.canvas-root .cv-node.cv-video .cv-vtrack{flex:1;height:3px;overflow:hidden}.canvas-root .cv-node.cv-video .cv-vfill{width:0;height:100%}.canvas-root .cv-df{--cv-df-u: calc(var(--cv-df-bar, 36px) / 36);width:100%;height:100%;display:flex;flex-direction:column}.canvas-root .cv-df-screen{position:relative;flex:1;min-height:0;overflow:hidden}.canvas-root .cv-df-bar{flex:none;height:var(--cv-df-bar, 36px);display:flex;align-items:center;gap:calc(var(--cv-df-u) * 10);pointer-events:none;-webkit-user-select:none;user-select:none}.canvas-root .cv-df svg{display:block}.canvas-root .cv-df-field-text,.canvas-root .cv-df-field-input{min-width:0;overflow:hidden;white-space:nowrap}.canvas-root .cv-df-field-input{pointer-events:auto;cursor:text}.canvas-root .cv-df-dots{display:flex;gap:calc(var(--cv-df-u) * 6);flex:none}.canvas-root .cv-df-dots i{width:calc(var(--cv-df-u) * 10);height:calc(var(--cv-df-u) * 10)}.canvas-root .cv-df-nav{display:flex;align-items:center;gap:calc(var(--cv-df-u) * 2);flex:none}.canvas-root .cv-df-nav svg{width:calc(var(--cv-df-u) * 16);height:calc(var(--cv-df-u) * 16)}.canvas-root .cv-df-nav svg:last-child{width:calc(var(--cv-df-u) * 13);height:calc(var(--cv-df-u) * 13)}.canvas-root .cv-df-url{flex:1;min-width:0;height:calc(var(--cv-df-u) * 22);display:flex;align-items:center}.canvas-root .cv-df-url .cv-df-field-text,.canvas-root .cv-df-url .cv-df-field-input{width:100%}.canvas-root .cv-df-icon{flex:none;width:calc(var(--cv-df-u) * 16);height:calc(var(--cv-df-u) * 16);display:flex;align-items:center;justify-content:center}.canvas-root .cv-df-icon svg{width:calc(var(--cv-df-u) * 10);height:calc(var(--cv-df-u) * 10)}.canvas-root .cv-df-title{flex:1}.canvas-root .cv-df-close{flex:none;display:flex;align-items:center;justify-content:center}.canvas-root .cv-df-close svg{width:calc(var(--cv-df-u) * 16);height:calc(var(--cv-df-u) * 16)}.canvas-root .cv-df-termtitle{flex:1}.canvas-root .cv-df-termspacer{flex:none;width:calc(var(--cv-df-u) * 42)}.canvas-root .cv-node.cv-media{display:grid;gap:6px}.canvas-root .cv-node.cv-media .cv-media-cell{position:relative;overflow:hidden;min-width:0;min-height:0}.canvas-root .cv-node.cv-media .cv-media-cell img,.canvas-root .cv-node.cv-media .cv-media-cell video{display:block;width:100%;height:100%;object-fit:cover;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;pointer-events:none}.canvas-root .cv-node.cv-media .cv-media-cell.cv-svg img{object-fit:contain}.canvas-root[data-readonly] .cv-node.cv-media .cv-media-cell{cursor:zoom-in}.canvas-root .cv-node.cv-sound{display:flex;align-items:center;gap:10px;box-sizing:border-box;-webkit-user-select:none;user-select:none}.canvas-root .cv-node.cv-sound audio{display:none}.canvas-root .cv-node.cv-sound .cv-splay{display:flex;align-items:center;justify-content:center;width:34px;height:34px;flex:none;cursor:default}.canvas-root .cv-node.cv-sound .cv-splay svg{width:15px;height:15px}.canvas-root .cv-node.cv-sound .cv-sbody{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.canvas-root .cv-node.cv-sound .cv-srow{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.canvas-root .cv-node.cv-sound .cv-sname{min-width:0;white-space:nowrap;overflow:hidden}.canvas-root .cv-node.cv-sound .cv-sname-input{min-width:0;flex:1}.canvas-root .cv-node.cv-sound .cv-stime{flex:none}.canvas-root .cv-node.cv-sound .cv-sbar{display:flex;align-items:center;height:12px;cursor:default;touch-action:none}.canvas-root .cv-node.cv-sound .cv-strack{flex:1;height:4px;overflow:hidden}.canvas-root .cv-node.cv-sound .cv-sfill{width:0;height:100%}.canvas-root .cv-node.cv-link{display:block;width:280px;overflow:hidden;-webkit-user-select:none;user-select:none}.canvas-root .cv-node.cv-link .cv-link-thumb{width:100%;aspect-ratio:1.91 / 1;overflow:hidden}.canvas-root .cv-node.cv-link .cv-link-thumb img{display:block;width:100%;height:100%;object-fit:cover;-webkit-user-drag:none;pointer-events:none}.canvas-root .cv-node.cv-link .cv-link-body{display:flex;flex-direction:column;gap:4px}.canvas-root .cv-node.cv-link .cv-link-title,.canvas-root .cv-node.cv-link .cv-link-desc{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.canvas-root .cv-node.cv-link .cv-link-host{display:flex;align-items:center;gap:6px;min-width:0}.canvas-root .cv-node.cv-link .cv-link-host span{white-space:nowrap;overflow:hidden}.canvas-root .cv-node.cv-link .cv-link-favicon{width:14px;height:14px;flex:none;object-fit:contain}.canvas-root .cv-node.cv-link .cv-link-favicon-fallback{width:13px;height:13px;flex:none}.canvas-root .cv-node.cv-link .cv-link-loading{display:flex;align-items:center;gap:8px}.canvas-root .cv-node.cv-link .cv-link-loading .cv-spin{width:15px;height:15px}.canvas-root .cv-md{width:340px;overflow:hidden}.canvas-root .cv-md-edit{display:none;position:relative}.canvas-root .cv-md[data-editing] .cv-md-edit{display:block}.canvas-root .cv-md[data-editing] .cv-md-render{display:none}.canvas-root:not([data-readonly]) .cv-md-render *{pointer-events:none}.canvas-root .cv-md-hl,.canvas-root .cv-md-src{-moz-tab-size:2;tab-size:2;white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere}.canvas-root .cv-md-hl{pointer-events:none;min-height:66px}.canvas-root .cv-md-hl code{white-space:inherit}.canvas-root .cv-md-src{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;resize:none;overflow:hidden}.canvas-root .cv-md-render pre.cv-cb{overflow:auto}.canvas-root .cv-md-render img{max-width:100%}.canvas-root .cv-md-render .cv-md-kicker{display:flex;align-items:center;gap:.55rem}.canvas-root .cv-md-render .cv-md-kicker:before{width:16px;height:2px;flex:none}.canvas-root .cv-md-render .cv-md-tags{display:flex;flex-wrap:wrap;gap:.4rem .5rem}.canvas-root .cv-code{width:420px;overflow:hidden}.canvas-root .cv-code-head{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:37px}.canvas-root .cv-code-head-actions{display:flex;align-items:center;gap:6px;flex:none}.canvas-root .cv-code-toggle{width:26px;height:24px;flex:none;display:flex;align-items:center;justify-content:center;cursor:default;pointer-events:none}.canvas-root .cv-code:hover .cv-code-toggle,.canvas-root .cv-code[data-editing] .cv-code-toggle{pointer-events:auto}.canvas-root .cv-code-toggle svg{width:14px;height:14px}.canvas-root .cv-code-langbox{position:relative;display:inline-flex;align-items:center}.canvas-root .cv-code-lang{white-space:nowrap}.canvas-root .cv-code[data-editing] .cv-code-langbox{cursor:default}.canvas-root .cv-code[data-editing] .cv-code-langbox:after{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:11px;height:11px;pointer-events:none}.canvas-root select.cv-code-lang-sel{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;cursor:default}.canvas-root .cv-code-copy{width:24px;height:24px;flex:none;display:flex;align-items:center;justify-content:center;cursor:default;pointer-events:none}.canvas-root .cv-code:hover .cv-code-copy,.canvas-root .cv-code[data-editing] .cv-code-copy{pointer-events:auto}.canvas-root .cv-code-copy svg{width:14px;height:14px}.canvas-root .cv-code-edit{display:none;position:relative}.canvas-root .cv-code[data-editing] .cv-code-edit{display:block}.canvas-root .cv-code[data-editing] .cv-code-render{display:none}.canvas-root .cv-code-render,.canvas-root .cv-code-hl,.canvas-root .cv-code-src{-moz-tab-size:2;tab-size:2;white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere}.canvas-root .cv-code-render{overflow:auto;touch-action:none}.canvas-root .cv-code-render code,.canvas-root .cv-code-hl code{white-space:inherit}.canvas-root .cv-code-hl{pointer-events:none;min-height:44px}.canvas-root .cv-code-src{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;resize:none;overflow:hidden}.canvas-root .cv-code.cv-code-nowrap .cv-code-render,.canvas-root .cv-code.cv-code-nowrap .cv-code-hl,.canvas-root .cv-code.cv-code-nowrap .cv-code-src{white-space:pre;word-break:normal;overflow-wrap:normal}.canvas-root .cv-code.cv-code-nowrap .cv-code-hl{overflow:hidden}.canvas-root .cv-code.cv-code-nowrap .cv-code-src{overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.canvas-root .cv-code.cv-code-nowrap .cv-code-src::-webkit-scrollbar{display:none}.canvas-root .cv-code.cv-code-nowrap .cv-code-render{overflow-x:auto}.canvas-root .cv-chrome{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;z-index:90}.canvas-root .cv-chrome>*{position:absolute;top:0;left:0}.canvas-root .cv-sel,.canvas-root .cv-hov,.canvas-root .cv-marquee{display:none;box-sizing:border-box}.canvas-root .cv-guides{display:none;top:0;right:0;bottom:0;left:0}.canvas-root .cv-guide{position:absolute}.canvas-root .cv-rz{display:none;pointer-events:none}.canvas-root .cv-rz .cv-rz-h{position:absolute;box-sizing:border-box;pointer-events:auto}.canvas-root .cv-rz .cv-rz-nw,.canvas-root .cv-rz .cv-rz-ne,.canvas-root .cv-rz .cv-rz-sw,.canvas-root .cv-rz .cv-rz-se{--cv-rz-corner-half: 6px;width:12px;height:12px}.canvas-root .cv-rz .cv-rz-nw{left:calc(-1 * var(--cv-rz-corner-half));top:calc(-1 * var(--cv-rz-corner-half));cursor:nwse-resize}.canvas-root .cv-rz .cv-rz-ne{left:calc(100% - var(--cv-rz-corner-half));top:calc(-1 * var(--cv-rz-corner-half));cursor:nesw-resize}.canvas-root .cv-rz .cv-rz-sw{left:calc(-1 * var(--cv-rz-corner-half));top:calc(100% - var(--cv-rz-corner-half));cursor:nesw-resize}.canvas-root .cv-rz .cv-rz-se{left:calc(100% - var(--cv-rz-corner-half));top:calc(100% - var(--cv-rz-corner-half));cursor:nwse-resize}.canvas-root .cv-rz .cv-rz-n,.canvas-root .cv-rz .cv-rz-s{left:8px;right:8px;height:11px;cursor:ns-resize}.canvas-root .cv-rz .cv-rz-e,.canvas-root .cv-rz .cv-rz-w{top:8px;bottom:8px;width:11px;cursor:ew-resize}.canvas-root .cv-rz .cv-rz-n{top:-5px}.canvas-root .cv-rz .cv-rz-s{bottom:-5px}.canvas-root .cv-rz .cv-rz-e{right:-5px}.canvas-root .cv-rz .cv-rz-w{left:-5px}.canvas-root .cv-rz[data-mode=ew] .cv-rz-nw,.canvas-root .cv-rz[data-mode=ew] .cv-rz-ne,.canvas-root .cv-rz[data-mode=ew] .cv-rz-n,.canvas-root .cv-rz[data-mode=ew] .cv-rz-s,.canvas-root .cv-rz[data-mode=scale] .cv-rz-n,.canvas-root .cv-rz[data-mode=scale] .cv-rz-s,.canvas-root .cv-rz[data-mode=scale] .cv-rz-e,.canvas-root .cv-rz[data-mode=scale] .cv-rz-w,.canvas-root .cv-grid-edit{display:none}.canvas-root .cv-grid-line{position:absolute;pointer-events:auto;touch-action:none}.canvas-root .cv-grid-line--col{cursor:col-resize}.canvas-root .cv-grid-line--row{cursor:row-resize}.canvas-root .cv-grid-line:after{position:absolute}.canvas-root .cv-grid-line--col:after{top:0;bottom:0;left:50%;width:2px;transform:translate(-50%)}.canvas-root .cv-grid-line--row:after{left:0;right:0;top:50%;height:2px;transform:translateY(-50%)}.canvas-root .cv-chrome .cv-frame-label{display:inline-flex;align-items:center;gap:.5rem;cursor:grab;white-space:nowrap;pointer-events:auto;max-width:280px}.canvas-root .cv-chrome .cv-frame-label[data-editing]{cursor:text}.canvas-root .cv-chrome .cv-frame-label .cv-txt{white-space:nowrap;overflow:hidden;max-width:210px}.canvas-root .cv-chrome .cv-frame-rename{height:20px;width:150px;max-width:210px}.canvas-root .cv-chrome .cv-frame-go{width:19px;height:19px;flex:none;cursor:default;display:flex;align-items:center;justify-content:center}.canvas-root .cv-ui{position:absolute;z-index:100}.canvas-root [data-cv-part=toolbar]{left:50%;bottom:22px;transform:translate(-50%);display:flex;align-items:center;gap:3px}.canvas-root .cv-tool{width:42px;height:42px;display:flex;align-items:center;justify-content:center;cursor:default;position:relative}.canvas-root .cv-tool svg{width:20px;height:20px}.canvas-root .cv-tool .cv-tip{position:absolute;bottom:52px;left:50%;transform:translate(-50%);white-space:nowrap;pointer-events:none}.canvas-root .cv-sep{width:1px;height:26px}.canvas-root .cv-shape-menu-wrap{position:relative;display:flex}.canvas-root .cv-shape-menu{position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%);display:flex;gap:3px}.canvas-root .cv-tool .cv-shape-caret{position:absolute;right:4px;bottom:5px;width:0;height:0}.canvas-root [data-cv-part=recorder]{left:50%;top:22px;transform:translate(-50%);display:flex;align-items:center;gap:10px}.canvas-root [data-cv-part=recorder] .cv-rec-dot{width:10px;height:10px;flex:none}.canvas-root [data-cv-part=recorder] .cv-rec-btn{width:30px;height:30px;flex:none;display:flex;align-items:center;justify-content:center;cursor:default}.canvas-root [data-cv-part=recorder] .cv-rec-btn svg{width:16px;height:16px}.canvas-root [data-cv-part=properties]{right:22px;bottom:22px;display:none;flex-direction:column;gap:6px}.canvas-root [data-cv-part=properties][data-open]{display:flex}.canvas-root .cv-props-handle{display:flex;align-items:center;gap:5px;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}.canvas-root .cv-props-handle:active{cursor:grabbing}.canvas-root .cv-props-handle svg{width:13px;height:13px;flex:none}.canvas-root .cv-swatch-row{display:flex;align-items:center;gap:6px}.canvas-root .cv-swatch-label{width:42px;-webkit-user-select:none;user-select:none}.canvas-root .cv-swatch{width:24px;height:24px;cursor:default;flex:none}.canvas-root .cv-font-btn{height:26px;cursor:default}.canvas-root .cv-align-btn{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;cursor:default}.canvas-root .cv-align-btn svg{width:15px;height:15px}.canvas-root .cv-swatch.cv-swatch-none{position:relative;overflow:hidden}.canvas-root .cv-swatch.cv-swatch-none:after{position:absolute;left:-3px;right:-3px;top:50%;height:1.6px;transform:rotate(-45deg)}.canvas-root [data-cv-part=topbar]{left:22px;top:22px;display:flex;align-items:center;gap:4px}.canvas-root .cv-chip{height:28px;display:inline-flex;align-items:center;gap:.4rem;cursor:default}.canvas-root .cv-chip svg{width:14px;height:14px}.canvas-root .cv-save-status{right:22px;bottom:22px;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;cursor:default;pointer-events:none}.canvas-root .cv-save-status svg{width:14px;height:14px}.canvas-root .cv-bg-menu-wrap{position:relative;display:flex}.canvas-root .cv-bg-menu{position:absolute;top:calc(100% + 10px);left:0;display:flex;align-items:center;gap:6px}.canvas-root .cv-chip .cv-chip-swatch{width:13px;height:13px}.canvas-root .cv-bg-menu .cv-swatch.cv-default{position:relative;overflow:hidden}.canvas-root .cv-bg-menu .cv-swatch.cv-default:after{position:absolute;left:-3px;right:-3px;top:50%;height:1.6px;transform:rotate(-45deg)}.canvas-root .cv-bg-menu .cv-swatch.cv-custom{position:relative;display:block;overflow:hidden}.canvas-root .cv-bg-menu .cv-swatch.cv-custom input{position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;cursor:default}.canvas-root[data-readonly] [data-cv-part=toolbar],.canvas-root[data-readonly] [data-cv-part=properties]{display:none}.canvas-root[data-readonly] .cv-rz,.canvas-root[data-readonly] .cv-sel{display:none!important}.canvas-root[data-readonly] .cv-viewport{cursor:grab}.canvas-root[data-readonly][data-panning] .cv-viewport{cursor:grabbing}.canvas-root[data-readonly] .cv-frame-label{cursor:default}.canvas-root[data-readonly] .cv-node.cv-image,.canvas-root[data-readonly] .cv-node.cv-video{cursor:zoom-in}.canvas-root[data-readonly] .cv-node.cv-image.cv-svg{cursor:inherit}.canvas-root [data-cv-part=zoom]{right:22px;top:22px;display:flex;align-items:center;gap:2px}.canvas-root [data-cv-part=zoom] button{width:28px;height:28px;cursor:default;display:flex;align-items:center;justify-content:center}.canvas-root [data-cv-part=zoom] button svg{width:16px;height:16px}.canvas-root [data-cv-part=zoom] .cv-zoom-sep{width:1px;align-self:stretch}.canvas-root .cv-zoomval{min-width:52px;cursor:default}.canvas-root [data-cv-part=context-menu]{position:fixed;z-index:200;min-width:176px;display:none}.canvas-root [data-cv-part=context-menu][data-open]{display:block}.canvas-root [data-cv-part=context-menu] button{display:flex;align-items:center;gap:.55rem;width:100%;height:28px;cursor:default}.canvas-root [data-cv-part=context-menu] button svg{width:15px;height:15px}.canvas-root [data-cv-part=context-menu] .cv-ctxsep{height:1px}.canvas-root [data-cv-part=context-menu] .cv-ctxscale{display:flex;align-items:center;gap:.55rem;height:28px}.canvas-root [data-cv-part=context-menu] .cv-ctxscale svg{width:15px;height:15px}.canvas-root [data-cv-part=context-menu] .cv-ctxscale span{flex:1}.canvas-root [data-cv-part=context-menu] .cv-ctxscale-input{width:58px;height:22px}.canvas-root .cv-page-nav{position:relative;display:flex;align-items:center}.canvas-root .cv-page-nav-trigger{max-width:200px}.canvas-root .cv-page-nav-current{white-space:nowrap;overflow:hidden}.canvas-root .cv-page-nav-chev{width:12px!important;height:12px!important}.canvas-root .cv-page-menu{position:absolute;top:calc(100% + 12px);left:-5px;z-index:200;min-width:210px;max-height:60vh;overflow:auto;display:flex;flex-direction:column;gap:2px}.canvas-root .cv-page-menu-item{display:flex;align-items:center;overflow:hidden}.canvas-root .cv-page-menu-btn{flex:1;min-width:0;cursor:default;height:28px;white-space:nowrap;overflow:hidden}.canvas-root .cv-page-group{display:flex;flex-direction:column;gap:1px}.canvas-root .cv-section-item{display:flex;align-items:center;gap:.5rem;width:100%;height:28px;cursor:default}.canvas-root .cv-section-num{width:14px;flex:none}.canvas-root .cv-section-name{white-space:nowrap;overflow:hidden}.canvas-root .cv-section-rename{flex:1;min-width:0;height:24px}.canvas-root .cv-page-menu-add{display:flex;align-items:center;gap:.5rem;width:100%;height:28px;cursor:default}.cv-page-ctx{position:fixed;z-index:300;min-width:150px}.cv-page-ctx button{display:flex;align-items:center;gap:.55rem;width:100%;height:28px;cursor:default}.cv-page-ctx button svg{width:15px;height:15px}.cv-page-rename{flex:1;min-width:0;height:28px}.canvas-root [data-cv-part=lightbox]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:400;display:flex;align-items:center;justify-content:center;cursor:zoom-out}.canvas-root [data-cv-part=lightbox] img,.canvas-root [data-cv-part=lightbox] video{max-width:100%;max-height:100%;object-fit:contain;cursor:default}.canvas-root :is(.cv-node,[data-cv-part=lightbox]) img.cv-dark{display:none}:is(.dark .canvas-root,.canvas-root.dark) :is(.cv-node,[data-cv-part=lightbox]) img.cv-light{display:none}:is(.dark .canvas-root,.canvas-root.dark) :is(.cv-node,[data-cv-part=lightbox]) img.cv-dark{display:block}.canvas-root [data-cv-part=lightbox] .cv-lb-close{position:absolute;top:18px;right:20px;width:40px;height:40px;cursor:default;display:flex;align-items:center;justify-content:center}.canvas-root [data-cv-part=lightbox] .cv-lb-nav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;cursor:default;display:flex;align-items:center;justify-content:center}.canvas-root [data-cv-part=lightbox] .cv-lb-nav svg{width:24px;height:24px}.canvas-root [data-cv-part=lightbox] .cv-lb-prev{left:20px}.canvas-root [data-cv-part=lightbox] .cv-lb-next{right:20px}.canvas-root [data-cv-part=lightbox] .cv-lb-count{position:absolute;bottom:20px;left:50%;transform:translate(-50%)}@media (max-width: 640px){.canvas-root [data-cv-part=topbar] .cv-brand small{display:none}.canvas-root .cv-tool{width:38px;height:38px}}.canvas-root{--cv-bg-base: #f6f5f3;--cv-bg: var(--cv-bg-base);--cv-bg-tint: 6%;--cv-grid: rgba(0, 0, 0, .075);--cv-grid-strong: rgba(0, 0, 0, .12);--cv-surface: #ffffff;--cv-ink: #141417;--cv-ink-fill: #1414174d;--cv-muted: #3c3c42;--cv-faint: #8b8b91;--cv-line: rgba(0, 0, 0, .11);--cv-line-strong: rgba(0, 0, 0, .3);--cv-scrollbar: rgba(20, 20, 23, .28);--cv-scrollbar-hover: rgba(20, 20, 23, .5);--cv-accent: #7c2d91;--cv-accent-soft: color-mix(in srgb, var(--cv-accent) 10%, transparent);--cv-snap-guide: #f5317f;--cv-center-guide: rgba(0, 190, 214, .85);--cv-shadow: 0 1px 2px rgba(0, 0, 0, .06), 0 8px 24px rgba(0, 0, 0, .09);--cv-ui-bg: rgba(255, 255, 255, .82);--cv-ui-border: rgba(0, 0, 0, .1);--cv-radius: 6px;--cv-ui-radius: 16px;--cv-ui-blur: 14px;--cv-note-yellow: #ffe27a;--cv-note-yellow-ink: #3a2c00;--cv-note-pink: #ffb4c6;--cv-note-pink-ink: #4a1024;--cv-note-blue: #a9d3ff;--cv-note-blue-ink: #0d2c4a;--cv-note-green: #b7e6a5;--cv-note-green-ink: #173a10;--cv-note-purple: #d9b8ff;--cv-note-purple-ink: #2e1147;--cv-note-orange: #ffc98a;--cv-note-orange-ink: #4a2a05;--cv-code-comment: #a0a1a7;--cv-code-keyword: #a626a4;--cv-code-string: #50a14f;--cv-code-number: #b76b01;--cv-code-function: #4078f2;--cv-code-tag: #e45649;--cv-code-punctuation: var(--cv-faint);--cv-sans: "Inter", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--cv-serif: "Tinos", "Times New Roman", Times, Georgia, serif;--cv-hand: "Caveat", cursive;--cv-mono: "JetBrains Mono", "SF Mono", ui-monospace, Menlo, Consolas, monospace;--cv-cur-edit: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='26' viewBox='0 0 26 26'%3E%3Cpath d='M5 3 L5 21 L10 16 L13.5 23.5 L16.5 22.2 L13 14.8 L20 14.8 Z' fill='%237C2D91' stroke='%23fff' stroke-width='1.5' stroke-linejoin='round'/%3E%3C/svg%3E") 5 3;--cv-cur-edit-hover: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='26' viewBox='0 0 26 26'%3E%3Cpath d='M5 3 L5 21 L10 16 L13.5 23.5 L16.5 22.2 L13 14.8 L20 14.8 Z' fill='%23fff' stroke='%237C2D91' stroke-width='1.5' stroke-linejoin='round'/%3E%3Ccircle cx='19.5' cy='6.5' r='3' fill='%237C2D91'/%3E%3C/svg%3E") 5 3}.dark .canvas-root,.canvas-root.dark{--cv-bg-base: #0c0c0e;--cv-bg: var(--cv-bg-base);--cv-bg-tint: 18%;--cv-grid: rgba(255, 255, 255, .07);--cv-grid-strong: rgba(255, 255, 255, .1);--cv-surface: #161619;--cv-ink: #f2f2ef;--cv-ink-fill: #f2f2ef4d;--cv-muted: #b4b4b9;--cv-faint: #6c6c72;--cv-line: rgba(242, 242, 239, .12);--cv-line-strong: rgba(242, 242, 239, .32);--cv-scrollbar: rgba(242, 242, 239, .28);--cv-scrollbar-hover: rgba(242, 242, 239, .5);--cv-accent: #c88be8;--cv-accent-soft: color-mix(in srgb, var(--cv-accent) 16%, transparent);--cv-snap-guide: #ff6ba3;--cv-center-guide: rgba(34, 211, 238, .85);--cv-shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 10px 30px rgba(0, 0, 0, .5);--cv-ui-bg: rgba(22, 22, 25, .82);--cv-ui-border: rgba(255, 255, 255, .12);--cv-code-comment: #7d8590;--cv-code-keyword: #c678dd;--cv-code-string: #98c379;--cv-code-number: #d19a66;--cv-code-function: #61afef;--cv-code-tag: #e06c75;--cv-cur-edit: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='26' viewBox='0 0 26 26'%3E%3Cpath d='M5 3 L5 21 L10 16 L13.5 23.5 L16.5 22.2 L13 14.8 L20 14.8 Z' fill='%23C88BE8' stroke='%230C0C0E' stroke-width='1.5' stroke-linejoin='round'/%3E%3C/svg%3E") 5 3;--cv-cur-edit-hover: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='26' viewBox='0 0 26 26'%3E%3Cpath d='M5 3 L5 21 L10 16 L13.5 23.5 L16.5 22.2 L13 14.8 L20 14.8 Z' fill='%230C0C0E' stroke='%23C88BE8' stroke-width='1.5' stroke-linejoin='round'/%3E%3Ccircle cx='19.5' cy='6.5' r='3' fill='%23C88BE8'/%3E%3C/svg%3E") 5 3}.canvas-root[data-cv-bg=custom]{--cv-bg: color-mix(in oklch, var(--cv-bg-pick) var(--cv-bg-tint), var(--cv-bg-base))}.canvas-root{background:var(--cv-bg);color:var(--cv-ink);font-family:var(--cv-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .4s ease,color .4s ease}.canvas-root .cv-lock-btn{padding:0;border:1px solid rgba(255,255,255,.16);border-radius:999px;color:#fff;background:#0c0c0eb8;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);box-shadow:0 2px 10px #00000040;-webkit-tap-highlight-color:transparent;outline:none;transition:background .15s ease}.canvas-root .cv-lock-btn:focus-visible{outline:2px solid var(--cv-accent);outline-offset:2px}@media (hover: hover){.canvas-root .cv-lock-btn:hover{background:#0c0c0ed9}}.canvas-root .cv-lock>span{padding:8px 14px;border:1px solid rgba(255,255,255,.16);border-radius:999px;font-size:13px;font-weight:500;line-height:1;color:#fff;background:#0c0c0eb8;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);box-shadow:0 2px 10px #00000040;opacity:0;transition:opacity .18s ease}.canvas-root .cv-lock>span[data-open]{opacity:1}.canvas-root .cv-interact-lock{margin:0;padding:0;border:0;background:#0c0c0e0a;-webkit-tap-highlight-color:transparent;outline:none;transition:background .15s ease}.canvas-root .cv-interact-lock:focus-visible>span{outline:2px solid var(--cv-accent);outline-offset:2px}.dark .canvas-root .cv-interact-lock,.canvas-root.dark .cv-interact-lock{background:#00000024}.canvas-root .cv-interact-lock>span{padding:9px 16px;border-radius:999px;font-size:13px;font-weight:600;line-height:1;color:#fff;background:#0c0c0ec7;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);box-shadow:0 2px 12px #00000047;opacity:.92;transition:transform .15s ease,opacity .15s ease}@media (hover: hover){.canvas-root .cv-interact-lock:hover{background:#0c0c0e12}.canvas-root .cv-interact-lock:hover>span{opacity:1}}.canvas-root .cv-scrollbar{background:transparent;opacity:0;transition:opacity .15s ease}.canvas-root .cv-scrollbar[data-visible]{opacity:1}.canvas-root .cv-scrollbar-thumb{border-radius:0;background:var(--cv-scrollbar);transition:background .15s ease;-webkit-tap-highlight-color:transparent}@media (hover: hover){.canvas-root .cv-scrollbar-thumb:hover{background:var(--cv-scrollbar-hover)}}.canvas-root a{color:inherit;text-decoration:none}.canvas-root ::selection{background:var(--cv-accent);color:#fff}.canvas-root .cv-viewport{background-color:var(--cv-bg);background-image:radial-gradient(var(--cv-grid) 1.4px,transparent 1.4px);background-size:22px 22px;background-position:var(--cv-gx, 0) var(--cv-gy, 0);transition:background-color .4s ease}.canvas-root[data-cv-grid=off] .cv-viewport{background-image:none}.canvas-root .cv-center-lines:before,.canvas-root .cv-center-lines:after{content:"";background:var(--cv-center-guide)}.canvas-root .cv-shape{fill:none;stroke-linecap:round;stroke-linejoin:round}.canvas-root .cv-shape.cv-fillable{fill:transparent}.canvas-root .cv-sticky{padding:18px 18px 20px;font-family:var(--cv-hand);font-size:1.5rem;line-height:1.25;color:var(--cv-note-yellow-ink);background:var(--cv-note-yellow);box-shadow:0 2px 3px #00000024,0 14px 26px #00000029;border-radius:3px 3px 5px 5px}.canvas-root .cv-sticky .cv-txt{outline:none}.canvas-root .cv-sticky[data-color=pink]{background:var(--cv-note-pink);color:var(--cv-note-pink-ink)}.canvas-root .cv-sticky[data-color=blue]{background:var(--cv-note-blue);color:var(--cv-note-blue-ink)}.canvas-root .cv-sticky[data-color=green]{background:var(--cv-note-green);color:var(--cv-note-green-ink)}.canvas-root .cv-sticky[data-color=purple]{background:var(--cv-note-purple);color:var(--cv-note-purple-ink)}.canvas-root .cv-sticky[data-color=orange]{background:var(--cv-note-orange);color:var(--cv-note-orange-ink)}.canvas-root .cv-tblock{padding:6px 8px;border-radius:var(--cv-radius);font-family:var(--cv-serif);font-size:1.5rem;line-height:1.4;color:var(--cv-ink)}.canvas-root .cv-tblock[data-font=sans]{font-family:var(--cv-sans)}.canvas-root .cv-tblock[data-font=serif]{font-family:var(--cv-serif)}.canvas-root .cv-tblock[data-font=mono]{font-family:var(--cv-mono)}.canvas-root .cv-tblock[data-font=script]{font-family:var(--cv-hand)}.canvas-root .cv-tblock .cv-txt{outline:none}.canvas-root .cv-frame .cv-frame-body{border:1.6px dashed var(--cv-accent);border-radius:9px;background:var(--cv-accent-soft)}.canvas-root .cv-node.cv-image,.canvas-root .cv-node.cv-video{border-radius:var(--cv-radius);box-shadow:var(--cv-shadow);background:var(--cv-surface)}.canvas-root .cv-node.cv-image.cv-svg{box-shadow:none;background:transparent;border-radius:0}.canvas-root .cv-node.cv-html{border-radius:var(--cv-radius);background:transparent}.canvas-root .cv-node.cv-html .cv-html-frame{border:0;background:transparent;-webkit-tap-highlight-color:transparent}.canvas-root .cv-node.cv-html .cv-df--plain .cv-df-screen{background:transparent}.canvas-root .cv-node.cv-html.cv-framed{box-shadow:var(--cv-shadow)}.canvas-root .cv-node.cv-html .cv-html-shield{-webkit-tap-highlight-color:transparent}.canvas-root .cv-node.cv-html.cv-live{outline:2px solid var(--cv-accent);outline-offset:2px}.canvas-root .cv-node.cv-video .cv-vctrl{padding:3px 8px 3px 4px;border-radius:8px;background:#0c0c0e9e;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);opacity:0;transition:opacity .15s ease}.canvas-root .cv-node.cv-video:hover .cv-vctrl{opacity:1}.canvas-root .cv-node.cv-video .cv-vplay{border:0;border-radius:6px;background:transparent;color:#fff;padding:0}.canvas-root .cv-node.cv-video .cv-vplay:hover{background:#ffffff2e}.canvas-root .cv-node.cv-video .cv-vplay svg{fill:currentColor;stroke:currentColor}.canvas-root .cv-node.cv-video .cv-vtrack{border-radius:2px;background:#ffffff52}.canvas-root .cv-node.cv-video .cv-vfill{border-radius:2px;background:#fff}.canvas-root .cv-node.cv-image.cv-framed,.canvas-root .cv-node.cv-video.cv-framed,.canvas-root .cv-node.cv-html.cv-framed{background:var(--cv-surface);border:calc(var(--cv-df-bar, 36px) / 36) solid var(--cv-line);border-radius:calc(var(--cv-df-bar, 36px) / 3.6)}.canvas-root .cv-df-screen{background:var(--cv-bg-base)}.canvas-root .cv-df-bar{padding:0 calc(var(--cv-df-u) * 12);background:color-mix(in srgb,var(--cv-surface) 97%,var(--cv-ink));border-bottom:calc(var(--cv-df-u) * 1) solid color-mix(in srgb,var(--cv-line),transparent 65%)}.canvas-root .cv-df-field-text,.canvas-root .cv-df-field-input{text-overflow:ellipsis}.canvas-root .cv-df-field-input{border:0;background:transparent;color:inherit;font:inherit;padding:0;outline:none}.canvas-root .cv-df-field-input::placeholder{color:var(--cv-muted);opacity:.7}.canvas-root .cv-df-dots i{border-radius:50%;background:#ff5f57}.canvas-root .cv-df-dots i:nth-child(2){background:#febc2e}.canvas-root .cv-df-dots i:nth-child(3){background:#28c840}.canvas-root .cv-df-nav{color:var(--cv-muted);opacity:.75}.canvas-root .cv-df-nav svg:last-child{margin-left:calc(var(--cv-df-u) * 4)}.canvas-root .cv-df-url{padding:0 calc(var(--cv-df-u) * 10);border-radius:999px;background:var(--cv-bg-base);border:calc(var(--cv-df-u) * 1) solid color-mix(in srgb,var(--cv-line),transparent 65%);color:var(--cv-muted);font-family:var(--cv-sans, system-ui);font-size:calc(var(--cv-df-u) * 12)}.canvas-root .cv-df-url .cv-df-field-input{color:var(--cv-ink)}.canvas-root .cv-df-icon{border-radius:calc(var(--cv-df-u) * 4);background:var(--cv-ink);color:var(--cv-surface)}.canvas-root .cv-df-title{font-family:var(--cv-sans, system-ui);font-size:calc(var(--cv-df-u) * 12);color:var(--cv-ink)}.canvas-root .cv-df-close{color:var(--cv-muted);opacity:.75}.canvas-root .cv-df-termtitle{text-align:center;font-family:var(--cv-mono, ui-monospace, monospace);font-size:calc(var(--cv-df-u) * 12);color:var(--cv-muted)}.canvas-root .cv-node.cv-media .cv-media-cell{border-radius:6px;box-shadow:var(--cv-shadow);background:var(--cv-surface)}.canvas-root .cv-node.cv-media .cv-media-cell.cv-svg{background:transparent;box-shadow:none}.canvas-root .cv-node.cv-sound{padding:0 12px 0 8px;border-radius:12px;border:1px solid var(--cv-line);background:var(--cv-surface);box-shadow:var(--cv-shadow)}.canvas-root .cv-node.cv-sound .cv-splay{border:0;border-radius:50%;background:var(--cv-accent);color:#fff;padding:0}.canvas-root .cv-node.cv-sound .cv-splay svg{fill:currentColor;stroke:currentColor}.canvas-root .cv-node.cv-sound .cv-sname{font-family:var(--cv-sans);font-size:12px;font-weight:500;color:var(--cv-ink);text-overflow:ellipsis}.canvas-root .cv-node.cv-sound .cv-sname-input{margin:-2px 0;padding:1px 4px;font-family:var(--cv-sans);font-size:12px;font-weight:500;color:var(--cv-ink);background:var(--cv-surface);border:1px solid var(--cv-accent);border-radius:5px;outline:none}.canvas-root .cv-node.cv-sound .cv-stime{font-family:var(--cv-mono);font-size:10px;color:var(--cv-muted);font-variant-numeric:tabular-nums}.canvas-root .cv-node.cv-sound .cv-strack{border-radius:2px;background:var(--cv-line)}.canvas-root .cv-node.cv-sound .cv-sfill{border-radius:2px;background:var(--cv-accent)}.canvas-root .cv-node.cv-link{text-decoration:none;color:inherit;background:var(--cv-surface);border:1px solid var(--cv-line);border-radius:12px;box-shadow:var(--cv-shadow)}.canvas-root .cv-node.cv-link .cv-link-thumb{background:var(--cv-line)}.canvas-root .cv-node.cv-link .cv-link-body{padding:12px 14px 13px;font-family:var(--cv-sans)}.canvas-root .cv-node.cv-link .cv-link-title{font-size:14px;font-weight:600;line-height:1.3;color:var(--cv-ink)}.canvas-root .cv-node.cv-link .cv-link-desc{font-size:12px;line-height:1.4;color:var(--cv-muted)}.canvas-root .cv-node.cv-link .cv-link-host{margin-top:2px;font-size:11px;color:var(--cv-muted)}.canvas-root .cv-node.cv-link .cv-link-host span{text-overflow:ellipsis}.canvas-root .cv-node.cv-link .cv-link-favicon{border-radius:3px}.canvas-root .cv-node.cv-link .cv-link-favicon-fallback{stroke:var(--cv-muted)}.canvas-root .cv-node.cv-link .cv-link-loading{padding:18px 16px;font-family:var(--cv-sans);font-size:12px;color:var(--cv-muted)}.canvas-root .cv-node.cv-link .cv-link-loading .cv-spin{stroke:var(--cv-muted);animation:cv-spin .8s linear infinite}@keyframes cv-spin{to{transform:rotate(360deg)}}.canvas-root .cv-md{background:var(--cv-surface);border:1px solid var(--cv-line);border-radius:12px;box-shadow:var(--cv-shadow)}.canvas-root .cv-md-hl,.canvas-root .cv-md-src{margin:0;padding:16px 18px;border:0;font-family:var(--cv-mono);font-size:13px;line-height:1.62;letter-spacing:0}.canvas-root .cv-md-hl{color:var(--cv-ink)}.canvas-root .cv-md-hl code{font:inherit;background:none;padding:0}.canvas-root .cv-md-src{background:transparent;color:transparent;caret-color:var(--cv-accent);outline:none}.canvas-root .cv-md-src::selection{background:color-mix(in srgb,var(--cv-accent) 28%,transparent)}.canvas-root .cv-md-hl .cv-t-head{color:var(--cv-accent);font-weight:700}.canvas-root .cv-md-hl .cv-t-hr,.canvas-root .cv-md-hl .cv-t-fence{color:var(--cv-faint)}.canvas-root .cv-md-hl .cv-t-quote{color:var(--cv-muted);font-style:italic}.canvas-root .cv-md-hl .cv-t-mark{color:var(--cv-accent);font-weight:700}.canvas-root .cv-md-hl .cv-t-bold{color:var(--cv-ink);font-weight:700}.canvas-root .cv-md-hl .cv-t-em{font-style:italic}.canvas-root .cv-md-hl .cv-t-code-in,.canvas-root .cv-md-hl .cv-t-code{color:#0a7ea4}.canvas-root .cv-md-hl .cv-t-link{color:#1565c0;text-decoration:underline}.dark .canvas-root .cv-md-hl .cv-t-code-in,.dark .canvas-root .cv-md-hl .cv-t-code,.canvas-root.dark .cv-md-hl .cv-t-code-in,.canvas-root.dark .cv-md-hl .cv-t-code{color:#5ccfe6}.dark .canvas-root .cv-md-hl .cv-t-link,.canvas-root.dark .cv-md-hl .cv-t-link{color:#7cb7ff}.canvas-root .cv-md-hl .cv-t-kicker{color:var(--cv-accent);font-weight:700}.canvas-root .cv-md-hl .cv-t-tag{color:var(--cv-accent)}.canvas-root .cv-md-render{padding:16px 20px;font-family:var(--cv-serif);color:var(--cv-ink);font-size:1rem;line-height:1.55}.canvas-root .cv-md-render>*:first-child{margin-top:0}.canvas-root .cv-md-render>*:last-child{margin-bottom:0}.canvas-root .cv-md-render h1,.canvas-root .cv-md-render h2,.canvas-root .cv-md-render h3,.canvas-root .cv-md-render h4,.canvas-root .cv-md-render h5,.canvas-root .cv-md-render h6{font-family:var(--cv-sans);font-weight:700;line-height:1.2;margin:1em 0 .45em;letter-spacing:-.01em}.canvas-root .cv-md-render h1{font-size:2rem}.canvas-root .cv-md-render h2{font-size:1.6rem}.canvas-root .cv-md-render h3{font-size:1.3rem}.canvas-root .cv-md-render h4{font-size:1.08rem}.canvas-root .cv-md-render h5{font-size:.92rem}.canvas-root .cv-md-render h6{font-size:.8rem;letter-spacing:.02em;text-transform:uppercase;color:var(--cv-muted, var(--cv-ink))}.canvas-root .cv-md-render p{margin:.55em 0}.canvas-root .cv-md-render a{color:var(--cv-accent);text-decoration:underline}.canvas-root .cv-md-render strong{font-weight:700}.canvas-root .cv-md-render em{font-style:italic}.canvas-root .cv-md-render code{font-family:var(--cv-mono);font-size:.84em;background:var(--cv-accent-soft);padding:.1em .35em;border-radius:5px}.canvas-root .cv-md-render pre.cv-cb{background:var(--cv-bg);border:1px solid var(--cv-line);border-radius:8px;padding:12px 14px;margin:.6em 0}.canvas-root .cv-md-render pre.cv-cb code{background:none;padding:0;font-size:.82rem;line-height:1.5}.canvas-root .cv-md-render ul,.canvas-root .cv-md-render ol{margin:.55em 0;padding-left:1.4em;list-style-position:outside}.canvas-root .cv-md-render ul{list-style-type:disc}.canvas-root .cv-md-render ol{list-style-type:decimal}.canvas-root .cv-md-render li{margin:.18em 0;list-style:inherit}.canvas-root .cv-md-render blockquote{margin:.6em 0;padding-left:.9em;border-left:3px solid var(--cv-accent);color:var(--cv-muted)}.canvas-root .cv-md-render hr{border:0;border-top:1px solid var(--cv-line);margin:1em 0}.canvas-root .cv-md-render img{border-radius:6px}.canvas-root .cv-md-render .cv-md-empty{color:var(--cv-faint);font-style:italic}.canvas-root .cv-md-render .cv-md-kicker{font-family:var(--cv-sans);font-size:.62rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--cv-accent);margin:1.1em 0 .5em}.canvas-root .cv-md-render .cv-md-kicker:before{content:"";background:var(--cv-accent);border-radius:2px}.canvas-root .cv-md-render .cv-md-kicker:first-child{margin-top:0}.canvas-root .cv-md-render .cv-md-tags{margin:.55em 0}.canvas-root .cv-md-render .cv-md-tags span{font-family:var(--cv-sans);font-size:.62rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--cv-faint);border:1px solid var(--cv-line);border-radius:100px;padding:.22rem .6rem}.canvas-root .cv-code{background:var(--cv-surface);border:1px solid var(--cv-line);border-radius:12px;box-shadow:var(--cv-shadow)}.canvas-root .cv-code-head{padding:6px;border-bottom:1px solid var(--cv-line);background:var(--cv-bg-base)}.canvas-root .cv-code-toggle{border:1px solid transparent;border-radius:7px;background:transparent;color:var(--cv-faint);opacity:0;transition:opacity .12s ease,color .12s ease,background-color .12s ease,border-color .12s ease}.canvas-root .cv-code:hover .cv-code-toggle,.canvas-root .cv-code[data-editing] .cv-code-toggle{opacity:1}.canvas-root .cv-code-toggle:hover{color:var(--cv-muted);background:var(--cv-accent-soft)}.canvas-root .cv-code-toggle[data-on]{color:var(--cv-accent);background:var(--cv-accent-soft)}.canvas-root .cv-code-toggle svg{stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round}.canvas-root .cv-code-langbox{padding:2px 6px;border:1px solid transparent;border-radius:7px;font-family:var(--cv-sans);font-size:.72rem;font-weight:600;line-height:1.4}.canvas-root .cv-code-lang{color:var(--cv-faint)}.canvas-root .cv-code[data-editing] .cv-code-langbox{border-color:var(--cv-line);background:var(--cv-surface);padding-right:22px}.canvas-root .cv-code[data-editing] .cv-code-lang{color:var(--cv-muted)}.canvas-root .cv-code[data-editing] .cv-code-langbox:after{content:"";background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238b8b91' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") center/11px no-repeat}.canvas-root select.cv-code-lang-sel{margin:0;padding:0;border:0;opacity:0;font:inherit}.canvas-root .cv-code-copy{border:0;border-radius:7px;background:transparent;color:var(--cv-faint);opacity:0;transition:opacity .12s ease,color .12s ease,background-color .12s ease}.canvas-root .cv-code:hover .cv-code-copy,.canvas-root .cv-code[data-editing] .cv-code-copy{opacity:1}.canvas-root .cv-code-copy:hover{color:var(--cv-accent);background:var(--cv-accent-soft)}.canvas-root .cv-code-copy svg{stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round}.canvas-root .cv-code-render,.canvas-root .cv-code-hl,.canvas-root .cv-code-src{margin:0;padding:14px 16px;border:0;font-family:var(--cv-mono);font-size:12.5px;line-height:1.6;letter-spacing:0}.canvas-root .cv-code-render{color:var(--cv-ink)}.canvas-root .cv-code-render code,.canvas-root .cv-code-hl code{font:inherit;background:none;padding:0}.canvas-root .cv-code-hl{color:var(--cv-ink)}.canvas-root .cv-code-src{background:transparent;color:transparent;caret-color:var(--cv-accent);outline:none}.canvas-root .cv-code-src::selection{background:color-mix(in srgb,var(--cv-accent) 28%,transparent)}.canvas-root .cv-code-render .cv-code-empty{color:var(--cv-faint);font-style:italic}.canvas-root .cv-code .cv-c-com{color:var(--cv-code-comment);font-style:italic}.canvas-root .cv-code .cv-c-key{color:var(--cv-code-keyword)}.canvas-root .cv-code .cv-c-str{color:var(--cv-code-string)}.canvas-root .cv-code .cv-c-num,.canvas-root .cv-code .cv-c-bool,.canvas-root .cv-code .cv-c-attr{color:var(--cv-code-number)}.canvas-root .cv-code .cv-c-fn,.canvas-root .cv-code .cv-c-prop{color:var(--cv-code-function)}.canvas-root .cv-code .cv-c-tag{color:var(--cv-code-tag)}.canvas-root .cv-code .cv-c-punc{color:var(--cv-code-punctuation)}.canvas-root .cv-sel{border:2px solid var(--cv-accent)}.canvas-root .cv-hov{border:1.5px solid color-mix(in srgb,var(--cv-accent) 30%,transparent)}.canvas-root .cv-marquee{border:1px solid var(--cv-accent);background:var(--cv-accent-soft)}.canvas-root .cv-guide{background:var(--cv-snap-guide)}.canvas-root .cv-guide-center-v{background:repeating-linear-gradient(to bottom,var(--cv-snap-guide) 0 4px,transparent 4px 8px)}.canvas-root .cv-guide-center-h{background:repeating-linear-gradient(to right,var(--cv-snap-guide) 0 4px,transparent 4px 8px)}.canvas-root .cv-rz .cv-rz-nw,.canvas-root .cv-rz .cv-rz-ne,.canvas-root .cv-rz .cv-rz-sw,.canvas-root .cv-rz .cv-rz-se{background:var(--cv-surface);border:2px solid var(--cv-accent)}.canvas-root .cv-grid-line{margin:0;padding:0}.canvas-root .cv-grid-line:after{content:"";background:var(--cv-accent);border-radius:2px;opacity:.9;transition:opacity .12s ease}.canvas-root .cv-grid-line:hover:after{opacity:1}.canvas-root .cv-chrome .cv-frame-label{background:var(--cv-accent);color:#fff;border-radius:8px 8px 8px 2px;padding:.22rem .22rem .22rem .55rem;font-family:var(--cv-sans);font-size:.72rem;font-weight:600;box-shadow:var(--cv-shadow)}.canvas-root .cv-chrome .cv-frame-label[data-editing]{padding:.16rem}.canvas-root .cv-chrome .cv-frame-label .cv-txt{outline:none;text-overflow:ellipsis}.canvas-root .cv-chrome .cv-frame-rename{padding:0 6px;border:0;border-radius:6px;background:var(--cv-surface);color:var(--cv-ink);font-family:var(--cv-sans);font-size:.72rem;font-weight:600;outline:none}.canvas-root .cv-chrome .cv-frame-go{border:0;border-radius:6px;background:#ffffff38;color:#fff;font-size:12px;line-height:1}.canvas-root .cv-chrome .cv-frame-go:hover{background:#fff6}.canvas-root .cv-panel{background:var(--cv-ui-bg);backdrop-filter:blur(var(--cv-ui-blur)) saturate(1.4);-webkit-backdrop-filter:blur(var(--cv-ui-blur)) saturate(1.4);border:1px solid var(--cv-ui-border);border-radius:var(--cv-ui-radius);box-shadow:var(--cv-shadow)}.canvas-root [data-cv-part=toolbar]{padding:6px}.canvas-root .cv-tool{border:1px solid transparent;background:transparent;border-radius:11px;color:var(--cv-muted);transition:background-color .15s ease,color .15s ease}.canvas-root .cv-tool:hover{background:var(--cv-accent-soft);color:var(--cv-ink)}.canvas-root .cv-tool[data-active]{background:var(--cv-accent);color:#fff}.canvas-root .cv-tool svg{stroke:currentColor;stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round}.canvas-root .cv-tool .cv-tip{background:var(--cv-ink);color:var(--cv-bg);font-size:.68rem;font-weight:600;letter-spacing:.02em;padding:.3rem .5rem;border-radius:7px;opacity:0;transition:opacity .12s ease}.canvas-root .cv-tool .cv-tip b{opacity:.55;font-weight:600;margin-left:.35rem}.canvas-root .cv-tool:hover .cv-tip{opacity:1}.canvas-root .cv-sep{background:var(--cv-ui-border);margin:0 4px}.canvas-root .cv-shape-menu{padding:6px}.canvas-root .cv-tool .cv-shape-caret{border-left:3px solid transparent;border-right:3px solid transparent;border-top:4px solid currentColor;opacity:.5}.canvas-root .cv-tool:hover .cv-shape-caret,.canvas-root .cv-tool[data-active] .cv-shape-caret{opacity:.9}.canvas-root .cv-tool[data-recording],.canvas-root .cv-tool[data-recording]:hover{background:#e5484d;color:#fff;animation:cv-rec-pulse 1.4s ease-in-out infinite}@keyframes cv-rec-pulse{0%,to{box-shadow:0 0 #e5484d80}50%{box-shadow:0 0 0 5px #e5484d00}}.canvas-root [data-cv-part=recorder]{padding:6px 8px 6px 14px}.canvas-root [data-cv-part=recorder] .cv-rec-dot{border-radius:50%;background:#e5484d;animation:cv-rec-blink 1.1s ease-in-out infinite}@keyframes cv-rec-blink{0%,to{opacity:1}50%{opacity:.25}}.canvas-root [data-cv-part=recorder] .cv-rec-time{font-family:var(--cv-mono);font-size:.82rem;font-variant-numeric:tabular-nums;color:var(--cv-ink)}.canvas-root [data-cv-part=recorder] .cv-rec-btn{border:0;border-radius:8px;background:transparent;color:var(--cv-muted);padding:0}.canvas-root [data-cv-part=recorder] .cv-rec-btn:hover{background:var(--cv-accent-soft);color:var(--cv-ink)}.canvas-root [data-cv-part=recorder] .cv-rec-btn.cv-stop:hover{background:#e5484d;color:#fff}.canvas-root [data-cv-part=recorder] .cv-rec-btn svg{stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round}.canvas-root [data-cv-part=recorder] .cv-rec-btn.cv-stop svg{fill:currentColor}.canvas-root [data-cv-part=properties]{padding:8px}.canvas-root .cv-props-handle{padding:2px 4px 6px;border-bottom:1px solid var(--cv-ui-border);font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--cv-muted)}.canvas-root .cv-props-handle svg{stroke:currentColor;stroke-width:1.7;fill:none}.canvas-root .cv-swatch-label{font-size:11px;opacity:.6}.canvas-root .cv-swatch{border-radius:50%;border:2px solid rgba(0,0,0,.12);padding:0}.dark .canvas-root .cv-swatch,.canvas-root.dark .cv-swatch{border-color:#ffffff2e}.canvas-root .cv-swatch[data-active]{outline:2px solid var(--cv-accent);outline-offset:2px}.canvas-root .cv-font-btn{padding:0 10px;border-radius:6px;border:1px solid rgba(0,0,0,.12);background:transparent;color:inherit;font-size:15px;line-height:1}.dark .canvas-root .cv-font-btn,.canvas-root.dark .cv-font-btn{border-color:#ffffff2e}.canvas-root .cv-font-btn[data-active]{outline:2px solid var(--cv-accent);outline-offset:1px}.canvas-root .cv-font-btn[data-font=sans]{font-family:var(--cv-sans)}.canvas-root .cv-font-btn[data-font=serif]{font-family:var(--cv-serif)}.canvas-root .cv-font-btn[data-font=mono]{font-family:var(--cv-mono)}.canvas-root .cv-font-btn[data-font=script]{font-family:var(--cv-hand);font-size:18px}.canvas-root .cv-align-btn{border-radius:6px;border:1px solid rgba(0,0,0,.12);background:transparent;color:inherit}.dark .canvas-root .cv-align-btn,.canvas-root.dark .cv-align-btn{border-color:#ffffff2e}.canvas-root .cv-align-btn[data-active]{outline:2px solid var(--cv-accent);outline-offset:1px}.canvas-root .cv-swatch.cv-swatch-none{background:#fff}.canvas-root .cv-swatch.cv-swatch-none:after{content:"";background:#e5484d}.canvas-root [data-cv-part=topbar]{padding:4px;border-radius:12px}.canvas-root [data-cv-part=topbar] .cv-brand{font-weight:700;font-size:.9rem;letter-spacing:-.01em}.canvas-root [data-cv-part=topbar] .cv-brand small{color:var(--cv-faint);font-weight:500;margin-left:.4rem}.canvas-root .cv-chip{border:1px solid var(--cv-ui-border);background:transparent;color:var(--cv-muted);border-radius:8px;padding:0 10px;font-size:.72rem;font-weight:600;transition:.15s}.canvas-root .cv-chip:hover{color:var(--cv-ink);border-color:var(--cv-line-strong)}.canvas-root .cv-chip svg{stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.canvas-root .cv-chip[data-on]{background:var(--cv-accent);border-color:var(--cv-accent);color:#fff}.canvas-root .cv-chip[data-on]:hover{color:#fff;border-color:var(--cv-accent)}.canvas-root .cv-save-status{border-radius:10px;color:var(--cv-muted);background:var(--cv-ui-bg);backdrop-filter:blur(14px) saturate(1.4);-webkit-backdrop-filter:blur(14px) saturate(1.4);border:1px solid var(--cv-ui-border);box-shadow:var(--cv-shadow)}.canvas-root .cv-save-status svg{stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.canvas-root .cv-bg-menu{padding:8px}.canvas-root .cv-chip .cv-chip-swatch{border-radius:50%;border:1.5px solid var(--cv-line-strong);background:var(--cv-bg)}.canvas-root .cv-chip[data-on] .cv-chip-swatch{border-color:#ffffffb3}.canvas-root .cv-bg-menu .cv-swatch.cv-default{background:var(--cv-bg)}.canvas-root .cv-bg-menu .cv-swatch.cv-default:after{content:"";background:#e5484d}.canvas-root .cv-bg-menu .cv-swatch.cv-custom{background:conic-gradient(#e5484d,#f5a524,#b7e6a5,#a9d3ff,#d9b8ff,#e5484d)}.canvas-root .cv-bg-menu .cv-swatch.cv-custom input{opacity:0;padding:0;border:0}.canvas-root[data-readonly] .cv-frame .cv-frame-body{background:transparent}.canvas-root:not([data-readonly]) .cv-node[data-anchor="1"]{outline:2px dashed var(--cv-accent);outline-offset:4px}.canvas-root [data-cv-part=zoom]{padding:4px;border-radius:12px}.canvas-root [data-cv-part=zoom] button{border:1px solid transparent;background:transparent;border-radius:8px;color:var(--cv-muted);font-size:16px;transition:.15s}.canvas-root [data-cv-part=zoom] button:hover{background:var(--cv-accent-soft);color:var(--cv-ink)}.canvas-root [data-cv-part=zoom] button svg{stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.canvas-root [data-cv-part=zoom] .cv-zoom-sep{margin:4px 3px;background:var(--cv-line)}.canvas-root .cv-zoomval{text-align:center;font-size:.75rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--cv-muted)}.canvas-root [data-cv-part=context-menu]{padding:6px;border-radius:14px}.canvas-root [data-cv-part=context-menu] button{border:1px solid transparent;background:transparent;color:var(--cv-ink);font-family:var(--cv-sans);font-size:.8rem;font-weight:500;text-align:left;padding:0 .55rem;border-radius:8px}.canvas-root [data-cv-part=context-menu] button:hover{background:var(--cv-accent-soft)}.canvas-root [data-cv-part=context-menu] button[data-active]{color:var(--cv-accent);background:var(--cv-accent-soft)}.canvas-root [data-cv-part=context-menu] button.cv-danger{color:#e5484d}.canvas-root [data-cv-part=context-menu] button.cv-danger:hover{background:#e5484d1f}.canvas-root [data-cv-part=context-menu] button svg{stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.canvas-root [data-cv-part=context-menu] .cv-ctxsep{background:var(--cv-ui-border);margin:5px 6px}.canvas-root [data-cv-part=context-menu] .cv-ctxscale{padding:0 .55rem;color:var(--cv-ink);font-family:var(--cv-sans);font-size:.8rem;font-weight:500}.canvas-root [data-cv-part=context-menu] .cv-ctxscale svg{stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.canvas-root [data-cv-part=context-menu] .cv-ctxscale-input{border:1px solid var(--cv-ui-border);border-radius:6px;background:var(--cv-surface);color:var(--cv-ink);font-family:var(--cv-sans);font-size:.8rem;text-align:right;padding:0 6px}.canvas-root [data-cv-part=context-menu] .cv-ctxscale-input:focus{outline:none;border-color:var(--cv-accent)}.canvas-root .cv-page-nav-current{text-overflow:ellipsis}.canvas-root .cv-page-nav-chev{opacity:.7}.canvas-root .cv-page-menu{padding:6px;border-radius:14px}.canvas-root .cv-page-menu-item{border-radius:9px}.canvas-root .cv-page-menu-item[data-active]{background:var(--cv-accent)}.canvas-root .cv-page-menu-btn{border:1px solid transparent;background:transparent;color:var(--cv-ink);font-family:var(--cv-sans);font-size:.8rem;font-weight:500;text-align:left;line-height:28px;padding:0 .6rem;text-overflow:ellipsis;transition:background-color .15s ease,color .15s ease}.canvas-root .cv-page-menu-btn:hover{background:var(--cv-accent-soft)}.canvas-root .cv-page-menu-item[data-active] .cv-page-menu-btn,.canvas-root .cv-page-menu-item[data-active] .cv-page-menu-btn:hover{color:#fff;background:transparent}.canvas-root .cv-page-group+.cv-page-group{margin-top:4px}.canvas-root .cv-section-item{border:1px solid transparent;background:transparent;color:var(--cv-muted);font-family:var(--cv-sans);font-size:.8rem;font-weight:500;text-align:left;padding:0 .6rem 0 24px;border-radius:8px;transition:background-color .15s ease,color .15s ease}.canvas-root .cv-section-item:hover{background:var(--cv-accent-soft);color:var(--cv-ink)}.canvas-root .cv-section-num{font-variant-numeric:tabular-nums;font-size:.66rem;font-weight:700;color:var(--cv-accent)}.canvas-root .cv-section-name{text-overflow:ellipsis}.canvas-root .cv-section-rename{padding:0 6px;border:1px solid var(--cv-accent);border-radius:6px;background:var(--cv-surface);color:var(--cv-ink);font-family:var(--cv-sans);font-size:.78rem;font-weight:500;outline:none}.canvas-root .cv-page-menu-add{border:1px solid transparent;background:transparent;color:var(--cv-muted);font-family:var(--cv-sans);font-size:.8rem;font-weight:500;text-align:left;padding:0 .6rem;border-radius:8px;margin-top:4px;transition:background-color .15s ease,color .15s ease}.canvas-root .cv-page-menu-add:hover{background:var(--cv-accent-soft);color:var(--cv-ink)}.canvas-root .cv-page-menu-add .cv-page-add-plus{font-size:15px;line-height:1}.cv-page-ctx{padding:6px;border-radius:14px}.cv-page-ctx button{border:1px solid transparent;background:transparent;color:var(--cv-ink);font-family:var(--cv-sans);font-size:.8rem;font-weight:500;text-align:left;padding:0 .6rem;border-radius:8px}.cv-page-ctx button:hover{background:var(--cv-accent-soft)}.cv-page-ctx button.cv-danger{color:#e5484d}.cv-page-ctx button.cv-danger:hover{background:#e5484d1f}.cv-page-ctx button svg{stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.cv-page-rename{margin:0 2px;padding:0 8px;border:1px solid var(--cv-accent);border-radius:8px;background:var(--cv-surface);color:var(--cv-ink);font-family:var(--cv-sans);font-size:.8rem;font-weight:500;outline:none}.canvas-root [data-cv-part=lightbox]{padding:4vmin;background:#0c0c0edb;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:cv-lb-in .16s ease}.canvas-root [data-cv-part=lightbox] img,.canvas-root [data-cv-part=lightbox] video{border-radius:8px;box-shadow:0 24px 80px #00000080}.canvas-root [data-cv-part=lightbox] .cv-lb-close{border:0;border-radius:50%;background:#ffffff24;color:#fff;font-size:18px;transition:background-color .15s ease}.canvas-root [data-cv-part=lightbox] .cv-lb-close:hover{background:#ffffff47}.canvas-root [data-cv-part=lightbox] .cv-lb-nav{border:0;border-radius:50%;background:#ffffff24;color:#fff;transition:background-color .15s ease}.canvas-root [data-cv-part=lightbox] .cv-lb-nav:hover{background:#ffffff47}.canvas-root [data-cv-part=lightbox] .cv-lb-count{padding:4px 12px;border-radius:12px;background:#ffffff24;color:#fff;font-size:13px;font-variant-numeric:tabular-nums}@keyframes cv-lb-in{0%{opacity:0}to{opacity:1}}.canvas-root.enamel{--cv-radius: 0;--cv-ui-radius: 0;--cv-ui-blur: 0px;--cv-shadow: none;--cv-accent-soft: color-mix(in srgb, var(--cv-accent) 16%, transparent);--cv-sans: "Chivo", ui-sans-serif, system-ui, sans-serif;--cv-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--cv-hand: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace}.canvas-root.enamel[data-tool=select]:not([data-readonly]):not([data-panning]) .cv-viewport{cursor:default}.canvas-root.enamel[data-tool=select]:not([data-readonly]):has(.cv-node[data-dragging]) .cv-viewport{cursor:default}.canvas-root.enamel[data-tool=select]:not([data-readonly]) .cv-shape{cursor:move}.canvas-root.enamel[data-tool=select]:not([data-readonly]) .cv-node{cursor:default}.canvas-root.enamel .cv-node[data-dragging]{cursor:default}.canvas-root.enamel{--cv-bg-base: #b0b6bc;--cv-grid: #a6acb2;--cv-grid-strong: #a6acb2;--cv-surface: #d0d4d8;--en-ground: #c3c8cd;--cv-ink: #16191c;--cv-muted: #4a4f55;--cv-faint: #767c83;--cv-line: #a6acb2;--cv-line-strong: #16191c;--cv-scrollbar: #767c83;--cv-scrollbar-hover: #4a4f55;--cv-accent: #c8341a;--cv-ui-bg: #d0d4d8;--cv-ui-border: #a6acb2;--cv-note-green: #a8cc1f;--cv-note-green-ink: #161c00;--cv-note-yellow: #a8cc1f;--cv-note-yellow-ink: #161c00;--cv-note-blue: #1e4fd8;--cv-note-blue-ink: #eff3ff;--cv-note-purple: #12897f;--cv-note-purple-ink: #ecfffd;--cv-note-orange: #c8341a;--cv-note-orange-ink: #fff1ee;--cv-note-pink: #16191c;--cv-note-pink-ink: #c3c8cd;--cv-code-comment: #767c83;--cv-code-keyword: #c8341a;--cv-code-string: #12897f;--cv-code-number: #1e4fd8;--cv-code-function: #1e4fd8;--cv-code-tag: #c8341a;--cv-code-punctuation: #4a4f55}.dark .canvas-root.enamel{--cv-bg-base: #0c0c0b;--cv-grid: #2c2b27;--cv-grid-strong: #2c2b27;--cv-surface: #1c1b18;--en-ground: #111110;--cv-ink: #ebe7dc;--cv-muted: #97948b;--cv-faint: #63615a;--cv-line: #2c2b27;--cv-line-strong: #ebe7dc;--cv-scrollbar: #63615a;--cv-scrollbar-hover: #97948b;--cv-accent: #e0563c;--cv-ui-bg: #1c1b18;--cv-ui-border: #2c2b27;--cv-note-green: #c9f23a;--cv-note-green-ink: #1a2200;--cv-note-yellow: #c9f23a;--cv-note-yellow-ink: #1a2200;--cv-note-blue: #3b6dff;--cv-note-blue-ink: #f0f4ff;--cv-note-purple: #24bdb8;--cv-note-purple-ink: #02231f;--cv-note-orange: #ff6a4d;--cv-note-orange-ink: #2b0700;--cv-note-pink: #e7eaed;--cv-note-pink-ink: #24282d;--cv-code-comment: #6b727a;--cv-code-keyword: #ff6a4d;--cv-code-string: #c9f23a;--cv-code-number: #24bdb8;--cv-code-function: #3b6dff;--cv-code-tag: #ff6a4d;--cv-code-punctuation: #9aa1a9}.enamel,.enamel *{border-radius:0!important}.enamel [data-cv-part=node][data-type=sticky]{min-height:210px;padding:.75rem;font-family:var(--cv-mono);font-size:13px;font-weight:400;line-height:1.5;box-shadow:none;border:1px solid transparent}.enamel [data-cv-part=node][data-type=sticky] .cv-txt{min-height:0;white-space:pre-line}.enamel [data-cv-part=node][data-type=md]{background:var(--cv-surface);border:1px solid var(--cv-line);padding:.75rem;color:var(--cv-muted);font-family:var(--cv-sans);font-size:15px}.enamel [data-cv-part=node][data-type=md] .cv-md-render{padding:0;font-family:var(--cv-sans);font-size:15px;line-height:1.5;color:var(--cv-muted)}.enamel [data-cv-part=node][data-type=md] .cv-md-render h1{display:flex;align-items:center;gap:.5rem;margin:0 0 .5rem;padding-bottom:.45rem;border-bottom:1px solid var(--cv-line);font-family:var(--cv-mono);font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:.1em;color:var(--cv-ink)}.enamel [data-cv-part=node][data-type=md] .cv-md-render h1:before{content:"";flex:none;width:.8em;height:.8em;border:1px solid currentColor}.enamel [data-cv-part=node][data-type=md] .cv-md-render p{margin:0;font-size:15px;line-height:1.5}.enamel [data-cv-part=node][data-type=code]{background:var(--en-ground);border:1px solid var(--cv-line)}.enamel [data-cv-part=node][data-type=code] .cv-code-head{background:transparent;border-bottom:1px solid var(--cv-line);font-family:var(--cv-mono);font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--cv-muted)}.enamel [data-cv-part=node][data-type=code] .cv-code-langbox{font-family:var(--cv-mono);font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:.1em}.enamel [data-cv-part=node][data-type=code] .cv-code-lang{color:var(--cv-muted)}.enamel [data-cv-part=node][data-type=code] .cv-code-render,.enamel [data-cv-part=node][data-type=code] .cv-code-src{font-size:12px;line-height:1.55}.enamel [data-cv-part=zoom]{font-family:var(--cv-mono);font-size:12px;border:1px solid var(--cv-line)}.enamel [data-cv-part=zoom] button:hover,.enamel .cv-tool:hover{background:#c2c7cc}.dark .enamel [data-cv-part=zoom] button:hover,.dark .enamel .cv-tool:hover{background:var(--cv-line)}
