/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid}}}.swipe-pagination{--sp-fade:24px;align-items:center;min-width:0;max-width:100%;display:flex}.swipe-pagination__arrow{flex:none;justify-content:center;align-items:center;display:inline-flex}.swipe-pagination__viewport{--_sp-fade-start:var(--sp-fade);--_sp-fade-end:var(--sp-fade);contain:inline-size;overscroll-behavior-x:contain;scrollbar-width:none;min-width:0;-webkit-mask-image:linear-gradient(to right, transparent, #000 var(--_sp-fade-start), #000 calc(100% - var(--_sp-fade-end)), transparent);-webkit-mask-image:linear-gradient(to right, transparent, #000 var(--_sp-fade-start), #000 calc(100% - var(--_sp-fade-end)), transparent);-webkit-mask-image:linear-gradient(to right, transparent, #000 var(--_sp-fade-start), #000 calc(100% - var(--_sp-fade-end)), transparent);-webkit-mask-image:linear-gradient(to right, transparent, #000 var(--_sp-fade-start), #000 calc(100% - var(--_sp-fade-end)), transparent);mask-image:linear-gradient(to right, transparent, #000 var(--_sp-fade-start), #000 calc(100% - var(--_sp-fade-end)), transparent);flex:auto;overflow:auto hidden}.swipe-pagination__viewport::-webkit-scrollbar{display:none}.swipe-pagination[data-at-start] .swipe-pagination__viewport{--_sp-fade-start:0px}.swipe-pagination[data-at-end] .swipe-pagination__viewport{--_sp-fade-end:0px}.swipe-pagination__track{position:relative}.swipe-pagination__item{box-sizing:border-box;white-space:nowrap;font-variant-numeric:tabular-nums;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:0}@layer theme{:root,:host{--color-violet-300:oklch(81.1% .111 293.571);--color-violet-600:oklch(54.1% .281 293.009);--color-slate-100:oklch(96.8% .007 247.896);--color-slate-500:oklch(55.4% .046 257.417);--color-slate-600:oklch(44.6% .043 257.281);--color-white:#fff;--spacing:.25rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--font-weight-semibold:600;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1)}}@layer utilities{.visible{visibility:visible}.grid{display:grid}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.h-9{height:calc(var(--spacing) * 9)}.min-w-9{min-width:calc(var(--spacing) * 9)}.cursor-pointer{cursor:pointer}.resize{resize:both}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.rounded-full{border-radius:2147483647px}.border-0{border-style:var(--tw-border-style);border-width:0}.bg-transparent{background-color:#0000}.bg-violet-600{background-color:var(--color-violet-600)}.px-3{padding-inline:calc(var(--spacing) * 3)}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-slate-500{color:var(--color-slate-500)}.text-slate-600{color:var(--color-slate-600)}.text-white{color:var(--color-white)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-violet-300{--tw-shadow-color:oklch(81.1% .111 293.571)}@supports (color:color-mix(in lab, red, red)){.shadow-violet-300{--tw-shadow-color:color-mix(in oklab, var(--color-violet-300) var(--tw-shadow-alpha), transparent)}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.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))}.\[--sp-gap\:6px\]{--sp-gap:6px}@media (hover:hover){.hover\:bg-slate-100:hover{background-color:var(--color-slate-100)}}.disabled\:cursor-default:disabled{cursor:default}.disabled\:opacity-30:disabled{opacity:.3}}:root{--bg:#fafaf9;--surface:#fff;--surface-2:#f4f4f5;--text:#18181b;--muted:#62626b;--border:#e4e4e7;--accent:#5b4cf0;--accent-soft:#eeecff;--code-bg:#18181b;--code-bar:#2a2a2f;--code-border:transparent;--code-muted:#a1a1aa;--code-text:#f4f4f5;--radius:14px;--shadow:0 1px 2px #0000000a, 0 8px 24px -12px #0000001f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0c0c0f;--surface:#16161b;--surface-2:#1f1f26;--text:#f4f4f5;--muted:#a1a1aa;--border:#2a2a33;--accent:#8b80ff;--accent-soft:#221f45;--code-bg:#18181f;--code-bar:#22222a;--code-border:#2e2e38;--shadow:0 1px 2px #0000004d, 0 8px 24px -12px #0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#0c0c0f;--surface:#16161b;--surface-2:#1f1f26;--text:#f4f4f5;--muted:#a1a1aa;--border:#2a2a33;--accent:#8b80ff;--accent-soft:#221f45;--code-bg:#18181f;--code-bar:#22222a;--code-border:#2e2e38;--shadow:0 1px 2px #0000004d, 0 8px 24px -12px #0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{scroll-padding-top:72px}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font:16px/1.6 ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Apple SD Gothic Neo,Noto Sans KR,sans-serif}:lang(ko) body{word-break:keep-all;overflow-wrap:anywhere}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}code{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.875em}:not(pre)>code{background:var(--surface-2);border-radius:5px;padding:.1em .35em}h1,h2,h3{letter-spacing:-.02em;line-height:1.2}.wrap{width:100%;max-width:1040px;padding-inline:max(20px, env(safe-area-inset-left));margin-inline:auto}.topbar{z-index:10;padding-top:env(safe-area-inset-top,0px);border-bottom:1px solid var(--border);background:var(--bg);position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.topbar{background:color-mix(in srgb, var(--bg) 85%, transparent)}}.topbar{-webkit-backdrop-filter:saturate(1.4)blur(12px);backdrop-filter:saturate(1.4)blur(12px)}.topbar__inner{justify-content:space-between;align-items:center;gap:16px;min-height:56px;display:flex}.brand{color:var(--text);letter-spacing:-.01em;white-space:nowrap;align-items:center;gap:10px;font-weight:700;display:flex}.brand:hover{text-decoration:none}.brand__mark{background:var(--accent);border-radius:8px;place-items:center;width:28px;height:28px;display:grid}.brand__mark svg{fill:none;stroke:#fff;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.badge{background:var(--accent-soft);color:var(--accent);border-radius:999px;padding:1px 8px;font-size:12px;font-weight:600}.topbar__links{align-items:center;gap:18px;font-size:14px;display:flex}.topbar__links a{color:var(--muted)}.topbar__links a:hover{color:var(--text);text-decoration:none}.icon-button{border:1px solid var(--border);background:var(--surface);width:34px;height:34px;color:var(--text);cursor:pointer;border-radius:9px;place-items:center;display:grid}.icon-button svg{fill:currentColor;width:17px;height:17px}@media (width<=720px){.topbar__links a:not(:last-of-type){display:none}}@media (width<=400px){.badge{display:none}}.hero{padding-block:88px 72px}.eyebrow{color:var(--accent);margin:0 0 12px;font-size:14px;font-weight:600}.hero h1{letter-spacing:-.04em;margin:0;font-size:clamp(2.4rem,7vw,4.2rem)}.hero h1 em{background:linear-gradient(90deg, var(--accent), #e0479e);color:#0000;-webkit-background-clip:text;background-clip:text;font-style:normal}.lead{max-width:640px;color:var(--muted);margin:20px 0 28px;font-size:clamp(1.05rem,2.4vw,1.2rem)}.install{border:1px solid var(--border);background:var(--surface);max-width:100%;box-shadow:var(--shadow);border-radius:12px;align-items:center;gap:4px;padding:6px 6px 6px 16px;display:inline-flex}.install code{background:0 0;padding:0;font-size:15px}.install code:before{content:"$ ";color:var(--muted)}.copy{background:var(--surface-2);color:var(--text);font:inherit;cursor:pointer;border:0;border-radius:8px;padding:6px 12px;font-size:13px;font-weight:600}.stage-hero{box-shadow:var(--shadow);background:radial-gradient(circle at 12% 20%,#ffffff8c,#0000 40%),radial-gradient(circle at 88% 80%,#ffffff59,#0000 45%),linear-gradient(120deg,#c7d2fe,#fbcfe8 45%,#fde68a);border-radius:22px;margin-top:40px;padding:clamp(44px,8vw,72px) clamp(20px,5vw,40px)}:root[data-theme=dark] .stage-hero{background:radial-gradient(circle at 12% 20%,#8b80ff59,#0000 40%),radial-gradient(circle at 88% 80%,#e0479e4d,#0000 45%),linear-gradient(120deg,#1e1b4b,#3b0764 50%,#422006)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .stage-hero{background:radial-gradient(circle at 12% 20%,#8b80ff59,#0000 40%),radial-gradient(circle at 88% 80%,#e0479e4d,#0000 45%),linear-gradient(120deg,#1e1b4b,#3b0764 50%,#422006)}}.hero-strip{color:#1e1b4b;min-height:2.75rem}:root[data-theme=dark] .hero-strip{color:#f5f3ff}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .hero-strip{color:#f5f3ff}}.stage-hero .hero-strip .swipe-pagination{--sp-size:2.75rem;--sp-font-size:1.05rem;--sp-active-bg:#1e1b4b;--sp-fade:48px}:root[data-theme=dark] .hero-strip .swipe-pagination{--sp-active-bg:#f5f3ff;--sp-active-color:#1e1b4b}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .hero-strip .swipe-pagination{--sp-active-bg:#f5f3ff;--sp-active-color:#1e1b4b}}.hint{color:var(--muted);margin:14px 4px 0;font-size:14px}.hero-stats{color:var(--muted);font-variant-numeric:tabular-nums;opacity:.72;flex-wrap:wrap;gap:3px 14px;margin:6px 4px 0;font-size:11px;display:flex}.section{padding-block:56px}.section h2{margin:0 0 8px;font-size:clamp(1.6rem,4vw,2.1rem)}.section h3{margin:32px 0 12px;font-size:1.15rem}.section-lead{max-width:680px;color:var(--muted);margin:0 0 24px}.cards{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin-top:24px;display:grid}.card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:22px}.card h3{margin:0 0 8px}.card p{color:var(--muted);margin:0}.playground{grid-template-columns:minmax(0,1fr) 260px;align-items:start;gap:20px;display:grid}@media (width<=820px){.playground{grid-template-columns:minmax(0,1fr)}}.pg-stage{gap:16px;min-width:0;display:grid}.resizable{resize:horizontal;border:1px dashed var(--border);border-radius:var(--radius);background:var(--surface);width:100%;min-width:180px;max-width:100%;min-height:calc(2.25rem + 38px);padding:18px 14px;overflow:hidden}.readout{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:0;display:grid}.readout div{border:1px solid var(--border);background:var(--surface);border-radius:10px;padding:10px 12px}.readout dt{color:var(--muted);font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px}.readout dd{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:2px 0 0;font-weight:600}.methods,.presets{flex-wrap:wrap;gap:8px;display:flex}.methods button,.presets button{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:9px;padding:7px 11px;font:13px ui-monospace,SF Mono,Menlo,monospace}.methods button:hover,.presets button:hover{border-color:var(--accent);color:var(--accent)}.log{background:var(--code-bg);color:var(--code-text);border-radius:10px;padding:12px 14px;font:13px/1.7 ui-monospace,SF Mono,Menlo,monospace}.log__title{color:#a1a1aa}.log ol{min-height:1.7em;margin:4px 0 0;padding:0;list-style:none}.log li:first-child{color:#c4b5fd}.pg-controls{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);gap:14px;padding:18px;display:grid}.pg-controls label{gap:6px;font-size:14px;display:grid}.pg-controls label>span{justify-content:space-between;font-family:ui-monospace,SF Mono,Menlo,monospace;display:flex}.pg-controls output{color:var(--muted)}.pg-controls .hint-text{color:var(--muted);font-size:12px;line-height:1.45}.pg-controls input[type=number]{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);font:inherit;border-radius:9px;padding:8px 10px}.pg-controls input[type=range]{width:100%;accent-color:var(--accent)}.pg-controls .check{align-items:center;gap:8px;display:flex}.pg-controls .check span{font-size:13px}.theme-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,440px),1fr));gap:16px;display:grid}.theme-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);gap:14px;min-width:0;padding:18px;display:grid}.theme-card h3{margin:0;font-size:1rem}.theme-card header p{color:var(--muted);margin:4px 0 0;font-size:13px}.theme-card__stage{color:#1f2937;background:#fff;border-radius:10px;min-height:calc(2.5rem + 28px);padding:14px 10px;font-family:ui-sans-serif,system-ui,-apple-system,sans-serif}.theme-card__import{white-space:nowrap;color:var(--muted);font-size:12.5px;display:block;overflow-x:auto}.tabs{border:1px solid var(--code-border);border-radius:var(--radius);background:var(--code-bar);box-shadow:var(--shadow);overflow:hidden}.tabs__list{scrollbar-width:none;gap:2px;padding:6px 6px 0;display:flex;overflow-x:auto}.tabs__list button{color:var(--code-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:9px 9px 0 0;flex:none;padding:9px 14px;font-size:14px;font-weight:600}.tabs__list button:hover{color:var(--code-text)}.tabs__list button[aria-selected=true]{background:var(--code-bg);color:var(--code-text)}.code{background:var(--code-bg);color:var(--code-text);position:relative}.code pre{margin:0;padding:20px;font-size:14px;line-height:1.65;overflow-x:auto}.code .copy{color:var(--code-text);background:#ffffff1a;position:absolute;top:12px;right:12px}.table-wrap{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px}th,td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:10px 14px}th{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:600}tr:last-child td{border-bottom:0}td:first-child{white-space:nowrap}.how ol{gap:14px;max-width:760px;padding-left:1.2em;display:grid}.how li::marker{color:var(--accent);font-weight:700}.aside{color:var(--muted);gap:4px;margin:24px 0 0;padding-left:1.2em;font-size:14px;display:grid}.footer{padding-block:40px calc(40px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--border);color:var(--muted);flex-wrap:wrap;gap:20px;font-size:14px;display:flex}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}
