:root{--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--scroll-bleed:var(--space-3);--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:28px;--radius-full:999px;--duration-fast:.15s;--duration-expand:.24s;--ease-interaction:ease;--hover-scale:1;--hover-lift:0px;--hover-rotate:0deg;--press-scale:1;--focus-scale:1;--overlay-scrim:#00000073;--overlay-width-sm:22rem;--overlay-width-md:34rem;--overlay-width-lg:46rem;--sheet-max-height:85dvh;--sidebar-width:20rem;--font-sans:"Pretendard Variable",Pretendard,-apple-system,BlinkMacSystemFont,system-ui,Roboto,"Helvetica Neue","Segoe UI","Apple SD Gothic Neo","Noto Sans KR","Malgun Gothic",sans-serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}[data-design=standard],[data-design=contrast]{--font-size-sm:.8125rem;--font-size-body:.9375rem;--font-size-lg:1.125rem;--font-size-xl:1.5rem;--font-size-2xl:2rem;--font-weight-heading:650;--line-height-body:1.6;--control-height:2.25rem;--control-padding-x:var(--space-3);--radius-control:var(--radius-md);--radius-surface:var(--radius-lg);--border-width:1px;--focus-ring-width:2px;--surface-shadow:0 1px 3px #00000014}[data-design=contrast]{--overlay-scrim:#000000a6;--border-width:2px;--focus-ring-width:4px}[data-design=office]{--overlay-scrim:#00000040;--font-sans:"Segoe UI",Tahoma,Geneva,Verdana,"Malgun Gothic",sans-serif;--font-size-sm:.6875rem;--font-size-body:.8125rem;--font-size-lg:1rem;--font-size-xl:1.125rem;--font-size-2xl:1.375rem;--font-weight-heading:700;--line-height-body:1.4;--control-height:1.75rem;--control-padding-x:var(--space-2);--radius-control:2px;--radius-surface:2px;--border-width:1px;--focus-ring-width:1px;--surface-shadow:none;--duration-fast:0s;--duration-expand:0s}[data-design=kids]{--font-sans:"Baloo 2","Comic Sans MS","Chalkboard SE","Comic Neue","Fredoka","Apple SD Gothic Neo","Malgun Gothic",system-ui,sans-serif;--font-size-sm:.9375rem;--font-size-body:1.0625rem;--font-size-lg:1.375rem;--font-size-xl:1.875rem;--font-size-2xl:2.5rem;--font-weight-heading:800;--line-height-body:1.6;--control-height:3rem;--control-padding-x:var(--space-4);--radius-control:var(--radius-full);--radius-surface:var(--radius-xl);--border-width:3px;--focus-ring-width:4px;--surface-shadow:0 6px 0 #0000001f,0 14px 26px #0000001a;--duration-fast:.22s;--duration-expand:.38s;--ease-interaction:cubic-bezier(.34,1.8,.5,1);--hover-scale:1.08;--hover-lift:-4px;--hover-rotate:-2.5deg;--press-scale:.9;--focus-scale:1.04}[data-design=standard][data-theme=light]{--buncss-light:initial;--buncss-dark: ;color-scheme:light;--color-bg:#f6f6fa;--color-surface:#fff;--color-surface-raised:#fff;--color-text:#23283a;--color-text-muted:#69708a;--color-border:#e3e5ee;--color-primary:#5b5bd6;--color-primary-hover:#4949c4;--color-primary-contrast:#fff;--color-success:#1a9e56;--color-warning:#c07a12;--color-danger:#d64550;--color-danger-contrast:#fff;--color-focus:#5b5bd6}[data-design=standard][data-theme=dark]{--buncss-light: ;--buncss-dark:initial;color-scheme:dark;--color-bg:#14161e;--color-surface:#1d2029;--color-surface-raised:#262a36;--color-text:#e7e9f2;--color-text-muted:#9ba2b8;--color-border:#313545;--color-primary:#8f8ff2;--color-primary-hover:#a7a7f7;--color-primary-contrast:#14161e;--color-success:#4ecb84;--color-warning:#e0a33e;--color-danger:#f0707a;--color-danger-contrast:#14161e;--color-focus:#8f8ff2}[data-design=contrast][data-theme=light]{--buncss-light:initial;--buncss-dark: ;color-scheme:light;--color-bg:#fff;--color-surface:#fff;--color-surface-raised:#f2f2f2;--color-text:#000;--color-text-muted:#3d3d3d;--color-border:#000;--color-primary:#0038a8;--color-primary-hover:#002a7f;--color-primary-contrast:#fff;--color-success:#005e2b;--color-warning:#7a4d00;--color-danger:#a80000;--color-danger-contrast:#fff;--color-focus:#0038a8}[data-design=contrast][data-theme=dark]{--buncss-light: ;--buncss-dark:initial;color-scheme:dark;--color-bg:#000;--color-surface:#0d0d0d;--color-surface-raised:#1a1a1a;--color-text:#fff;--color-text-muted:#d6d6d6;--color-border:#fff;--color-primary:#82b1ff;--color-primary-hover:#a9c9ff;--color-primary-contrast:#000;--color-success:#57d787;--color-warning:#ffc457;--color-danger:#ff8080;--color-danger-contrast:#000;--color-focus:#82b1ff}[data-design=office][data-theme=light]{--buncss-light:initial;--buncss-dark: ;color-scheme:light;--color-bg:#d4d0c8;--color-surface:#fff;--color-surface-raised:#ece9d8;--color-text:#000;--color-text-muted:#4d4d4d;--color-border:gray;--color-primary:#21569e;--color-primary-hover:#1b4580;--color-primary-contrast:#fff;--color-success:#2d7d2d;--color-warning:#9c6500;--color-danger:#a80000;--color-danger-contrast:#fff;--color-focus:#21569e;--office-bevel-light:#fff;--office-bevel-dark:gray;--office-btn-top:#fbfbfa;--office-btn-bottom:#d7d3ca}[data-design=office][data-theme=dark]{--buncss-light: ;--buncss-dark:initial;color-scheme:dark;--color-bg:#333;--color-surface:#2b2b2b;--color-surface-raised:#3f3f3f;--color-text:#f0f0f0;--color-text-muted:#b0b0b0;--color-border:#5a5a5a;--color-primary:#4a8ad4;--color-primary-hover:#6aa0e0;--color-primary-contrast:#fff;--color-success:#4ea64e;--color-warning:#cf9b34;--color-danger:#d16a6a;--color-danger-contrast:#fff;--color-focus:#7aa8e0;--office-bevel-light:#5f5f5f;--office-bevel-dark:#141414;--office-btn-top:#4a4a4a;--office-btn-bottom:#333}[data-design=kids][data-theme=light]{--buncss-light:initial;--buncss-dark: ;color-scheme:light;--color-bg:#fff7ec;--color-surface:#fff;--color-surface-raised:#fff0d6;--color-text:#35235e;--color-text-muted:#7a6aa6;--color-border:#2c2150;--color-primary:#4f7cff;--color-primary-hover:#3a63e6;--color-primary-contrast:#fff;--color-success:#23c268;--color-warning:#ff9f1c;--color-danger:#ff4d6d;--color-danger-contrast:#fff;--color-focus:#ffb703}[data-design=kids][data-theme=dark]{--buncss-light: ;--buncss-dark:initial;color-scheme:dark;--color-bg:#1b1236;--color-surface:#271a49;--color-surface-raised:#34235f;--color-text:#f4ecff;--color-text-muted:#b9a8e6;--color-border:#7c5cff;--color-primary:#7aa2ff;--color-primary-hover:#9cbcff;--color-primary-contrast:#14102b;--color-success:#4ade80;--color-warning:#ffc23d;--color-danger:#ff6b88;--color-danger-contrast:#14102b;--color-focus:#ffd60a}*,*:before,*:after{box-sizing:border-box}body{font-family:var(--font-sans);font-size:var(--font-size-body);line-height:var(--line-height-body);background:var(--color-bg);color:var(--color-text);transition:background-color var(--duration-fast),color var(--duration-fast);margin:0}h1,h2,h3{font-weight:var(--font-weight-heading);line-height:1.25}h1{font-size:var(--font-size-2xl)}h2{font-size:var(--font-size-xl)}h3{font-size:var(--font-size-lg)}code{font-family:var(--font-mono);background:var(--color-surface-raised);padding:0 var(--space-1);border-radius:var(--radius-sm);font-size:.875em}a{color:var(--color-primary)}.muted{color:var(--color-text-muted)}:focus-visible{outline:var(--focus-ring-width)solid var(--color-focus);outline-offset:2px}.visually-hidden{position:absolute;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0}.scroll-box{overflow:auto;overscroll-behavior:contain;--hover-scale:1;--hover-rotate:0deg;--focus-scale:1;padding:var(--scroll-bleed);margin:calc(var(--scroll-bleed)*-1)}.skip-link{position:absolute;left:var(--space-3);top:var(--space-2);background:var(--color-primary);color:var(--color-primary-contrast);padding:var(--space-2)var(--space-3);border-radius:var(--radius-control);z-index:10;transition:transform var(--duration-fast);transform:translateY(-300%)}.skip-link:focus{transform:none}.app-shell{display:flex;min-height:100vh;padding:var(--space-4)var(--space-4)var(--space-5);flex-direction:column;max-width:60rem;min-height:100dvh;margin:0 auto}.app-header{display:flex;align-items: center;gap:var(--space-4);padding-block:var(--space-4);border-bottom:var(--border-width)solid var(--color-border);flex-wrap:wrap}.app-header__brand{margin-right:auto}.app-header__title{font-size:var(--font-size-lg);margin:0}.app-header__title a{color:inherit;text-decoration:none}.app-header__title a:hover{text-decoration:underline}.app-header__tagline{font-size:var(--font-size-sm);margin:0}.app-controls{display:flex;align-items: center;gap:var(--space-2);flex-wrap:wrap}.account-controls{display:flex;align-items: center;gap:var(--space-2)}.account-controls__user{display:inline-flex;align-items: center;gap:var(--space-1);font-size:var(--font-size-sm);align-self: center}.app-main{padding-top:var(--space-5);flex:1 0 auto}.sign-in-failed{max-width:28rem}.sign-in-failed__actions{display:flex;gap:var(--space-2);margin-block:var(--space-4);flex-wrap:wrap}.app-footer{margin-top:var(--space-7);padding-top:var(--space-4);border-top:var(--border-width)solid var(--color-border);font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:1.5}.app-footer__identity{display:flex;justify-content:space-between;align-items: center;gap:var(--space-4);padding-bottom:var(--space-3);border-bottom:var(--border-width)solid color-mix(in srgb,var(--color-border)55%,transparent);margin-bottom:var(--space-3);flex-wrap:wrap}.app-footer__columns{display:flex;justify-content:space-between;gap:var(--space-5);flex-wrap:wrap}.app-footer__column{min-width:9rem}.app-footer__brand{color:var(--color-text);margin:0;font-weight:600}.app-footer__tagline{margin:var(--space-1)0 0}.app-footer__heading{margin:0 0 var(--space-2);font-size:var(--font-size-sm);color:var(--color-text);font-weight:600}.app-footer__list{list-style:none;display:flex;gap:var(--space-1);flex-direction:column;margin:0;padding:0}.app-footer a{color:inherit;text-decoration:none}.app-footer a:hover{text-decoration:underline}.app-footer a[aria-current=page]{color:var(--color-text)}.app-footer__link-icon{display:inline-flex;align-items: center;gap:var(--space-2)}.app-footer__icon{flex:none;width:1em;height:1em}.app-footer__bottom{display:flex;justify-content:space-between;align-items: center;gap:var(--space-2)var(--space-4);margin-top:var(--space-4);flex-wrap:wrap}.app-footer__legal{display:flex;gap:var(--space-1)var(--space-4);flex-wrap:wrap}@media (max-width:40rem){.app-footer__columns{gap:var(--space-4);flex-direction:column}}.btn{display:inline-flex;justify-content:center;align-items: center;gap:var(--space-2);height:var(--control-height);padding-inline:var(--control-padding-x);font:inherit;border-radius:var(--radius-control);border:var(--border-width)solid transparent;cursor:pointer;transition:background-color var(--duration-fast),color var(--duration-fast);font-weight:600}.btn:disabled{opacity:.55;cursor:not-allowed}.btn--link{text-decoration:none}.btn--primary{background:var(--color-primary);color:var(--color-primary-contrast)}.btn--primary:not(:disabled):hover{background:var(--color-primary-hover)}.btn--secondary{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border)}.btn--secondary:not(:disabled):hover{background:var(--color-surface-raised)}.btn--danger{background:var(--color-danger);color:var(--color-danger-contrast)}.btn--ghost{color:var(--color-text);background:0 0}.btn--ghost:not(:disabled):hover{background:var(--color-surface-raised)}.field{display:flex;gap:var(--space-1);flex-direction:column}.field__label{font-size:var(--font-size-sm);font-weight:600}.field__input{height:var(--control-height);padding-inline:var(--control-padding-x);font:inherit;color:var(--color-text);background:var(--color-surface);border:var(--border-width)solid var(--color-border);border-radius:var(--radius-control)}.field__input[aria-invalid=true]{border-color:var(--color-danger)}.field__input:disabled{opacity:.55}.field__input--multiline{padding-block:var(--space-2);resize:vertical;border-radius:min(var(--radius-control),var(--radius-surface));height:auto;line-height:1.5}.field__hint{font-size:var(--font-size-sm);margin:0}.field__error{font-size:var(--font-size-sm);color:var(--color-danger);margin:0}.checkbox{display:inline-flex;align-items: center;gap:var(--space-2)}.checkbox__input{width:calc(var(--control-height)/2.25);height:calc(var(--control-height)/2.25);accent-color:var(--color-primary)}.checkbox__input:checked+.checkbox__label{text-decoration:line-through;color:var(--color-text-muted)}.badge{display:inline-block;padding:0 var(--space-2);font-size:var(--font-size-sm);border-radius:var(--radius-full);border:var(--border-width)solid currentcolor;font-weight:700}.badge--neutral{color:var(--color-text-muted)}.badge--success{color:var(--color-success)}.badge--warning{color:var(--color-warning)}.badge--danger{color:var(--color-danger)}.alert{display:flex;align-items: center;gap:var(--space-3);padding:var(--space-3)var(--space-4);border-radius:var(--radius-surface);border:var(--border-width)solid currentcolor}.alert__body{flex:1}.alert--info{color:var(--color-primary)}.alert--success{color:var(--color-success)}.alert--error{color:var(--color-danger)}.spinner{display:inline-block;border:2px solid color-mix(in srgb,currentcolor 25%,transparent);border-radius:var(--radius-full);animation:.8s linear infinite spinner-rotate;border-top-color:currentColor;width:1.25em;height:1.25em}.spinner--sm{width:1em;height:1em}@keyframes spinner-rotate{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:2s}}.card{background:var(--color-surface);border:var(--border-width)solid var(--color-border);border-radius:var(--radius-surface);box-shadow:var(--surface-shadow);overflow:hidden}.card__image{display:block;aspect-ratio:16/9;object-fit:cover;width:100%}.card__body{padding:var(--space-4)}.card__title{margin-top:0}.accordion{background:var(--color-surface);border:var(--border-width)solid var(--color-border);border-radius:var(--radius-surface);box-shadow:var(--surface-shadow);overflow:hidden;overflow-anchor:none}.accordion__item+.accordion__item{border-top:var(--border-width)solid var(--color-border)}.accordion__header{font-size:var(--font-size-body);margin:0}.accordion__trigger{display:flex;justify-content:space-between;align-items: center;gap:var(--space-3);min-height:var(--control-height);padding:var(--space-3)var(--space-4);font:inherit;text-align:start;color:var(--color-text);cursor:pointer;transition:background-color var(--duration-fast);background:0 0;border:0;width:100%;font-weight:600}.accordion__trigger:hover{background:var(--color-surface-raised)}.accordion__trigger:focus-visible{outline-offset:calc(var(--focus-ring-width)*-1)}.accordion__chevron{transition:transform var(--duration-fast)var(--ease-interaction);flex-shrink:0}.accordion__item[data-open] .accordion__chevron{transform:rotate(180deg)}.accordion__panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--duration-expand)var(--ease-interaction)}.accordion__item[data-open] .accordion__panel{grid-template-rows:1fr}.accordion__panel-inner{overflow:hidden;visibility:hidden;transition:visibility 0s var(--duration-expand);min-height:0}.accordion__item[data-open] .accordion__panel-inner{visibility:visible;transition-delay:0s}.accordion__content{padding:var(--space-1)var(--space-4)var(--space-4)}@media (prefers-reduced-motion:reduce){.accordion__panel,.accordion__panel-inner,.accordion__chevron{transition-duration:0s;transition-delay:0s}}.palette{--palette-checker-size:8px;--palette-checker:repeating-conic-gradient(var(--color-text-muted)0% 25%,transparent 0% 50%)}.palette__chip,.palette__swatch{background-color:var(--color-surface);background-image:linear-gradient(var(--palette-chip-color),var(--palette-chip-color)),var(--palette-checker);background-size:auto,var(--palette-checker-size)var(--palette-checker-size);border:var(--border-width)solid var(--color-border);forced-color-adjust:none}.palette__trigger{display:inline-flex;align-items: center;gap:var(--space-2);height:var(--control-height);padding-inline:var(--control-padding-x);font:inherit;color:var(--color-text);background:var(--color-surface);border:var(--border-width)solid var(--color-border);border-radius:var(--radius-control);cursor:pointer;transition:background-color var(--duration-fast)}.palette__trigger:disabled{opacity:.55;cursor:not-allowed}.palette__trigger:not(:disabled):hover{background:var(--color-surface-raised)}.palette__chip{border-radius:calc(var(--radius-control)/2);flex:none;width:1.25em;height:1.25em}.palette__trigger-text{text-align:start;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.palette__chevron{color:var(--color-text-muted);flex:none}.palette__popup{position:fixed;padding:var(--space-3);gap:var(--space-3);overflow:auto;color:var(--color-text);background:var(--color-surface-raised);border:var(--border-width)solid var(--color-border);border-radius:var(--radius-surface);box-shadow:var(--surface-shadow);flex-direction:column;margin:0;inset:auto}.palette__popup:popover-open{display:flex}@media (prefers-reduced-motion:no-preference){.palette__popup{opacity:1;transition:opacity var(--duration-fast)var(--ease-interaction),transform var(--duration-fast)var(--ease-interaction),overlay var(--duration-fast)allow-discrete,display var(--duration-fast)allow-discrete}.palette__popup:not(:popover-open){opacity:0;transform:scale(.98)}@starting-style{.palette__popup:popover-open{opacity:0;transform:scale(.98)}}}.palette__groups{display:flex;gap:var(--space-3);flex-direction:column}.palette__grid{display:grid;grid-template-columns:repeat(var(--palette-columns),auto);gap:var(--space-2);justify-content:start}.palette__group-label{grid-column:1/-1;font-size:var(--font-size-sm);color:var(--color-text-muted);font-weight:600}.palette__swatch{width:calc(var(--control-height)*.75);height:calc(var(--control-height)*.75);display:grid;border-radius:calc(var(--radius-control)/1.5);cursor:pointer;transition:transform var(--duration-fast)var(--ease-interaction),box-shadow var(--duration-fast)var(--ease-interaction);place-items: center;padding:0}.palette__swatch[aria-selected=true]{box-shadow:0 0 0 2px var(--color-surface-raised),0 0 0 4px var(--color-focus)}.palette__swatch[data-ink=light] .palette__check{color:#fff}.palette__swatch[data-ink=dark] .palette__check{color:#000}.palette__custom{display:flex;align-items: flex-end;gap:var(--space-2);padding-top:var(--space-3);border-top:var(--border-width)solid var(--color-border)}.palette__custom .field{flex:1;min-width:0}.palette__native{width:var(--control-height);height:var(--control-height);padding:var(--space-1);background:var(--color-surface);border:var(--border-width)solid var(--color-border);border-radius:var(--radius-control);cursor:pointer;flex:none}.palette__warning{display:flex;align-items: center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-warning);margin:0}.palette__tooltip{position:fixed;z-index:1;display:flex;align-items:baseline;gap:var(--space-2);padding:var(--space-1)var(--space-2);font-size:var(--font-size-sm);white-space:nowrap;pointer-events:none;color:var(--color-surface);background:var(--color-text);border-radius:var(--radius-sm)}.palette__tooltip-value{color:inherit;opacity:.75;background:0 0;padding:0}html{scrollbar-gutter:stable}.overlay{position:fixed;overflow:visible;background:0 0;border:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0;inset:0}.overlay[open]{display:flex}.overlay[data-variant=modal]{padding:var(--space-4);justify-content:center;align-items: center}.overlay[data-variant=sheet]{justify-content:center;align-items: flex-end}.overlay[data-variant=sidebar]{justify-content:flex-start;align-items:stretch}.overlay[data-variant=sidebar][data-side=end]{justify-content:flex-end}.overlay__panel{display:flex;gap:calc(var(--space-3) + var(--scroll-bleed));padding:var(--space-4);color:var(--color-text);background:var(--color-surface-raised);border:var(--border-width)solid var(--color-border);border-radius:var(--radius-surface);box-shadow:var(--surface-shadow);flex-direction:column;max-height:100%}.overlay__panel:focus{outline:none}.overlay[data-variant=modal] .overlay__panel{max-width:var(--overlay-width-md);width:100%}.overlay[data-size=sm] .overlay__panel{max-width:var(--overlay-width-sm)}.overlay[data-size=lg] .overlay__panel{max-width:var(--overlay-width-lg)}.overlay[data-tone=danger] .overlay__panel{border-color:var(--color-danger)}.overlay[data-variant=sheet] .overlay__panel{max-width:var(--overlay-width-lg);max-height:var(--sheet-max-height);border-radius:var(--radius-surface)var(--radius-surface)0 0;width:100%}.overlay[data-snap=full] .overlay__panel{height:var(--sheet-max-height)}dialog.overlay[data-variant=sidebar] .overlay__panel{width:var(--sidebar-width);border-radius:0;max-width:100%;height:100%}.overlay__header{display:flex;align-items: flex-start;gap:var(--space-3);justify-content:space-between}.overlay__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-heading);margin:0;line-height:1.3}.overlay__close{display:inline-flex;width:var(--control-height);height:var(--control-height);color:var(--color-text-muted);border:var(--border-width)solid transparent;border-radius:var(--radius-control);cursor:pointer;background:0 0;flex:none;justify-content:center;align-items: center;padding:0}.overlay__close:hover{color:var(--color-text);border-color:var(--color-border)}.overlay__body{flex:auto;min-height:0}.overlay__footer{display:flex;gap:var(--space-2);flex-wrap:wrap;flex:none;justify-content:flex-end}.overlay--inline{position:static;display:block;width:var(--sidebar-width);max-width:100%;height:auto}.overlay--inline .overlay__panel{border-radius:var(--radius-surface);height:100%}.overlay::backdrop{background-color:#0000}.overlay[data-overlay-top]::backdrop{background-color:var(--overlay-scrim)}@media (prefers-reduced-motion:no-preference){.overlay{transition:overlay var(--duration-fast)allow-discrete,display var(--duration-fast)allow-discrete}.overlay::backdrop{transition:background-color var(--duration-fast)var(--ease-interaction),overlay var(--duration-fast)allow-discrete,display var(--duration-fast)allow-discrete}@starting-style{.overlay[data-overlay-top]::backdrop{background-color:#0000}}.overlay__panel{opacity:1;transition:opacity var(--duration-fast)var(--ease-interaction),transform var(--duration-fast)var(--ease-interaction);transform:none}.overlay[data-variant=modal]:not([open]) .overlay__panel{opacity:0;transform:scale(.98)}.overlay[data-variant=sheet]:not([open]) .overlay__panel{transform:translateY(100%)}dialog.overlay[data-variant=sidebar]:not([open]) .overlay__panel{transform:translate(-100%)}dialog.overlay[data-variant=sidebar][data-side=end]:not([open]) .overlay__panel{transform:translate(100%)}@starting-style{.overlay[data-variant=modal][open] .overlay__panel{opacity:0;transform:scale(.98)}.overlay[data-variant=sheet][open] .overlay__panel{transform:translateY(100%)}.overlay[data-variant=sidebar][open] .overlay__panel{transform:translate(-100%)}.overlay[data-variant=sidebar][data-side=end][open] .overlay__panel{transform:translate(100%)}}}.todo-create{display:flex;align-items: flex-start;gap:var(--space-3);margin-block:var(--space-4)}.todo-guest-hint{margin-block:var(--space-4)}.todo-create .field{flex:1}.todo-create .btn{margin-top:calc(var(--font-size-sm)*1.5 + var(--space-1))}.todo-toolbar{display:flex;gap:var(--space-4);margin-bottom:var(--space-4)}.todo-list{list-style:none;display:flex;gap:var(--space-2);flex-direction:column;margin:0;padding:0}.todo-list[aria-busy=true]{opacity:.6}.todo-item{display:flex;align-items: center;gap:var(--space-3);padding:var(--space-3)var(--space-4);background:var(--color-surface);border:var(--border-width)solid var(--color-border);border-radius:var(--radius-surface)}.todo-item .checkbox{flex:1;min-width:0}.todo-item__time{font-size:var(--font-size-sm);white-space:nowrap}.pagination{display:flex;align-items: center;gap:var(--space-3);margin-top:var(--space-4)}.home-layout{display:grid;gap:var(--space-5);align-items: start}@media (min-width:56rem){.home-layout{grid-template-columns:minmax(0,1fr)minmax(16rem,20rem)}.home-layout .chat-panel{position:sticky;top:var(--space-4)}}.chat-panel{display:flex;gap:var(--space-3);padding:var(--space-4);flex-direction:column}.chat-panel__header{display:flex;justify-content:space-between;align-items: center;gap:var(--space-3)}.chat-panel__header h2,.chat-panel__description{margin:0}.chat-panel__description,.chat-participants{font-size:var(--font-size-sm)}.chat-participants ul{list-style:none;margin:var(--space-1)0 0;display:flex;gap:var(--space-1);flex-wrap:wrap;padding:0}.chat-participants li{padding-inline:var(--space-2);border:var(--border-width)solid var(--color-border);border-radius:var(--radius-full)}.chat-log,.chat-empty{height:20rem;margin:0}.chat-log{list-style:none;display:flex;gap:var(--space-2);overflow-y:auto;overscroll-behavior:contain;flex-direction:column;padding:0}.chat-log[aria-busy=true]{opacity:.6}.chat-empty{display:grid;text-align:center;place-items: center}.chat-message{padding:var(--space-2)var(--space-3);background:var(--color-surface-raised);border:var(--border-width)solid var(--color-border);border-radius:var(--radius-control);align-self: flex-start;max-width:90%}.chat-message--mine{border-color:var(--color-primary);align-self: flex-end}.chat-message__meta{display:flex;align-items:baseline;gap:var(--space-2);font-size:var(--font-size-sm);flex-wrap:wrap}.chat-message__author{font-weight:600}.chat-message__text{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.chat-compose{display:flex;align-items: flex-start;gap:var(--space-2)}.chat-compose .field{flex:1;min-width:0}.ds-section{margin-block:var(--space-6)}.ds-row{display:flex;align-items: center;gap:var(--space-3);flex-wrap:wrap}.ds-stack{display:flex;gap:var(--space-3);flex-direction:column}.ds-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:var(--space-4);align-items: start}.ds-color-sample{padding:var(--space-2)var(--space-3);border:var(--border-width)solid var(--color-border);border-radius:var(--radius-control);background:#fff}.swatch-grid{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(12rem,1fr));gap:var(--space-3);margin:0;padding:0}.swatch{display:flex;align-items: center;gap:var(--space-2)}.swatch__chip{width:var(--space-6);height:var(--space-6);border-radius:var(--radius-sm);border:1px solid var(--color-border)}[data-design=office] :focus-visible{outline:1px dotted var(--color-text);outline-offset:1px}[data-design=office] .btn{border-style:solid;border-width:1px;border-color:var(--office-bevel-light)var(--office-bevel-dark)var(--office-bevel-dark)var(--office-bevel-light);box-shadow:none;font-weight:400}[data-design=office] .btn--secondary,[data-design=office] .btn--ghost{background:linear-gradient(var(--office-btn-top),var(--office-btn-bottom));color:var(--color-text)}[data-design=office] .btn--secondary:not(:disabled):hover,[data-design=office] .btn--ghost:not(:disabled):hover{background:linear-gradient(color-mix(in srgb,var(--office-btn-top),white 12%),color-mix(in srgb,var(--office-btn-bottom),white 12%))}[data-design=office] .btn--primary{background:linear-gradient(color-mix(in srgb,var(--color-primary)72%,white),var(--color-primary))}[data-design=office] .btn--primary:not(:disabled):hover{background:linear-gradient(color-mix(in srgb,var(--color-primary)58%,white),var(--color-primary-hover))}[data-design=office] .btn:not(:disabled):active{border-color:var(--office-bevel-dark)var(--office-bevel-light)var(--office-bevel-light)var(--office-bevel-dark);transform:translate(1px,1px)}[data-design=office] .field__input{border-style:solid;border-width:1px;border-color:var(--office-bevel-dark)var(--office-bevel-light)var(--office-bevel-light)var(--office-bevel-dark);background:var(--color-surface);border-radius:1px}[data-design=office] .card{border-color:var(--office-bevel-light)var(--office-bevel-dark)var(--office-bevel-dark)var(--office-bevel-light)}[data-design=office] .badge{border-radius:2px}[data-design=office] .accordion__trigger{background:linear-gradient(var(--office-btn-top),var(--office-btn-bottom))}[data-design=office] .accordion__trigger:hover{background:linear-gradient(color-mix(in srgb,var(--office-btn-top),white 12%),color-mix(in srgb,var(--office-btn-bottom),white 12%))}[data-design=office] .accordion__item+.accordion__item{border-top-color:var(--office-bevel-dark)}[data-design=office] .palette__trigger,[data-design=office] .palette__native{border-style:solid;border-width:1px;border-color:var(--office-bevel-dark)var(--office-bevel-light)var(--office-bevel-light)var(--office-bevel-dark);border-radius:1px}[data-design=office] .palette__popup{border-color:var(--office-bevel-light)var(--office-bevel-dark)var(--office-bevel-dark)var(--office-bevel-light);background:var(--color-surface-raised);gap:2px;padding:2px}[data-design=office] .palette__groups,[data-design=office] .palette__custom{padding:var(--space-2)}[data-design=office] .palette__grid{gap:2px}[data-design=office] .palette__swatch{border-color:var(--color-border);border-radius:0}[data-design=office] .palette__swatch[aria-selected=true]{box-shadow:none;outline:2px solid var(--color-primary);outline-offset:-2px}[data-design=office] .palette__tooltip{color:#000;background:#ffffe1;border:1px solid #000;border-radius:0}[data-design=kids] .btn{font-weight:800;box-shadow:0 5px #0000002e}[data-design=kids] .btn--ghost{box-shadow:none}[data-design=kids] .accordion__trigger{font-weight:800}[data-design=kids] .palette__trigger{font-weight:800;box-shadow:0 5px #0000002e}[data-design=kids] .palette__swatch{border-radius:var(--radius-full)}[data-design=kids] .palette__tooltip{border-radius:var(--radius-full);font-weight:700}@media (prefers-reduced-motion:no-preference){[data-design=kids] .btn,[data-design=kids] .field__input,[data-design=kids] .todo-item,[data-design=kids] .card,[data-design=kids] .badge,[data-design=kids] .palette__trigger,[data-design=kids] .palette__swatch,[data-design=kids] .checkbox__input{transition:transform var(--duration-fast)var(--ease-interaction),box-shadow var(--duration-fast)var(--ease-interaction),background-color var(--duration-fast)var(--ease-interaction),border-color var(--duration-fast)var(--ease-interaction),color var(--duration-fast)var(--ease-interaction)}[data-design=kids] .btn:not(:disabled):hover{transform:translateY(var(--hover-lift))scale(var(--hover-scale))rotate(var(--hover-rotate));box-shadow:0 9px #0000002e}[data-design=kids] .btn:not(:disabled):active{transform:translateY(2px)scale(var(--press-scale));box-shadow:0 1px #0000002e}[data-design=kids] .palette__swatch:hover{transform:scale(1.25)rotate(var(--hover-rotate))}[data-design=kids] .palette__swatch:focus-visible{transform:scale(1.25)rotate(var(--hover-rotate))}[data-design=kids] .palette__trigger:not(:disabled):hover{transform:translateY(var(--hover-lift))scale(var(--hover-scale))rotate(var(--hover-rotate));box-shadow:0 9px #0000002e}[data-design=kids] .field__input:focus{transform:scale(var(--focus-scale));box-shadow:0 0 0 5px color-mix(in srgb,var(--color-focus)55%,transparent);animation:kids-focus-pop var(--duration-fast)var(--ease-interaction)}[data-design=kids] .field__input:focus-visible{transform:scale(var(--focus-scale));box-shadow:0 0 0 5px color-mix(in srgb,var(--color-focus)55%,transparent);animation:kids-focus-pop var(--duration-fast)var(--ease-interaction)}[data-design=kids] .card:hover,[data-design=kids] .todo-item:hover{transform:translateY(-6px)rotate(-1deg)scale(1.02)}[data-design=kids] .checkbox__input:checked{animation:kids-check-pop .4s var(--ease-interaction)}[data-design=kids] .spinner{animation:.55s cubic-bezier(.6,0,.4,1) infinite spinner-rotate}[data-design=kids] .accordion__trigger:hover .accordion__chevron{transform:translateY(3px)scale(1.2)}[data-design=kids] .accordion__item[data-open] .accordion__trigger:hover .accordion__chevron{transform:rotate(180deg)scale(1.2)}}@keyframes kids-focus-pop{0%{transform:scale(1)}55%{transform:scale(calc(var(--focus-scale) + .06))}to{transform:scale(var(--focus-scale))}}@keyframes kids-check-pop{0%{transform:scale(1)}40%{transform:scale(1.5)rotate(-12deg)}70%{transform:scale(.85)rotate(6deg)}to{transform:scale(1)}}.hud-layer{position:absolute;pointer-events:none;overflow:hidden;border-radius:var(--radius-surface);inset:0}.hud-layer__slot{position:absolute;display:flex;gap:var(--space-2);padding:var(--space-3);flex-direction:column;max-width:min(100%,22rem)}.hud-layer__slot--top-left{align-items: flex-start;top:0;left:0}.hud-layer__slot--top-right{align-items: flex-end;top:0;right:0}.hud-layer__slot--bottom-left{align-items: flex-start;bottom:0;left:0}.hud-layer__slot--bottom-right{align-items: flex-end;bottom:0;right:0}.hud-layer__slot--bottom-center{align-items: center;bottom:0;left:50%;transform:translate(-50%)}.hud-panel{pointer-events:auto;color:#f4efe2}.hud-hint{pointer-events:none;font-size:var(--font-size-sm);color:#f4efe2b8;border-radius:var(--radius-control);padding:var(--space-1)var(--space-3);text-align:center;background:#0b121a8c}.aim-hud{display:flex;align-items: center;gap:var(--space-3);padding:var(--space-3);border:var(--border-width)solid #f4efe22e;border-radius:var(--radius-surface);background:#0b121ad1}.aim-hud__dial{cursor:grab;touch-action:none;border-radius:var(--radius-full);flex-shrink:0;width:5.5rem;height:5.5rem}.aim-hud__dial:active{cursor:grabbing}.aim-hud__dial svg{display:block;width:100%;height:100%}.aim-hud__dial-face{fill:#f4efe20f;stroke:#f4efe259;stroke-width:2}.aim-hud__dial-tick{stroke:#f4efe24d;stroke-width:2}.aim-hud__dial-needle{stroke:#f4efe2;stroke-width:4;stroke-linecap:round}.aim-hud__dial-knob{fill:#f4efe2}.aim-hud__dial-hub{fill:#f4efe2cc}.aim-hud__stack{display:flex;gap:var(--space-2);flex-direction:column;min-width:9rem}.aim-hud__power{position:relative;border-radius:var(--radius-full);cursor:pointer;touch-action:none;background:#f4efe229;height:1.1rem}.aim-hud__power-fill{position:absolute;top:0;bottom:0;border-radius:var(--radius-full);min-width:1.1rem;left:0}.aim-hud__power-thumb{position:absolute;border-radius:var(--radius-full);background:#f4efe2;border:2px solid;width:1.05rem;height:1.05rem;margin-left:-.525rem;top:50%;transform:translateY(-50%)}.aim-hud__readout{font-family:var(--font-mono);font-size:var(--font-size-sm);color:#f4efe2d9;margin:0}.aim-hud__readout strong{font-size:var(--font-size-body);color:#f4efe2}.aim-hud__dial:focus-visible{outline:var(--focus-ring-width)solid var(--color-focus);outline-offset:3px}.aim-hud__power:focus-visible{outline:var(--focus-ring-width)solid var(--color-focus);outline-offset:3px}.billiards-aim-readout{display:flex;justify-content:space-between;align-items: center;gap:var(--space-2);font-size:var(--font-size-sm);margin:0;padding-block-start:2px;padding-block-end:2px}.billiards-aim-hint{margin:var(--space-1)0 0;font-size:var(--font-size-sm)}.billiards-page{width:calc(100vw - 2*var(--space-4));max-width:88rem;margin-left:50%;transform:translate(-50%)}.billiards-header{margin-bottom:var(--space-4)}.billiards-header h2{margin:0 0 var(--space-1)}.billiards-header p{margin:0}.billiards-layout{display:grid;grid-template-columns:minmax(0,1fr)23rem;gap:var(--space-4);align-items: start}@media (max-width:64rem){.billiards-layout{grid-template-columns:1fr}}.billiards-canvas{position:relative;border-radius:var(--radius-surface);overflow:hidden;border:var(--border-width)solid var(--color-border);background:#101820;height:min(68vh,36rem);min-height:20rem}.billiards-side,.billiards-panel{display:flex;gap:var(--space-3);flex-direction:column}.billiards-group{border:var(--border-width)solid var(--color-border);border-radius:var(--radius-surface);background:var(--color-surface);padding:var(--space-3)}.billiards-group h3{margin:0 0 var(--space-2);font-size:var(--font-size-body)}.billiards-slider{display:grid;grid-template-columns:9.5rem minmax(0,1fr)5.5rem;align-items: center;gap:var(--space-2);font-size:var(--font-size-sm);padding-block-start:2px;padding-block-end:2px}.billiards-slider__label{color:var(--color-text-muted)}.billiards-slider__value{font-family:var(--font-mono);text-align:right;white-space:nowrap}.billiards-slider input[type=range]{accent-color:var(--color-primary);width:100%;margin:0}.billiards-actions{display:flex;gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap}.billiards-cue-potted-hint{margin:var(--space-2)0 0;font-size:var(--font-size-sm)}.billiards-readout__time{margin:0 0 var(--space-2);font-size:var(--font-size-sm)}.billiards-readout__list{list-style:none;margin:0 0 var(--space-3);display:flex;gap:var(--space-1);flex-direction:column;padding:0}.billiards-readout__row{display:flex;align-items: center;gap:var(--space-2);font-size:var(--font-size-sm)}.billiards-readout__row code{margin-left:auto}.billiards-readout__dot{border-radius:var(--radius-full);border:1px solid var(--color-border);flex-shrink:0;width:.75rem;height:.75rem}.billiards-readout__subtitle{margin:0 0 var(--space-1);font-size:var(--font-size-sm)}.billiards-readout__empty{font-size:var(--font-size-sm);margin:0}.billiards-events{padding:0 0 0 var(--space-4);font-size:var(--font-size-sm);display:flex;overflow-y:auto;flex-direction:column;gap:2px;max-height:12rem;margin:0}.billiards-group .checkbox__input:checked+.checkbox__label{text-decoration:none;color:var(--color-text)}
