/* web-design-kit (sinabro) */:root{color-scheme: light;--k-bg: #FFFFFF;--k-surface: #FFFFFF;--k-surface-2: #F5F5F7;--k-ink: #1D1D1F;--k-ink-2: #424245;--k-muted: #6E6E73;--k-border: #E3E3E6;--k-border-strong: #C7C7CC;--k-border-input: #86868B;--k-accent: #E8590C;--k-accent-ink: #C2410C;--k-accent-fill: #C2410C;--k-on-accent: #FFFFFF;--k-accent-soft: #FFF1E8;--k-spark: #FFC56B;--k-success: #1E6B3A;--k-success-soft: #E3F2E8;--k-danger: #B3321B;--k-danger-soft: #FCE9E4;--k-warning: #845400;--k-warning-soft: #FFF3D6;--k-info: #1A4D8C;--k-info-soft: #E6EEF8;--k-inverse-bg: #1E1A14;--k-inverse-ink: #F6EFE5;--k-focus: #B34D00;--k-shadow-color: 0 0 0;--k-font: -apple-system,BlinkMacSystemFont,"SF Pro Display","Pretendard Variable",Pretendard,"Apple SD Gothic Neo","Noto Sans KR","Malgun Gothic",system-ui,sans-serif;--k-font-display: var(--k-font);--k-font-mono: ui-monospace,"SF Mono","JetBrains Mono",D2Coding,Menlo,Consolas,monospace;--k-step--2: clamp(0.75rem,0.73rem + 0.08vw,0.8rem);--k-step--1: clamp(0.84rem,0.81rem + 0.14vw,0.92rem);--k-step-0: clamp(1rem,0.96rem + 0.19vw,1.125rem);--k-step-1: clamp(1.17rem,1.09rem + 0.37vw,1.42rem);--k-step-2: clamp(1.37rem,1.22rem + 0.67vw,1.83rem);--k-step-3: clamp(1.6rem,1.35rem + 1.13vw,2.36rem);--k-step-4: clamp(1.88rem,1.47rem + 1.83vw,3.11rem);--k-step-5: clamp(2.2rem,1.55rem + 2.9vw,4.15rem);--k-step-6: clamp(2.75rem,1.2rem + 6.9vw,7.4rem);--k-leading-tight: 1.08;--k-leading-snug: 1.3;--k-leading: 1.6;--k-tracking-display: -0.022em;--k-tracking-tight: -0.012em;--k-tracking-label: 0.08em;--k-measure: 68ch;--k-space-3xs: clamp(0.25rem,0.24rem + 0.05vw,0.31rem);--k-space-2xs: clamp(0.5rem,0.48rem + 0.09vw,0.56rem);--k-space-xs: clamp(0.75rem,0.72rem + 0.14vw,0.88rem);--k-space-s: clamp(1rem,0.96rem + 0.19vw,1.13rem);--k-space-m: clamp(1.5rem,1.44rem + 0.28vw,1.69rem);--k-space-l: clamp(2rem,1.91rem + 0.37vw,2.25rem);--k-space-xl: clamp(3rem,2.87rem + 0.56vw,3.38rem);--k-space-2xl: clamp(4rem,3.5rem + 2.2vw,6rem);--k-space-3xl: clamp(5rem,3.9rem + 4.9vw,9.5rem);--k-gutter: clamp(1rem,0.6rem + 1.8vw,2.5rem);--k-radius-sm: 10px;--k-radius: 18px;--k-radius-lg: 22px;--k-radius-xl: 28px;--k-radius-pill: 999px;--k-line: 1px solid var(--k-border);--k-shadow-1: 0 1px 2px rgb(var(--k-shadow-color) / 0.06),0 6px 16px rgb(var(--k-shadow-color) / 0.06);--k-shadow-2: 0 2px 8px rgb(var(--k-shadow-color) / 0.08),0 16px 40px rgb(var(--k-shadow-color) / 0.1);--k-shadow-3: 0 10px 30px rgb(var(--k-shadow-color) / 0.14),0 30px 80px rgb(var(--k-shadow-color) / 0.16);--k-ease-out: cubic-bezier(0.22,1,0.36,1);--k-ease-in-out: cubic-bezier(0.65,0,0.35,1);--k-dur-1: 120ms;--k-dur-2: 220ms;--k-dur-3: 420ms;--k-dur-4: 720ms;--k-container: 1200px;--k-container-narrow: 760px;--k-container-wide: 1440px;--k-tap: 44px;--k-z-nav: 40;--k-z-dialog: 80;--k-z-toast: 90}@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){color-scheme: dark;--k-bg: #000000;--k-surface: #1D1D1F;--k-surface-2: #2A2A2C;--k-ink: #F5F5F7;--k-ink-2: #D2D2D7;--k-muted: #A1A1A6;--k-border: #3A3A3C;--k-border-strong: #545458;--k-border-input: #7C7C80;--k-accent: #FF8A3D;--k-accent-ink: #FFA466;--k-accent-fill: #FF8A3D;--k-on-accent: #1A120B;--k-accent-soft: #3A2010;--k-spark: #FFC56B;--k-success: #6FD08F;--k-success-soft: #173323;--k-danger: #FF8F7A;--k-danger-soft: #3D1A14;--k-warning: #F2C063;--k-warning-soft: #3A2C10;--k-info: #8DB8F2;--k-info-soft: #16263B;--k-inverse-bg: #F6EFE5;--k-inverse-ink: #1E1A14;--k-focus: #FFC56B;--k-shadow-color: 0 0 0}}:root[data-theme="dark"]{color-scheme: dark;--k-bg: #000000;--k-surface: #1D1D1F;--k-surface-2: #2A2A2C;--k-ink: #F5F5F7;--k-ink-2: #D2D2D7;--k-muted: #A1A1A6;--k-border: #3A3A3C;--k-border-strong: #545458;--k-border-input: #7C7C80;--k-accent: #FF8A3D;--k-accent-ink: #FFA466;--k-accent-fill: #FF8A3D;--k-on-accent: #1A120B;--k-accent-soft: #3A2010;--k-spark: #FFC56B;--k-success: #6FD08F;--k-success-soft: #173323;--k-danger: #FF8F7A;--k-danger-soft: #3D1A14;--k-warning: #F2C063;--k-warning-soft: #3A2C10;--k-info: #8DB8F2;--k-info-soft: #16263B;--k-inverse-bg: #F6EFE5;--k-inverse-ink: #1E1A14;--k-focus: #FFC56B;--k-shadow-color: 0 0 0}:where(*,*::before,*::after){box-sizing: border-box}:where(html){-webkit-text-size-adjust: 100%;text-size-adjust: 100%;scroll-behavior: smooth;hanging-punctuation: first last}:where(body){margin: 0;min-height: 100svh;background: var(--k-bg);color: var(--k-ink);font-family: var(--k-font);font-size: var(--k-step-0);line-height: var(--k-leading);-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;text-rendering: optimizeLegibility;word-break: keep-all;overflow-wrap: break-word;overflow-x: clip}:where(h1,h2,h3,h4,h5,h6,p,figure,blockquote,dl,dd,ul,ol){margin: 0}:where(ul,ol)[role="list"],:where(.k-list-reset){list-style: none;padding: 0}:where(img,picture,video,canvas,svg){display: block;max-width: 100%;height: auto}:where(input,button,textarea,select){font: inherit;color: inherit;letter-spacing: inherit}:where(button){cursor: pointer}:where(button:disabled,[aria-disabled="true"]){cursor: not-allowed}:where(table){border-collapse: collapse;width: 100%}:where(pre,code,kbd,samp){font-family: var(--k-font-mono);font-size: 0.92em}:where(pre){white-space: pre-wrap;overflow-wrap: anywhere}:where(hr){border: 0;border-top: var(--k-line);margin: var(--k-space-l) 0}:where([hidden]){display: none !important}:where(::selection){background: var(--k-spark);color: #1E1A14}:where(h1,h2,h3,h4){font-family: var(--k-font-display);color: var(--k-ink);line-height: var(--k-leading-snug);letter-spacing: var(--k-tracking-tight);font-weight: 750;text-wrap: balance}:where(h1){font-size: var(--k-step-5);line-height: 1.12;letter-spacing: var(--k-tracking-display);font-weight: 800}:where(h2){font-size: var(--k-step-3);line-height: 1.2}:where(h3){font-size: var(--k-step-1)}:where(h4){font-size: var(--k-step-0)}:where(p,li,dd){text-wrap: pretty}:where(p){max-width: var(--k-measure)}:where(small){font-size: var(--k-step--1)}:where(strong,b){font-weight: 700}:where(a){color: var(--k-accent-ink);text-decoration-thickness: 1px;text-underline-offset: 0.2em}:where(a:hover){text-decoration-thickness: 2px}:where(mark){background: linear-gradient(transparent 55%,var(--k-spark) 55%);color: inherit;padding: 0 0.1em}:where(:focus-visible){outline: 3px solid var(--k-focus);outline-offset: 2px;border-radius: 4px}:where(:focus:not(:focus-visible)){outline: none}.k-display{font-family: var(--k-font-display);font-size: var(--k-step-6);font-weight: 850;line-height: var(--k-leading-tight);letter-spacing: var(--k-tracking-display);text-wrap: balance;margin: 0}.k-title{font-size: var(--k-step-5);font-weight: 800;line-height: 1.12;letter-spacing: var(--k-tracking-display)}.k-lead{font-size: var(--k-step-1);line-height: 1.6;color: var(--k-ink-2);max-width: 46ch}.k-eyebrow{display: inline-flex;align-items: center;gap: 0.55em;font-size: var(--k-step--1);font-weight: 650;color: var(--k-muted);letter-spacing: 0.02em}.k-eyebrow::before{content: "";inline-size: 0.5em;block-size: 0.5em;border-radius: 50%;background: var(--k-accent);flex: none}.k-eyebrow--latin{text-transform: uppercase;letter-spacing: var(--k-tracking-label);font-family: var(--k-font-mono);font-weight: 500}.k-mono{font-family: var(--k-font-mono);font-size: 0.9em;letter-spacing: 0}.k-tabular{font-variant-numeric: tabular-nums}.k-meta{font-family: var(--k-font-mono);font-size: var(--k-step--1);color: var(--k-muted);font-variant-numeric: tabular-nums}.k-index{font-family: var(--k-font-mono);font-size: var(--k-step--1);color: var(--k-accent-ink);font-variant-numeric: tabular-nums}.k-container{inline-size: min(100% - 2 * var(--k-gutter),var(--k-container));margin-inline: auto}.k-container--narrow{inline-size: min(100% - 2 * var(--k-gutter),var(--k-container-narrow));margin-inline: auto}.k-container--wide{inline-size: min(100% - 2 * var(--k-gutter),var(--k-container-wide));margin-inline: auto}.k-section{padding-block: var(--k-space-2xl)}.k-section--tight{padding-block: var(--k-space-xl)}.k-stack{display: flex;flex-direction: column;gap: var(--k-stack-gap,var(--k-space-s))}.k-stack--xs{--k-stack-gap: var(--k-space-2xs)}.k-stack--l{--k-stack-gap: var(--k-space-l)}.k-stack--xl{--k-stack-gap: var(--k-space-xl)}.k-cluster{display: flex;flex-wrap: wrap;align-items: center;gap: var(--k-cluster-gap,var(--k-space-xs))}.k-cluster--between{justify-content: space-between}.k-cluster--end{justify-content: flex-end}.k-cluster--nowrap{flex-wrap: nowrap}.k-grid{display: grid;gap: var(--k-grid-gap,var(--k-space-m));grid-template-columns: repeat(auto-fit,minmax(min(100%,var(--k-grid-min,16rem)),1fr))}.k-bento{display: grid;gap: var(--k-bento-gap,var(--k-space-s));grid-template-columns: repeat(12,minmax(0,1fr));grid-auto-flow: dense}.k-bento>*{grid-column: span 12;min-inline-size: 0}@media (min-width: 720px){.k-bento>.k-span-3{grid-column: span 6}.k-bento>.k-span-4{grid-column: span 6}.k-bento>.k-span-5,.k-bento>.k-span-6,.k-bento>.k-span-7,.k-bento>.k-span-8{grid-column: span 6}.k-bento>.k-span-12{grid-column: span 12}}@media (min-width: 1024px){.k-bento>.k-span-3{grid-column: span 3}.k-bento>.k-span-4{grid-column: span 4}.k-bento>.k-span-5{grid-column: span 5}.k-bento>.k-span-6{grid-column: span 6}.k-bento>.k-span-7{grid-column: span 7}.k-bento>.k-span-8{grid-column: span 8}.k-bento>.k-row-2{grid-row: span 2}}.k-bento--lines{gap: 1px;background: var(--k-border);border: var(--k-line);border-radius: var(--k-radius-lg);overflow: hidden}.k-bento--lines>*{background: var(--k-surface);border-radius: 0}.k-split{display: flex;flex-wrap: wrap;gap: var(--k-split-gap,var(--k-space-l))}.k-split>:first-child{flex: 1 1 var(--k-split-side,18rem)}.k-split>:last-child{flex: 999 1 0;min-inline-size: min(100%,55%)}.k-split--end>:first-child{flex: 999 1 0;min-inline-size: min(100%,55%)}.k-split--end>:last-child{flex: 1 1 var(--k-split-side,20rem);min-inline-size: 0}.k-muted{color: var(--k-muted)}.k-accent{color: var(--k-accent-ink)}.k-measure{max-inline-size: var(--k-measure)}.k-center{text-align: center;margin-inline: auto}.k-full-bleed{inline-size: 100vw;margin-inline: calc(50% - 50vw)}.k-sr-only{position: absolute !important;inline-size: 1px;block-size: 1px;padding: 0;margin: -1px;overflow: hidden;clip: rect(0 0 0 0);white-space: nowrap;border: 0}.k-skip-link{position: absolute;inset-inline-start: var(--k-space-s);inset-block-start: -100px;z-index: 100;padding: 0.6em 1em;border-radius: var(--k-radius-sm);background: var(--k-ink);color: var(--k-bg)}.k-skip-link:focus{inset-block-start: var(--k-space-s)}.k-divider{border: 0;border-top: var(--k-line);margin: 0}@media (max-width: 639px){.k-hide-sm{display: none !important}}@media (min-width: 640px){.k-show-sm{display: none !important}}.k-grain{position: relative;isolation: isolate}.k-grain::after{content: "";position: absolute;inset: 0;z-index: -1;pointer-events: none;opacity: 0.35;mix-blend-mode: multiply;background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .35 0 0 0 0 .25 0 0 0 0 .12 0 0 0 .09 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}:root[data-theme="dark"] .k-grain::after{mix-blend-mode: screen;opacity: 0.18}@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .k-grain::after{mix-blend-mode: screen;opacity: 0.18}}.k-aura{position: relative;isolation: isolate}.k-aura::before{content: "";position: absolute;inset: -20% -4% auto auto;inline-size: min(70vw,760px);aspect-ratio: 1;z-index: -1;pointer-events: none;background: radial-gradient(closest-side,color-mix(in srgb,var(--k-accent) 22%,transparent),transparent 70%);filter: blur(8px)}@media (prefers-reduced-motion: reduce){:where(html){scroll-behavior: auto}*,*::before,*::after{animation-duration: 1ms !important;animation-iteration-count: 1 !important;transition-duration: 1ms !important}}.k-btn{--_bg: var(--k-surface);--_fg: var(--k-ink);--_bd: var(--k-border-strong);display: inline-flex;align-items: center;justify-content: center;gap: 0.5em;min-block-size: var(--k-tap);padding: 0.55em 1.15em;border: 1px solid var(--_bd);border-radius: var(--k-radius-pill);background: var(--_bg);color: var(--_fg);font-weight: 650;font-size: var(--k-step-0);line-height: 1.2;text-decoration: none;white-space: nowrap;cursor: pointer;user-select: none;transition: background-color var(--k-dur-2) var(--k-ease-out),border-color var(--k-dur-2),color var(--k-dur-2),transform var(--k-dur-1),box-shadow var(--k-dur-2)}.k-btn:hover{--_bd: var(--k-ink)}.k-btn:active{transform: translateY(1px)}.k-btn--primary{--_bg: var(--k-accent-fill);--_fg: var(--k-on-accent);--_bd: var(--k-accent-fill);box-shadow: 0 6px 18px -8px color-mix(in srgb,var(--k-accent) 70%,transparent)}.k-btn--primary:hover{--_bg: color-mix(in srgb,var(--k-accent-fill) 88%,var(--k-ink));--_bd: var(--_bg)}.k-btn--ink{--_bg: var(--k-ink);--_fg: var(--k-bg);--_bd: var(--k-ink)}.k-btn--ghost{--_bg: transparent}.k-btn--quiet{--_bg: transparent;--_bd: transparent;padding-inline: 0.6em}.k-btn--quiet:hover{--_bg: var(--k-surface-2);--_bd: transparent}.k-btn--danger{--_bg: var(--k-surface);--_fg: var(--k-danger);--_bd: color-mix(in srgb,var(--k-danger) 45%,transparent)}.k-btn--square{border-radius: var(--k-radius-sm)}.k-btn--sm{min-block-size: 36px;padding: 0.35em 0.85em;font-size: var(--k-step--1)}.k-btn--lg{min-block-size: 52px;padding: 0.7em 1.5em;font-size: var(--k-step-1)}.k-btn--block{inline-size: 100%}.k-btn:disabled,.k-btn[aria-disabled="true"]{opacity: 0.5;pointer-events: none}.k-btn .k-arrow{transition: transform var(--k-dur-2) var(--k-ease-out)}.k-btn:hover .k-arrow{transform: translateX(3px)}.k-btn[aria-busy="true"]{pointer-events: none;color: transparent;position: relative}.k-btn[aria-busy="true"]::after{content: "";position: absolute;inline-size: 1.1em;block-size: 1.1em;border-radius: 50%;border: 2px solid var(--_fg);border-inline-end-color: transparent;animation: k-spin 0.7s linear infinite}@keyframes k-spin{to{transform: rotate(360deg)}}.k-icon-btn{display: inline-grid;place-items: center;inline-size: var(--k-tap);block-size: var(--k-tap);flex: none;border: 1px solid var(--k-border);border-radius: 50%;background: var(--k-surface);color: var(--k-ink);cursor: pointer;transition: border-color var(--k-dur-2),background-color var(--k-dur-2)}.k-icon-btn:hover{border-color: var(--k-ink)}.k-icon-btn svg{inline-size: 18px;block-size: 18px}.k-nav{position: sticky;inset-block-start: 0;z-index: var(--k-z-nav);background: color-mix(in srgb,var(--k-bg) 82%,transparent);backdrop-filter: saturate(1.4) blur(14px);border-block-end: 1px solid transparent;transition: border-color var(--k-dur-2)}.k-nav[data-scrolled="true"]{border-block-end-color: var(--k-border)}.k-nav__inner{display: flex;align-items: center;justify-content: space-between;gap: var(--k-space-s);min-block-size: 68px}.k-brand{white-space: nowrap;display: inline-flex;align-items: center;gap: 0.6em;font-weight: 800;letter-spacing: -0.02em;color: var(--k-ink);text-decoration: none;font-size: var(--k-step-1)}.k-brand__mark{inline-size: 32px;block-size: 32px;flex: none}.k-nav__links{display: flex;align-items: center;gap: clamp(0.75rem,2vw,2rem);list-style: none;margin: 0;padding: 0}.k-nav__links a{color: var(--k-ink-2);text-decoration: none;font-weight: 600;font-size: var(--k-step--1);padding-block: 0.4em;border-block-end: 1px solid transparent}.k-nav__links a:hover,.k-nav__links a[aria-current="page"]{color: var(--k-ink);border-block-end-color: var(--k-accent)}.k-menu-btn{display: none}@media (max-width: 767px){.k-menu-btn{display: inline-flex}.k-nav__links{display: none}.k-nav[data-open="true"] .k-nav__links{display: flex;flex-direction: column;align-items: stretch;gap: 0;position: absolute;inset-inline: var(--k-gutter);inset-block-start: calc(100% + 6px);padding: var(--k-space-2xs);background: var(--k-surface);border: var(--k-line);border-radius: var(--k-radius-lg);box-shadow: var(--k-shadow-3)}.k-nav[data-open="true"] .k-nav__links a{display: block;padding: 0.9em 1em;border: 0;border-radius: var(--k-radius);font-size: var(--k-step-0)}.k-nav[data-open="true"] .k-nav__links a:hover{background: var(--k-surface-2)}}.k-hero{display: grid;align-content: space-between;gap: var(--k-space-xl);min-block-size: min(88svh,980px);padding-block: var(--k-space-xl) var(--k-space-l)}.k-hero__head{display: grid;gap: var(--k-space-m)}.k-hero__foot{display: flex;flex-wrap: wrap;align-items: end;justify-content: space-between;gap: var(--k-space-m)}.k-hero .k-display em{font-style: normal;color: var(--k-accent)}.k-specs{display: grid;grid-template-columns: repeat(auto-fit,minmax(9.5rem,1fr));border: var(--k-line);border-radius: var(--k-radius);overflow: hidden;background: var(--k-border);gap: 1px}.k-spec{display: grid;gap: 0.15em;padding: 0.85em 1em;background: var(--k-surface)}.k-spec__label{font-size: var(--k-step--2);color: var(--k-muted);font-family: var(--k-font-mono);letter-spacing: 0.04em}.k-spec__value{font-weight: 750;font-size: var(--k-step-1);font-variant-numeric: tabular-nums;letter-spacing: -0.01em}.k-scroll-cue{display: inline-flex;align-items: center;gap: 0.7em;color: var(--k-muted);font-size: var(--k-step--1);text-decoration: none}.k-scroll-cue::before{content: "";inline-size: 22px;block-size: 34px;border: 1.5px solid currentColor;border-radius: 12px;background: radial-gradient(circle at 50% 30%,var(--k-accent) 3px,transparent 3.5px) no-repeat;animation: k-cue 1.8s var(--k-ease-in-out) infinite}@keyframes k-cue{50%{background-position: 0 9px}}.k-section-head{display: grid;gap: var(--k-space-s);grid-template-columns: minmax(0,1fr);margin-block-end: var(--k-space-l);padding-block-start: var(--k-space-s);border-block-start: var(--k-line)}@media (min-width: 900px){.k-section-head{grid-template-columns: 8rem minmax(0,1.4fr) minmax(0,1fr);align-items: start}}.k-section-head h2{font-size: var(--k-step-4);line-height: 1.12;letter-spacing: var(--k-tracking-display)}.k-section-head p{color: var(--k-muted)}.k-card{display: flex;flex-direction: column;gap: var(--k-space-xs);position: relative;padding: var(--k-space-m);background: var(--k-surface);color: var(--k-ink);border: var(--k-line);border-radius: var(--k-radius-lg);box-shadow: var(--k-shadow-1)}.k-card--flat{box-shadow: none}.k-card--soft{background: var(--k-surface-2);border-color: transparent;box-shadow: none}.k-card--accent{background: var(--k-accent-soft);border-color: color-mix(in srgb,var(--k-accent) 25%,transparent);box-shadow: none}.k-card--ink{background: var(--k-inverse-bg);color: var(--k-inverse-ink);border-color: transparent}.k-card--ink .k-muted,.k-card--ink .k-card__meta{color: color-mix(in srgb,var(--k-inverse-ink) 72%,transparent)}.k-card--interactive{transition: transform var(--k-dur-3) var(--k-ease-out),box-shadow var(--k-dur-3) var(--k-ease-out),border-color var(--k-dur-2)}.k-card--interactive:hover{transform: translateY(-3px);box-shadow: var(--k-shadow-2);border-color: var(--k-border-strong)}.k-card--interactive a::after{content: "";position: absolute;inset: 0;border-radius: inherit}.k-card__title{font-size: var(--k-step-2);font-weight: 750;line-height: 1.25;letter-spacing: var(--k-tracking-tight)}.k-card__title a{color: inherit;text-decoration: none}.k-card__meta{font-size: var(--k-step--1);color: var(--k-muted)}.k-bento--lines>.k-card{border: 0;border-radius: 0;box-shadow: none}.k-card__foot{margin-block-start: auto;padding-block-start: var(--k-space-xs);display: flex;align-items: center;justify-content: space-between;gap: var(--k-space-xs)}.k-panel{background: var(--k-surface);border: 1px solid var(--k-ink);border-radius: var(--k-radius);overflow: hidden;box-shadow: var(--k-shadow-2)}.k-panel__bar{display: flex;align-items: center;justify-content: space-between;gap: var(--k-space-xs);padding: 0.55em 0.6em 0.55em 1em;border-block-end: 1px solid var(--k-ink);font-family: var(--k-font-mono);font-size: var(--k-step--1);letter-spacing: 0.02em}.k-panel__body{padding: var(--k-space-m)}.k-stat{display: grid;gap: 0.35em}.k-stat__label{font-size: var(--k-step--1);color: var(--k-muted);font-weight: 600}.k-stat__value{font-size: var(--k-step-4);font-weight: 800;letter-spacing: -0.03em;line-height: 1;font-variant-numeric: tabular-nums}.k-stat__value small{font-size: 0.45em;font-weight: 650;color: var(--k-muted);margin-inline-start: 0.2em;letter-spacing: 0}.k-badge{--_bg: var(--k-surface-2);--_fg: var(--k-ink-2);display: inline-flex;align-items: center;gap: 0.4em;padding: 0.2em 0.65em;border-radius: var(--k-radius-pill);background: var(--_bg);color: var(--_fg);font-size: var(--k-step--1);font-weight: 650;line-height: 1.5;white-space: nowrap}.k-badge--accent{--_bg: var(--k-accent-soft);--_fg: var(--k-accent-ink)}.k-badge--success{--_bg: var(--k-success-soft);--_fg: var(--k-success)}.k-badge--danger{--_bg: var(--k-danger-soft);--_fg: var(--k-danger)}.k-badge--warning{--_bg: var(--k-warning-soft);--_fg: var(--k-warning)}.k-badge--info{--_bg: var(--k-info-soft);--_fg: var(--k-info)}.k-badge--outline{--_bg: transparent;border: 1px solid var(--k-border-strong)}.k-dot{inline-size: 0.5em;block-size: 0.5em;border-radius: 50%;background: currentColor;flex: none}.k-dot--live{box-shadow: 0 0 0 0 currentColor;animation: k-pulse 2s var(--k-ease-out) infinite}@keyframes k-pulse{70%{box-shadow: 0 0 0 0.45em transparent}100%{box-shadow: 0 0 0 0 transparent}}.k-chip{display: inline-flex;align-items: center;gap: 0.4em;min-block-size: 36px;padding: 0.3em 0.9em;border: 1px solid var(--k-border-strong);border-radius: var(--k-radius-pill);background: var(--k-surface);color: var(--k-ink-2);font-size: var(--k-step--1);font-weight: 600;cursor: pointer}.k-chip[aria-pressed="true"]{background: var(--k-ink);color: var(--k-bg);border-color: var(--k-ink)}.k-field{display: grid;gap: 0.4em;align-content: start}.k-label{font-weight: 650;font-size: var(--k-step--1);color: var(--k-ink)}.k-label .k-req{color: var(--k-danger);margin-inline-start: 0.15em}.k-hint{font-size: var(--k-step--1);color: var(--k-muted)}.k-error{font-size: var(--k-step--1);color: var(--k-danger);font-weight: 600;display: flex;gap: 0.35em;align-items: baseline}.k-error:empty{display: none}.k-input,.k-field :where(input:not([type="checkbox"],[type="radio"],[type="file"],[type="range"]),select,textarea){inline-size: 100%;min-block-size: var(--k-tap);padding: 0.6em 0.85em;background: var(--k-surface);color: var(--k-ink);border: 1px solid var(--k-border-input);border-radius: var(--k-radius-sm);font-size: max(16px,var(--k-step-0));transition: border-color var(--k-dur-2),box-shadow var(--k-dur-2)}.k-field :where(textarea),textarea.k-input{min-block-size: 7.5rem;resize: vertical;line-height: 1.6}.k-input:hover,.k-field :where(input,select,textarea):hover{border-color: var(--k-ink-2)}.k-input:focus-visible,.k-field :where(input,select,textarea):focus-visible{outline: none;border-color: var(--k-accent-ink);box-shadow: 0 0 0 3px color-mix(in srgb,var(--k-accent) 28%,transparent)}.k-field :where([aria-invalid="true"]),.k-input[aria-invalid="true"]{border-color: var(--k-danger);box-shadow: 0 0 0 3px color-mix(in srgb,var(--k-danger) 16%,transparent)}.k-counter{justify-self: end;font-family: var(--k-font-mono);font-size: var(--k-step--2);color: var(--k-muted);font-variant-numeric: tabular-nums}.k-fieldset{border: var(--k-line);border-radius: var(--k-radius-lg);padding: var(--k-space-m);margin: 0;display: grid;gap: var(--k-space-m);background: var(--k-surface)}.k-fieldset>legend{padding-inline: 0.5em;font-weight: 750;font-size: var(--k-step-1)}.k-check{display: flex;align-items: flex-start;gap: 0.65em;cursor: pointer;line-height: 1.5}.k-check input{inline-size: 1.2em;block-size: 1.2em;margin: 0.18em 0 0;accent-color: var(--k-accent-fill);flex: none}.k-switch{display: inline-flex;align-items: center;gap: 0.7em;cursor: pointer}.k-switch input{appearance: none;inline-size: 2.9em;block-size: 1.7em;border-radius: var(--k-radius-pill);margin: 0;flex: none;cursor: pointer;background: var(--k-border-input);position: relative;transition: background-color var(--k-dur-2) var(--k-ease-out)}.k-switch input::after{content: "";position: absolute;inset-block-start: 0.2em;inset-inline-start: 0.2em;inline-size: 1.3em;block-size: 1.3em;border-radius: 50%;background: #fff;box-shadow: 0 1px 3px rgb(0 0 0 / 0.25);transition: transform var(--k-dur-2) var(--k-ease-out)}.k-switch input:checked{background: var(--k-accent-fill)}.k-switch input:checked::after{transform: translateX(1.2em)}.k-switch input:focus-visible{outline: 3px solid var(--k-focus);outline-offset: 2px}.k-segmented{display: inline-flex;flex-wrap: wrap;padding: 4px;gap: 4px;border-radius: var(--k-radius-pill);background: var(--k-surface-2);border: var(--k-line)}.k-segmented label{position: relative}.k-segmented input{position: absolute;opacity: 0;inset: 0;margin: 0;cursor: pointer}.k-segmented span{display: inline-flex;align-items: center;min-block-size: 38px;padding: 0.35em 1em;border-radius: var(--k-radius-pill);font-weight: 650;font-size: var(--k-step--1);color: var(--k-ink-2);transition: background-color var(--k-dur-2),color var(--k-dur-2)}.k-segmented input:checked + span{background: var(--k-surface);color: var(--k-ink);box-shadow: var(--k-shadow-1)}.k-segmented input:focus-visible + span{outline: 3px solid var(--k-focus);outline-offset: 1px}.k-dropzone{display: grid;place-items: center;gap: 0.4em;padding: var(--k-space-l) var(--k-space-m);text-align: center;border: 1.5px dashed var(--k-border-input);border-radius: var(--k-radius-lg);background: var(--k-surface);color: var(--k-muted);cursor: pointer;transition: border-color var(--k-dur-2),background-color var(--k-dur-2)}.k-dropzone:hover,.k-dropzone[data-over="true"]{border-color: var(--k-accent);background: var(--k-accent-soft);color: var(--k-ink-2)}.k-dropzone strong{color: var(--k-ink)}.k-dropzone input[type="file"]{position: absolute;inline-size: 1px;block-size: 1px;opacity: 0}.k-dropzone:focus-within{outline: 3px solid var(--k-focus);outline-offset: 2px}.k-steps{display: grid;grid-template-columns: repeat(auto-fit,minmax(min(100%,4.5rem),1fr));gap: 4px;list-style: none;padding: 0;margin: 0;counter-reset: k-step}.k-steps li{counter-increment: k-step;display: grid;gap: 0.4em;padding-block-start: 0.7em;border-block-start: 3px solid var(--k-border);color: var(--k-muted);font-size: var(--k-step--1);font-weight: 650}.k-steps li::before{content: "0" counter(k-step);font-family: var(--k-font-mono);font-weight: 500}.k-steps li[aria-current="step"]{border-color: var(--k-accent);color: var(--k-ink)}.k-steps li[data-done="true"]{border-color: var(--k-ink);color: var(--k-ink-2)}.k-table-wrap{overflow-x: auto;border: var(--k-line);border-radius: var(--k-radius-lg);background: var(--k-surface);-webkit-overflow-scrolling: touch}.k-table{inline-size: 100%;border-collapse: collapse;font-size: var(--k-step--1)}.k-table th,.k-table td{padding: 0.85em 1em;text-align: start;border-block-end: var(--k-line);vertical-align: middle}.k-table thead th{position: sticky;inset-block-start: 0;background: var(--k-surface-2);color: var(--k-muted);font-weight: 650;font-size: var(--k-step--2);letter-spacing: 0.03em;white-space: nowrap}.k-table tbody tr{transition: background-color var(--k-dur-1)}.k-table tbody tr:hover{background: color-mix(in srgb,var(--k-accent-soft) 55%,transparent)}.k-table tbody tr:last-child td{border-block-end: 0}.k-table .k-num{text-align: end;font-variant-numeric: tabular-nums;font-family: var(--k-font-mono)}.k-table .k-num,.k-table .k-meta,.k-table .k-badge{white-space: nowrap}.k-table td:first-child,.k-table th:first-child{padding-inline-start: 1.25em}.k-tabs{display: flex;gap: var(--k-space-s);border-block-end: var(--k-line);overflow-x: auto;scrollbar-width: none}.k-tabs [role="tab"]{appearance: none;background: none;border: 0;padding: 0.75em 0.1em;margin-block-end: -1px;color: var(--k-muted);font-weight: 650;font-size: var(--k-step--1);border-block-end: 2px solid transparent;white-space: nowrap;cursor: pointer;display: inline-flex;gap: 0.45em;align-items: center}.k-tabs [role="tab"]:hover{color: var(--k-ink)}.k-tabs [role="tab"][aria-selected="true"]{color: var(--k-ink);border-block-end-color: var(--k-accent)}.k-tabs [role="tab"] .k-count{font-family: var(--k-font-mono);font-size: 0.85em;color: var(--k-muted)}.k-dialog-backdrop{position: fixed;inset: 0;z-index: var(--k-z-dialog);display: grid;place-items: center;padding: var(--k-gutter);background: rgb(20 17 13 / 0.45);backdrop-filter: blur(3px);animation: k-fade var(--k-dur-2) var(--k-ease-out)}.k-dialog{inline-size: min(100%,34rem);max-block-size: min(88svh,52rem);overflow: auto;background: var(--k-surface);color: var(--k-ink);border: 1px solid var(--k-ink);border-radius: var(--k-radius-lg);box-shadow: var(--k-shadow-3);animation: k-rise var(--k-dur-3) var(--k-ease-out)}.k-dialog__head{display: flex;align-items: center;justify-content: space-between;gap: var(--k-space-s);padding: var(--k-space-s) var(--k-space-s) var(--k-space-s) var(--k-space-m);border-block-end: var(--k-line)}.k-dialog__head h2{font-size: var(--k-step-1);letter-spacing: -0.01em}.k-dialog__body{padding: var(--k-space-m);display: grid;gap: var(--k-space-s)}.k-dialog__foot{display: flex;justify-content: flex-end;flex-wrap: wrap;gap: var(--k-space-2xs);padding: var(--k-space-s) var(--k-space-m);border-block-start: var(--k-line);background: var(--k-surface-2)}@keyframes k-fade{from{opacity: 0}}@keyframes k-rise{from{opacity: 0;transform: translateY(14px) scale(0.98)}}.k-toast-region{position: fixed;z-index: var(--k-z-toast);inset-block-end: var(--k-space-s);inset-inline: var(--k-gutter);display: grid;justify-items: center;gap: 8px;pointer-events: none}.k-toast{pointer-events: auto;display: flex;align-items: center;gap: 0.7em;max-inline-size: 30rem;padding: 0.8em 1.1em;border-radius: var(--k-radius);background: var(--k-inverse-bg);color: var(--k-inverse-ink);box-shadow: var(--k-shadow-3);font-size: var(--k-step--1);font-weight: 600;animation: k-rise var(--k-dur-3) var(--k-ease-out)}.k-toast::before{content: "";inline-size: 0.55em;block-size: 0.55em;border-radius: 50%;background: var(--k-spark);flex: none}.k-toast--success::before{background: #6FD08F}.k-toast--danger::before{background: #FF8F7A}.k-toast[data-leaving="true"]{opacity: 0;transform: translateY(8px);transition: opacity var(--k-dur-2),transform var(--k-dur-2)}.k-empty{display: grid;justify-items: center;gap: var(--k-space-2xs);padding: var(--k-space-xl) var(--k-space-m);text-align: center;border: 1.5px dashed var(--k-border-strong);border-radius: var(--k-radius-lg);color: var(--k-muted)}.k-empty__icon{inline-size: 48px;block-size: 48px;display: grid;place-items: center;border-radius: 50%;background: var(--k-accent-soft);color: var(--k-accent-ink);margin-block-end: var(--k-space-2xs)}.k-empty__title{color: var(--k-ink);font-weight: 750;font-size: var(--k-step-1)}.k-empty p{max-inline-size: 36ch}.k-ticker{overflow: hidden;border-block: var(--k-line);padding-block: 0.8em;mask-image: linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}.k-ticker__track{display: flex;gap: 3rem;inline-size: max-content;animation: k-marquee var(--k-ticker-duration,38s) linear infinite}.k-ticker:hover .k-ticker__track,.k-ticker:focus-within .k-ticker__track{animation-play-state: paused}.k-ticker__item{display: inline-flex;align-items: center;gap: 0.7em;white-space: nowrap;font-weight: 650;color: var(--k-ink-2)}.k-ticker__item::before{content: "✦";color: var(--k-accent);font-size: 0.8em}@keyframes k-marquee{to{transform: translateX(-50%)}}@media (prefers-reduced-motion: reduce){.k-ticker__track{animation: none;flex-wrap: wrap;inline-size: auto}.k-ticker{mask-image: none}}.k-accordion{border-block-start: var(--k-line)}.k-accordion details{border-block-end: var(--k-line)}.k-accordion summary{display: flex;justify-content: space-between;align-items: center;gap: var(--k-space-s);padding: var(--k-space-s) 0;cursor: pointer;list-style: none;font-weight: 700;font-size: var(--k-step-1)}.k-accordion summary::-webkit-details-marker{display: none}.k-accordion summary::after{content: "+";font-family: var(--k-font-mono);font-size: 1.3em;color: var(--k-accent-ink);transition: transform var(--k-dur-2) var(--k-ease-out)}.k-accordion details[open] summary::after{transform: rotate(45deg)}.k-accordion details>:not(summary){padding-block-end: var(--k-space-s);color: var(--k-ink-2)}.k-progress{block-size: 8px;border-radius: var(--k-radius-pill);background: var(--k-surface-2);overflow: hidden}.k-progress>span{display: block;block-size: 100%;inline-size: var(--k-value,0%);background: var(--k-accent);border-radius: inherit;transition: inline-size var(--k-dur-4) var(--k-ease-out)}.k-ticks{display: grid;gap: 0.5em;font-family: var(--k-font-mono);font-size: var(--k-step--1);color: var(--k-muted)}.k-ticks__bar{block-size: 14px;background: repeating-linear-gradient(90deg,var(--k-ink) 0 1px,transparent 1px 7px);mask-image: linear-gradient(90deg,#000 var(--k-value,0%),rgb(0 0 0 / 0.18) var(--k-value,0%))}.k-avatar{display: inline-grid;place-items: center;inline-size: 36px;block-size: 36px;border-radius: 50%;background: var(--k-accent-soft);color: var(--k-accent-ink);font-weight: 750;font-size: 0.85rem;flex: none}.k-quote{display: grid;gap: var(--k-space-s);font-size: var(--k-step-3);line-height: 1.35;font-weight: 700;letter-spacing: -0.02em;text-wrap: balance}.k-quote::before{content: "“";font-size: 2.2em;line-height: 0.6;color: var(--k-accent)}.k-quote footer{font-size: var(--k-step--1);font-weight: 600;color: var(--k-muted);letter-spacing: 0}.k-band{background: var(--k-inverse-bg);color: var(--k-inverse-ink);border-radius: var(--k-radius-xl);padding: var(--k-space-xl) var(--k-space-l)}.k-band .k-muted{color: color-mix(in srgb,var(--k-inverse-ink) 72%,transparent)}.k-band .k-btn--ghost{--_fg: var(--k-inverse-ink);--_bd: color-mix(in srgb,var(--k-inverse-ink) 40%,transparent)}.k-footer{border-block-start: var(--k-line);padding-block: var(--k-space-l) var(--k-space-xl);color: var(--k-muted);font-size: var(--k-step--1)}.k-app{display: grid;grid-template-columns: minmax(0,1fr);min-block-size: 100svh}.k-app>*{min-inline-size: 0}@media (min-width: 960px){.k-app{grid-template-columns: 252px minmax(0,1fr)}}.k-sidebar{display: none;flex-direction: column;gap: var(--k-space-m);padding: var(--k-space-m) var(--k-space-s);border-inline-end: var(--k-line);background: var(--k-surface);position: sticky;inset-block-start: 0;block-size: 100svh;overflow-y: auto}@media (min-width: 960px){.k-sidebar{display: flex}}.k-app[data-nav-open="true"] .k-sidebar{display: flex;position: fixed;inset: 0 auto 0 0;inline-size: min(84vw,300px);z-index: var(--k-z-dialog);box-shadow: var(--k-shadow-3)}.k-sidebar__group{display: grid;gap: 2px}.k-sidebar__title{font-size: var(--k-step--2);color: var(--k-muted);font-family: var(--k-font-mono);letter-spacing: 0.05em;padding: 0 0.75em 0.4em}.k-sidebar__link{display: flex;align-items: center;gap: 0.7em;min-block-size: 42px;padding: 0.45em 0.75em;border-radius: var(--k-radius-sm);color: var(--k-ink-2);text-decoration: none;font-weight: 600;font-size: var(--k-step--1)}.k-sidebar__link svg{inline-size: 18px;block-size: 18px;flex: none;opacity: 0.8}.k-sidebar__link:hover{background: var(--k-surface-2);color: var(--k-ink)}.k-sidebar__link[aria-current="page"]{background: var(--k-accent-soft);color: var(--k-accent-ink)}.k-sidebar__link .k-count{margin-inline-start: auto;font-family: var(--k-font-mono);font-size: 0.85em;color: var(--k-muted)}.k-topbar{position: sticky;inset-block-start: 0;z-index: var(--k-z-nav);display: flex;align-items: center;gap: var(--k-space-xs);min-block-size: 64px;padding-inline: var(--k-gutter);background: color-mix(in srgb,var(--k-bg) 86%,transparent);backdrop-filter: blur(12px);border-block-end: var(--k-line)}.k-topbar__title{font-weight: 750;font-size: var(--k-step-1);margin-inline-end: auto;letter-spacing: -0.01em}.k-topbar .k-nav-toggle{display: inline-grid}@media (min-width: 960px){.k-topbar .k-nav-toggle{display: none}}.k-main{padding: var(--k-space-l) var(--k-gutter) var(--k-space-2xl);display: grid;grid-template-columns: minmax(0,1fr);gap: var(--k-space-l);align-content: start;min-inline-size: 0}.k-search{position: relative;inline-size: min(100%,20rem)}.k-search input{inline-size: 100%;min-block-size: 40px;padding: 0.4em 0.9em 0.4em 2.3em;border: var(--k-line);border-radius: var(--k-radius-pill);background: var(--k-surface);font-size: 16px}.k-search svg{position: absolute;inset-inline-start: 0.8em;inset-block-start: 50%;translate: 0 -50%;inline-size: 16px;block-size: 16px;color: var(--k-muted);pointer-events: none}@media (max-width: 639px){.k-search{display: none}}.k-js [data-reveal]{opacity: 0;transform: translateY(18px);transition: opacity var(--k-dur-4) var(--k-ease-out),transform var(--k-dur-4) var(--k-ease-out);transition-delay: var(--k-delay,0ms)}.k-js [data-reveal].is-visible{opacity: 1;transform: none}@media (prefers-reduced-motion: reduce){.k-js [data-reveal]{opacity: 1;transform: none}}
