.fx{--_fx-duration: var(--fx-duration, .3s);--_fx-ease: var(--fx-ease, cubic-bezier(.22, 1, .36, 1));transition:opacity var(--_fx-duration) var(--_fx-ease),transform var(--_fx-duration) var(--_fx-ease),scale var(--_fx-duration) var(--_fx-ease)}.fx-fade[data-state=entering],.fx-fade[data-state=exiting]{opacity:0}.fx-slide-up[data-state=entering],.fx-slide-up[data-state=exiting]{opacity:0;transform:translateY(var(--fx-distance, 16px))}.fx-scale[data-state=entering],.fx-scale[data-state=exiting]{opacity:0;scale:var(--fx-from-scale, .95)}@media(prefers-reduced-motion:reduce){.fx[data-state],.fx[data-state=entering],.fx[data-state=exiting]{transition:opacity var(--_fx-duration) linear;transform:none;scale:none}}.demo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem}.demo-cell{display:flex;flex-direction:column;gap:1rem}.stage{height:160px;display:grid;place-items:center;border:1px dashed var(--border);border-radius:12px;padding:1rem;overflow:hidden}.stage-toast{height:120px}.demo-card{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:1.25rem 2rem;border-radius:12px;background:var(--accent-soft);border:1px solid var(--accent)}.demo-card span{font-size:.8rem;color:var(--text-dim);font-family:monospace}.demo-card em{font-style:normal;font-size:.75rem;color:var(--text-dim)}.demo-toast{padding:.75rem 1.5rem;border-radius:999px;background:var(--text);color:var(--bg);font-weight:600}.reveal{--_reveal-duration: var(--reveal-duration, .6s);--_reveal-delay: var(--reveal-delay, 0ms);transition:opacity var(--_reveal-duration) cubic-bezier(.22,1,.36,1) var(--_reveal-delay),transform var(--_reveal-duration) cubic-bezier(.22,1,.36,1) var(--_reveal-delay)}.reveal[data-revealed=false]{opacity:0;transform:translateY(var(--reveal-distance, 24px))}@media(prefers-reduced-motion:reduce){.reveal{transition:opacity var(--_reveal-duration) linear var(--_reveal-delay)}.reveal[data-revealed=false]{transform:none}}.reveal-demo{display:flex;flex-direction:column;gap:2rem;padding-bottom:40vh}.reveal-list{display:flex;flex-direction:column;gap:2rem}.reveal-toolbar{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.reveal-toolbar p{color:var(--text-dim)}.reveal-spacer{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);min-height:60vh;color:var(--text-dim);border:1px dashed var(--border);border-radius:12px}.reveal-card{padding:2rem;border-radius:12px;border:1px solid var(--border);background:var(--surface);display:flex;flex-direction:column;gap:.5rem}.reveal-card-repeat{border-color:var(--accent);background:var(--accent-soft)}.skeleton{--_skeleton-base: var(--skeleton-base, rgba(148, 163, 184, .16));--_skeleton-sheen: var(--skeleton-sheen, rgba(148, 163, 184, .24));--_skeleton-speed: var(--skeleton-speed, 1.4s);position:relative;overflow:hidden;background:var(--_skeleton-base);border-radius:8px;color:transparent;-webkit-user-select:none;user-select:none;pointer-events:none}.skeleton:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,var(--_skeleton-sheen),transparent);animation:skeleton-sheen var(--_skeleton-speed) linear infinite}@keyframes skeleton-sheen{to{transform:translate(100%)}}.skeleton-text{height:1em;border-radius:4px}.skeleton-text+.skeleton-text{margin-top:.6em}.skeleton-text:last-child:not(:only-child){width:60%}.skeleton-circle{border-radius:50%;aspect-ratio:1}@media(prefers-reduced-motion:reduce){.skeleton:after{animation:skeleton-pulse 2s ease-in-out infinite;transform:none;background:var(--_skeleton-sheen)}}@keyframes skeleton-pulse{0%,to{opacity:0}50%{opacity:1}}.skeleton-grid{display:flex;flex-direction:column;gap:1rem}.profile-card{display:flex;gap:1rem;align-items:flex-start;padding:1.25rem;border:1px solid var(--border);border-radius:12px;background:var(--surface);min-height:104px}.profile-avatar{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;color:var(--text-dim);background:var(--border);flex-shrink:0}.profile-body{flex:1;display:flex;flex-direction:column;gap:var(--space-1)}.profile-body strong{line-height:1.2}.profile-body p{margin:0;color:var(--text-dim);font-size:.9rem}.controls button{align-self:flex-start}.count-up{font-variant-numeric:tabular-nums}.countup-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem}.countup-card{display:flex;flex-direction:column;align-items:flex-start;gap:.75rem;padding:1.5rem;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.countup-card h2{margin:0;font-size:1rem;color:var(--text-dim)}.countup-amount{font-size:2rem;min-width:11ch;min-height:1.4em;display:inline-block}.countup-card p{margin:0;font-size:.85rem;color:var(--text-dim)}.countup-actions{display:flex;gap:.5rem}.like-btn{--_like-color: var(--like-color, #ff3040);--_like-pop-duration: var(--like-pop-duration, .4s);display:inline-flex;align-items:center;gap:.4rem;background:none;border:none;padding:.4rem;cursor:pointer;color:inherit;font:inherit}.like-heart{width:1.6em;height:1.6em;fill:none;stroke:currentColor;stroke-width:2;transition:stroke .15s ease}.like-btn[aria-pressed=true] .like-heart{fill:var(--_like-color);stroke:var(--_like-color);animation:like-pop var(--_like-pop-duration) cubic-bezier(.22,1,.36,1)}@keyframes like-pop{0%{transform:scale(.6)}55%{transform:scale(1.25)}to{transform:scale(1)}}.double-tap-area{position:relative;touch-action:manipulation;-webkit-user-select:none;user-select:none}.burst-heart{--_burst-size: var(--burst-size, 96px);position:absolute;width:var(--_burst-size);height:var(--_burst-size);margin-left:calc(var(--_burst-size) / -2);margin-top:calc(var(--_burst-size) / -2);fill:#fff;filter:drop-shadow(0 4px 16px rgba(0,0,0,.35));pointer-events:none;animation:burst-heart .9s cubic-bezier(.22,1,.36,1) forwards}@keyframes burst-heart{0%{opacity:0;transform:scale(.4)}12%{opacity:1;transform:scale(1.12)}25%{transform:scale(1)}70%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.05) translateY(-18px)}}@media(prefers-reduced-motion:reduce){.like-btn[aria-pressed=true] .like-heart{animation:none}.burst-heart{animation:burst-heart-fade .9s linear forwards}}@keyframes burst-heart-fade{0%{opacity:0}15%,70%{opacity:1}to{opacity:0}}.post-card{max-width:420px;border:1px solid var(--border);border-radius:12px;background:var(--surface);overflow:hidden}.post-header{display:flex;align-items:center;gap:var(--space-2);padding:.75rem 1rem}.post-avatar{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--border)}.post-image{aspect-ratio:1;cursor:pointer}.post-footer{display:flex;align-items:center;gap:.5rem;padding:var(--space-2) var(--space-3) var(--space-4)}.post-footer .like-btn{font-size:1.05rem}.post-caption{font-size:.85rem;color:var(--text-dim)}.tab-bar{position:relative;display:flex}.tab-indicator{--_height: var(--tab-indicator-height, 2px);position:absolute;left:0;bottom:0;width:1px;height:var(--_height);background:var(--tab-indicator-color, currentColor);transform-origin:left;transition:transform var(--tab-indicator-duration, .25s) cubic-bezier(.22,1,.36,1);pointer-events:none}@media(prefers-reduced-motion:reduce){.tab-indicator{transition:none}}.tab-demo{border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface);overflow:hidden}.demo-tab-bar{border-bottom:1px solid var(--border);color:var(--accent)}.demo-tab{background:none;border:none;border-radius:0;padding:var(--space-4);color:var(--text-dim);transition:color var(--motion-duration-instant) var(--motion-ease-out)}.demo-tab:hover{background:none;border:none;color:var(--text)}.demo-tab[aria-selected=true]{color:var(--text);font-weight:var(--weight-semibold)}.tab-panel{padding:var(--space-8) var(--space-6) var(--space-12);display:flex;flex-direction:column;gap:var(--space-2)}.tab-panel p{margin:0;color:var(--text-dim)}@media(prefers-reduced-motion:reduce){.demo-tab{transition:none}}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;opacity:0;pointer-events:none;transition:opacity var(--sheet-duration, .35s) ease;z-index:40}.sheet-backdrop[data-open=true]{opacity:1;pointer-events:auto}.bottom-sheet{--_duration: var(--sheet-duration, .35s);position:fixed;left:0;right:0;bottom:0;max-height:var(--sheet-max-height, 85dvh);overflow-y:auto;background:var(--sheet-bg, #fff);border-radius:var(--sheet-radius, 20px) var(--sheet-radius, 20px) 0 0;transform:translateY(100%);transition:transform var(--_duration) cubic-bezier(.32,.72,0,1);z-index:41;touch-action:none}.bottom-sheet[data-open=true]{transform:translateY(0)}.sheet-handle{width:40px;height:4px;border-radius:999px;background:#80808066;margin:10px auto 6px}@media(prefers-reduced-motion:reduce){.bottom-sheet{transform:none;opacity:0;visibility:hidden;transition:opacity .15s linear,visibility 0s .15s}.bottom-sheet[data-open=true]{transform:none;opacity:1;visibility:visible;transition:opacity .15s linear}}.sheet-demo-stage{min-height:200px;display:grid;place-content:center;gap:1rem;border:1px dashed var(--border);border-radius:12px;text-align:center}.sheet-demo-result{margin:0;color:var(--text-dim)}.demo-sheet{--sheet-bg: #1d2129;color:var(--text);padding-bottom:env(safe-area-inset-bottom,16px)}.sheet-menu{list-style:none;margin:0;padding:.5rem .75rem 1.25rem;display:flex;flex-direction:column}.sheet-menu button{width:100%;display:flex;align-items:center;gap:var(--space-4);background:none;border:none;padding:var(--space-3);border-radius:10px;text-align:left}.sheet-menu button:hover{background:var(--accent-soft);border:none}.sheet-menu-icon{color:var(--text-dim)}.sheet-menu strong{display:block}.sheet-menu small{color:var(--text-dim)}.sticky-header{--_duration: var(--header-duration, .25s);position:sticky;top:0;z-index:30;display:flex;align-items:center;background:var(--header-bg, rgba(15, 17, 21, .85));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.sticky-header-title{opacity:0;transform:translateY(6px);transition:opacity var(--_duration) cubic-bezier(.22,1,.36,1),transform var(--_duration) cubic-bezier(.22,1,.36,1)}.sticky-header[data-collapsed=true] .sticky-header-title{opacity:1;transform:translateY(0)}.sticky-header:after{content:"";position:absolute;inset:auto 0 -12px 0;height:12px;background:linear-gradient(rgba(0,0,0,.25),transparent);opacity:0;transition:opacity var(--_duration) ease;pointer-events:none}.sticky-header[data-collapsed=true]:after{opacity:1}@media(prefers-reduced-motion:reduce){.sticky-header-title{transform:none;transition:opacity var(--_duration) linear}}.header-demo-frame{height:420px;overflow-y:auto;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.header-demo-bar{height:52px;padding:0 1.25rem;font-weight:700;--header-bg: rgba(23, 26, 33, .88)}.header-demo-hero{padding:2.5rem 1.25rem 1.5rem}.header-demo-title{margin:0 0 var(--space-2);font-size:1.8rem}.header-demo-hero p{margin:0;color:var(--text-dim)}.header-demo-section{padding:1.25rem;border-top:1px solid var(--border)}.header-demo-section h3{margin:0 0 var(--space-2)}.header-demo-section p{margin:0;color:var(--text-dim)}.header-demo-frame:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.carousel-track{--_gap: var(--carousel-gap, 12px);position:relative;display:flex;gap:var(--_gap);overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}.carousel-track::-webkit-scrollbar{display:none}.carousel-slide{flex:none;width:var(--slide-width, 80%);scroll-snap-align:center}.carousel-dots{display:flex;justify-content:center;gap:8px;padding:12px 0}.carousel-dot{width:8px;height:8px;border-radius:50%;border:none;padding:0;background:#80808059;cursor:pointer;transition:background .15s ease,scale .15s ease}.carousel-dot[data-active=true]{background:currentColor;scale:1.25}@media(prefers-reduced-motion:reduce){.carousel-dot{transition:none}}.banner-slide{display:flex;flex-direction:column;border-radius:var(--radius-card);overflow:hidden;background:var(--surface)}.banner-photo{aspect-ratio:16 / 9;height:auto}.banner-text{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-3) var(--space-4) var(--space-4)}.banner-slide p{margin:0;color:var(--text-dim)}.carousel-dots{color:var(--accent)}.carousel-autoplay-toggle{display:inline-flex;align-items:center;gap:var(--space-2)}.carousel-track:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.carousel-dots{gap:0;padding:var(--space-1) 0}.carousel-dots .carousel-dot{box-sizing:content-box;border:8px solid transparent;background-clip:content-box}.story-bars{display:flex;gap:4px;width:100%}.story-bar{flex:1;height:var(--story-bar-height, 3px);border-radius:999px;background:#ffffff4d;overflow:hidden}.story-bar-fill{display:block;width:100%;height:100%;background:var(--story-bar-color, #fff);transform:scaleX(0);transform-origin:left}.story-viewer{position:relative;max-width:380px;aspect-ratio:9 / 14;border-radius:16px;overflow:hidden;background:#0b0c0f;padding:12px;-webkit-user-select:none;user-select:none;touch-action:manipulation}.story-scene{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;justify-content:center;gap:var(--space-4);pointer-events:none}.story-photo{height:auto;aspect-ratio:4 / 3}.story-text{display:flex;flex-direction:column;gap:var(--space-1);padding:0 var(--space-4)}.story-scene p{margin:0;color:var(--text-dim)}.story-paused{position:absolute;bottom:1.25rem;left:50%;translate:-50% 0;font-style:normal;font-size:.8rem;color:var(--text-dim);border:1px solid var(--border);border-radius:999px;padding:.25rem .75rem;background:#00000059}.story-nav{position:absolute;top:40px;height:calc(100% - 40px);width:50%;padding:0;background:none;border:none;border-radius:0;cursor:pointer}.story-nav:hover{background:none;border:none}.story-nav-prev{left:0}.story-nav-next{right:0}.flip-actions{display:flex;gap:.5rem;flex-wrap:wrap}.flip-menu{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.flip-row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4);border:1px solid var(--border);border-radius:12px;background:var(--surface)}.flip-thumb{flex:none;inline-size:40px;block-size:40px;border-radius:var(--radius-control)}.flip-meta{margin-left:auto;color:var(--text-dim);font-size:.85rem;font-variant-numeric:tabular-nums}.cart-bar{display:flex;justify-content:flex-end;position:sticky;top:.5rem;z-index:5}.cart-button{position:relative;display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4)}.cart-badge{position:absolute;top:-8px;right:-8px;min-width:22px;height:22px;padding:0 var(--space-1);border-radius:999px;background:var(--accent);color:#fff;font-size:.75rem;font-weight:700;display:grid;place-items:center;animation:cart-badge-bump .35s cubic-bezier(.22,1,.36,1)}@keyframes cart-badge-bump{0%{transform:scale(.6)}55%{transform:scale(1.3)}to{transform:scale(1)}}@media(prefers-reduced-motion:reduce){.cart-badge{animation:none}}.cart-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem}.cart-card{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2);padding:var(--space-4);border:1px solid var(--border);border-radius:12px;background:var(--surface)}.cart-thumb{width:100%;height:auto;aspect-ratio:4 / 3;border-radius:var(--radius-control)}.cart-price{color:var(--text-dim);font-size:.85rem}.ptr-container{position:relative;overflow-y:auto;overscroll-behavior:contain}.ptr-content{--_duration: var(--ptr-duration, .3s);transition:transform var(--_duration) cubic-bezier(.22,1,.36,1)}.ptr-indicator{position:absolute;top:10px;left:50%;width:var(--ptr-indicator-size, 28px);height:var(--ptr-indicator-size, 28px);margin-left:calc(var(--ptr-indicator-size, 28px) / -2);display:grid;place-items:center;font-size:1rem;opacity:var(--pull-progress, 0);transform:rotate(calc(var(--pull-progress, 0) * 270deg));pointer-events:none}.ptr-container[data-refreshing=true] .ptr-indicator{animation:ptr-spin .8s linear infinite}@keyframes ptr-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.ptr-content{transition-duration:.01ms}.ptr-container[data-refreshing=true] .ptr-indicator{animation-duration:2s}}.feed-frame{height:380px;border:1px solid var(--border);border-radius:12px;background:var(--surface);-webkit-user-select:none;user-select:none}.feed-list{list-style:none;margin:0;padding:0 var(--space-4);display:flex;flex-direction:column}.feed-item{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-4) 0;border-bottom:1px solid var(--border)}.feed-item span{color:var(--text-dim);font-size:.8rem}.feed-frame:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.pressable{transition:transform var(--press-release, .22s) cubic-bezier(.22,1,.36,1),filter var(--press-release, .22s) ease;will-change:transform}.pressable:active{transform:scale(var(--press-scale, .96));transition-duration:60ms}.pressable-dim:active{filter:brightness(.92)}@media(hover:hover)and (pointer:fine){.pressable-lift:hover{transform:translateY(-1px)}.pressable-lift:active{transform:scale(var(--press-scale, .96))}}@media(prefers-reduced-motion:reduce){.pressable:active{transform:none;filter:brightness(.92)}}.press-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.press-cell{display:flex;flex-direction:column;gap:1rem;align-items:flex-start}.press-cell h2{margin:0;font-size:.9rem;color:var(--text-dim)}.press-primary{padding:var(--space-3) var(--space-8);font-weight:700;background:var(--accent);color:#0b1220;border:none;border-radius:12px}.press-primary:hover{background:var(--accent);border:none}.press-card{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1);padding:var(--space-4) var(--space-6);border:1px solid var(--border);border-radius:14px;background:var(--surface);text-align:left}.press-card-photo{inline-size:160px;block-size:auto;aspect-ratio:4 / 3;margin-bottom:var(--space-1);border-radius:var(--radius-control)}.press-card small{color:var(--text-dim)}.toast-region{position:fixed;left:50%;bottom:24px;translate:-50%;z-index:80;pointer-events:none;display:grid}.toast-region[data-position=top]{top:24px;bottom:auto}.toast-item{--_duration: var(--toast-duration, .3s);grid-area:1 / 1;justify-self:center;padding:.7rem 1.3rem;border-radius:999px;background:var(--toast-bg, rgba(30, 32, 40, .95));color:var(--toast-color, #fff);font-size:.9rem;white-space:nowrap;box-shadow:0 6px 24px #00000040;transition:transform var(--_duration) cubic-bezier(.22,1,.36,1),opacity var(--_duration) ease,scale var(--_duration) cubic-bezier(.22,1,.36,1),translate var(--_duration) cubic-bezier(.22,1,.36,1)}.toast-item[data-state=entering],.toast-item[data-state=exiting]{opacity:0;scale:.9}.toast-region[data-position=top] .toast-item[data-state=entering],.toast-region[data-position=top] .toast-item[data-state=exiting]{translate:0 -12px}@media(prefers-reduced-motion:reduce){.toast-item{transition:opacity var(--_duration) linear;scale:none;translate:none}}.toast-demo-stage{min-height:180px;display:flex;gap:.75rem;align-items:center;justify-content:center;border:1px dashed var(--border);border-radius:12px}.toast-position-picker{display:flex;gap:var(--space-3)}.zoom-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--zoom-backdrop, rgba(0, 0, 0, .8));opacity:0;transition:opacity .3s ease;z-index:90;cursor:zoom-out}.zoom-backdrop[data-open=true]{opacity:1}.zoom-ghost{cursor:zoom-out;pointer-events:none}.zoomable{cursor:zoom-in}@media(prefers-reduced-motion:reduce){.zoom-ghost{transition-duration:.01ms!important}}.zoom-gallery{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:var(--space-6) var(--space-4)}.zoom-item{display:flex;flex-direction:column;gap:var(--space-2)}.zoom-card,.zoom-card:hover{display:block;align-self:stretch;aspect-ratio:1;padding:0;border:none;border-radius:var(--radius-card);background:var(--color-canvas);overflow:hidden}.zoom-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.zoom-name{font-size:var(--text-small);font-weight:var(--weight-semibold)}.hamburger{--_bar-width: var(--hamburger-bar-width, 22px);--_bar-height: var(--hamburger-bar-height, 2px);--_gap: var(--hamburger-gap, 7px);--_duration: var(--hamburger-duration, .3s);position:relative;width:44px;height:44px;border:none;background:none;cursor:pointer;padding:0}.hamburger-bar{position:absolute;top:50%;left:50%;width:var(--_bar-width);height:var(--_bar-height);margin:calc(var(--_bar-height) / -2) 0 0 calc(var(--_bar-width) / -2);border-radius:999px;background:var(--hamburger-color, currentColor);transition:transform var(--_duration) cubic-bezier(.22,1,.36,1),opacity var(--_duration) ease}.hamburger-bar:nth-child(1){transform:translateY(calc(-1 * var(--_gap)))}.hamburger-bar:nth-child(3){transform:translateY(var(--_gap))}.hamburger[aria-expanded=true] .hamburger-bar:nth-child(1){transform:rotate(45deg)}.hamburger[aria-expanded=true] .hamburger-bar:nth-child(2){opacity:0;transform:scaleX(.4)}.hamburger[aria-expanded=true] .hamburger-bar:nth-child(3){transform:rotate(-45deg)}.drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;opacity:0;pointer-events:none;transition:opacity var(--drawer-duration, .3s) ease;z-index:40}.drawer-backdrop[data-open=true]{opacity:1;pointer-events:auto}.drawer{--_duration: var(--drawer-duration, .3s);position:fixed;top:0;bottom:0;left:0;width:var(--drawer-width, min(300px, 80vw));background:var(--drawer-bg, #fff);overflow-y:auto;transform:translate(-100%);visibility:hidden;transition:transform var(--_duration) cubic-bezier(.32,.72,0,1),visibility 0s var(--_duration);z-index:41}.drawer[data-side=right]{left:auto;right:0;transform:translate(100%)}.drawer[data-open=true]{transform:translate(0);visibility:visible;transition:transform var(--_duration) cubic-bezier(.32,.72,0,1)}@media(prefers-reduced-motion:reduce){.hamburger-bar{transition:none}.drawer{transform:none;opacity:0;visibility:hidden;transition:opacity .15s linear,visibility 0s .15s}.drawer[data-open=true]{opacity:1;visibility:visible;transition:opacity .15s linear}}.drawer-stage{border:1px solid var(--border);border-radius:12px;background:var(--surface);overflow:hidden}.drawer-stage-header{display:flex;align-items:center;gap:.5rem;padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border)}.drawer-stage-header .hamburger,.drawer-stage-header .hamburger:hover{background:none;border:none;align-self:center}.drawer-stage-body{margin:0;padding:var(--space-6) var(--space-4) var(--space-8);color:var(--text-dim)}.demo-drawer{--drawer-bg: var(--surface);border-right:1px solid var(--border)}.demo-drawer[data-side=right]{border-right:none;border-left:1px solid var(--border)}.drawer-nav{display:flex;flex-direction:column;padding:1.25rem .75rem;gap:2px}.drawer-nav-title{padding:var(--space-2) var(--space-3) var(--space-4);font-size:1.05rem}.drawer-nav a{color:var(--text);text-decoration:none;padding:var(--space-3);border-radius:8px}.drawer-nav a:hover{background:var(--accent-soft);color:var(--accent)}.tooltip-anchor{position:relative;display:inline-flex}.tooltip{--_bg: var(--tooltip-bg, #2b3440);--_offset: var(--tooltip-offset, 10px);--_duration: var(--tooltip-duration, .15s);--_slide: 4px;position:absolute;z-index:30;padding:6px 10px;border-radius:8px;background:var(--_bg);color:var(--tooltip-color, #fff);font-size:13px;line-height:1.45;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;transition:opacity var(--_duration) cubic-bezier(.23,1,.32,1),transform var(--_duration) cubic-bezier(.23,1,.32,1),visibility 0s var(--_duration)}.tooltip[data-open=true]{opacity:1;visibility:visible;transition:opacity var(--_duration) cubic-bezier(.23,1,.32,1),transform var(--_duration) cubic-bezier(.23,1,.32,1),visibility 0s}.tooltip:before{content:"";position:absolute;width:8px;height:8px;background:var(--_bg);transform:rotate(45deg)}.tooltip[data-place=top]{bottom:calc(100% + var(--_offset));left:50%;transform:translate(-50%,var(--_slide))}.tooltip[data-place=top]:before{top:calc(100% - 4px);left:calc(50% - 4px)}.tooltip[data-place=top][data-open=true]{transform:translate(-50%)}.tooltip[data-place=bottom]{top:calc(100% + var(--_offset));left:50%;transform:translate(-50%,calc(-1 * var(--_slide)))}.tooltip[data-place=bottom]:before{bottom:calc(100% - 4px);left:calc(50% - 4px)}.tooltip[data-place=bottom][data-open=true]{transform:translate(-50%)}.tooltip[data-place=left]{right:calc(100% + var(--_offset));top:50%;transform:translate(var(--_slide),-50%)}.tooltip[data-place=left]:before{left:calc(100% - 4px);top:calc(50% - 4px)}.tooltip[data-place=left][data-open=true]{transform:translateY(-50%)}.tooltip[data-place=right]{left:calc(100% + var(--_offset));top:50%;transform:translate(calc(-1 * var(--_slide)),-50%)}.tooltip[data-place=right]:before{right:calc(100% - 4px);top:calc(50% - 4px)}.tooltip[data-place=right][data-open=true]{transform:translateY(-50%)}@media(prefers-reduced-motion:reduce){.tooltip{--_slide: 0px}}.tooltip-stage{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-6);padding:80px var(--space-8);border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface);overflow-x:clip}.tooltip-stage .tooltip-anchor button{align-self:auto}.select{--_duration: var(--select-duration, .2s);--_bg: var(--select-bg, #fff);--_border: var(--select-border, #d4d9e1);position:relative;display:inline-block;min-width:var(--select-min-width, 200px)}.select-trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:10px 12px;border:1px solid var(--_border);border-radius:10px;background:var(--_bg);font:inherit;text-align:left;cursor:pointer}.select-placeholder{color:#8a93a1}.select-chevron{flex:none;transition:transform var(--_duration) cubic-bezier(.22,1,.36,1)}.select-trigger[aria-expanded=true] .select-chevron{transform:rotate(180deg)}.select-panel{position:absolute;top:calc(100% + 6px);left:0;right:0;margin:0;padding:6px;list-style:none;background:var(--_bg);border:1px solid var(--_border);border-radius:12px;box-shadow:0 12px 32px #0f172a24;max-height:var(--select-panel-max-height, 240px);overflow-y:auto;z-index:30;transform-origin:top;opacity:0;visibility:hidden;transform:translateY(-6px) scale(.98);transition:opacity var(--_duration) ease,transform var(--_duration) cubic-bezier(.22,1,.36,1),visibility 0s var(--_duration)}.select-panel[data-open=true]{opacity:1;visibility:visible;transform:none;transition:opacity var(--_duration) ease,transform var(--_duration) cubic-bezier(.22,1,.36,1),visibility 0s}.select-option{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 10px;border-radius:8px;cursor:pointer}.select-option[data-highlighted=true]{background:var(--select-highlight, #f1f5f9)}.select-option[aria-selected=true]{color:var(--select-accent, #1b1e24);font-weight:600}.select-option[aria-selected=true]:after{content:"✓"}@media(prefers-reduced-motion:reduce){.select-chevron{transition:none}.select-panel{transform:none;transition:opacity var(--_duration) linear,visibility 0s var(--_duration)}.select-panel[data-open=true]{transition:opacity var(--_duration) linear}}.select-stage{--select-bg: var(--surface);--select-border: var(--border);--select-highlight: var(--accent-soft);--select-accent: var(--accent);display:flex;flex-wrap:wrap;align-items:flex-start;gap:1.5rem;padding:2rem 1.5rem 14rem;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.select-field{display:flex;flex-direction:column;gap:var(--space-2)}.select-field-label{font-size:.85rem;color:var(--text-dim)}.select-result{flex-basis:100%;margin:0;color:var(--text-dim)}.select-stage .select-placeholder{color:var(--text-dim)}.accordion{--_duration: var(--accordion-duration, .3s);--_border: var(--accordion-border, #e2e8f0)}.accordion-item{border-bottom:1px solid var(--_border)}.accordion-header{margin:0;font-size:inherit;font-weight:inherit}.accordion-trigger{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:14px 4px;border:none;background:none;font:inherit;font-weight:600;text-align:left;cursor:pointer}.accordion-chevron{flex:none;transition:transform var(--_duration) cubic-bezier(.22,1,.36,1)}.accordion-trigger[aria-expanded=true] .accordion-chevron{transform:rotate(180deg)}.accordion-panel{display:grid;grid-template-rows:0fr;visibility:hidden;transition:grid-template-rows var(--_duration) cubic-bezier(.22,1,.36,1),visibility 0s var(--_duration)}.accordion-panel[data-open=true]{grid-template-rows:1fr;visibility:visible;transition:grid-template-rows var(--_duration) cubic-bezier(.22,1,.36,1),visibility 0s}.accordion-panel-inner{overflow:hidden;min-height:0}.accordion-panel-content{padding:0 4px 16px}@media(prefers-reduced-motion:reduce){.accordion-chevron,.accordion-panel{transition:none}}.accordion-stage{border:1px solid var(--border);border-radius:12px;background:var(--surface);padding:1.5rem;--accordion-border: var(--border)}.accordion-stage-title{margin:0 0 .5rem;font-size:1.05rem}.accordion-stage .accordion-trigger,.accordion-stage .accordion-trigger:hover{background:none;border:none;border-radius:0;align-self:stretch}.accordion-stage .accordion-trigger:hover{color:var(--accent)}.accordion-stage .accordion-panel-content{color:var(--text-dim)}.switch{--_w: var(--switch-width, 44px);--_h: var(--switch-height, 26px);--_pad: 3px;--_duration: var(--switch-duration, .2s);display:inline-flex;align-items:center;gap:10px;cursor:pointer;-webkit-tap-highlight-color:transparent}.switch-input{position:absolute;width:1px;height:1px;margin:-1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap}.switch-track{position:relative;flex:none;width:var(--_w);height:var(--_h);border-radius:999px;background:var(--switch-off-bg, #868b94);transition:background var(--_duration) ease}.switch-thumb{position:absolute;top:var(--_pad);left:var(--_pad);width:calc(var(--_h) - var(--_pad) * 2);height:calc(var(--_h) - var(--_pad) * 2);border-radius:999px;background:#fff;box-shadow:0 1px 3px #0f172a59;transition:transform var(--_duration) cubic-bezier(.22,1,.36,1)}.switch-input:checked+.switch-track{background:var(--switch-on-bg, #1b1e24)}.switch-input:checked+.switch-track .switch-thumb{transform:translate(calc(var(--_w) - var(--_h)))}.switch:active .switch-input:not(:disabled)+.switch-track .switch-thumb{transform:scaleX(1.12)}.switch:active .switch-input:checked:not(:disabled)+.switch-track .switch-thumb{transform:translate(calc(var(--_w) - var(--_h))) scaleX(1.12)}.switch-input:focus-visible+.switch-track{outline:2px solid var(--switch-on-bg, #1b1e24);outline-offset:2px}.switch:has(.switch-input:disabled){opacity:.5;cursor:not-allowed}@media(prefers-reduced-motion:reduce){.switch-thumb{transition:none}}.switch-stage{display:flex;flex-direction:column;gap:1rem;padding:1.5rem;border:1px solid var(--border);border-radius:12px;background:var(--surface);--switch-off-bg: #3a4150}.switch-stage-title{margin:0;font-size:1.05rem}.switch-result{margin:.5rem 0 0;color:var(--text-dim)}.field{--_duration: var(--field-duration, .15s);--_border: var(--field-border, #d4d9e1);--_accent: var(--field-accent, #1b1e24);position:relative;display:flex;flex-direction:column}.field-input{padding:22px 13px 8px;border:1px solid var(--_border);border-radius:10px;background:none;font:inherit;color:inherit}.field-input:focus{outline:none;border-color:var(--_accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--_accent) 20%,transparent)}.field-label{position:absolute;top:15px;left:14px;color:var(--field-label-color, #8a93a1);pointer-events:none;transform-origin:left top;transition:transform var(--_duration) cubic-bezier(.23,1,.32,1),color var(--_duration) ease}.field-input:focus+.field-label,.field-input:not(:placeholder-shown)+.field-label{transform:translateY(-10px) scale(.76)}.field-input:focus+.field-label{color:var(--_accent)}@media(prefers-reduced-motion:reduce){.field-label{transition:color var(--_duration) ease}}.field-stage{display:flex;flex-direction:column;gap:var(--space-4);max-width:420px;padding:1.5rem;border:1px solid var(--border);border-radius:12px;background:var(--surface);--field-border: var(--border);--field-accent: var(--accent);--field-label-color: var(--text-dim)}.field-stage-title{margin:0 0 .25rem;font-size:1.05rem}.field-stage .field-input{color:var(--text)}.modal{--_duration: var(--modal-duration, .24s);--_ease-out: cubic-bezier(.22, 1, .36, 1);width:var(--modal-width, min(420px, calc(100vw - 32px) ));max-height:min(80vh,640px);padding:0;border:none;border-radius:var(--modal-radius, 16px);background:var(--modal-bg, #fff);color:inherit;box-shadow:0 24px 64px #0f172a59;overflow:hidden}.modal[open]{animation:modal-in var(--_duration) var(--_ease-out)}.modal[open]::backdrop{background:var(--modal-backdrop, rgba(15, 23, 42, .55));animation:modal-backdrop-in var(--_duration) ease}.modal[data-closing]{animation:modal-out calc(var(--_duration) * .75) var(--_ease-out) forwards}.modal[data-closing]::backdrop{animation:modal-backdrop-out calc(var(--_duration) * .75) ease forwards}.modal-body{padding:24px;overflow-y:auto;max-height:inherit}@keyframes modal-in{0%{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:none}}@keyframes modal-out{to{opacity:0;transform:translateY(8px) scale(.98)}}@keyframes modal-backdrop-in{0%{opacity:0}}@keyframes modal-backdrop-out{to{opacity:0}}@media(prefers-reduced-motion:reduce){.modal[open],.modal[data-closing]{animation-name:modal-fade-in;animation-duration:.1s}.modal[data-closing]{animation-name:modal-fade-out}.modal[open]::backdrop,.modal[data-closing]::backdrop{animation-duration:.1s}}@keyframes modal-fade-in{0%{opacity:0}}@keyframes modal-fade-out{to{opacity:0}}.modal-stage{display:flex;flex-direction:column;gap:1rem;padding:1.5rem;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.modal-stage-title{margin:0;font-size:1.05rem}.modal-stage-actions{display:flex;gap:.5rem}.modal-stage-log{margin:0;color:var(--text-dim)}.modal-demo-title{margin:0 0 .5rem;font-size:1.15rem}.modal-demo-text{margin:0 0 1.25rem;color:var(--text-dim)}.modal-demo-actions{display:flex;justify-content:flex-end;gap:.5rem}.modal-demo-danger{border-color:#dc2626;color:#fca5a5}.modal-demo-primary{border-color:var(--accent);background:var(--accent-soft)}.check{--_size: var(--check-size, 22px);--_duration: var(--check-duration, .2s);--_accent: var(--check-accent, #1b1e24);--_border: var(--check-border, #868b94);--_ease-out: cubic-bezier(.22, 1, .36, 1);position:relative;display:inline-flex;align-items:center;gap:10px;cursor:pointer;-webkit-tap-highlight-color:transparent}.check-input{position:absolute;width:1px;height:1px;margin:-1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap}.check-box{flex:none;display:grid;place-items:center;width:var(--_size);height:var(--_size);border:2px solid var(--_border);border-radius:6px;background:transparent;transition:background var(--_duration) ease,border-color var(--_duration) ease,transform var(--_duration) var(--_ease-out)}.check[data-kind=radio] .check-box{border-radius:50%}.check-mark{width:70%;height:70%;fill:none;stroke:#fff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:24;stroke-dashoffset:24;transition:stroke-dashoffset var(--_duration) var(--_ease-out)}.check-dot{width:50%;height:50%;border-radius:50%;background:#fff;transform:scale(0);transition:transform var(--_duration) cubic-bezier(.34,1.56,.64,1)}.check-input:checked+.check-box{background:var(--_accent);border-color:var(--_accent)}.check-input:checked+.check-box .check-mark{stroke-dashoffset:0;transition-delay:calc(var(--_duration) * .3)}.check-input:checked+.check-box .check-dot{transform:scale(1)}.check-input:not(:checked)+.check-box .check-mark{transition-duration:calc(var(--_duration) * .5)}.check:active .check-input:not(:disabled)+.check-box{transform:scale(.9)}.check-input:focus-visible+.check-box{outline:2px solid var(--_accent);outline-offset:2px}.check:has(.check-input:disabled){opacity:.5;cursor:not-allowed}@media(prefers-reduced-motion:reduce){.check-box,.check-mark,.check-dot{transition:none}}.check-stage{display:flex;flex-direction:column;gap:var(--space-6);padding:var(--space-6);border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface);--check-border: #4b5563}.check-group{display:flex;flex-direction:column;gap:var(--space-3);min-width:0;margin:0;padding:0;border:0}.check-group legend{padding:0;margin-bottom:var(--space-3);color:var(--text-dim);font-size:var(--text-small)}.check-result{margin:0;color:var(--text-dim)}[data-shake]{animation:field-shake var(--shake-duration, .4s) cubic-bezier(.36,.07,.19,.97) both}@keyframes field-shake{10%,90%{transform:translate(calc(var(--shake-distance, 6px) * -.5))}20%,80%{transform:translate(var(--shake-distance, 6px))}30%,50%,70%{transform:translate(calc(var(--shake-distance, 6px) * -1.3))}40%,60%{transform:translate(calc(var(--shake-distance, 6px) * 1.3))}}[aria-invalid=true]{border-color:var(--error-color, #dc2626)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--error-color, #dc2626) 20%,transparent)!important}.field-error{--_duration: var(--error-duration, .2s);display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--_duration) cubic-bezier(.22,1,.36,1)}.field-error[data-visible=true]{grid-template-rows:1fr}.field-error-inner{overflow:hidden;min-height:0}.field-error-text{display:block;padding-top:6px;font-size:.875rem;color:var(--error-color, #dc2626);opacity:0;transform:translateY(-4px);transition:opacity var(--_duration) ease,transform var(--_duration) cubic-bezier(.22,1,.36,1)}.field-error[data-visible=true] .field-error-text{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){[data-shake]{animation:none}.field-error,.field-error-text{transition:none}}.shake-stage{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-6);border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface);--error-color: #f87171}.shake-stage-title{margin:0;font-size:var(--text-body)}.shake-field{display:flex;flex-direction:column;gap:var(--space-1)}.shake-field label{font-size:var(--text-small);color:var(--text-dim)}.shake-field input{min-height:var(--control-height);padding:0 var(--space-3);border:1px solid var(--border);border-radius:var(--radius-control);background:var(--bg);color:var(--text);font:inherit;transition:border-color var(--motion-duration-instant) var(--motion-ease-out),box-shadow var(--motion-duration-instant) var(--motion-ease-out)}.shake-field input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.shake-log{margin:0;color:var(--text-dim)}@media(prefers-reduced-motion:reduce){.shake-field input{transition:none}}.swipe-item{--_action-w: var(--swipe-action-width, 88px);--_duration: var(--swipe-duration, .26s);--_ease-out: cubic-bezier(.22, 1, .36, 1);--_tone-danger: var(--swipe-action-bg, #dc2626);--_tone-accent: var(--swipe-action-accent-bg, #1b1e24);--_tone-default: var(--swipe-action-default-bg, #6b7280);position:relative;overflow:hidden;display:grid;grid-template-rows:1fr;transition:grid-template-rows var(--_duration) var(--_ease-out),opacity var(--_duration) ease}.swipe-content{position:relative;min-height:0;background:var(--swipe-bg, #fff);touch-action:pan-y;user-select:none;-webkit-user-select:none;transition:transform var(--_duration) var(--_ease-out)}.swipe-actions{position:absolute;top:0;bottom:0;left:100%;display:flex;width:100%;background:var(--_tone-danger)}.swipe-actions[data-tone=accent]{background:var(--_tone-accent)}.swipe-actions[data-tone=default]{background:var(--_tone-default)}.swipe-action{--_bg: var(--_tone-default);flex:0 0 var(--_action-w);width:var(--_action-w);border:none;border-radius:0;padding:0;background:var(--_bg);color:#fff;font:inherit;font-weight:600;cursor:pointer;transition:flex-grow var(--_duration) var(--_ease-out)}.swipe-action[data-tone=danger]{--_bg: var(--_tone-danger)}.swipe-action[data-tone=accent]{--_bg: var(--_tone-accent)}.swipe-item[data-state=deleting] .swipe-action:last-child{flex-grow:1}.swipe-action:focus-visible{outline:2px solid #fff;outline-offset:-4px}.swipe-item[data-state=deleting]{grid-template-rows:0fr;opacity:0}@media(prefers-reduced-motion:reduce){.swipe-item,.swipe-content,.swipe-action{transition:none}}.swipe-stage{display:flex;flex-direction:column;gap:1rem;padding:1.5rem;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.swipe-stage-title{margin:0;font-size:1.05rem}.swipe-list{list-style:none;margin:0;padding:0;border-block:1px solid var(--border)}.swipe-list li+li{border-top:1px solid var(--border)}.swipe-stage .swipe-action,.swipe-stage .swipe-action:hover{align-self:stretch;border:none;border-radius:0;background:var(--_bg)}.swipe-stage .swipe-action:hover{filter:brightness(1.08)}.swipe-stage-title small{margin-left:.5rem;font-weight:400;color:var(--text-dim)}.order-row{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-3) var(--space-4)}.order-row-title{display:flex;justify-content:space-between;gap:1rem}.order-row-meta{font-size:.85rem;color:var(--text-dim)}.order-row-badge{margin-left:var(--space-2);padding:1px var(--space-2);border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:.75rem}.cart-row{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4)}.cart-row-price{color:var(--text-dim)}.swipe-empty{margin:0;color:var(--text-dim);text-align:center}.swipe-footer{display:flex;justify-content:space-between;align-items:center;gap:1rem;color:var(--text-dim)}.pinch{--_duration: var(--pinch-duration, .3s);position:relative;touch-action:pan-y}.pinch[data-zooming]{z-index:var(--pinch-z, 50)}.pinch-target{display:block;transition:transform var(--_duration) cubic-bezier(.22,1,.36,1)}.pinch-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000;opacity:0;pointer-events:none;z-index:-1;transition:opacity var(--_duration) ease}.pinch[data-zooming] .pinch-backdrop{opacity:calc(var(--pinch-progress, 0) * var(--pinch-dim, .8))}.pinch[data-zooming=active] .pinch-backdrop{transition:none}.pinch[data-zooming] .pinch-target{will-change:transform}@media(prefers-reduced-motion:reduce){.pinch-target,.pinch-backdrop{transition:none}}.pinch-feed{display:flex;flex-direction:column;gap:1.5rem;max-width:420px}.pinch-post{display:flex;flex-direction:column;gap:.75rem;padding:var(--space-4) 0;border-top:1px solid var(--border)}.pinch-post-header{display:flex;align-items:center;gap:var(--space-2)}.pinch-post-avatar{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--border)}.pinch-photo{height:auto;aspect-ratio:4 / 5;border-radius:var(--radius-card);user-select:none;-webkit-user-select:none}.pinch-post-caption{margin:0;color:var(--text-dim)}.pinch-status{margin:1rem 0 0;color:var(--text-dim)}.spring-stage{display:flex;flex-direction:column;gap:1rem;padding:1.5rem;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.spring-track{position:relative;height:64px;border-radius:999px;background:var(--bg)}.spring-track:before{content:"";position:absolute;left:32px;top:50%;width:2px;height:24px;transform:translate(-50%,-50%);background:var(--border)}.spring-ball{position:absolute;top:8px;left:8px;display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--accent);color:var(--bg);cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none;will-change:transform}.spring-ball:active{cursor:grabbing}.spring-ball:focus-visible{outline:2px solid #fff;outline-offset:2px}.spring-ball-ghost{background:#475569;color:var(--text);cursor:default}.spring-presets{display:flex;gap:.5rem;flex-wrap:wrap}.spring-linear{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.spring-pop{display:inline-flex;align-items:center;gap:var(--space-2);transform:scale(1)}.spring-pop[data-popped=true] svg{color:var(--accent)}.spring-pop[data-popped=true]{transform:scale(1.15)}.spring-linear-code{font-size:.75rem;color:var(--text-dim);word-break:break-all}.viewer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--viewer-z, 100);display:grid;place-items:center;touch-action:none;overscroll-behavior:contain;-webkit-user-select:none;user-select:none}.viewer-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--viewer-bg, #000);opacity:calc(1 - var(--dismiss-progress, 0));pointer-events:none}.viewer-image{position:relative;max-width:100vw;max-height:100dvh;object-fit:contain;transform-origin:center;will-change:transform;-webkit-user-drag:none}.viewer-chrome{position:absolute;opacity:calc(1 - var(--dismiss-progress, 0) * 3.3);transition:opacity .12s linear}.viewer-close{top:max(12px,env(safe-area-inset-top));right:12px;width:44px;height:44px;border:none;border-radius:50%;background:#ffffff26;color:#fff;font-size:1.25rem;cursor:pointer}@media(prefers-reduced-motion:reduce){.viewer-chrome{transition:none}}.dismiss-stage{display:flex;flex-direction:column;gap:1rem;padding:1.5rem;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.dismiss-stage-title{margin:0;font-size:1.05rem}.dismiss-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-1)}.dismiss-thumb,.dismiss-thumb:hover{padding:0;border:none;border-radius:8px;background:none;overflow:hidden;aspect-ratio:1;align-self:stretch}.dismiss-thumb img{display:block;width:100%;height:100%;object-fit:cover}.dismiss-thumb:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.dismiss-log{margin:0;color:var(--text-dim)}.viewer-image{width:min(90vw,80dvh)}.loading-button{--_duration: var(--loading-button-duration, .2s);--_leave: calc(var(--_duration) * .45);--_press: .14s;--_ease-out: cubic-bezier(.22, 1, .36, 1);display:inline-grid;place-items:center;border:none;border-radius:10px;padding:.75rem 1.4rem;background:var(--loading-button-bg, #1b1e24);color:#fff;font:inherit;font-weight:600;line-height:1.2;cursor:pointer;transition:background var(--_duration) ease,transform var(--_press) var(--_ease-out)}.loading-button:active{transform:scale(.97)}.loading-button[data-status=success]{background:var(--loading-button-success, #13795b)}.loading-button[data-status=error]{background:var(--loading-button-error, #c8341f);animation:loading-button-shake .42s cubic-bezier(.36,.07,.19,.97)}.loading-button[aria-disabled=true]{cursor:progress}.loading-button:focus-visible{outline:2px solid currentColor;outline-offset:3px}.loading-button-layer{grid-area:1 / 1;display:flex;align-items:center;gap:.45rem;opacity:0;transform:translateY(6px);pointer-events:none;transition:opacity var(--_leave) ease,transform var(--_leave) var(--_ease-out)}.loading-button[data-status=idle] .loading-button-layer[data-layer=idle],.loading-button[data-status=loading] .loading-button-layer[data-layer=loading],.loading-button[data-status=success] .loading-button-layer[data-layer=success],.loading-button[data-status=error] .loading-button-layer[data-layer=error]{opacity:1;transform:none;transition-duration:var(--_duration);transition-delay:var(--_leave)}.loading-button-spinner{width:1em;height:1em;border:2px solid rgb(255 255 255 / .35);border-top-color:#fff;border-radius:50%;animation:loading-button-spin .7s linear infinite}.loading-button-check path{stroke-dasharray:24;stroke-dashoffset:24}.loading-button[data-status=success] .loading-button-check path{animation:loading-button-draw .32s var(--_ease-out) 60ms forwards}.loading-button-live{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@keyframes loading-button-spin{to{transform:rotate(1turn)}}@keyframes loading-button-draw{to{stroke-dashoffset:0}}@keyframes loading-button-shake{10%,90%{transform:translate(-2px)}20%,80%{transform:translate(4px)}30%,50%,70%{transform:translate(-6px)}40%,60%{transform:translate(6px)}}@media(prefers-reduced-motion:reduce){.loading-button,.loading-button-layer{transition:none}.loading-button[data-status=error]{animation:none}.loading-button[data-status=success] .loading-button-check path{animation:none;stroke-dashoffset:0}.loading-button-spinner{animation-duration:1.4s}}.lb-stage{display:flex;flex-direction:column;align-items:flex-start;gap:.75rem;padding:1.75rem;border:1px solid var(--border);border-radius:12px;background:var(--surface);--loading-button-bg: #2563eb}.lb-stage-title{margin:0;font-size:1.1rem}.lb-stage-price{margin:0;color:var(--text-dim)}.lb-actions{position:relative;margin:.5rem 0}.lb-stage .loading-button[data-status=idle]:hover,.lb-stage .loading-button[data-status=loading]:hover{background:var(--loading-button-bg)}.lb-counters{display:flex;gap:2rem;margin:0;color:var(--text-dim)}.lb-counters div{display:flex;gap:.5rem}.lb-counters dt,.lb-counters dd{margin:0}.lb-counter-strong{color:var(--text);font-weight:600}.lb-reset{font-size:.9rem}.infinite-sentinel{height:1px;margin:0}.infinite-footer{display:flex;flex-direction:column;align-items:center;gap:.6rem;padding:var(--infinite-scroll-gap, 1.25rem) 0;color:var(--infinite-scroll-dim, #6b7280);font-size:.9rem;text-align:center}.infinite-spinner{width:1.5rem;height:1.5rem;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;opacity:.6;animation:infinite-spin .7s linear infinite}.infinite-item-new{animation:infinite-item-in .26s cubic-bezier(.22,1,.36,1) both;animation-delay:calc(var(--infinite-item-order, 0) * 40ms)}@keyframes infinite-spin{to{transform:rotate(1turn)}}@keyframes infinite-item-in{0%{opacity:0;transform:translateY(8px)}}@media(prefers-reduced-motion:reduce){.infinite-item-new{animation:none}.infinite-spinner{animation-duration:1.4s}}.is-stage{display:flex;flex-direction:column;gap:var(--space-4);padding:1.5rem;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.is-stage-head{display:flex;justify-content:space-between;align-items:baseline;gap:1rem}.is-stage-title{margin:0;font-size:1.05rem}.is-stage-count{color:var(--text-dim);font-size:.85rem;font-variant-numeric:tabular-nums}.is-box{height:420px;overflow-y:auto;border-block:1px solid var(--border)}.is-list{list-style:none;margin:0;padding:0}.is-review{padding:var(--space-4) 0;border-bottom:1px solid var(--border)}.is-review-head{display:flex;justify-content:space-between;align-items:center;gap:1rem}.is-stars{color:#f5c518;letter-spacing:1px}.is-stars-off{color:var(--border)}.is-review-text{margin:var(--space-1) 0 0;color:var(--text-dim);font-size:.9rem}.is-reset{align-self:flex-start;font-size:.9rem}.is-box:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.reorder-list{--_duration: var(--reorder-duration, .2s);--_ease-out: cubic-bezier(.22, 1, .36, 1);list-style:none;margin:0;padding:0}.reorder-list[data-reordering=true]{user-select:none;-webkit-user-select:none;cursor:grabbing}.reorder-item{transition:transform var(--_duration) var(--_ease-out)}.reorder-item[data-dragging=true]{position:relative;z-index:2;transition:none;box-shadow:var(--reorder-lift-shadow, 0 12px 28px rgb(0 0 0 / .28))}[data-reorder-handle]{touch-action:none;display:inline-flex;align-items:center;justify-content:center;border:none;background:none;padding:.25rem .4rem;color:var(--reorder-handle-color, #9aa1af);font:inherit;line-height:1;cursor:grab}[data-reorder-handle]:active{cursor:grabbing}[data-reorder-handle]:focus-visible{outline:2px solid currentColor;outline-offset:2px;border-radius:6px}.reorder-announcement{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(prefers-reduced-motion:reduce){.reorder-item{transition:none}}.dr-stage{display:flex;flex-direction:column;gap:.75rem;padding:1.5rem;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.dr-stage-title{margin:0;font-size:1.05rem}.dr-stage-hint{margin:0;color:var(--text-dim);font-size:.85rem}.dr-list{display:flex;flex-direction:column;gap:0;margin:var(--space-2) 0;border-top:1px solid var(--border)}.dr-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--border);background:var(--surface)}.dr-stage .dr-handle,.dr-stage .dr-handle:hover{align-self:center;border:none;border-radius:6px;background:transparent;font-size:1.1rem}.dr-rank{width:1.5rem;color:var(--text-dim);font-variant-numeric:tabular-nums;text-align:center}.dr-thumb{flex:none;inline-size:40px;block-size:40px;border-radius:var(--radius-control)}.dr-name{flex:1}.dr-price{color:var(--text-dim);font-variant-numeric:tabular-nums}.dr-footer{display:flex;justify-content:space-between;align-items:center;gap:1rem;color:var(--text-dim);font-size:.9rem}:root{view-transition-name:none}[data-page-view]{view-transition-name:page}::view-transition-old(page),::view-transition-new(page){animation-duration:var(--page-transition-duration, .28s);animation-timing-function:cubic-bezier(.22,1,.36,1);animation-fill-mode:both;mix-blend-mode:normal}:root[data-nav-direction=forward]::view-transition-new(page){animation-name:page-in-from-right;z-index:2}:root[data-nav-direction=forward]::view-transition-old(page){animation-name:page-out-to-left}:root[data-nav-direction=back]::view-transition-new(page){animation-name:page-in-from-left}:root[data-nav-direction=back]::view-transition-old(page){animation-name:page-out-to-right;z-index:2}@keyframes page-in-from-right{0%{transform:translate(100%)}}@keyframes page-out-to-left{to{transform:translate(calc(-1 * var(--page-transition-shift, 30%)));opacity:.6}}@keyframes page-in-from-left{0%{transform:translate(calc(-1 * var(--page-transition-shift, 30%)));opacity:.6}}@keyframes page-out-to-right{to{transform:translate(100%)}}@media(prefers-reduced-motion:reduce){:root[data-nav-direction]::view-transition-old(page){animation-name:page-fade-out;animation-duration:.12s;z-index:auto}:root[data-nav-direction]::view-transition-new(page){animation-name:page-fade-in;animation-duration:.12s;z-index:auto}}@keyframes page-fade-in{0%{opacity:0}}@keyframes page-fade-out{to{opacity:0}}.pt-stage{display:flex;justify-content:center;padding:var(--space-6);border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface)}.pt-phone{display:flex;flex-direction:column;width:min(360px,100%);height:520px;border:1px solid var(--border);border-radius:20px;background:var(--bg);overflow:hidden}.pt-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);background:var(--surface)}.pt-title{flex:1;min-width:0;overflow:hidden;font-size:var(--text-body);text-align:center;text-overflow:ellipsis;white-space:nowrap}.pt-stage .pt-back{padding:var(--space-1) var(--space-2);border:none;background:transparent;color:var(--accent);font-size:var(--text-small)}.pt-back-placeholder,.pt-depth{width:3.5rem;color:var(--text-dim);font-size:var(--text-caption);text-align:right}.pt-scroll{flex:1;overflow-y:auto}.pt-view{min-height:100%;padding:var(--space-2) 0}.pt-view:has(>.pt-detail){padding-top:0}.pt-list,.pt-reviews{list-style:none;margin:0;padding:0}.pt-stage .pt-row{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);border:none;border-radius:0;background:transparent;text-align:left}.pt-stage .pt-row:hover{background:var(--accent-soft)}.pt-row-thumb{flex:none;inline-size:48px;block-size:48px;border-radius:var(--radius-control)}.pt-row-body{display:flex;flex-direction:column;flex:1;gap:2px}.pt-row-desc{color:var(--text-dim);font-size:var(--text-caption)}.pt-row-price{color:var(--text-dim);font-size:var(--text-small);font-variant-numeric:tabular-nums}.pt-filler{padding:var(--space-8) var(--space-4);color:var(--text-dim);font-size:var(--text-caption);text-align:center}.pt-detail{display:flex;flex-direction:column;align-items:flex-start;padding-bottom:var(--space-6)}.pt-detail-hero{align-self:stretch;inline-size:auto;block-size:auto;aspect-ratio:16 / 9}.pt-detail-name{margin:var(--space-4) var(--space-4) var(--space-1)}.pt-detail-price{margin:0 var(--space-4);color:var(--accent);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums}.pt-detail-desc{margin:var(--space-3) var(--space-4) var(--space-6);color:var(--text-dim);font-size:var(--text-small)}.pt-stage .pt-more{margin-inline:var(--space-4);border:1px solid var(--border);background:transparent;font-size:var(--text-small)}.pt-reviews li{padding:var(--space-4);border-bottom:1px solid var(--border);color:var(--text-dim);font-size:var(--text-small)}.pt-tabbar{display:flex;border-top:1px solid var(--border);background:var(--surface)}.pt-tab{flex:1;padding:var(--space-3) 0;color:var(--text-dim);font-size:var(--text-caption);text-align:center}.pt-tab-active{color:var(--accent);font-weight:600}.otp-group{--_size: var(--otp-cell-size, 3rem);--_accent: var(--otp-accent, #1b1e24);display:flex;gap:var(--otp-gap, .5rem);max-width:100%}.otp-cell{width:var(--_size);min-width:0;height:calc(var(--_size) * 1.2);border:1.5px solid var(--otp-border, #d1d5db);border-radius:var(--otp-radius, 10px);background:var(--otp-bg, #fff);color:var(--otp-color, #111827);font:inherit;font-size:calc(var(--_size) * .5);font-variant-numeric:tabular-nums;text-align:center;transition:border-color .14s ease,box-shadow .14s ease}.otp-cell[data-filled=true]{border-color:var(--otp-filled-border, #9ca3af)}.otp-cell:focus{outline:none;border-color:var(--_accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--_accent) 25%,transparent)}.otp-cell:disabled{opacity:.55;cursor:not-allowed}.otp-group[data-shake]{animation:otp-shake .42s cubic-bezier(.36,.07,.19,.97)}.otp-group[data-shake] .otp-cell{border-color:var(--otp-error, #dc2626)}@keyframes otp-shake{10%,90%{transform:translate(-3px)}20%,80%{transform:translate(6px)}30%,50%,70%{transform:translate(-6px)}40%,60%{transform:translate(6px)}}@media(prefers-reduced-motion:reduce){.otp-cell{transition:none}.otp-group[data-shake]{animation:none}}.otp-stage{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:2rem 1.5rem;border:1px solid var(--border);border-radius:12px;background:var(--surface);text-align:center}.otp-stage-title{margin:0;font-size:1.1rem}.otp-stage-hint{margin:0 0 .5rem;color:var(--text-dim);font-size:.9rem}.otp-message{min-height:1.5rem;margin:.25rem 0 0;font-size:.9rem}.otp-message[data-status=error]{color:#f87171}.otp-message[data-status=success]{color:#4ade80}.otp-footer{display:flex;align-items:center;gap:1rem;color:var(--text-dim);font-size:.9rem}::view-transition-old(root),::view-transition-new(root),::view-transition-old(theme-scope),::view-transition-new(theme-scope){animation:none;mix-blend-mode:normal}::view-transition-old(root),::view-transition-old(theme-scope){z-index:0}::view-transition-new(root),::view-transition-new(theme-scope){z-index:1}.theme-toggle{--_size: var(--theme-toggle-size, 2.25rem);position:relative;display:inline-grid;place-items:center;place-content:center;width:var(--_size);height:var(--_size);padding:0;border:1px solid var(--theme-toggle-border, currentColor);border-radius:50%;background:var(--theme-toggle-bg, transparent);color:var(--theme-toggle-color, currentColor);cursor:pointer;transition:background .16s ease}.theme-toggle:focus-visible{outline:2px solid currentColor;outline-offset:3px}.theme-toggle-icon{grid-area:1 / 1;display:grid;place-items:center;line-height:0;transition:opacity .2s ease,transform .26s cubic-bezier(.22,1,.36,1)}.theme-toggle[data-theme-state=light] .theme-toggle-icon[data-icon=moon],.theme-toggle[data-theme-state=dark] .theme-toggle-icon[data-icon=sun]{opacity:0;transform:rotate(-90deg) scale(.6)}.theme-toggle[data-theme-state=light] .theme-toggle-icon[data-icon=sun],.theme-toggle[data-theme-state=dark] .theme-toggle-icon[data-icon=moon]{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){.theme-toggle,.theme-toggle-icon{transition:none}}.tt-stage{display:flex;justify-content:center;padding:2rem 1.5rem;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.tt-card{--card-bg: #ffffff;--card-surface: #f4f5f7;--card-text: #111827;--card-dim: #6b7280;--card-border: #e5e7eb;--card-accent: #2563eb;display:flex;flex-direction:column;gap:1rem;width:min(380px,100%);padding:1.5rem;border:1px solid var(--card-border);border-radius:16px;background:var(--card-bg);color:var(--card-text);color-scheme:light}.tt-card[data-theme=dark]{--card-bg: #0f1115;--card-surface: #171a21;--card-text: #e8eaf0;--card-dim: #9aa1af;--card-border: #2a2f3a;--card-accent: #6ea8fe;color-scheme:dark}.tt-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.tt-card-title{font-size:1.05rem}.tt-card-sub{margin:var(--space-1) 0 0;color:var(--card-dim);font-size:.85rem}.tt-card .theme-toggle,.tt-card .theme-toggle:hover{--theme-toggle-border: var(--card-border);--theme-toggle-color: var(--card-text);background:var(--card-surface)}.tt-menus{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;border-top:1px solid var(--card-border)}.tt-menu{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--card-border)}.tt-menu-thumb{flex:none;inline-size:40px;block-size:40px;border-radius:var(--radius-control)}.tt-menu-name{flex:1}.tt-menu-price{color:var(--card-dim);font-variant-numeric:tabular-nums}.tt-stage button.tt-order,.tt-stage button.tt-order:hover{align-self:stretch;border:none;border-radius:var(--radius-control);padding:var(--space-3);background:var(--card-accent);color:#fff;font-weight:600}.suggest-root{--_duration: var(--suggest-duration, .16s);--_ease-out: cubic-bezier(.22, 1, .36, 1);position:relative}.suggest-input{width:100%;border:1px solid var(--suggest-border, #d1d5db);border-radius:var(--suggest-radius, 10px);padding:.7rem .9rem;background:var(--suggest-bg, #fff);color:var(--suggest-color, #111827);font:inherit}.suggest-input:focus{outline:none;border-color:var(--suggest-accent, #1b1e24);box-shadow:0 0 0 3px color-mix(in srgb,var(--suggest-accent, #1b1e24) 22%,transparent)}.suggest-panel{position:absolute;z-index:20;top:calc(100% + .35rem);left:0;right:0;margin:0;padding:.3rem;list-style:none;max-height:var(--suggest-max-height, 18rem);overflow-y:auto;border:1px solid var(--suggest-border, #d1d5db);border-radius:var(--suggest-radius, 10px);background:var(--suggest-bg, #fff);box-shadow:var(--suggest-shadow, 0 12px 28px rgb(0 0 0 / .14));transform-origin:top center;animation:suggest-drop var(--_duration) var(--_ease-out)}.suggest-option{display:flex;align-items:center;gap:.6rem;padding:.6rem .7rem;border-radius:8px;color:var(--suggest-color, #111827);cursor:pointer}.suggest-option[data-active=true]{background:var(--suggest-active-bg, #f2f3f5)}.suggest-option mark{background:none;color:inherit;font-weight:700}.suggest-message{padding:.7rem;color:var(--suggest-dim, #6b7280);font-size:.9rem;text-align:center}@keyframes suggest-drop{0%{opacity:0;transform:translateY(-4px) scaleY(.96)}}@media(prefers-reduced-motion:reduce){.suggest-panel{animation:none}}.ss-stage{display:flex;flex-direction:column;gap:1rem;padding:1.75rem;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.ss-field{max-width:420px}.ss-thumb{flex:none;inline-size:32px;block-size:32px;border-radius:var(--radius-control)}.ss-option-name{flex:1}.ss-option-price{color:var(--text-dim);font-size:.85rem;font-variant-numeric:tabular-nums}.ss-footer{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap;color:var(--text-dim);font-size:.9rem}.virtual-viewport{height:var(--virtual-height, 400px);overflow-y:auto;overscroll-behavior:contain}.virtual-sizer{position:relative;width:100%}.virtual-window{position:absolute;top:0;left:0;right:0;will-change:transform}.virtual-item{height:var(--virtual-item-height);box-sizing:border-box;overflow:hidden}.vl-stage{display:flex;flex-direction:column;gap:var(--space-4);padding:1.5rem;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.vl-head{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;flex-wrap:wrap}.vl-title{margin:0;font-size:1.05rem}.vl-counters{display:flex;gap:1.5rem;margin:0;color:var(--text-dim);font-size:.9rem}.vl-counters div{display:flex;gap:var(--space-2)}.vl-counters dt,.vl-counters dd{margin:0}.vl-counter-strong{color:var(--text);font-weight:600;font-variant-numeric:tabular-nums}.vl-viewport{--virtual-height: 420px;border-block:1px solid var(--border)}.vl-viewport:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.vl-row{display:flex;align-items:center;gap:var(--space-4);padding:0;border-bottom:1px solid var(--border)}.vl-no{width:4.5rem;color:var(--text-dim);font-size:.85rem;font-variant-numeric:tabular-nums}.vl-menu{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vl-price{color:var(--text-dim);font-variant-numeric:tabular-nums}.vl-footer{display:flex;gap:.5rem}.vl-stage .vl-footer button{font-size:.9rem}.menu-root{position:relative;display:inline-block}.menu-trigger{font:inherit;cursor:pointer}.menu-panel{--_duration: var(--menu-duration, .14s);--_ease-out: cubic-bezier(.22, 1, .36, 1);position:fixed;z-index:50;min-width:var(--menu-min-width, 11rem);padding:.3rem;border:1px solid var(--menu-border, #e5e7eb);border-radius:var(--menu-radius, 12px);background:var(--menu-bg, #fff);box-shadow:var(--menu-shadow, 0 12px 32px rgb(0 0 0 / .16))}.menu-panel[data-open=true][data-side=bottom]{transform-origin:top center;animation:menu-in-from-top var(--_duration) var(--_ease-out)}.menu-panel[data-open=true][data-side=top]{transform-origin:bottom center;animation:menu-in-from-bottom var(--_duration) var(--_ease-out)}.menu-item{display:flex;align-items:center;gap:.55rem;width:100%;padding:.6rem .7rem;border:none;border-radius:8px;background:none;color:var(--menu-color, #111827);font:inherit;text-align:left;cursor:pointer}.menu-item:hover,.menu-item:focus{outline:none;background:var(--menu-active-bg, #f3f4f6)}.menu-item:focus-visible{outline:2px solid var(--menu-focus, #1b1e24);outline-offset:-2px}.menu-item[data-danger=true]{color:var(--menu-danger, #dc2626)}.menu-item[aria-disabled=true]{opacity:.45;cursor:not-allowed}.menu-item[aria-disabled=true]:hover{background:none}@keyframes menu-in-from-top{0%{opacity:0;transform:translateY(-4px) scale(.97)}}@keyframes menu-in-from-bottom{0%{opacity:0;transform:translateY(4px) scale(.97)}}@media(prefers-reduced-motion:reduce){.menu-panel[data-open=true]{animation:none}}.dm-stage{display:flex;flex-direction:column;gap:var(--space-4);padding:1.5rem;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.dm-title{margin:0;font-size:1.05rem}.dm-list{list-style:none;margin:0;padding:0;border-block:1px solid var(--border)}.dm-row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) 0}.dm-row+.dm-row{border-top:1px solid var(--border)}.dm-row-body{display:flex;flex-direction:column;flex:1;gap:2px}.dm-row-date{color:var(--text-dim);font-size:.8rem}.dm-row-price{color:var(--text-dim);font-variant-numeric:tabular-nums}.dm-stage .menu-trigger,.dm-stage .menu-trigger:hover{align-self:center;width:2rem;height:2rem;padding:0;border:none;border-radius:50%;background:transparent;color:var(--text-dim);line-height:1}.dm-stage .menu-trigger:hover{background:var(--accent-soft);color:var(--text)}.dm-stage .menu-item,.dm-stage .menu-item:hover{border:none;font-size:.9rem}.dm-result{margin:0;color:var(--text-dim);font-size:.9rem}.range-root{--_h: var(--range-height, 6px);--_thumb: var(--range-thumb-size, 24px);position:relative;height:var(--_thumb);display:flex;align-items:center;touch-action:none}.range-track{position:absolute;left:0;right:0;height:var(--_h);border-radius:999px;background:linear-gradient(to right,var(--range-track, #e5e7eb) 0 var(--range-lower, 0%),var(--range-fill-color, var(--range-accent, #1b1e24)) var(--range-lower, 0%) var(--range-upper, 100%),var(--range-track, #e5e7eb) var(--range-upper, 100%) 100%)}.range-input{position:absolute;left:0;width:100%;margin:0;background:none;pointer-events:none;-moz-appearance:none;appearance:none;-webkit-appearance:none}.range-input::-webkit-slider-runnable-track{background:none;border:none}.range-input::-moz-range-track{background:none;border:none}.range-input::-webkit-slider-thumb{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:var(--_thumb);height:var(--_thumb);border:2px solid var(--range-thumb-border, var(--range-accent, #1b1e24));border-radius:50%;background:var(--range-thumb, #fff);box-shadow:var(--range-thumb-shadow, 0 1px 4px rgb(0 0 0 / .2));cursor:grab;pointer-events:auto;transition:transform .12s cubic-bezier(.22,1,.36,1)}.range-input::-moz-range-thumb{width:var(--_thumb);height:var(--_thumb);border:2px solid var(--range-thumb-border, var(--range-accent, #1b1e24));border-radius:50%;background:var(--range-thumb, #fff);box-shadow:var(--range-thumb-shadow, 0 1px 4px rgb(0 0 0 / .2));cursor:grab;pointer-events:auto;transition:transform .12s cubic-bezier(.22,1,.36,1)}.range-input:active::-webkit-slider-thumb{transform:scale(1.15);cursor:grabbing}.range-input:active::-moz-range-thumb{transform:scale(1.15);cursor:grabbing}.range-input:focus-visible::-webkit-slider-thumb{outline:2px solid var(--range-accent, #1b1e24);outline-offset:2px}.range-input:focus-visible::-moz-range-thumb{outline:2px solid var(--range-accent, #1b1e24);outline-offset:2px}.range-root[data-on-top=lower] .range-input[data-handle=lower],.range-root[data-on-top=upper] .range-input[data-handle=upper]{z-index:2}@media(prefers-reduced-motion:reduce){.range-input::-webkit-slider-thumb{transition:none}.range-input::-moz-range-thumb{transition:none}}.rs-stage{display:flex;flex-direction:column;gap:.75rem;padding:1.75rem;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.rs-head{display:flex;justify-content:space-between;align-items:baseline;gap:1rem}.rs-title{margin:0;font-size:1.05rem}.rs-value{color:var(--accent);font-variant-numeric:tabular-nums}.rs-slider{margin:.5rem 0 0}.rs-scale{display:flex;justify-content:space-between;color:var(--text-dim);font-size:.8rem}.rs-count{margin:.5rem 0 0;color:var(--text-dim);font-size:.9rem}.rs-menus{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;border-top:1px solid var(--border)}.rs-menu{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--border)}.rs-thumb{flex:none;inline-size:40px;block-size:40px;border-radius:var(--radius-control)}.rs-menu-name{flex:1}.rs-menu-price{color:var(--text-dim);font-variant-numeric:tabular-nums}.rs-empty{padding:1.5rem;color:var(--text-dim);text-align:center}.qty{--_h: var(--qty-height, 2.5rem);display:inline-flex;align-items:center;height:var(--_h);border:1px solid var(--qty-border, #d1d5db);border-radius:var(--qty-radius, 10px);background:var(--qty-bg, #fff);color:var(--qty-color, #111827);overflow:hidden}.qty[data-disabled=true]{opacity:.5}.qty-icon{display:block;margin:0 auto}.qty-button{width:var(--_h);height:100%;border:none;background:none;color:inherit;font:inherit;font-size:1.1rem;line-height:1;cursor:pointer;user-select:none;-webkit-user-select:none;touch-action:manipulation;transition:background .12s ease}.qty-button:hover{background:var(--qty-hover, rgb(0 0 0 / .05))}.qty-button:active{background:var(--qty-active, rgb(0 0 0 / .1))}.qty-button:focus-visible{outline:2px solid var(--qty-accent, #1b1e24);outline-offset:-2px}.qty-button[aria-disabled=true]{opacity:.35;cursor:not-allowed}.qty-button[aria-disabled=true]:hover{background:none}.qty-value{width:var(--qty-value-width, 3rem);height:100%;border:none;border-left:1px solid var(--qty-border, #d1d5db);border-right:1px solid var(--qty-border, #d1d5db);background:none;color:inherit;font:inherit;font-variant-numeric:tabular-nums;text-align:center}.qty-value:focus{outline:2px solid var(--qty-accent, #1b1e24);outline-offset:-2px}.qty-value[data-bump=up]{animation:qty-bump-up .18s cubic-bezier(.22,1,.36,1)}.qty-value[data-bump=down]{animation:qty-bump-down .18s cubic-bezier(.22,1,.36,1)}@keyframes qty-bump-up{0%{opacity:.3;transform:translateY(35%)}}@keyframes qty-bump-down{0%{opacity:.3;transform:translateY(-35%)}}@media(prefers-reduced-motion:reduce){.qty-button{transition:none}.qty-value[data-bump]{animation:none}}.qs-stage{display:flex;flex-direction:column;gap:var(--space-4);padding:1.5rem;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.qs-title{margin:0;font-size:1.05rem}.qs-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;border-top:1px solid var(--border)}.qs-row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--border)}.qs-thumb{flex:none;inline-size:48px;block-size:48px;border-radius:var(--radius-control)}.qs-body{display:flex;flex-direction:column;flex:1;gap:2px}.qs-unit{color:var(--text-dim);font-size:.8rem}.qs-sum{width:5.5rem;color:var(--text-dim);font-variant-numeric:tabular-nums;text-align:right}.qs-stage .qty-button,.qs-stage .qty-button:hover{align-self:auto;border:none;border-radius:0}.qs-empty{padding:2rem;color:var(--text-dim);text-align:center}.qs-footer{display:flex;justify-content:space-between;align-items:center;gap:1rem;color:var(--text-dim)}.upload-root{--_accent: var(--upload-accent, #1b1e24);display:flex;flex-direction:column;gap:.75rem}.upload-zone{position:relative;border:2px dashed var(--upload-border, #d1d5db);border-radius:var(--upload-radius, 12px);background:var(--upload-bg, transparent);transition:border-color .14s ease,background .14s ease}.upload-zone[data-dragging=true]{border-color:var(--_accent);border-style:solid;background:var(--upload-drag-bg, color-mix(in srgb, var(--_accent) 8%, transparent))}.upload-zone[data-disabled=true]{opacity:.55}.upload-label{display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:2rem 1.25rem;text-align:center;cursor:pointer}.upload-zone[data-disabled=true] .upload-label{cursor:not-allowed}.upload-input{position:absolute;width:1px;height:1px;opacity:0}.upload-input:focus-visible+.upload-guide{outline:2px solid var(--_accent);outline-offset:6px;border-radius:6px}.upload-guide{display:flex;flex-direction:column;gap:.3rem}.upload-limits{color:var(--upload-dim, #6b7280);font-size:.82rem}.upload-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.upload-item{display:flex;align-items:center;gap:.75rem;padding:.6rem;border:1px solid var(--upload-border, #d1d5db);border-radius:10px;animation:upload-item-in .2s cubic-bezier(.22,1,.36,1)}.upload-item[data-error=true]{border-color:var(--upload-error, #dc2626)}.upload-thumb{width:2.75rem;height:2.75rem;flex:none;border-radius:8px;object-fit:cover;background:var(--upload-thumb-bg, #f3f4f6)}.upload-thumb-icon{display:grid;place-items:center;color:var(--upload-icon-color, #4b5260)}.upload-meta{display:flex;flex-direction:column;flex:1;gap:.2rem;min-width:0}.upload-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-size{color:var(--upload-dim, #6b7280);font-size:.8rem}.upload-item[data-error=true] .upload-size{color:var(--upload-error, #dc2626)}.upload-progress{display:block;height:4px;margin-top:.15rem;border-radius:999px;background:var(--upload-track, #e5e7eb);overflow:hidden}.upload-progress-bar{display:block;width:100%;height:100%;background:var(--_accent);transform-origin:left center;transition:transform .2s ease-out}.upload-remove{flex:none;width:2rem;height:2rem;border:none;border-radius:50%;background:none;color:var(--upload-dim, #6b7280);font:inherit;cursor:pointer}.upload-remove:hover{background:var(--upload-thumb-bg, #f3f4f6);color:inherit}@keyframes upload-item-in{0%{opacity:0;transform:translateY(-6px)}}@media(prefers-reduced-motion:reduce){.upload-zone,.upload-item{transition:none;animation:none}}.fu-stage{display:flex;flex-direction:column;gap:var(--space-4);padding:1.5rem;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.fu-title{margin:0;font-size:1.05rem}.fu-message{margin:0;padding:var(--space-1) 0 var(--space-1) var(--space-3);border-left:3px solid #f87171;color:#f87171;font-size:var(--text-small);white-space:pre-line}.fu-stage .upload-remove,.fu-stage .upload-remove:hover{align-self:center;border:none;border-radius:50%}.fu-footer{display:flex;justify-content:space-between;align-items:center;gap:1rem;color:var(--text-dim);font-size:.9rem}.fu-stage .fu-footer button:disabled{opacity:.45;cursor:not-allowed}.glass{--_blur: var(--glass-blur, 16px);--_tint: var(--glass-tint, rgba(255, 255, 255, .14));--_border: var(--glass-border, rgba(255, 255, 255, .3));--_highlight: var(--glass-highlight, rgba(255, 255, 255, .5));--_radius: var(--glass-radius, 16px);--_fallback-bg: var(--glass-fallback-bg, #262a35);position:relative;border:1px solid var(--_border);border-radius:var(--_radius);background:var(--_tint);box-shadow:inset 0 1px 0 var(--_highlight),0 8px 32px #0000002e;-webkit-backdrop-filter:blur(var(--_blur)) saturate(160%);backdrop-filter:blur(var(--_blur)) saturate(160%);color:inherit}.glass[data-tone=dark]{--_tint: var(--glass-tint, rgba(17, 19, 26, .5));--_border: var(--glass-border, rgba(255, 255, 255, .14));--_highlight: var(--glass-highlight, rgba(255, 255, 255, .2));--_fallback-bg: var(--glass-fallback-bg, #171a21)}.glass-card{padding:20px}.glass-nav{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:16px;padding:12px 20px;border-width:0 0 1px;border-radius:0}.glass-modal{width:var(--glass-modal-width, min(420px, calc(100vw - 32px) ));margin:auto;padding:24px;overflow:hidden}.glass-modal::backdrop{background:#00000059}.glass-interactive{cursor:pointer;transition:background .2s ease,border-color .2s ease}.glass-interactive:hover,.glass-interactive:focus-visible{background:color-mix(in srgb,var(--_tint),#fff 12%);border-color:color-mix(in srgb,var(--_border),#fff 20%)}.glass-interactive:focus-visible{outline:2px solid currentColor;outline-offset:2px}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.glass{background:var(--_fallback-bg)}}@media(prefers-reduced-transparency:reduce){.glass{background:var(--_fallback-bg);-webkit-backdrop-filter:none;backdrop-filter:none}}@media(prefers-contrast:more){.glass{background:var(--_fallback-bg);border-color:currentColor;-webkit-backdrop-filter:none;backdrop-filter:none}}.glass[data-opaque=true]{background:var(--_fallback-bg);-webkit-backdrop-filter:none;backdrop-filter:none}@media(prefers-reduced-motion:reduce){.glass-interactive{transition:none}}.glass-stage{height:560px;overflow-y:auto;border-radius:16px;border:1px solid var(--border);color:#fff;background:linear-gradient(160deg,#1d2b64,#5b3a8f 45%,#c2443b)}.glass-scene{position:relative;padding:24px 20px 40px;overflow:hidden}.glass-blob{position:absolute;border-radius:50%;filter:blur(4px);pointer-events:none}.glass-blob-a{width:260px;height:260px;top:-40px;left:-60px;background:#ffb347}.glass-blob-b{width:220px;height:220px;top:300px;right:-40px;background:#4de1c1}.glass-blob-c{width:180px;height:180px;top:640px;left:30%;background:#ff6b9d}.glass-brand{display:inline-flex;align-items:center;gap:var(--space-2);font-size:1.05rem}.glass-links{display:flex;gap:4px;margin-left:auto}.glass-links a{color:inherit;text-decoration:none;padding:var(--space-1) var(--space-2);border-radius:var(--radius-control);font-size:.9rem;opacity:.8}.glass-links a[aria-current=page]{opacity:1;background:#ffffff29}.glass-cards{position:relative;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}.glass-cards h3,.glass-cta h3,.glass-modal h3{margin:0 0 var(--space-1);font-size:1.05rem}.glass-cards p,.glass-cta p,.glass-modal p{margin:0 0 12px;font-size:.9rem;opacity:.85}.glass-card-photo{height:auto;aspect-ratio:4 / 3;margin-bottom:var(--space-2);border-radius:var(--radius-control)}.glass-card-price{font-size:.95rem}.glass-tiles{position:relative;display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin:28px 0}.glass-tile{height:auto;aspect-ratio:1;border-radius:var(--radius-card)}.glass-cta{position:relative}.glass-cta button,.glass-modal-actions button{color:inherit;background:#ffffff29;border-color:#ffffff4d}.glass-modal-actions{display:flex;gap:8px;justify-content:flex-end}.glass-tone-picker{display:flex;gap:var(--space-3)}.segmented{--_duration: var(--segment-duration, .2s);--_thumb-bg: var(--segment-thumb-bg, #fff);--_track-bg: var(--segment-track-bg, rgba(120, 120, 128, .16));--_radius: var(--segment-radius, 999px);--_pad: 2px;--_ease-out: cubic-bezier(.22, 1, .36, 1);position:relative;display:inline-grid;grid-auto-flow:column;grid-auto-columns:1fr;padding:var(--_pad);border-radius:var(--_radius);background:var(--_track-bg);-webkit-tap-highlight-color:transparent}.segment{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;min-width:0;padding:6px 14px;border-radius:calc(var(--_radius) - var(--_pad));font-size:.875rem;line-height:1.3;color:var(--segment-color, #6b7280);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;transition:color var(--_duration) ease}.segment-input{position:absolute;width:1px;height:1px;margin:-1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap}.segment-input:checked+.segment-label{color:var(--segment-active-color, #111827);font-weight:600}.segment-input:focus-visible+.segment-label{outline:2px solid var(--segment-focus-color, #1b1e24);outline-offset:4px;border-radius:4px}.segment-thumb{position:absolute;top:var(--_pad);bottom:var(--_pad);left:0;width:0;border-radius:calc(var(--_radius) - var(--_pad));background:var(--_thumb-bg);box-shadow:0 1px 3px #0f172a2e,0 0 0 .5px #0f172a0a;transform-origin:left;transition:transform var(--_duration) var(--_ease-out),width var(--_duration) var(--_ease-out);pointer-events:none}.segmented:has(.segment-input:disabled){opacity:.5}.segmented:has(.segment-input:disabled) .segment{cursor:not-allowed}@media(prefers-reduced-motion:reduce){.segment-thumb,.segment{transition:none}}.segment-stage{display:flex;flex-direction:column;gap:1.25rem;padding:1.5rem;border:1px solid var(--border);border-radius:12px;background:var(--surface);--segment-track-bg: var(--accent-soft);--segment-thumb-bg: var(--bg);--segment-color: var(--text-dim);--segment-active-color: var(--text);--segment-focus-color: var(--accent)}.segment-row{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem}.segment-row-label{min-width:5rem;font-size:.85rem;color:var(--text-dim)}.segment-row .segmented{min-width:240px}.segment-card{display:flex;align-items:flex-start;gap:1rem;padding:1.25rem;border:1px solid var(--border);border-radius:12px;background:var(--bg);min-height:120px}.segment-card-photo{flex:none;inline-size:72px;block-size:72px;border-radius:var(--radius-control)}.segment-card-body{flex:1;display:flex;flex-direction:column;gap:var(--space-1)}.segment-card-body p{margin:0;font-size:.9rem;color:var(--text-dim)}.segment-card-price{font-weight:600;font-variant-numeric:tabular-nums;color:var(--accent);white-space:nowrap}.wheel{--_item: var(--wheel-item-height, 36px);--_visible: var(--wheel-visible, 5);--_highlight: var(--wheel-highlight-bg, rgba(127, 127, 127, .14));position:relative;height:calc(var(--_item) * var(--_visible));-webkit-mask-image:linear-gradient(to bottom,transparent,#000 28%,#000 72%,transparent);mask-image:linear-gradient(to bottom,transparent,#000 28%,#000 72%,transparent);-webkit-user-select:none;user-select:none}.wheel:before{content:"";position:absolute;inset-inline:0;top:50%;height:var(--_item);transform:translateY(-50%);border-radius:8px;background:var(--_highlight);pointer-events:none;z-index:1}.wheel-track{box-sizing:border-box;height:100%;overflow-y:auto;overscroll-behavior:contain;scroll-snap-type:y mandatory;scroll-behavior:smooth;padding-block:calc(var(--_item) * (var(--_visible) - 1) / 2);perspective:var(--wheel-perspective, 600px);outline:none;scrollbar-width:none}.wheel-track::-webkit-scrollbar{display:none}.wheel-track:focus-visible{box-shadow:inset 0 0 0 2px var(--wheel-focus-ring, currentColor);border-radius:8px}.wheel-item{box-sizing:border-box;height:var(--_item);display:grid;place-items:center;scroll-snap-align:center;transform-style:preserve-3d;backface-visibility:hidden;cursor:pointer;font-variant-numeric:tabular-nums;color:var(--wheel-item-color, inherit);white-space:nowrap}.wheel-item[data-center]{color:var(--wheel-active-color, inherit);font-weight:600}@media(prefers-reduced-motion:reduce){.wheel-track{scroll-behavior:auto}.wheel-item{transform:none!important;opacity:1!important}}.wheel-demo-stage{--wheel-highlight-bg: var(--accent-soft);--wheel-active-color: var(--accent);--wheel-focus-ring: var(--accent);max-width:420px;margin:0 auto;padding:20px 20px 24px;border:1px solid var(--border);border-radius:16px;background:var(--surface);color:var(--text)}.wheel-demo-title{margin:0 0 12px;font-weight:600}.wheel-demo-row{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:8px;padding:8px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.wheel-demo-col{display:flex;flex-direction:column;gap:4px;min-width:0}.wheel-demo-label{font-size:.75rem;color:var(--text-dim);text-align:center}.wheel-demo-col .wheel{font-size:1.05rem}.wheel-demo-col .wheel-item:not([data-center]){color:var(--text-dim)}.wheel-demo-result{margin:16px 0 0;font-size:.95rem;line-height:1.6;color:var(--text-dim)}.wheel-demo-result strong{color:var(--text)}.wheel-demo-presets{display:flex;gap:var(--space-1);flex-wrap:wrap}.wheel-demo-presets button{font:inherit;font-size:.8rem;padding:var(--space-1) var(--space-2);border-radius:8px;border:1px solid var(--border);background:var(--bg);color:var(--text);cursor:pointer}.wheel-demo-presets button:hover{border-color:var(--accent);background:var(--accent-soft)}.lpm-item{--_duration: var(--lpm-duration, .22s);--_ease: cubic-bezier(.22, 1, .36, 1);position:relative;border-radius:var(--lpm-radius, 16px);touch-action:manipulation;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;transition:transform var(--_duration) var(--_ease),box-shadow var(--_duration) var(--_ease)}.lpm-item:focus-visible{outline:2px solid var(--lpm-focus, #1b1e24);outline-offset:2px}.lpm-item[data-open=true]{z-index:41;transform:scale(1.04);box-shadow:var(--lpm-lift-shadow, 0 18px 48px rgb(0 0 0 / .35))}.lpm-backdrop{--_duration: var(--lpm-duration, .22s);--_blur: var(--lpm-blur, 12px);position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:var(--lpm-tint, rgb(0 0 0 / .35));-webkit-backdrop-filter:blur(var(--_blur));backdrop-filter:blur(var(--_blur));animation:lpm-fade-in var(--_duration) ease-out}.lpm-menu{--_duration: var(--lpm-duration, .22s);--_ease: cubic-bezier(.22, 1, .36, 1);position:fixed;z-index:42;min-width:var(--lpm-menu-min-width, 12rem);margin:0;padding:.3rem;border:1px solid var(--lpm-menu-border, rgb(255 255 255 / .12));border-radius:var(--lpm-radius, 16px);background:var(--lpm-menu-bg, rgb(255 255 255 / .92));color:var(--lpm-menu-color, #111827);box-shadow:var(--lpm-menu-shadow, 0 16px 40px rgb(0 0 0 / .28));animation:lpm-pop-in var(--_duration) var(--_ease)}.lpm-menu[data-side=bottom]{transform-origin:top left}.lpm-menu[data-side=top]{transform-origin:bottom left}.lpm-menu-item{display:flex;align-items:center;gap:.55rem;width:100%;padding:.65rem .8rem;border:none;border-radius:calc(var(--lpm-radius, 16px) - 6px);background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.lpm-menu-item:hover,.lpm-menu-item:focus{outline:none;background:var(--lpm-menu-active-bg, rgb(0 0 0 / .06))}.lpm-menu-item:focus-visible{outline:2px solid var(--lpm-focus, #1b1e24);outline-offset:-2px}.lpm-menu-item[data-destructive=true]{color:var(--lpm-destructive, #dc2626)}@keyframes lpm-fade-in{0%{opacity:0}}@keyframes lpm-pop-in{0%{opacity:0;transform:scale(.9)}}@media(prefers-reduced-motion:reduce){.lpm-item{transition:box-shadow .15s linear}.lpm-item[data-open=true]{transform:none}.lpm-menu{animation:lpm-fade-in .15s linear}.lpm-backdrop{animation-duration:.15s}}.lpm-stage{position:relative;padding:24px 20px;border-radius:16px;border:1px solid var(--border);background:radial-gradient(circle at 15% 20%,rgba(255,179,71,.35),transparent 40%),radial-gradient(circle at 85% 80%,rgba(77,225,193,.3),transparent 45%),var(--surface);--lpm-menu-bg: rgb(30 33 42 / .94);--lpm-menu-color: var(--text);--lpm-menu-active-bg: var(--accent-soft);--lpm-focus: var(--accent)}.lpm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:var(--space-3)}.lpm-card{position:relative;display:flex;flex-direction:column;gap:2px;padding:var(--space-4) var(--space-3);border-radius:16px;border:1px solid var(--border);background:var(--bg);color:var(--text);cursor:pointer}.lpm-card h3{display:flex;align-items:center;gap:var(--space-1);margin:var(--space-1) 0 0;font-size:1rem}.lpm-card p{margin:0;font-size:.8rem;color:var(--text-dim)}.lpm-card strong{margin-top:var(--space-1);font-size:.9rem;color:var(--accent)}.lpm-card-photo{height:auto;aspect-ratio:4 / 3;margin-bottom:var(--space-1);border-radius:var(--radius-control);pointer-events:none}.lpm-card-star{color:var(--accent)}.lpm-empty{margin:0;text-align:center;color:var(--text-dim)}.lpm-status{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.lpm-status p{margin:0;font-size:.9rem;color:var(--text-dim)}.lpm-status strong{color:var(--text)}::view-transition-group(card-expand),::view-transition-group(card-expand-media),::view-transition-group(card-expand-title){animation-duration:var(--card-expand-duration, .42s);animation-timing-function:cubic-bezier(.32,.72,0,1)}::view-transition-old(card-expand),::view-transition-new(card-expand){animation:none;mix-blend-mode:normal}::view-transition-image-pair(card-expand){overflow:clip;animation-duration:var(--card-expand-duration, .42s);animation-timing-function:cubic-bezier(.32,.72,0,1);animation-fill-mode:both}:root[data-card-expand=open]::view-transition-new(card-expand){z-index:1}:root[data-card-expand=open]::view-transition-image-pair(card-expand){animation-name:card-expand-unround}:root[data-card-expand=close]::view-transition-old(card-expand){z-index:1;animation:card-expand-fade-out var(--card-expand-duration, .42s) cubic-bezier(.7,0,1,1) both}:root[data-card-expand=close]::view-transition-image-pair(card-expand){animation-name:card-expand-round}::view-transition-image-pair(card-expand-media){overflow:clip}::view-transition-old(card-expand-media),::view-transition-new(card-expand-media){height:100%;object-fit:cover}@keyframes card-expand-unround{0%{border-radius:var(--card-expand-radius, 16px)}to{border-radius:0}}@keyframes card-expand-round{0%{border-radius:0}to{border-radius:var(--card-expand-radius, 16px)}}@keyframes card-expand-fade-out{to{opacity:0}}.card-expand-container{position:relative;overflow:hidden}.card-expand-detail{position:absolute;top:0;right:0;bottom:0;left:0;overflow:clip;background:var(--card-expand-bg, #fff);z-index:1}.card-expand-detail-scroll{height:100%;overflow-y:auto;overscroll-behavior:contain}.card-expand-detail-body{animation:card-expand-body-in .26s ease-out .2s both}@keyframes card-expand-body-in{0%{opacity:0;transform:translateY(8px)}}.card-expand-close{position:absolute;top:12px;left:12px;z-index:2;display:grid;place-items:center;width:32px;height:32px;padding:0;border:none;border-radius:50%;background:var(--card-expand-close-bg, rgba(0, 0, 0, .45));color:var(--card-expand-close-color, #fff);font-size:18px;line-height:1;cursor:pointer}.card-expand-close:focus-visible{outline:2px solid currentColor;outline-offset:2px}@media(prefers-reduced-motion:reduce){:root[data-card-expand]::view-transition-group(card-expand),:root[data-card-expand]::view-transition-group(card-expand-media),:root[data-card-expand]::view-transition-group(card-expand-title),:root[data-card-expand]::view-transition-image-pair(card-expand){animation:none}:root[data-card-expand]::view-transition-old(card-expand),:root[data-card-expand]::view-transition-old(card-expand-media),:root[data-card-expand]::view-transition-old(card-expand-title){animation:card-expand-fade-out .12s linear both;z-index:auto}:root[data-card-expand]::view-transition-new(card-expand),:root[data-card-expand]::view-transition-new(card-expand-media),:root[data-card-expand]::view-transition-new(card-expand-title){animation:card-expand-fade-in .12s linear both;z-index:auto}.card-expand-detail-body{animation:none}}@keyframes card-expand-fade-in{0%{opacity:0}}.ce-stage{display:flex;justify-content:center;padding:var(--space-6);border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface)}.ce-phone{display:flex;flex-direction:column;width:min(360px,100%);height:560px;border:1px solid var(--border);border-radius:20px;background:var(--bg);overflow:hidden}.ce-header{display:flex;flex-direction:column;gap:2px;padding:var(--space-4) var(--space-4) var(--space-3)}.ce-eyebrow{color:var(--text-dim);font-size:var(--text-caption);letter-spacing:.02em;text-transform:uppercase}.ce-heading{font-size:var(--text-title);line-height:var(--leading-tight)}.ce-container{flex:1;min-height:0;--card-expand-bg: var(--bg)}.ce-list{display:flex;flex-direction:column;gap:var(--space-4);height:100%;margin:0;padding:var(--space-1) var(--space-4) var(--space-6);overflow-y:auto;list-style:none}.ce-stage .ce-card{display:flex;flex-direction:column;width:100%;padding:0;border:1px solid var(--border);border-radius:18px;background:var(--surface);overflow:hidden;text-align:left;cursor:pointer;transition:transform var(--motion-duration-fast) var(--motion-ease-out)}.ce-stage .ce-card:active{transform:scale(.98)}.ce-stage .ce-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ce-card-media,.ce-detail-media{display:block;width:100%;overflow:hidden;background:var(--color-canvas)}.ce-card-media{height:120px}.ce-card-text{display:flex;flex-direction:column;gap:2px;padding:var(--space-3) var(--space-4) var(--space-4)}.ce-card-title{font-size:var(--text-body);font-weight:var(--weight-semibold)}.ce-card-subtitle{color:var(--text-dim);font-size:var(--text-small)}.ce-detail-media{height:220px}.ce-detail-content{padding:var(--space-4) var(--space-4) var(--space-6)}.ce-detail-title{margin:0 0 var(--space-1);font-size:var(--text-title);line-height:var(--leading-tight)}.ce-detail-subtitle{margin:0 0 var(--space-4);color:var(--text-dim);font-size:var(--text-small)}.ce-detail-story{margin:0 0 var(--space-6);font-size:var(--text-small);line-height:var(--leading-body)}.ce-detail-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.ce-detail-price{color:var(--accent);font-size:var(--text-body);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums}.ce-stage .ce-order{padding:var(--space-3) var(--space-6);border:none;border-radius:var(--radius-full);background:var(--accent);color:#0b1020;font-weight:var(--weight-bold)}.ce-unsupported{color:#f2b56b}@media(prefers-reduced-motion:reduce){.ce-stage .ce-card{transition:none}.ce-stage .ce-card:active{transform:none}}.progress-ring{--_duration: var(--ring-duration, .6s);--_ease: cubic-bezier(.22, 1, .36, 1);position:relative;display:inline-grid;place-items:center;line-height:1}.progress-ring-svg{display:block;transform:rotate(-90deg)}.progress-ring-track,.progress-ring-bar{fill:none}.progress-ring-track{--_track: var(--ring-track, rgb(128 128 128 / .2));stroke:var(--_track)}.progress-ring-bar{--_color: var(--ring-color, #1b1e24);stroke:var(--_color);stroke-linecap:round;stroke-dasharray:var(--ring-circumference);stroke-dashoffset:var(--ring-offset);transition:stroke-dashoffset var(--_duration) var(--_ease)}:is(.progress-ring[data-over=true],.progress-ring [data-over=true]) .progress-ring-bar{filter:drop-shadow(0 0 3px var(--_color))}.progress-ring[data-indeterminate=true] .progress-ring-bar{stroke-dashoffset:calc(var(--ring-circumference) * .75);transition:none;transform-box:view-box;transform-origin:center;animation:progress-ring-spin 1s linear infinite}.progress-ring-center{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-variant-numeric:tabular-nums}@keyframes progress-ring-spin{to{transform:rotate(1turn)}}@keyframes progress-ring-pulse{50%{opacity:.35}}@media(prefers-reduced-motion:reduce){.progress-ring-bar{transition:none}.progress-ring[data-indeterminate=true] .progress-ring-bar{animation:progress-ring-pulse 1.6s ease-in-out infinite}}.ring-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.ring-card{display:flex;flex-direction:column;gap:1rem;padding:1.5rem;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.ring-card h2{margin:0;font-size:1rem;color:var(--text-dim)}.ring-card>p{margin:0;font-size:.85rem;color:var(--text-dim)}.ring-stage{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.ring-stage .progress-ring{--ring-track: var(--accent-soft)}.ring-legend{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2);font-size:.9rem}.ring-legend li{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.ring-legend-swatch{width:10px;height:10px;border-radius:50%;flex-shrink:0}.ring-legend-label{color:var(--text-dim)}.ring-legend-value{font-variant-numeric:tabular-nums}.ring-legend-over{font-size:.75rem;padding:2px var(--space-2);border-radius:999px;background:var(--accent-soft);color:var(--accent)}.ring-center-percent{font-size:1.6rem;font-weight:700}.ring-center-text{font-size:.9rem;color:var(--text-dim)}.ring-order{display:flex;flex-direction:column;gap:var(--space-1)}.ring-order span{font-size:.85rem;color:var(--text-dim)}.card-stack{--_duration: var(--stack-duration, .42s);position:relative;overflow:hidden}.card-stack-card{position:absolute;top:0;left:0;width:100%;height:var(--stack-card-height, 180px);padding:0;border:0;border-radius:var(--stack-radius, 16px);background:var(--stack-card-bg, linear-gradient(135deg, #3a3f4b, #1f232b));color:inherit;font:inherit;text-align:left;cursor:pointer;transform-origin:50% 0;transition:transform var(--_duration) cubic-bezier(.32,.72,0,1);box-shadow:0 -1px #ffffff14,0 -8px 20px #00000047}.card-stack-card:focus-visible{outline:2px solid var(--stack-focus-color, #fff);outline-offset:-4px}.card-stack[data-mode=fanned] .card-stack-card{transition-delay:calc(var(--stack-index, 0) * 30ms)}.card-stack[data-mode=stacked] .card-stack-card{transition-delay:calc((var(--stack-count, 1) - 1 - var(--stack-index, 0)) * 30ms)}@media(prefers-reduced-motion:reduce){.card-stack-card{transition:none}.card-stack[data-mode] .card-stack-card{transition-delay:0s}}.wallet-stage{max-width:380px;margin:0 auto;padding:20px 16px 24px;border:1px solid var(--border);border-radius:20px;background:var(--surface)}.wallet-header{display:flex;flex-direction:column;gap:4px;margin-bottom:16px}.wallet-header strong{font-size:1.05rem}.wallet-status{font-size:.85rem;color:var(--text-dim);font-variant-numeric:tabular-nums}.wallet-card{display:flex;flex-direction:column;height:100%;padding:0 var(--space-4) var(--space-4);border-radius:inherit;color:#fff;box-sizing:border-box}.wallet-card-head{display:flex;align-items:center;justify-content:space-between;height:var(--stack-peek, 56px);font-size:.85rem;letter-spacing:.02em;opacity:.9}.wallet-card-logo{opacity:.85}.wallet-card-title{font-size:1.15rem;line-height:1.25}.wallet-card-body{margin-top:auto;font-size:1.5rem;font-weight:700;font-variant-numeric:tabular-nums}.wallet-card-footer{margin-top:4px;font-size:.8rem}.wallet-card[data-theme=points]{background:#17654b}.wallet-card[data-theme=coupon]{background:#b0442a}.wallet-card[data-theme=prepaid]{background:#4656b4}.wallet-card[data-theme=regular]{background:#7d6430}.controls kbd{padding:1px var(--space-1);border:1px solid var(--border);border-radius:4px;font-size:.85em}.stretchy-container{position:relative;overflow-y:auto;touch-action:pan-y;overscroll-behavior:contain}.stretchy-header{--_height: var(--stretch-height, 240px);--_duration: var(--stretch-duration, .3s);position:relative;height:var(--_height);background:var(--stretch-bg, #0b0d12)}.stretchy-header-clip{position:absolute;top:-200%;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.stretchy-header-image{position:absolute;right:0;bottom:0;left:0;width:100%;height:var(--_height);object-fit:cover;transform-origin:top center;will-change:transform;transition:none}.stretchy-header-image[data-stretch=release]{transition:transform var(--_duration) cubic-bezier(.22,1,.36,1)}.stretchy-header-overlay{position:absolute;right:0;bottom:0;left:0;padding:2.5rem 1.25rem 1rem;color:#fff;background:linear-gradient(to bottom,transparent,rgba(0,0,0,.72));text-shadow:0 1px 2px rgba(0,0,0,.4)}@media(prefers-reduced-motion:reduce){.stretchy-header-image{transition:none}}.stretchy-demo-frame{height:600px;max-width:400px;margin:0 auto;border:1px solid var(--border);border-radius:20px;background:var(--surface);--stretch-bg: var(--surface);-webkit-user-select:none;user-select:none}.stretchy-demo-title{margin:0;font-size:1.6rem;line-height:1.2}.stretchy-demo-subtitle{margin:var(--space-1) 0 0;font-size:.85rem;opacity:.85}.stretchy-demo-menu{position:relative;list-style:none;margin:0;padding:.5rem 0 1rem;background:var(--surface)}.stretchy-demo-item{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:var(--space-4) 1.25rem;border-bottom:1px solid var(--border)}.stretchy-demo-item div{display:flex;flex-direction:column;gap:var(--space-1)}.stretchy-demo-item span{color:var(--text-dim);font-size:.8rem}.stretchy-demo-item em{font-style:normal;font-variant-numeric:tabular-nums;color:var(--accent);white-space:nowrap}.stretchy-demo-frame:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.edge-swipe{--_shift: var(--edge-shift, 30%);--_dim: var(--edge-dim, .4);position:relative;overflow:hidden;touch-action:pan-y;overscroll-behavior-x:contain}.edge-swipe-screen,.edge-swipe-underlay{position:absolute;top:0;right:0;bottom:0;left:0}.edge-swipe-screen{z-index:3;background:var(--edge-screen-bg, #fff);box-shadow:-8px 0 24px #0003;will-change:transform}.edge-swipe-underlay{z-index:1;transform:translate(calc(-1 * var(--_shift)))}.edge-swipe-dim{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;background:#000;opacity:var(--_dim);pointer-events:none}.edge-swipe[data-edge-swipe]{-webkit-user-select:none;user-select:none}@media(prefers-reduced-motion:reduce){.edge-swipe-screen{box-shadow:none}}.esb-stage{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);padding:var(--space-6);border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface)}.esb-phone{display:flex;flex-direction:column;width:min(360px,100%);height:520px;border:1px solid var(--border);border-radius:20px;background:var(--bg);overflow:hidden}.esb-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);background:var(--surface)}.esb-title{flex:1;font-size:var(--text-body);text-align:center}.esb-stage .esb-back{padding:var(--space-1) var(--space-2);border:none;background:transparent;color:var(--accent);font-size:var(--text-small)}.esb-back-placeholder,.esb-depth{width:3.5rem;color:var(--text-dim);font-size:var(--text-caption);text-align:right}.esb-view{flex:1;--edge-screen-bg: var(--bg)}.esb-screen{overflow-y:auto}.esb-list,.esb-reviews{list-style:none;margin:0;padding:var(--space-2) 0}.esb-stage .esb-row{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);border:none;border-radius:0;background:transparent;text-align:left}.esb-stage .esb-row:hover{background:var(--accent-soft)}.esb-row-thumb{flex:none;inline-size:48px;block-size:48px;border-radius:var(--radius-control)}.esb-row-body{display:flex;flex-direction:column;flex:1;gap:2px}.esb-row-desc{color:var(--text-dim);font-size:var(--text-caption)}.esb-row-price{color:var(--text-dim);font-size:var(--text-small);font-variant-numeric:tabular-nums}.esb-detail{display:flex;flex-direction:column;align-items:flex-start;padding-bottom:var(--space-6)}.esb-detail-hero{align-self:stretch;inline-size:auto;block-size:auto;aspect-ratio:16 / 9}.esb-detail-name{margin:var(--space-4) var(--space-4) var(--space-1)}.esb-detail-price{margin:0 var(--space-4);color:var(--accent);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums}.esb-detail-desc{margin:var(--space-3) var(--space-4) var(--space-6);color:var(--text-dim);font-size:var(--text-small)}.esb-stage .esb-more{margin-inline:var(--space-4);border:1px solid var(--border);background:transparent;font-size:var(--text-small)}.esb-hint{margin:var(--space-8) var(--space-4) 0;color:var(--text-dim);font-size:var(--text-caption)}.esb-reviews li{padding:var(--space-4);border-bottom:1px solid var(--border);color:var(--text-dim);font-size:var(--text-small)}.esb-log{margin:0;color:var(--text-dim);font-size:var(--text-small);text-align:center}:root{--motion-duration-instant: .1s;--motion-duration-fast: .15s;--motion-duration-base: .25s;--motion-duration-slow: .35s;--motion-duration-page: .42s;--motion-exit-ratio: .75;--motion-ease-out: cubic-bezier(.22, 1, .36, 1);--motion-ease-in-out: cubic-bezier(.65, 0, .35, 1);--motion-ease-drawer: cubic-bezier(.32, .72, 0, 1);--motion-ease-overshoot: cubic-bezier(.34, 1.56, .64, 1);--motion-ease-linear: linear;--motion-stagger: 30ms}@media(prefers-reduced-motion:reduce){:root{--motion-duration-instant: 1ms;--motion-duration-fast: 1ms;--motion-duration-base: 80ms;--motion-duration-slow: 80ms;--motion-duration-page: .12s;--motion-stagger: 0ms}}.mp-stage{display:flex;flex-direction:column;gap:1.25rem;padding:1.5rem;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.mp-compare{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem}.mp-lane{display:flex;flex-direction:column;gap:.75rem}.mp-curve{width:120px;height:120px;fill:none;stroke:var(--accent);stroke-width:2.5;stroke-linecap:round}.mp-curve line{stroke:var(--border);stroke-width:1.5}.mp-track{position:relative;height:72px;border-radius:12px;background:var(--bg)}.mp-card{position:absolute;top:12px;left:12px;display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:var(--accent-soft);border:1px solid var(--accent);color:var(--accent);transition:transform var(--demo-duration) var(--demo-ease)}.mp-card[data-moved=true]{transform:translate(calc(100% + 160px))}.mp-card[data-moved=false]{transition-duration:var(--demo-exit)}.mp-ease-value{font-size:.75rem;color:var(--text-dim)}.mp-actions{display:flex;gap:.5rem}.mp-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.5rem}.mp-item{padding:var(--space-2) var(--space-3);border-radius:8px;background:var(--bg);border:1px solid var(--border);animation:mp-item-in var(--motion-duration-base) var(--motion-ease-out) both;animation-delay:var(--delay, 0ms)}@keyframes mp-item-in{0%{opacity:0;transform:translateY(12px)}}@media(prefers-reduced-motion:reduce){.mp-card{transition-duration:1ms}.mp-item{animation:mp-item-fade var(--motion-duration-base) linear both;animation-delay:0ms}@keyframes mp-item-fade{0%{opacity:0}}}.ma-sample-group{display:flex;flex-direction:column;gap:var(--space-2);font-size:.85rem}.ma-sample-title{color:var(--text-dim)}.ma-samples{display:flex;gap:.5rem;flex-wrap:wrap}.controls input[type=text]{font:inherit;font-size:1rem;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-control);padding:var(--space-2)}.ma-stage{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:1rem}.ma-input{min-height:420px;padding:1rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1rem;line-height:1.5;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:12px;resize:vertical;-moz-tab-size:2;tab-size:2}.ma-result{display:flex;flex-direction:column;gap:.75rem;padding:1rem;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.ma-summary{font-weight:700}.ma-summary[data-clean=true]{color:#34c759}.ma-findings{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.ma-finding{padding:var(--space-1) 0 var(--space-1) var(--space-3);border-left:3px solid #f59e0b}.ma-finding[data-severity=error]{border-left-color:#ef4444}.ma-finding code{font-size:.75rem;color:var(--accent)}.ma-rule{margin-left:.5rem;font-size:.75rem;color:var(--text-dim)}.ma-finding p{margin:.25rem 0 0;font-size:.85rem}.ma-fix{color:var(--text-dim)}@media(pointer:fine){.ma-input{font-size:.8rem}.controls input[type=text]{font-size:.85rem}}:root{--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-6: 24px;--space-8: 32px;--space-12: 48px;--space-16: 64px;--gap-item: var(--space-2);--gap-group: var(--space-6);--gap-section: var(--space-8);--band: var(--space-2);--page-inline: var(--space-4);--content-max: 1120px;--text-caption: 12px;--text-small: 14px;--text-body: 16px;--text-heading: 20px;--text-title: 24px;--text-display: 32px;--text-hero: 40px;--leading-tight: 1.3;--leading-body: 1.5;--weight-regular: 400;--weight-semibold: 600;--weight-bold: 700;--radius-control: 8px;--radius-card: 12px;--radius-sheet: 24px;--radius-full: 999px;--measure: 65ch;--tap-min: 44px;--control-height: 48px;--ratio-square: 1 / 1;--ratio-photo: 4 / 3;--ratio-wide: 16 / 9;--color-text: #1b1e24;--color-text-secondary: #4b5260;--color-text-tertiary: #646b77;--color-line: #e4e6ea;--color-surface: #ffffff;--color-canvas: #f2f3f5;--color-accent: #1b1e24;--color-on-accent: #ffffff;--color-danger: #c8341f;--color-success: #13795b;--color-rise: #d0262d;--color-fall: #1b64da}@media(min-width:768px){:root{--page-inline: var(--space-6);--gap-section: var(--space-12)}}.lp-example{display:grid;gap:var(--space-4)}.lp-example-head{display:grid;gap:var(--space-1)}.lp-example-head h2{margin:0;font-size:var(--text-heading);line-height:var(--leading-tight)}.lp-example-head p{margin:0;font-size:var(--text-small);color:var(--text-dim)}.lp-compare{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--space-6)}.lp-compare[data-view=before],.lp-compare[data-view=after]{grid-template-columns:minmax(0,420px)}.lp-pane{display:grid;gap:var(--space-2);align-content:start}.lp-pane-label{margin:0;font-size:var(--text-caption);font-weight:var(--weight-semibold)}.lp-pane[data-tone=before] .lp-pane-label{color:#f87171}.lp-pane[data-tone=after] .lp-pane-label{color:#34d399}.lp-screen{padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-card);background:var(--bg)}.lp-screen[data-flush]{padding:0;overflow:hidden}.lp-pane-note{margin:0;font-size:var(--text-small);color:var(--text-dim)}.lp-a-title{margin:0;font-size:var(--text-heading);font-weight:var(--weight-bold);line-height:var(--leading-tight)}.lp-a-name{font-size:var(--text-body);font-weight:var(--weight-semibold)}.lp-a-sub{font-size:var(--text-small);color:var(--text-dim)}.lp-a-amount{font-variant-numeric:tabular-nums;text-align:end;white-space:nowrap}.lp-a-order{display:grid;gap:var(--space-2)}.lp-a-rows{margin:0;padding:0;list-style:none}.lp-a-row{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4);padding-block:var(--space-3);border-bottom:1px solid var(--border)}.lp-a-row-text{display:grid;gap:var(--space-1);min-inline-size:0}.lp-a-total{display:flex;justify-content:space-between;padding-block-start:var(--space-2);font-weight:var(--weight-bold)}.lp-a-intro{display:grid;justify-items:start;gap:var(--gap-item)}.lp-a-body{margin:0;max-inline-size:var(--measure);font-size:var(--text-body);line-height:var(--leading-body)}.lp-a-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin:0;font-size:var(--text-small);color:var(--text-dim)}.lp-a-divider{inline-size:1px;block-size:12px;background:var(--border)}.lp-a-primary{min-block-size:var(--tap-min);margin-block-start:var(--space-2);padding-inline:var(--space-6);border:none;border-radius:var(--radius-control);background:var(--accent);color:#0f1115;font-weight:var(--weight-semibold)}.lp-a-primary:hover{border:none;background:#8db9ff}.lp-a-link{min-block-size:var(--tap-min);padding-inline:var(--space-2);border:none;background:none;color:var(--text-dim);text-decoration:underline;text-underline-offset:3px}.lp-a-link:hover{border:none;background:none;color:var(--text)}.lp-a-pay{display:grid;gap:var(--gap-group)}.lp-a-key{display:grid;gap:var(--space-1)}.lp-a-display{font-size:var(--text-display);font-weight:var(--weight-bold);line-height:var(--leading-tight);font-variant-numeric:tabular-nums}.lp-a-receipt{display:grid;gap:var(--space-2);margin:0}.lp-a-receipt-row{display:flex;justify-content:space-between;gap:var(--space-4);font-size:var(--text-small)}.lp-a-receipt-row dt{color:var(--text-dim)}.lp-a-receipt-row dd{margin:0}.lp-a-menu{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-3) var(--space-4)}.lp-a-menu-text{display:grid;gap:var(--space-1)}.lp-a-tags{font-size:var(--text-caption);color:var(--text-dim)}.lp-a-price{font-weight:var(--weight-bold);font-variant-numeric:tabular-nums}.lp-a-actions{grid-column:1 / -1;display:flex;align-items:center;gap:var(--space-2)}.lp-a-actions .lp-a-primary{margin-block-start:0}.lp-a-photo{display:grid;gap:var(--space-3);margin:0}.lp-a-photo-img{display:block;inline-size:100%;block-size:auto;aspect-ratio:var(--ratio-photo);object-fit:cover;border-radius:var(--radius-control)}.lp-a-photo-text{display:grid;gap:var(--space-1)}.lp-a-detail{display:grid;grid-template-rows:minmax(0,1fr) auto;block-size:560px}.lp-a-detail-scroll{overflow-y:auto;overscroll-behavior:contain}.lp-a-detail-photo{display:block;inline-size:100%;block-size:auto;aspect-ratio:var(--ratio-photo);object-fit:cover}.lp-a-detail-body{display:grid;gap:var(--gap-group);padding:var(--space-4) var(--page-inline) var(--space-6)}.lp-a-detail-head{display:grid;gap:var(--space-1)}.lp-a-detail-name{font-size:var(--text-title);font-weight:var(--weight-bold);line-height:var(--leading-tight)}.lp-a-options{display:grid;min-inline-size:0;margin:0;padding:0;border:0}.lp-a-options-title{margin-block-end:var(--space-2);padding:0;font-size:var(--text-small);font-weight:var(--weight-semibold)}.lp-a-option{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);min-block-size:var(--tap-min);border-bottom:1px solid var(--border);cursor:pointer}.lp-a-option input{margin:0;accent-color:var(--accent)}.lp-a-buybar{display:flex;gap:var(--space-2);padding:var(--space-3) var(--page-inline) calc(var(--space-3) + env(safe-area-inset-bottom,0px));border-top:1px solid var(--border);background:var(--bg)}.lp-a-icon-button{flex:none;inline-size:var(--control-height);min-block-size:var(--control-height);padding:0;border:1px solid var(--border);border-radius:var(--radius-control);background:none;color:var(--text);display:grid;place-items:center}.lp-a-icon-button:hover{border-color:var(--text-dim);background:none}.lp-a-buy{flex:1;min-block-size:var(--control-height);border:none;border-radius:var(--radius-control);background:var(--accent);color:#0f1115;font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums}.lp-a-buy:hover{border:none;background:#8db9ff}.lp-tokens{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:var(--gap-group)}.lp-token-group{display:grid;gap:var(--space-3);align-content:start}.lp-token-title{margin:0;font-size:var(--text-small);color:var(--text-dim)}.lp-token-list{display:grid;gap:var(--space-2);margin:0;padding:0;list-style:none}.lp-token-row{display:grid;grid-template-columns:8.5rem minmax(5.5rem,1fr) 3rem;align-items:center;gap:var(--space-3)}.lp-token-row code{font-size:var(--text-caption);color:var(--accent)}.lp-token-value{font-size:var(--text-caption);color:var(--text-dim);font-variant-numeric:tabular-nums;text-align:end}.lp-space-bar{inline-size:var(--bar);block-size:8px;border-radius:2px;background:var(--accent)}.lp-type-sample{line-height:var(--leading-tight);white-space:nowrap}.lp-radius-swatch{inline-size:80px;block-size:64px;border:2px solid var(--accent)}.lp-screen[data-light]{border-color:var(--color-line);background:var(--color-surface);color:var(--color-text)}.lp-t-page{--color-accent: #8a4b1f;display:grid;align-content:start;gap:var(--space-2);padding:var(--space-6) var(--page-inline) var(--space-8);background:var(--color-canvas);color:var(--color-text)}.lp-t-title{margin:0 0 var(--space-4);font-size:var(--text-title);font-weight:var(--weight-bold);line-height:var(--leading-tight);word-break:keep-all}.lp-t-group-label{margin:var(--space-4) 0 0;padding-inline:var(--space-1);font-size:var(--text-small);color:var(--color-text-tertiary)}.lp-t-group{margin:0;padding:0;list-style:none;border-radius:var(--radius-card);background:var(--color-surface);overflow:hidden}.lp-t-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);box-sizing:border-box;inline-size:100%;min-block-size:56px;padding:var(--space-3) var(--space-4);cursor:pointer}.lp-t-group li+li .lp-t-row{border-top:1px solid var(--color-line)}.lp-t-row-button{border:0;border-radius:0;background:none;color:inherit;font:inherit;text-align:start}.lp-t-row-button:hover{border:0;background:var(--color-canvas)}.lp-t-row-text{display:grid;gap:var(--space-1);min-inline-size:0}.lp-t-label{font-size:var(--text-body);color:var(--color-text)}.lp-t-desc{margin:0;font-size:var(--text-small);color:var(--color-text-tertiary)}.lp-t-value{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-body);color:var(--color-text-secondary)}.lp-t-chevron{inline-size:8px;block-size:8px;border-top:2px solid var(--color-text-tertiary);border-right:2px solid var(--color-text-tertiary);transform:rotate(45deg)}.lp-t-switch{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;flex:none;inline-size:48px;block-size:28px;margin:0;border-radius:var(--radius-full);background:color-mix(in srgb,var(--color-text-tertiary) 55%,var(--color-surface));cursor:pointer;transition:background-color var(--motion-duration-instant) var(--motion-ease-out)}.lp-t-switch:after{content:"";position:absolute;inset-block-start:4px;inset-inline-start:4px;inline-size:20px;block-size:20px;border-radius:var(--radius-full);background:var(--color-surface);transition:transform var(--motion-duration-fast) var(--motion-ease-out)}.lp-t-switch:checked{background:var(--color-accent)}.lp-t-switch:checked:after{transform:translate(20px)}.lp-t-switch:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.lp-t-quiet{justify-self:start;min-block-size:var(--tap-min);margin-block-start:var(--space-2);padding-inline:var(--space-1);border:0;background:none;color:var(--color-text-tertiary);font-size:var(--text-small);text-decoration:underline;text-underline-offset:3px}.lp-t-quiet:hover{border:0;background:none;color:var(--color-text-secondary)}.lp-t-login{gap:var(--space-4);margin:0;background:var(--color-surface)}.lp-t-login .lp-t-title{margin-block-end:var(--space-2)}.lp-t-field{display:grid;gap:var(--space-2)}.lp-t-field-label{font-size:var(--text-small);color:var(--color-text-secondary)}.lp-t-input{box-sizing:border-box;inline-size:100%;min-block-size:var(--control-height);padding-inline:var(--space-4);border:1px solid transparent;border-radius:var(--radius-control);background:var(--color-canvas);color:var(--color-text);font:inherit;font-size:var(--text-body)}.lp-t-input::placeholder{color:var(--color-text-tertiary)}.lp-t-input:focus-visible{outline:none;border-color:var(--color-accent)}.lp-t-primary{min-block-size:var(--control-height);margin-block-start:var(--space-2);border:0;border-radius:var(--radius-control);background:var(--color-accent);color:var(--color-on-accent);font-size:var(--text-body);font-weight:var(--weight-semibold)}.lp-t-primary:hover{border:0;background:color-mix(in srgb,var(--color-accent) 88%,var(--color-text))}.lp-t-links{display:flex;justify-content:center;align-items:center;gap:var(--space-3);margin:0;font-size:var(--text-small)}.lp-t-links a{color:var(--color-text-secondary);text-decoration:underline;text-underline-offset:3px}.lp-t-links-divider{inline-size:1px;block-size:12px;background:var(--color-line)}.lp-t-social-label{margin-block-start:var(--space-4);text-align:center}.lp-t-social{position:relative;min-block-size:var(--control-height);border:1px solid transparent;border-radius:var(--radius-control);font-size:var(--text-body);font-weight:var(--weight-semibold)}.lp-t-social-mark{position:absolute;inset-block-start:50%;inset-inline-start:var(--space-4);inline-size:20px;block-size:20px;transform:translateY(-50%);fill:currentcolor}.lp-t-social[data-brand=kakao]{background:#fee500;color:#191919}.lp-t-social[data-brand=kakao]:hover{border-color:transparent;background:#f4dc00}.lp-t-social[data-brand=naver]{border-color:var(--color-line);background:var(--color-surface);color:var(--color-text)}.lp-t-social[data-brand=naver] .lp-t-social-mark{fill:#03c75a}.lp-t-social[data-brand=naver]:hover{border-color:var(--color-text-tertiary);background:var(--color-surface)}.lp-t-chat{--color-accent: #1b1e24;display:grid;grid-template-rows:auto 1fr auto;min-block-size:560px;background:var(--color-surface);color:var(--color-text)}.lp-t-chat-head{display:flex;align-items:center;justify-content:space-between;min-block-size:48px;padding-inline:var(--space-2)}.lp-t-model{display:inline-flex;align-items:center;gap:var(--space-1);min-block-size:var(--tap-min);padding-inline:var(--space-2);border:none;border-radius:var(--radius-control);background:none;color:var(--color-text);font:inherit;font-weight:var(--weight-semibold)}.lp-t-chat-actions{display:flex}.lp-t-icon-button{display:inline-grid;place-items:center;inline-size:36px;block-size:36px;border:none;border-radius:var(--radius-control);background:none;color:var(--color-text-secondary)}.lp-t-icon-button:hover,.lp-t-model:hover{background:var(--color-canvas)}.lp-t-icon{inline-size:20px;block-size:20px;fill:none;stroke:currentcolor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.lp-t-chat-log{display:grid;align-content:start;gap:var(--space-6);padding:var(--space-4) var(--page-inline)}.lp-t-bubble{justify-self:end;max-inline-size:80%;margin:0;padding:var(--space-2) var(--space-4);border-radius:var(--radius-card);background:var(--color-canvas);line-height:var(--leading-body)}.lp-t-answer{display:grid;gap:var(--space-2);line-height:var(--leading-body)}.lp-t-answer p{margin:0}.lp-t-answer .lp-t-answer-foot{display:flex;align-items:center;gap:var(--space-1);margin-inline-start:calc(var(--space-2) * -1)}.lp-t-chat-error{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin:0}.lp-t-error-text{color:var(--color-danger)}.lp-t-text-button{min-block-size:var(--tap-min);padding:0;border:none;background:none;color:var(--color-text);font:inherit;font-weight:var(--weight-semibold);text-decoration:underline;text-underline-offset:3px}.lp-t-composer{display:grid;gap:var(--space-1);margin:0 var(--page-inline) var(--space-4);padding:var(--space-2) var(--space-2) var(--space-2) var(--space-4);border:1px solid var(--color-line);border-radius:var(--radius-card)}.lp-t-composer:focus-within{border-color:var(--color-text-tertiary)}.lp-t-attach{display:flex;align-items:center;gap:var(--space-2);margin:0;font-size:var(--text-small);color:var(--color-text-secondary)}.lp-t-attach .lp-t-icon{inline-size:16px;block-size:16px}.lp-t-attach .lp-t-text-button{min-block-size:auto;font-weight:var(--weight-regular);color:var(--color-text-tertiary)}.lp-t-composer-row{display:flex;align-items:center}.lp-t-composer-input{flex:1;min-inline-size:0;padding:var(--space-2) 0;border:none;background:none;color:var(--color-text);font:inherit;line-height:var(--leading-body);resize:none}.lp-t-composer-input:focus{outline:none}.lp-t-composer-tools{justify-content:space-between}.lp-t-send{display:inline-grid;place-items:center;inline-size:36px;block-size:36px;border:none;border-radius:var(--radius-full);background:var(--color-accent);color:var(--color-on-accent)}.lp-t-send:hover:not(:disabled){border:none;background:var(--color-text-secondary)}.lp-t-text-button:hover{border:none;background:none;color:var(--color-text-secondary)}.lp-t-icon-button:hover,.lp-t-model:hover{border:none}.lp-t-send:disabled{background:var(--color-canvas);color:var(--color-text-tertiary)}.lp-t-sr{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(prefers-reduced-motion:reduce){.lp-t-switch,.lp-t-switch:after{transition-duration:var(--motion-duration-instant)}}.lp-b-stack{display:flex;flex-direction:column;gap:14px}.lp-b-title{margin:0;font-size:18px;font-weight:800}.lp-b-strong{margin:0;font-size:15px;font-weight:700}.lp-b-card{display:flex;flex-direction:column;gap:14px;padding:14px;border:1px solid rgba(167,139,250,.4);border-radius:18px;background:linear-gradient(135deg,#8b5cf629,#ec48991a);box-shadow:0 10px 30px #8b5cf640}.lp-b-inner-box{padding:10px;border-radius:10px;background:#ffffff14;font-weight:700}.lp-b-center{display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center}.lp-b-text{margin:0;font-size:13px;color:#5d6472}.lp-b-fill{align-self:center;padding:10px 22px;border:none;border-radius:999px;background:linear-gradient(90deg,#8b5cf6,#ec4899);color:#fff;font-weight:800;box-shadow:0 0 24px #ec48998c}.lp-b-menu{display:flex;flex-direction:column;align-items:center;gap:10px;padding:20px;border-radius:22px;background:linear-gradient(135deg,#8b5cf64d,#ec489940);box-shadow:0 0 36px #ec489959;text-align:center}.lp-b-gradient-text{margin:0;font-size:22px;font-weight:800;background:linear-gradient(90deg,#a78bfa,#f472b6);background-clip:text;-webkit-background-clip:text;color:transparent}.lp-b-badges,.lp-b-actions{display:flex;gap:6px}.lp-b-pill{padding:2px 10px;border-radius:999px;font-size:11px;font-weight:800;color:#fff}.lp-b-pill-red{background:#ef4444}.lp-b-pill-green{background:#10b981}.lp-b-pill-blue{background:#3b82f6}.lp-b-photo{position:relative}.lp-b-photo-img{display:block;inline-size:100%;block-size:120px;object-fit:fill;border-radius:18px}.lp-b-photo-text{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;text-align:center;color:#fff;font-weight:800}.lp-b-photo-text p{margin:0}.lp-b-detail{display:flex;flex-direction:column;gap:14px;block-size:560px;padding:14px;overflow-y:auto}.lp-b-detail-photo{display:block;inline-size:100%;block-size:auto;border-radius:10px}.lp-b-settings{display:flex;flex-direction:column;gap:14px;padding:22px 18px;background:#fff;color:#111827}.lp-b-plain-card{display:flex;flex-direction:column;gap:14px;padding:18px;border:1px solid #e5e7eb;border-radius:16px;background:#fff;box-shadow:0 4px 20px #00000014}.lp-b-setting-row{display:flex;justify-content:space-between;align-items:center;gap:14px}.lp-b-faint{margin:0;font-size:14px;color:#9ca3af}.lp-b-toggle{flex:none;inline-size:44px;block-size:24px;border-radius:999px;background:#d1d5db}.lp-b-toggle[data-on]{background:#2563eb}.lp-b-blue-fill{align-self:stretch;min-block-size:44px;border:none;border-radius:10px;background:#2563eb;color:#fff;font-weight:700}.lp-b-login{display:flex;flex-direction:column;gap:10px;padding:22px 18px;background:#fff;color:#111827}.lp-b-input{padding:13px 14px;border:1px solid #d1d5db;border-radius:10px;color:#9ca3af}.lp-b-outline{align-self:stretch;min-block-size:44px;border:1px solid #d1d5db;border-radius:10px;background:#fff;color:#111827;font-weight:700}.lp-b-chat{display:flex;flex-direction:column;gap:10px;padding:14px;background:#fff;color:#111827;font-size:13px}.lp-b-chat-bar{display:flex;align-items:center;gap:6px;padding-bottom:6px;border-bottom:1px solid #e5e7eb}.lp-b-chat-sub{color:#6b7280}.lp-b-avatar{display:inline-grid;place-items:center;inline-size:20px;block-size:20px;border-radius:6px;background:#ea7a3c;color:#fff;font-size:11px;font-weight:700}.lp-b-pill-amber{padding:1px 6px;border-radius:999px;background:#fef3c7;color:#b45309;font-size:11px;font-weight:700}.lp-b-pill-green{padding:1px 6px;border-radius:999px;background:#dcfce7;color:#16a34a;font-size:11px}.lp-b-bubble-me{align-self:flex-end;margin:0;padding:8px 12px;border-radius:14px;background:#2563eb;color:#fff}.lp-b-answer-head{display:flex;align-items:center;gap:6px;margin:0 0 4px;font-weight:700}.lp-b-error{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:12px;border-radius:10px;background:#fde8e8}.lp-b-gray-pill{padding:6px 12px;border:none;border-radius:999px;background:#f3f4f6;color:#374151;font:inherit}.lp-b-error .lp-b-gray-pill{background:#fff}.lp-b-chips{display:flex;flex-wrap:wrap;gap:6px}.lp-b-composer{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:10px;border:1px solid #d1d5db;border-radius:14px}.lp-b-attach{display:flex;align-items:center;gap:6px;margin:0;padding:6px 8px;align-self:stretch;border-radius:8px;background:#fff7e6}.la-sample-group{display:flex;flex-direction:column;gap:var(--space-2);font-size:.85rem}.la-sample-title{color:var(--text-dim)}.la-samples{display:flex;gap:.5rem;flex-wrap:wrap}.la-stage{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:1rem}.la-input{min-height:420px;padding:1rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1rem;line-height:1.5;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:12px;resize:vertical;-moz-tab-size:2;tab-size:2}.la-result{display:flex;flex-direction:column;gap:.75rem;padding:1rem;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.la-summary{font-weight:700}.la-summary[data-clean=true]{color:#34c759}.la-findings{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.la-finding{padding:var(--space-1) 0 var(--space-1) var(--space-3);border-left:3px solid #f59e0b}.la-finding[data-severity=error]{border-left-color:#ef4444}.la-finding code{font-size:.75rem;color:var(--accent)}.la-rule{margin-left:.5rem;font-size:.75rem;color:var(--text-dim)}.la-finding p{margin:.25rem 0 0;font-size:.85rem}.la-fix{color:var(--text-dim)}@media(pointer:fine){.la-input{font-size:.8rem}}.gnav{--_duration: var(--gnav-duration, .25s);--_ease: cubic-bezier(.22, 1, .36, 1);--_blur: var(--gnav-blur, 16px);--_tint: var(--gnav-tint, rgba(255, 255, 255, .14));--_border: var(--gnav-border, rgba(255, 255, 255, .3));--_radius: var(--gnav-radius, 999px);--_color: var(--gnav-color, #fff);--_active-bg: var(--gnav-active-bg, rgba(255, 255, 255, .18));position:sticky;top:0;z-index:30;padding:8px 12px;color:var(--_color);transition:transform var(--_duration) var(--_ease);pointer-events:none}.gnav[data-hidden=true]{transform:translateY(calc(-100% - 8px))}.gnav-bar{display:flex;align-items:center;gap:12px;width:max-content;max-width:100%;margin-inline:auto;padding:8px 14px;border:1px solid transparent;border-radius:var(--_radius);background:transparent;box-shadow:0 8px 32px #0000;pointer-events:auto;transition:background var(--_duration) var(--_ease),border-color var(--_duration) var(--_ease),box-shadow var(--_duration) var(--_ease),backdrop-filter var(--_duration) var(--_ease);-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0)}.gnav[data-elevated=true] .gnav-bar{background:var(--_tint);border-color:var(--_border);box-shadow:inset 0 1px #ffffff59,0 8px 32px #0000002e;-webkit-backdrop-filter:blur(var(--_blur)) saturate(160%);backdrop-filter:blur(var(--_blur)) saturate(160%)}.gnav-brand{color:inherit;text-decoration:none;font-weight:700;white-space:nowrap}.gnav-links{display:grid;grid-template-columns:1fr;transition:grid-template-columns var(--_duration) var(--_ease),opacity calc(var(--_duration) * .6) var(--_ease)}.gnav-links>*{position:relative;display:flex;gap:4px;min-width:0;overflow:hidden}.gnav-links a{position:relative;z-index:1;color:inherit;text-decoration:none;padding:6px 10px;border-radius:999px;font-size:.9rem;opacity:.8;white-space:nowrap}.gnav-links a[aria-current=page]{opacity:1;background:var(--_active-bg)}.gnav-pill{position:absolute;top:0;bottom:0;left:0;width:0;border-radius:999px;background:var(--_active-bg);pointer-events:none;transition:transform var(--_duration) var(--_ease),width var(--_duration) var(--_ease)}.gnav-links:has(.gnav-pill) a[aria-current=page]{background:transparent}.gnav[data-compact=true] .gnav-links{grid-template-columns:0fr;opacity:0}.gnav-current{display:none;padding:6px 10px;border-radius:999px;background:var(--_active-bg);font-size:.9rem;white-space:nowrap;animation:gnav-current-in var(--_duration) var(--_ease) both}.gnav[data-compact=true] .gnav-current{display:block}@keyframes gnav-current-in{0%{opacity:0;transform:translate(-6px)}}@media(prefers-reduced-motion:reduce){.gnav,.gnav-bar,.gnav-links,.gnav-pill{transition:none}.gnav-current{animation:none}}.gn-mode{display:flex;flex-direction:column;gap:var(--space-1)}.gn-mode label{flex-wrap:wrap}.gn-mode small{flex-basis:100%;padding-left:calc(13px + var(--space-2));color:var(--text-dim);font-size:var(--text-caption)}.gn-phone{position:relative;width:100%;height:600px;max-width:420px;margin:0 auto;overflow-y:auto;border-radius:24px;border:1px solid var(--border);background:linear-gradient(180deg,#1d2b64,#5b3a8f 38%,#171a21 62%);color:#fff;--gnav-tint: rgba(255, 255, 255, .14)}.gn-hero{padding:104px 24px 32px;margin-top:-56px}.gn-hero-badge{display:inline-block;padding:var(--space-1) var(--space-2);border-radius:999px;background:#ffffff2e;font-size:.75rem}.gn-hero h2{margin:12px 0 4px;font-size:1.6rem}.gn-hero p{margin:0;opacity:.8}.gn-section{padding-top:8px}.gn-section h3{margin:0 var(--space-4) var(--space-2);font-size:1.1rem}.gn-list{list-style:none;margin:0;padding:0 var(--space-4) var(--space-6);display:flex;flex-direction:column}.gn-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid rgba(255,255,255,.12)}.gn-item-photo{flex:none;inline-size:56px;block-size:56px;border-radius:var(--radius-control)}.gn-item-icon{inline-size:56px;color:#ffffffb3}.gnav-brand{display:inline-flex;align-items:center;gap:var(--space-2)}.gn-item div{flex:1}.gn-item p{margin:2px 0 0;font-size:.85rem;opacity:.75}.gn-item-price{font-weight:700;white-space:nowrap}.gn-end{text-align:center;padding:24px 0 40px;margin:0;opacity:.6;font-size:.85rem}.bottom-nav{--_height: var(--bottom-nav-height, 56px);--_color: var(--bottom-nav-color, #646b77);--_current: var(--bottom-nav-current, #1b1e24);--_duration: var(--bottom-nav-duration, .25s);--_ease: cubic-bezier(.22, 1, .36, 1);position:fixed;inset-inline:0;bottom:0;z-index:var(--bottom-nav-z, 50);max-width:var(--bottom-nav-max-width, none);margin-inline:auto;padding-bottom:env(safe-area-inset-bottom);background:var(--bottom-nav-bg, #fff);border-top:1px solid var(--bottom-nav-line, #e3e5e9);transition:transform var(--_duration) var(--_ease),visibility 0s}.bottom-nav[data-hidden=true]{visibility:hidden;transform:translateY(100%);transition:transform calc(var(--_duration) * .75) var(--_ease),visibility 0s calc(var(--_duration) * .75)}.bottom-nav-list{display:grid;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;height:var(--_height);margin:0;padding:0;list-style:none}.bottom-nav-link{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;height:100%;color:var(--_color);font-size:12px;line-height:1.2;text-decoration:none;word-break:keep-all;-webkit-tap-highlight-color:transparent}.bottom-nav-link[aria-current=page]{color:var(--_current);font-weight:600}.bottom-nav-link:focus-visible{outline:2px solid var(--_current);outline-offset:-4px;border-radius:8px}.bottom-nav-icon{position:relative;display:inline-flex;transition:transform .1s var(--_ease)}.bottom-nav-link:active .bottom-nav-icon{transform:scale(.92)}.bottom-nav-label{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bottom-nav-badge{position:absolute;top:-4px;left:calc(100% - 8px);min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:var(--bottom-nav-badge-bg, #c8341f);box-shadow:0 0 0 2px var(--bottom-nav-bg, #fff);color:#fff;font-size:12px;font-weight:700;font-variant-numeric:tabular-nums;line-height:18px;text-align:center}.bottom-nav-badge[data-dot=true]{top:-2px;left:calc(100% - 4px);min-width:8px;width:8px;height:8px;padding:0}.bottom-nav-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(hover:hover){.bottom-nav-link:hover{color:var(--_current)}}@media(prefers-reduced-motion:reduce){.bottom-nav,.bottom-nav[data-hidden=true]{transition:visibility 0s}.bottom-nav-icon{transition:none}.bottom-nav-link:active .bottom-nav-icon{transform:none}}.tbd-phone{--tbd-inset: 0px;position:relative;width:100%;max-width:390px;height:640px;margin:0 auto;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-sheet);background:var(--color-surface);color:var(--color-text);transform:translateZ(0)}.tbd-phone[data-home-indicator=true]{--tbd-inset: 34px}.tbd-phone .bottom-nav{padding-bottom:var(--tbd-inset)}.tbd-screen{height:100%;overflow-y:auto;overscroll-behavior:contain}.tbd-screen[data-tabs=true]{padding-bottom:calc(var(--bottom-nav-height, 56px) + var(--tbd-inset))}.tbd-head{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;min-height:56px;padding:0 var(--space-2) 0 var(--page-inline);background:var(--color-surface)}.tbd-head:has(>.tbd-icon-btn:first-child){padding-left:var(--space-2)}.tbd-title{margin:0;font-size:var(--text-heading);font-weight:var(--weight-bold)}.tbd-icon-btn{position:relative;display:grid;place-items:center;width:var(--tap-min);height:var(--tap-min);padding:0;border:0;border-radius:var(--radius-control);background:none;color:var(--color-text);cursor:pointer}.tbd-count{position:absolute;top:4px;right:2px;min-width:18px;height:18px;padding:0 4px;border-radius:var(--radius-full);background:var(--color-danger);color:var(--color-on-accent);font-size:var(--text-caption);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;line-height:18px;text-align:center}.tbd-section{margin:var(--space-2) var(--page-inline) var(--space-2);font-size:var(--text-body);font-weight:var(--weight-bold)}.tbd-list{margin:0;padding:0;list-style:none}.tbd-row{display:grid;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--page-inline);border:0;background:none;color:inherit;font:inherit;text-align:start;cursor:pointer}.tbd-tile{display:grid;place-items:center;aspect-ratio:var(--ratio-square);border-radius:var(--radius-control);background:var(--color-canvas);color:var(--color-text-tertiary)}.tbd-row-text{display:flex;flex-direction:column;gap:var(--space-1)}.tbd-row-price{font-weight:var(--weight-bold)}.tbd-link-row{display:flex;align-items:center;justify-content:space-between;min-height:52px;padding:0 var(--space-4) 0 var(--page-inline);border-bottom:1px solid var(--color-line)}.tbd-search{padding:var(--space-2) var(--page-inline)}.tbd-search-input{width:100%;height:var(--tap-min);padding:0 var(--space-4);border:0;border-radius:var(--radius-full);background:var(--color-canvas);color:var(--color-text);font:inherit;font-size:var(--text-body)}.tbd-hint{margin:var(--space-3) 0 0;color:var(--color-text-secondary);font-size:var(--text-small)}.tbd-photo{display:grid;place-items:center;aspect-ratio:var(--ratio-square);background:var(--color-canvas);color:var(--color-text-tertiary)}.tbd-detail{padding:var(--space-4) var(--page-inline) 120px}.tbd-detail-name{margin:0;font-size:var(--text-heading);font-weight:var(--weight-semibold)}.tbd-detail-price{margin:var(--space-1) 0 0;font-size:var(--text-title);font-weight:var(--weight-bold)}.tbd-detail-desc{margin:var(--space-4) 0 0;color:var(--color-text-secondary);line-height:var(--leading-body)}.tbd-dock{position:fixed;inset-inline:0;bottom:0;display:flex;gap:var(--space-2);padding:var(--space-3) var(--page-inline) calc(var(--space-3) + var(--tbd-inset));border-top:1px solid var(--color-line);background:var(--color-surface)}.tbd-wish{flex:none;width:var(--control-height);height:var(--control-height);border:1px solid var(--color-line)}.tbd-buy{flex:1;height:var(--control-height);border:0;border-radius:var(--radius-control);background:var(--color-accent);color:var(--color-on-accent);font:inherit;font-weight:var(--weight-bold);cursor:pointer}.tbd-row:focus-visible,.tbd-icon-btn:focus-visible,.tbd-buy:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}@media(prefers-reduced-motion:reduce){.tbd-screen{scroll-behavior:auto}}:root{--bg: #0f1115;--surface: #171a21;--text: #e8eaf0;--text-dim: #9aa1af;--border: #2a2f3a;--accent: #6ea8fe;--accent-soft: rgba(110, 168, 254, .12);color-scheme:dark;--demo-pattern-accent: #2563eb;--ring-color: var(--demo-pattern-accent);--lpm-focus: var(--demo-pattern-accent);--menu-focus: var(--demo-pattern-accent);--otp-accent: var(--demo-pattern-accent);--upload-accent: var(--demo-pattern-accent);--qty-accent: var(--demo-pattern-accent);--check-accent: var(--demo-pattern-accent);--select-accent: var(--demo-pattern-accent);--suggest-accent: var(--demo-pattern-accent);--field-accent: var(--demo-pattern-accent);--segment-focus-color: var(--demo-pattern-accent);--swipe-action-accent-bg: var(--demo-pattern-accent);--range-accent: var(--demo-pattern-accent);--switch-on-bg: var(--demo-pattern-accent)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Pretendard Variable,Pretendard,-apple-system,system-ui,sans-serif;font-size:var(--text-body);word-break:keep-all;line-height:var(--leading-body);accent-color:var(--accent)}button{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-control);padding:var(--space-2) var(--space-4);cursor:pointer;transition:border-color var(--motion-duration-instant) var(--motion-ease-out),background-color var(--motion-duration-instant) var(--motion-ease-out);align-self:flex-start}button:hover{border-color:var(--accent);background:var(--accent-soft)}:where(.dish-photo){display:block;width:100%;height:100%;object-fit:cover;background:var(--color-canvas)}.layout{display:grid;grid-template-columns:256px minmax(0,1fr);min-height:100vh;min-height:100dvh}.sidebar{border-right:1px solid var(--border);padding:var(--space-6) var(--space-4) var(--space-6) var(--space-6);display:flex;flex-direction:column;gap:var(--space-3);position:sticky;top:0;height:100vh;height:100dvh}.brand{font-size:var(--text-heading);font-weight:var(--weight-bold);color:var(--text);text-decoration:none}.brand-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.lang-toggle{padding:var(--space-1) var(--space-2);font-size:var(--text-caption);border-radius:var(--radius-full);align-self:center}.tagline{margin:0;font-size:var(--text-small);color:var(--text-dim)}.nav-toggle{display:none}.nav-toggle-icon{transition:transform var(--motion-duration-fast) var(--motion-ease-out)}.nav-toggle[aria-expanded=true] .nav-toggle-icon{transform:rotate(180deg)}.sidebar nav{display:flex;flex-direction:column;gap:var(--gap-group);margin-top:var(--space-4);padding-bottom:var(--space-4);overflow-y:auto;scrollbar-width:none}.sidebar nav::-webkit-scrollbar{display:none}.nav-group-title{margin:0 0 var(--space-2);font-size:var(--text-small);font-weight:var(--weight-semibold);color:var(--text)}.nav-list{list-style:none;margin:0;padding:0;border-left:1px solid var(--border)}.nav-list a{display:block;margin-left:-1px;padding:var(--space-1) var(--space-3) var(--space-1) var(--space-4);color:var(--text-dim);text-decoration:none;font-size:var(--text-small);line-height:var(--leading-body);scroll-margin-block:var(--space-12);transition:color var(--motion-duration-instant) var(--motion-ease-out),box-shadow var(--motion-duration-instant) var(--motion-ease-out)}.nav-list a:hover{color:var(--text);box-shadow:inset 1px 0 0 var(--text-dim)}.nav-list a[aria-current=page]{color:var(--text);font-weight:var(--weight-semibold);box-shadow:inset 2px 0 0 var(--accent)}.nav-list a:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:var(--radius-control)}.sidebar footer{margin-top:auto;display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4)}.sidebar footer a{color:var(--text-dim);font-size:var(--text-small)}.content{min-width:0;padding:var(--space-12);max-width:880px;width:100%;margin:0 auto}.demo-header{margin-bottom:var(--space-8);display:flex;flex-direction:column;gap:var(--gap-item)}.demo-header h1,.home h1{margin:0;font-size:var(--text-title);line-height:var(--leading-tight)}.demo-header p{margin:0;max-width:var(--measure);color:var(--text-dim)}.demo-header code{font-size:var(--text-caption);color:var(--accent);overflow-wrap:anywhere}.demo-lang-note{font-size:var(--text-small)}.home-intro{margin:var(--space-2) 0 0;color:var(--text-dim);max-width:var(--measure)}.home-links{display:flex;gap:var(--space-4);margin:var(--space-4) 0 0}.home-links a{color:var(--text);font-weight:var(--weight-semibold)}.home-install{margin-top:var(--space-6);max-width:560px;border:1px solid var(--border);border-radius:var(--radius-card);overflow:hidden}.home-install h2{margin:0;font-size:var(--text-body)}.home-install .usage-code{background:var(--surface)}.usage-code:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.home-install-note{margin:0;padding:var(--space-3) var(--space-4);border-top:1px solid var(--border);font-size:var(--text-small);color:var(--text-dim)}.home-search{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-6)}.home-search input{flex:1;min-width:0;max-width:420px;min-height:var(--control-height);font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-control);padding:0 var(--space-4)}.home-search input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.home-search-count{color:var(--text-dim);font-size:var(--text-small)}.home-group h2{font-size:var(--text-small);font-weight:var(--weight-semibold);color:var(--text-dim);margin:var(--space-8) 0 var(--space-3)}.demo-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr));gap:var(--space-3)}.demo-list a{display:flex;flex-direction:column;gap:var(--space-1);height:100%;padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface);color:var(--text);text-decoration:none;transition:border-color var(--motion-duration-instant) var(--motion-ease-out)}.demo-list a:hover{border-color:var(--accent)}.demo-list strong{font-weight:var(--weight-semibold)}.demo-list span{color:var(--text-dim);font-size:var(--text-small)}.home-empty{color:var(--text-dim);margin-top:var(--space-8)}.credits h2{font-size:var(--text-small);font-weight:var(--weight-semibold);color:var(--text-dim);margin:var(--space-8) 0 var(--space-3)}.credits-list{list-style:none;margin:0;padding:0}.credits-list li{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--border)}.credits-thumb{flex:none;inline-size:48px;block-size:48px;border-radius:var(--radius-control)}.credits-body{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.credits-body>span{color:var(--text-dim);font-size:var(--text-small);overflow-wrap:anywhere}.credits-body a{color:var(--text-dim)}.credits-note{margin:0;max-width:var(--measure);color:var(--text-dim)}.usage{margin-top:var(--space-12);border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface);overflow:hidden}.usage-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-4);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border)}.usage-head h2{margin:0;font-size:var(--text-body)}.usage-actions{display:flex;align-items:center;gap:var(--space-4)}.usage-actions a{color:var(--accent);font-size:var(--text-small);text-decoration:none}.usage-code{margin:0;padding:var(--space-4);overflow-x:auto;font-size:var(--text-small);line-height:var(--leading-body);color:var(--text)}.playground{display:flex;flex-direction:column;gap:var(--space-8)}.controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:var(--space-4) var(--space-6);padding-bottom:var(--space-6);border-bottom:1px solid var(--border)}.controls label{display:flex;flex-direction:column;gap:var(--space-2);font-size:var(--text-small)}.controls label>span{color:var(--text-dim);display:flex;justify-content:space-between;gap:var(--space-2)}.controls code{color:var(--accent);font-size:var(--text-caption)}.controls output{font-variant-numeric:tabular-nums;font-size:var(--text-small)}.controls input[type=range]{accent-color:var(--accent);width:100%}.controls label>input[type=checkbox]{align-self:flex-start;accent-color:var(--accent)}.controls select{font:inherit;font-size:var(--text-small);color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-control);padding:var(--space-2);max-width:100%}.controls fieldset{margin:0;padding:0;border:0;min-width:0}.controls legend{padding:0;margin-bottom:var(--space-2);color:var(--text-dim);font-size:var(--text-small)}.controls fieldset label{flex-direction:row;align-items:center;column-gap:var(--space-2);row-gap:0}.controls-note{grid-column:1 / -1;margin:0;max-width:var(--measure);font-size:var(--text-small);color:var(--text-dim)}.controls-inline{display:flex;align-items:center;gap:var(--space-2)}.controls label.controls-inline{flex-direction:row}.controls-inline input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent)}@media(max-width:720px){.layout{grid-template-columns:minmax(0,1fr)}.sidebar{position:static;height:auto;padding:var(--space-4) var(--page-inline);border-right:none;border-bottom:1px solid var(--border)}.lang-toggle{min-height:var(--tap-min);padding-inline:var(--space-3)}.nav-toggle{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);align-self:stretch;min-height:var(--tap-min)}.sidebar[data-menu-open=false] nav,.sidebar[data-menu-open=false] footer{display:none}.sidebar nav{margin-top:var(--space-2);overflow:visible}.nav-list a{display:flex;align-items:center;min-height:var(--tap-min)}.content{padding:var(--space-8) var(--page-inline) var(--space-12)}}@media(prefers-reduced-motion:reduce){button,.nav-list a,.nav-toggle-icon,.demo-list a{transition-duration:1ms}}
