:root{--accent:#3b62f6;--accent-ink:#fff;--accent-hover:color-mix(in oklab, var(--accent) 86%, #000);--accent-press:color-mix(in oklab, var(--accent) 74%, #000);--accent-bg:color-mix(in srgb, var(--accent) 9%, transparent);--accent-bg-strong:color-mix(in srgb, var(--accent) 16%, transparent);--accent-border:color-mix(in srgb, var(--accent) 34%, transparent);--accent-ring:color-mix(in srgb, var(--accent) 28%, transparent);--accent-text:color-mix(in oklab, var(--accent) 88%, #000);--text-h:#12151c;--text:#565e6e;--text-dim:#8b92a1;--bg:#f3f5f9;--surface:#fff;--border:#12182817;--border-strong:#12182829;--code-bg:#f6f7fa;--success:#15803d;--success-bg:#15803d1a;--warn:#a15c00;--warn-bg:#d977061f;--warn-border:#d9770659;--danger:#c62828;--danger-bg:#c6282814;--glass:#ffffffa3;--glass-strong:#ffffffdb;--glass-edge:#ffffffd9;--glass-blur:blur(22px) saturate(1.6);--r-sm:8px;--r-md:12px;--r-lg:18px;--r-xl:24px;--shadow-xs:0 1px 2px #1018280f;--shadow-sm:0 1px 2px #1018280d, 0 4px 12px -4px #1018281a;--shadow:0 1px 2px #1018280a, 0 10px 30px -10px #1018282e, 0 2px 8px -2px #1018280f;--shadow-pop:0 1px 2px #1018280f, 0 18px 48px -12px #1018284d, 0 4px 14px -4px #1018281f;--sans:"Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--heading:var(--sans);--mono:ui-monospace, "SF Mono", "Cascadia Mono", Consolas, monospace;font:14px/1.5 var(--sans);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,:before,:after{box-sizing:border-box}body{background:radial-gradient(900px 520px at 6% -8%, color-mix(in srgb, var(--accent) 13%, transparent), transparent 70%), radial-gradient(760px 480px at 100% 4%, color-mix(in srgb, var(--accent) 7%, #ffb4a2 8%), transparent 70%), radial-gradient(900px 600px at 70% 112%, color-mix(in srgb, var(--accent) 9%, transparent), transparent 70%), var(--bg);background-attachment:fixed;min-height:100svh;margin:0}#root{flex-direction:column;width:100%;min-height:100svh;display:flex}h1,h2,h3{font-family:var(--heading);letter-spacing:-.015em;color:var(--text-h);font-weight:600}h1{margin:0 0 12px;font-size:26px;line-height:1.15}h2{margin:0 0 8px;font-size:18px;line-height:1.25}h3{margin:0 0 6px;font-size:14px}p{margin:0}a{color:var(--accent-text)}code{font-family:var(--mono);background:var(--code-bg);color:var(--text-h);border-radius:6px;padding:1px 6px;font-size:12.5px}::selection{background:var(--accent-bg-strong)}*{scrollbar-width:thin;scrollbar-color:#12182838 transparent}:where(button){border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--surface);color:var(--text-h);font:inherit;cursor:pointer;box-shadow:var(--shadow-xs);justify-content:center;align-items:center;gap:6px;padding:7px 13px;font-size:13px;font-weight:500;line-height:1.3;transition:background-color .15s,border-color .15s,box-shadow .15s,transform 80ms,color .15s;display:inline-flex}:where(button:hover:not(:disabled)){border-color:color-mix(in srgb, var(--text-h) 26%, transparent);background:color-mix(in srgb, var(--surface) 70%, var(--accent-bg))}:where(button:active:not(:disabled)){transform:translateY(.5px)scale(.99)}:where(button:disabled){opacity:.5;cursor:default;box-shadow:none}:where(input[type=text],input[type=url],input[type=email],input[type=password],input[type=number],input[type=search],input:not([type]),select,textarea){border:1px solid var(--border-strong);border-radius:var(--r-md);color:var(--text-h);font:inherit;background:#ffffffeb;padding:8px 11px;font-size:13px;transition:border-color .15s,box-shadow .15s,background-color .15s;box-shadow:inset 0 1px 1px #1018280a}:where(){color:var(--text-dim)}:where(select){appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238b92a1' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding-right:30px}:where(input,select,textarea):focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring);outline:none}:where(button,summary,a):focus-visible{box-shadow:0 0 0 3px var(--accent-ring);border-color:var(--accent);outline:none}:where(input[type=checkbox],input[type=radio]){accent-color:var(--accent);width:15px;height:15px;margin:0}:where(hr){border:none;border-top:1px solid var(--border);margin:16px 0}.glass{background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-edge);box-shadow:inset 0 1px 0 var(--glass-edge), 0 0 0 1px var(--border), var(--shadow)}.changelog-link{background:var(--accent-bg);box-shadow:none;color:var(--accent-text);white-space:nowrap;border:none;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600}.changelog-link:hover:not(:disabled){background:var(--accent-bg-strong);border-color:#0000}.changelog-backdrop{z-index:1000;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#12182847;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.changelog-popup{border-radius:var(--r-xl);background:var(--glass-strong);width:480px;max-width:100%;max-height:82vh;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-edge);box-shadow:inset 0 1px 0 #fff, 0 0 0 1px var(--border), var(--shadow-pop);color:var(--text);flex:none;padding:20px 24px 8px;overflow-y:auto}.changelog-head{justify-content:space-between;align-items:center;display:flex}.changelog-head h2{margin:0;font-size:19px}.changelog-close{width:30px;height:30px;box-shadow:none;color:var(--text);background:#1218280f;border:none;border-radius:999px;padding:0;font-size:20px;line-height:1}.changelog-close:hover:not(:disabled){background:#1218281f;border-color:#0000}.changelog-intro{color:var(--text-dim);margin:4px 0 18px;font-size:13px}.changelog-timeline{border-left:2px solid var(--border);margin:0;padding:0 0 0 18px;list-style:none}.changelog-timeline>li{flex-direction:column;gap:4px;padding:0 0 22px 12px;display:flex;position:relative}.changelog-timeline>li:before{content:"";background:var(--accent);width:10px;height:10px;box-shadow:0 0 0 4px var(--accent-bg-strong);border-radius:50%;position:absolute;top:3px;left:-26px}.changelog-timeline time{letter-spacing:.02em;text-transform:uppercase;color:var(--text-dim);font-size:11.5px;font-weight:600}.changelog-timeline>li>strong{color:var(--text-h);letter-spacing:-.005em;font-size:14px}.changelog-timeline ul{text-align:left;margin:0;padding-left:18px;font-size:13px;line-height:1.5}.changelog-timeline ul li{margin-top:4px}.changelog-timeline ul li::marker{color:var(--text-dim)}:root{--ease-out:cubic-bezier(.2, .8, .2, 1);interpolate-size:allow-keywords}@keyframes ui-rise{0%{opacity:0;transform:translateY(8px)}}@keyframes ui-pop{0%{opacity:0;transform:translateY(-4px)scale(.98)}}.soft-in{animation:ui-pop .16s var(--ease-out) backwards}.dev-instance-body,.copy-menu,.link-menu,.link-suggestion,.info-tip:hover .info-tip-bubble,.info-tip:focus .info-tip-bubble{animation:ui-pop .18s var(--ease-out) backwards}.ui-select{border:1px solid var(--border-strong);border-radius:var(--r-md);min-width:0;max-width:100%;color:var(--text-h);text-align:left;background-color:#ffffffeb;justify-content:flex-start;align-items:center;padding:8px 30px 8px 11px;font-size:13px;font-weight:400;display:flex;position:relative;box-shadow:inset 0 1px 1px #1018280a}.ui-select:after{content:"";border-right:2px solid var(--text-dim);border-bottom:2px solid var(--text-dim);width:6px;height:6px;transition:transform .2s var(--ease-out), border-color .15s;position:absolute;top:50%;right:13px;transform:translateY(-70%)rotate(45deg)}.ui-select:hover:not(:disabled){border-color:color-mix(in srgb, var(--text-h) 28%, transparent);background-color:#fff}.ui-select.is-open,.ui-select:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.ui-select.is-open:after{border-color:var(--accent);transform:translateY(-20%)rotate(225deg)}.ui-select[data-empty=true] .ui-select-label{color:var(--text-dim)}.ui-select:disabled{background-color:#1218280a}.ui-select-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.ui-select-menu{z-index:3000;background:var(--glass-strong);width:max-content;max-width:min(440px,100vw - 16px);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-edge);box-shadow:0 0 0 1px var(--border), var(--shadow-pop);animation:ui-pop .15s var(--ease-out) backwards;border-radius:14px;padding:5px;position:fixed;overflow-y:auto}.ui-option{color:var(--text-h);cursor:pointer;border-radius:9px;align-items:center;gap:10px;padding:7px 10px;font-size:13px;line-height:1.35;display:flex}.ui-option-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.ui-option.is-active{background:var(--accent-bg)}.ui-option.is-selected{color:var(--accent-text);font-weight:600}.ui-option.is-selected:after{content:"";border-bottom:2px solid;border-right:2px solid;flex:none;width:5px;height:10px;margin:0 3px 2px auto;transform:rotate(40deg)}.ui-option.is-disabled{opacity:.45;cursor:default}.ui-group{letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);padding:9px 10px 4px;font-size:11px;font-weight:650}summary{cursor:pointer}details:not(.snap-node)>summary{align-items:center;gap:9px;list-style:none;display:flex}details:not(.snap-node)>summary::-webkit-details-marker{display:none}details:not(.snap-node)>summary:before{content:"";border-right:2px solid var(--text-dim);border-bottom:2px solid var(--text-dim);width:6px;height:6px;transition:transform .22s var(--ease-out);flex:none;margin:0 2px 0 1px;transform:rotate(-45deg)}details:not(.snap-node)[open]>summary:before{transform:rotate(45deg)}details:not(.snap-node)::details-content{opacity:0;block-size:0;transition:block-size .26s var(--ease-out), opacity .2s ease, content-visibility .26s allow-discrete;overflow:clip}details:not(.snap-node)[open]::details-content{opacity:1;block-size:auto}@keyframes ui-slide{0%{transform:translate(-110%)}to{transform:translate(260%)}}@keyframes ui-fade{to{opacity:1}}.ui-loader{opacity:0;justify-content:center;padding:20vh 0 0;animation:.25s .22s forwards ui-fade;display:flex}.ui-loader.is-inline{padding:18px 0}.ui-loader-track{background:#12182814;border-radius:999px;width:132px;height:4px;position:relative;overflow:hidden}.ui-loader-bar{background:linear-gradient(90deg, transparent, var(--accent) 35%, var(--accent) 65%, transparent);border-radius:999px;width:40%;animation:1.1s cubic-bezier(.45,0,.35,1) infinite ui-slide;position:absolute;inset:0 auto 0 0}.ui-gate{flex-direction:column;width:100%;display:flex;position:relative}.ui-gate-content{flex-direction:column;flex:auto;min-height:0;display:flex}#preview>.ui-gate{flex:1}.ui-gate.is-loading{max-height:70vh;overflow:hidden}.ui-gate.is-loading>.ui-gate-content{opacity:0;pointer-events:none;-webkit-user-select:none;user-select:none}.ui-gate.is-loading>.ui-loader{z-index:1;position:absolute;inset:0 0 auto}.ui-gate.is-ready>.ui-gate-content{animation:ui-rise .34s var(--ease-out) backwards}@media (prefers-reduced-motion:reduce){.ui-gate.is-ready>.ui-gate-content,.soft-in,.ui-select-menu,.dev-instance-body,.copy-menu,.link-menu{animation:none}details:not(.snap-node)::details-content{transition:none}.ui-loader-bar{animation-duration:2.4s}}.dev-sidebar-heading{letter-spacing:.07em;text-transform:uppercase;color:var(--text-dim);margin:20px 4px 6px;font-size:11px;font-weight:650}.dev-sidebar-heading:first-of-type{margin-top:6px}.dev-sidebar-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.dev-sidebar-list li.hint{color:var(--text-dim);padding:4px 6px;font-size:13px}.dev-sidebar-list button{border-radius:var(--r-md);width:100%;box-shadow:none;text-align:left;background:0 0;border:1px solid #0000;flex-direction:column;align-items:flex-start;gap:1px;padding:8px 10px;font-weight:400;display:flex}.dev-sidebar-list button:hover:not(:disabled){background:#1218280b;border-color:#0000}.dev-sidebar-list button.active{background:color-mix(in srgb, var(--accent) 9%, var(--surface));border-color:var(--accent-border);box-shadow:0 0 0 3px var(--accent-bg)}.dev-sidebar-list button.active .name{color:var(--accent-text)}.dev-sidebar-list .name{max-width:100%;color:var(--text-h);font-size:13.5px;font-weight:600}.dev-sidebar-list .date{color:var(--text-dim);text-align:left;font-size:11.5px;line-height:1.4}.dev-scope-note{border-radius:var(--r-md);color:var(--text);background:#1218280a;margin:0 0 4px;padding:10px 12px;font-size:12px;line-height:1.5}.dev-expand-toggle{width:auto;box-shadow:none;color:var(--accent-text);background:0 0;border:none;align-self:flex-start;margin:2px 0 0 4px;padding:3px 6px;font-size:12px;font-weight:600}.dev-expand-toggle:hover:not(:disabled){background:0 0;border:none;text-decoration:underline}.dev-create-row{gap:6px;margin:8px 0 0;display:flex}.dev-create-row input{flex:1;min-width:0;font-size:13px}.dev-create-row button{flex-shrink:0;padding:7px 12px;font-size:15px;line-height:1}.dev-status-text.unpublished-changes{color:var(--warn);font-weight:500}.dev-status-text.unpublished-changes:before{content:"";vertical-align:1px;background:#d97706;border-radius:50%;width:6px;height:6px;margin-right:5px;display:inline-block}.dev-figma-tag{color:var(--accent-text);font-weight:500}.dev-editor{border-radius:var(--r-xl);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-edge);box-shadow:inset 0 1px 0 #fff, 0 0 0 1px var(--border), var(--shadow);background:#ffffffc7;padding:24px 28px 28px}.dev-editor h2{margin:0 0 6px;font-size:21px}.dev-editor h3{letter-spacing:0;color:var(--text-h);align-items:center;gap:6px;margin:22px 0 8px;font-size:13px;font-weight:650;display:flex}.dev-editor-header{flex-direction:column;align-items:flex-start;gap:4px;margin-bottom:4px;display:flex}.dev-header-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.dev-field-row{color:var(--text);gap:16px;margin:16px 0;font-size:12.5px;display:flex}.dev-field-row label,label.dev-field-row{flex-direction:column;flex:1;gap:5px;font-weight:500;display:flex}.dev-status{color:var(--accent-text);margin-bottom:8px;font-size:13px}.dev-help{color:var(--text);margin:0 0 6px;font-size:12.5px;line-height:1.45}.dev-help-inline{color:var(--text);margin:0;font-size:12.5px;line-height:1.45}.dev-notice{border-radius:var(--r-md);background:var(--accent-bg);border:1px solid var(--accent-border);color:var(--text-h);margin:10px 0;padding:10px 13px;font-size:12.5px;line-height:1.5}.save-indicator{max-width:320px;color:var(--text-dim);align-items:center;gap:6px;font-size:12px;display:inline-flex}.save-indicator.saved{color:var(--success)}.save-indicator.error{color:var(--danger)}.save-spinner{border:2px solid var(--border-strong);border-top-color:var(--accent);border-radius:50%;width:14px;height:14px;animation:.7s linear infinite save-spin}@keyframes save-spin{to{transform:rotate(360deg)}}.dev-editor-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:start;gap:28px;display:grid}@media (width<=1100px){.dev-editor-grid{grid-template-columns:minmax(0,1fr)}}.dev-preview-col{position:sticky;top:14px}.dev-editor-grid h3:first-child{margin-top:0}.dev-control{min-width:180px;color:var(--text);flex-direction:column;flex:1;gap:5px;font-size:12.5px;font-weight:500;display:flex}.dev-control>span{align-items:center;gap:6px;display:flex}.dev-control .ui-select{width:100%}.dev-field-row input,.dev-field-row .ui-select,.dev-preview-controls .ui-select,.dev-preview-controls input,.dev-instance-body .ui-select,.dev-instance-body input[type=text],.dev-instance-body input[type=number],.dev-instance-body textarea:not(.dev-json-textarea){width:100%;font-size:13px}.dev-config-label{color:var(--text);margin:6px 0;font-size:12px;display:block}.code-editor{border-radius:var(--r-md);border:1px solid var(--border-strong);background:var(--surface);overflow:hidden}.code-editor .cm-editor{background:0 0}.code-editor .cm-gutters{background:var(--code-bg);border-right:1px solid var(--border);color:var(--text-dim)}.code-editor .cm-editor.cm-focused{outline:none}.code-editor:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.dev-json-textarea{border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--code-bg);width:100%;min-height:160px;color:var(--text-h);font-family:var(--mono);resize:vertical;padding:10px 12px;font-size:12px;line-height:1.55}.dev-json-textarea-small{min-height:80px}.dev-preview-controls{flex-wrap:wrap;align-items:flex-end;gap:10px;margin-bottom:8px;display:flex}.dev-preview-toolbar{align-items:center;margin-bottom:4px}.dev-preview-toolbar>button{padding:5px 11px;font-size:12px}.dev-live-toggle{color:var(--text);white-space:nowrap;align-items:center;gap:6px;font-size:12px;display:inline-flex}.dev-legend{color:var(--text-dim);margin-left:auto;font-size:11px}.dev-control>span .dev-legend{margin-left:6px}.dev-preview-frame{border-radius:var(--r-lg);width:100%;height:calc(100vh - 190px);min-height:420px;box-shadow:0 0 0 1px var(--border), var(--shadow-sm);background:#fff;border:none;margin-top:8px}.dev-preview-frame.mobile{width:390px;max-width:100%;margin-left:auto;margin-right:auto;display:block}.dev-ctx{color:var(--text);margin-top:10px;font-size:12px}.dev-ctx pre{border-radius:var(--r-md);background:var(--code-bg);max-height:260px;color:var(--text-h);font-family:var(--mono);margin:6px 0 0;padding:10px 12px;font-size:11px;overflow:auto}.dev-link-button{box-shadow:none;color:var(--accent-text);font:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-weight:500;text-decoration:underline}.dev-link-button:hover:not(:disabled){color:var(--accent-hover);background:0 0;border:none}.dev-actions{border-top:1px solid var(--border);gap:10px;margin-top:22px;padding-top:18px;display:flex}.dev-publish-button{box-shadow:inset 0 1px 0 #ffffff38, 0 2px 8px -2px var(--accent-ring);font-weight:600;background:var(--accent)!important;color:var(--accent-ink)!important;border-color:#0000!important}.dev-publish-button:hover:not(:disabled){background:var(--accent-hover)!important}.dev-icon-button{justify-content:center;align-items:center;display:inline-flex;padding:6px 9px!important}.dev-icon-button.spinning svg{animation:.8s linear infinite save-spin}.dev-section-instances-header{justify-content:space-between;align-items:center;display:flex}.dev-used-in{color:var(--text);flex-wrap:wrap;align-items:center;gap:6px;margin:4px 0 8px;font-size:12px;display:flex}.dev-chip{border:1px solid var(--accent-border);background:var(--accent-bg);box-shadow:none;color:var(--accent-text);border-radius:999px;padding:2px 10px;font-size:12px;font-weight:500}.dev-used-none{color:var(--text-dim);font-style:italic}.dev-chip-link{cursor:pointer}.dev-chip-link:hover:not(:disabled){background:var(--accent-bg-strong);border-color:var(--accent-border)}.info-tip{border:1px solid var(--border-strong);width:15px;height:15px;color:var(--text-dim);cursor:help;vertical-align:middle;border-radius:50%;outline:none;justify-content:center;align-items:center;font-family:Georgia,serif;font-size:10px;font-style:italic;font-weight:600;transition:color .15s,border-color .15s;display:inline-flex;position:relative}.info-tip:hover,.info-tip:focus{color:var(--accent-text);border-color:var(--accent-border)}.info-tip-bubble{z-index:50;border-radius:var(--r-md);background:var(--glass-strong);width:290px;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-edge);box-shadow:0 0 0 1px var(--border), var(--shadow-pop);color:var(--text-h);font-size:12px;font-style:normal;font-weight:400;font-family:var(--sans);text-align:left;white-space:normal;padding:10px 12px;line-height:1.5;display:none;position:absolute;top:22px;left:-8px}.info-tip:hover .info-tip-bubble,.info-tip:focus .info-tip-bubble{display:block}.dev-instance-card{border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-xs);background:#ffffffd9;margin-bottom:8px;transition:border-color .15s,box-shadow .15s}.dev-instance-card.open{border-color:var(--accent-border);box-shadow:var(--shadow-sm)}.dev-instance-summary{border-radius:var(--r-lg);cursor:pointer;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;font-size:13px;display:flex}.dev-instance-summary:hover{background:#12182806}.dev-chevron,.dev-instance-num{color:var(--text-dim)}.dev-instance-num{font-variant-numeric:tabular-nums;font-size:12px}.dev-instance-title{color:var(--text-h);font-weight:600}.dev-instance-meta{min-width:120px;color:var(--text-dim);flex:1;font-size:12px}.dev-instance-actions{gap:4px;display:inline-flex}.dev-instance-actions button{padding:3px 9px;font-size:12px}.dev-instance-body{border-top:1px solid var(--border);flex-direction:column;gap:14px;padding:6px 14px 16px;display:flex}.dev-instance-body .dev-segmented{align-self:flex-start;margin-top:8px}.dev-instance-body .dev-segmented button{flex:none;padding:4px 14px;font-size:12px}.dev-repeat-row{color:var(--text);flex-direction:column;gap:6px;font-size:13px;display:flex}.dev-repeat-row label{align-items:center;gap:8px;display:flex}.dev-kind-card{border-radius:var(--r-md);border:1px solid var(--border);background:#12182808;flex-direction:column;gap:12px;padding:12px 14px;display:flex}.dev-kind-head{color:var(--text-h);flex-wrap:wrap;align-items:baseline;gap:6px;font-size:13px;display:flex}.dev-kind-head .dev-link-button{color:var(--text-dim);margin-left:auto;font-size:12px}.dev-advanced{border-radius:var(--r-md);border:1px solid var(--border);background:#ffffff80;padding:10px 12px}.dev-advanced>summary,.cfg-fallbacks>summary{cursor:pointer;color:var(--text);font-size:13px;font-weight:600}.dev-advanced[open]>summary{margin-bottom:8px}.dev-advanced>:not(summary){margin-top:8px}.cfg-form{flex-direction:column;gap:12px;display:flex}.cfg-field{flex-direction:column;gap:5px;display:flex}.cfg-label{color:var(--text);align-items:center;gap:8px;font-size:12px;font-weight:500;display:flex}.cfg-badge{border:1px solid var(--accent-border);background:var(--accent-bg);color:var(--accent-text);border-radius:999px;padding:0 7px;font-size:10px;font-weight:600}.cfg-string{align-items:center;gap:8px;display:flex}.cfg-color{border:1px solid var(--border-strong);background:var(--surface);cursor:pointer;border-radius:9px;flex:none;width:36px;height:32px;padding:2px}.cfg-thumb{border:1px solid var(--border);background:#fff;border-radius:6px;flex:none;max-width:64px;max-height:40px}.cfg-check{color:var(--text-h);align-items:center;gap:8px;font-size:13px;display:inline-flex}.cfg-error{color:var(--warn);font-size:12px}.cfg-empty{color:var(--text-dim);margin:0;font-size:12px;font-style:italic}.cfg-fallbacks{border:1px dashed var(--border-strong);border-radius:var(--r-md);margin-top:12px;padding:9px 12px}.cfg-fallbacks[open]>summary{margin-bottom:10px}.cfg-badge-fallback{opacity:.8;background:0 0;border:1px dashed}.dev-status-pill{border:1px solid var(--border);border-radius:var(--r-md);color:var(--text);background:#ffffffb3;flex-wrap:wrap;align-items:center;gap:8px;margin:4px 0 2px;padding:7px 12px;font-size:12.5px;display:flex}.dev-status-pill strong{color:var(--text-h)}.dev-status-dot{background:#22a355;border-radius:50%;flex:none;width:8px;height:8px;box-shadow:0 0 0 3px #22a3552e}.dev-status-pill.unpublished-changes{border-color:var(--warn-border);background:var(--warn-bg)}.dev-status-pill.unpublished-changes .dev-status-dot{background:#d97706;box-shadow:0 0 0 3px #d9770633}.dev-status-pill.never-published .dev-status-dot{background:var(--text-dim);box-shadow:0 0 0 3px #12182814}.dev-status-detail{flex:1;min-width:160px}.dev-progress{border-radius:var(--r-md);color:var(--text);background:#1218280a;flex-wrap:wrap;align-items:center;gap:4px 14px;margin:6px 0;padding:7px 12px;font-size:12.5px;display:flex}.dev-progress-title{color:var(--text-h);font-weight:600}.dev-progress-item.done{color:var(--success);font-weight:500}.dev-design-row{color:var(--text);flex-wrap:wrap;align-items:center;gap:8px;margin:6px 0;font-size:12.5px;display:flex}.dev-design-row .ui-select{max-width:240px}.snap-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px;margin-top:14px;display:grid}.snap-card{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-xs);flex-direction:column;transition:box-shadow .18s,transform .18s;display:flex;overflow:hidden}.snap-card:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.snap-cover{border:none;border-bottom:1px solid var(--border);background:var(--code-bg);height:180px;box-shadow:none;color:var(--text-dim);border-radius:0;justify-content:center;align-items:flex-start;padding:0;display:flex;overflow:hidden}.snap-cover:hover:not(:disabled){background:var(--code-bg)}.snap-cover img{width:100%;height:auto;display:block}.snap-card-body{color:var(--text-h);flex-direction:column;gap:4px;padding:12px 14px;font-size:13px;display:flex}.snap-card-actions{align-items:center;gap:12px;margin-top:6px;display:flex}.snap-card-actions button:not(.dev-link-button){padding:4px 11px;font-size:12px}.snap-tree{border-radius:var(--r-md);background:var(--code-bg);max-height:420px;color:var(--text-h);padding:10px 12px;font-size:12px;overflow:auto}.snap-node>:not(summary),.snap-leaf{margin-left:14px}.snap-node summary,.snap-leaf{cursor:default;padding:1px 0}.snap-type,.snap-dim{color:var(--text-dim);font-size:11px}.snap-text{color:var(--accent-text)}.snap-screens{flex-direction:column;gap:10px;max-height:calc(100vh - 190px);display:flex;overflow:auto}.snap-screens img,.dev-figma-shot img{border:1px solid var(--border);border-radius:var(--r-md);background:#fff;width:100%;height:auto;display:block}.snap-thumbs{flex-wrap:wrap;gap:10px;margin-top:8px;display:flex}.snap-thumbs figure{width:110px;color:var(--text-dim);word-break:break-all;margin:0;font-size:10px}.snap-thumbs img{object-fit:contain;border:1px solid var(--border);border-radius:var(--r-sm);background:#fff;width:100%;height:70px}.dev-compare.both{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;display:grid}.dev-figma-shot{border-radius:var(--r-lg);height:calc(100vh - 190px);min-height:420px;box-shadow:0 0 0 1px var(--border), var(--shadow-sm);background:#fff;margin-top:8px;overflow:auto}.dev-paste textarea{margin:6px 0}.dev-paste button{padding:5px 11px;font-size:12px}.snap-badge{border:1px solid var(--accent-border);background:var(--accent-bg);color:var(--accent-text);border-radius:999px;padding:3px 10px;font-size:12px;font-weight:500;display:inline-block}.snap-badge.muted{border-color:var(--border);color:var(--text);background:#1218280a}.dev-detection{margin-top:12px}.dev-detection-actions{align-items:center;gap:8px;margin:6px 0;display:flex}.dev-detection-problems{color:var(--danger);margin:6px 0;padding-left:18px;font-size:12px}.dev-detection-result{border:1px solid var(--border);border-radius:var(--r-md);background:#ffffffb3;margin-top:8px;padding:10px 12px;font-size:12px}.dev-detection-ok{color:var(--success);margin:0 0 6px;font-weight:600}.dev-detection-bad{color:var(--warn);margin:0 0 6px;font-weight:600}.dev-detection-instance{margin:6px 0}.dev-detection-instance table{border-collapse:collapse;margin-top:2px}.dev-detection-instance td{vertical-align:middle;padding:2px 8px 2px 0}.dev-detection-instance img{border:1px solid var(--border);border-radius:4px;max-width:160px;max-height:40px;display:block}.dev-detection-swatch{border:1px solid var(--border-strong);vertical-align:middle;border-radius:3px;width:12px;height:12px;margin-right:5px;display:inline-block}.dev-detection-overlay{align-items:flex-start;gap:8px;margin-top:8px;display:flex;overflow-x:auto}.dev-detection-screen{flex:0 auto;max-width:100%;position:relative}.dev-detection-screen img{border-radius:var(--r-sm);max-width:100%;max-height:420px;display:block}.dev-detection-box{box-sizing:border-box;pointer-events:auto;position:absolute}.dev-detection-box.block{border:2px solid #2f6fdf}.dev-detection-box.slot{border:2px solid #1a9a4c}.dev-detection-box span{color:#fff;white-space:nowrap;background:#121828b8;border-radius:0 0 4px;padding:0 4px;font-size:10px;line-height:1.3;position:absolute;top:0;left:0}.dev-asset-list{flex-direction:column;gap:6px;margin:8px 0 0;padding:0;list-style:none;display:flex}.dev-asset-list li{align-items:center;gap:8px;display:flex}.dev-asset-list img{object-fit:contain;background:repeating-conic-gradient(#555 0% 25%,#777 0% 50%) 0 0/8px 8px;border-radius:6px;width:44px;height:32px}#sidebar,.copy-menu,.link-menu{background:var(--glass-strong);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-edge);box-shadow:inset 0 1px 0 #fff, 0 0 0 1px var(--border), var(--shadow)}#login{flex:1;justify-content:center;align-items:center;padding:24px;display:flex}#login>form,#login>div{border-radius:var(--r-xl);background:var(--glass-strong);width:100%;max-width:372px;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-edge);box-shadow:inset 0 1px 0 #fff, 0 0 0 1px var(--border), var(--shadow-pop);flex-direction:column;gap:12px;padding:32px 28px 26px;display:flex}#login>form:before,#login>div:before,.brand-mark{content:"";background:linear-gradient(145deg, #ffffff73, transparent 55%), var(--accent);width:38px;height:38px;box-shadow:inset 0 1px 0 #ffffff8c, 0 4px 12px -2px var(--accent-ring);border-radius:12px;display:block}#login>form:before,#login>div:before{margin-bottom:10px}#login h1{margin:0;font-size:22px}#login p{color:var(--text);font-size:13px}#login input{padding:10px 12px}#login button[type=submit]{background:var(--accent);color:var(--accent-ink);box-shadow:inset 0 1px 0 #ffffff38, 0 2px 8px -2px var(--accent-ring);border-color:#0000;margin-top:4px;padding:10px 14px}#login button[type=submit]:hover:not(:disabled){background:var(--accent-hover);border-color:#0000}.link-button{box-shadow:none;color:var(--accent-text);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0;font-size:13px;font-weight:500}.link-button:hover:not(:disabled){background:0 0;border:none;text-decoration:underline}.error{color:var(--danger);font-size:13px}.hint{color:var(--text-dim);font-size:12px}#layout{flex:1;align-items:stretch;gap:14px;min-height:0;padding:14px;display:flex}#sidebar{border-radius:var(--r-xl);flex-direction:column;flex-shrink:0;align-self:flex-start;width:296px;height:calc(100svh - 28px);padding:16px 12px 0;display:flex;position:sticky;top:14px;overflow-y:auto}#sidebar>*{flex-shrink:0}#brand{align-items:center;gap:10px;padding:0 4px 14px;display:flex}#brand .brand-mark{border-radius:9px;width:28px;height:28px}.brand-name{letter-spacing:-.01em;color:var(--text-h);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:650;overflow:hidden}#brand .changelog-link{margin-left:auto}#view-tabs,.viewport-toggle,.dev-segmented{background:#1218280f;border-radius:13px;gap:2px;padding:3px;display:flex;box-shadow:inset 0 1px 2px #1018280f}#view-tabs{margin-bottom:14px}.dev-segmented{display:inline-flex}.dev-segmented button{white-space:nowrap;flex:none}#view-tabs button,.viewport-toggle button,.dev-segmented button{box-shadow:none;color:var(--text);background:0 0;border:1px solid #0000;border-radius:10px;flex:1;padding:6px 12px;font-size:13px;font-weight:500}#view-tabs button:hover:not(:disabled),.viewport-toggle button:hover:not(:disabled),.dev-segmented button:hover:not(:disabled){background:#ffffff8c;border-color:#0000}#view-tabs button.active,.viewport-toggle button.active,.dev-segmented button.active{background:var(--surface);color:var(--text-h);border-color:#0000;font-weight:600;box-shadow:0 1px 2px #1018281a,0 2px 6px -1px #10182814}.viewport-toggle button{white-space:nowrap;flex:none}.viewport-toggle button:disabled{opacity:.4;pointer-events:none}#sidebar-footer{z-index:2;border-top:1px solid var(--border);background:var(--glass-strong);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);order:99;justify-content:space-between;align-items:center;gap:8px;margin:auto -12px 0;padding:11px 16px;display:flex;position:sticky;bottom:0}#sidebar-footer .user-email{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}#sidebar-footer .link-button{flex-shrink:0;font-size:12px}#sidebar ul{flex-direction:column;gap:2px;margin:0;padding:0 0 12px;list-style:none;display:flex}#sidebar .build-row>button:first-child,#sidebar .name-button{border-radius:var(--r-md);width:100%;box-shadow:none;text-align:left;background:0 0;border:1px solid #0000;flex-direction:column;align-items:flex-start;gap:1px;padding:8px 10px;font-weight:400;display:flex}#sidebar .build-row>button:first-child:hover:not(:disabled),#sidebar .name-button:hover:not(:disabled){background:#1218280b;border-color:#0000}#sidebar .build-row>button.active{background:color-mix(in srgb, var(--accent) 9%, var(--surface));border-color:var(--accent-border);box-shadow:0 0 0 3px var(--accent-bg)}#sidebar .build-row>button.active .name{color:var(--accent-text)}#sidebar .build-row>button.active .date{color:color-mix(in srgb, var(--accent-text) 60%, var(--text-dim))}#sidebar .name{color:var(--text-h);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:13.5px;font-weight:600;overflow:hidden}#sidebar .date{color:var(--text-dim);font-size:11.5px;font-weight:400}#build-filters{flex-direction:column;gap:6px;margin-bottom:12px;display:flex}.build-filter-row{gap:6px;display:flex}.build-filter-row .ui-select{flex:1;min-width:0;padding:6px 26px 6px 9px;font-size:12px}#build-filters input{font-size:13px}#sidebar li.build-group{border-radius:var(--r-md);flex-direction:column;align-items:flex-start;gap:4px;padding:2px 0 8px;display:flex}#sidebar li.build-group .date,#sidebar li.build-group .lang-badges{padding:0 10px}.build-row{align-items:center;gap:2px;width:100%;display:flex}.build-row>button:first-child{flex:1;min-width:0}.lang-badges{flex-wrap:wrap;gap:4px;display:flex}.lang-badge{border:1px solid var(--border-strong);box-shadow:none;color:var(--text);letter-spacing:.02em;background:0 0;border-radius:999px;padding:1px 8px;font-size:11px;font-weight:600}.lang-badge.active{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.lang-badge.active:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}#sidebar .link-icon-btn{box-shadow:none;color:var(--text-dim);background:0 0;border:1px solid #0000;border-radius:9px;flex-shrink:0;padding:6px}#sidebar .link-icon-btn:hover:not(:disabled){background:var(--accent-bg);color:var(--accent-text);border-color:#0000}#sidebar .link-icon-btn.linked{color:var(--accent-text)}#sidebar .link-icon-btn.active{background:var(--accent-bg-strong);color:var(--accent-text)}.link-suggestion{border-radius:var(--r-md);background:var(--accent-bg);width:100%;color:var(--text);flex-direction:column;gap:5px;margin:2px 0 4px;padding:8px 10px;font-size:12px;display:flex}.link-suggestion span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.link-suggestion-actions{gap:12px;display:flex}.link-suggestion-actions button{box-shadow:none;color:var(--accent-text);background:0 0;border:none;padding:0;font-size:12px;font-weight:600}.link-suggestion-actions button:hover:not(:disabled){background:0 0;border:none;text-decoration:underline}.link-mode-banner{border-radius:var(--r-md);background:var(--accent-bg);border:1px solid var(--accent-border);color:var(--text-h);justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;padding:9px 11px;font-size:12px;display:flex}.link-mode-banner button{flex-shrink:0;padding:3px 9px;font-size:12px}#sidebar li.linkable-target{border-radius:var(--r-md);box-shadow:0 0 0 2px var(--accent-border)}#sidebar li.linkable-target .build-row>button:first-child,#sidebar li.linkable-target .name-button,#sidebar li.linkable-target .lang-badge{background:var(--accent-bg)}.link-menu-anchor{flex-shrink:0;position:relative}.link-menu{z-index:5;border-radius:var(--r-md);flex-direction:column;gap:4px;width:210px;padding:10px;display:flex;position:absolute;top:calc(100% + 6px);right:0}.link-menu-item{color:var(--text-h);justify-content:space-between;align-items:center;gap:8px;font-size:12.5px;display:flex}.link-menu-item button{box-shadow:none;color:var(--accent-text);background:0 0;border:none;padding:0;font-size:12px;font-weight:600}.link-menu-item button:hover:not(:disabled){background:0 0;border:none;text-decoration:underline}.link-menu-add{justify-content:flex-start;margin-top:4px;font-size:12px;padding:6px 8px!important}#preview{flex-direction:column;flex:1;min-width:0;padding:4px 6px 8px;display:flex}#build-meta-bar{flex-shrink:0;align-items:center;gap:12px;margin-bottom:10px;display:flex}.build-language,.build-link-status,.sync-status{color:var(--text-dim);font-size:12px}.build-language{color:var(--text);background:#1218280e;border-radius:999px;padding:2px 10px;font-weight:500}#preview-toolbar{background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-edge);box-shadow:inset 0 1px 0 #fff, 0 0 0 1px var(--border), var(--shadow-sm);border-radius:18px;flex-shrink:0;align-items:center;gap:10px;margin-bottom:14px;padding:6px;display:flex}.viewport-toggle button{gap:7px}.copy-html-group{border-radius:var(--r-md);background:var(--accent);box-shadow:inset 0 1px 0 #ffffff38, 0 2px 8px -2px var(--accent-ring);flex-shrink:0;align-items:stretch;margin-left:auto;display:flex;position:relative}.copy-html-btn,.copy-html-chevron{box-shadow:none;color:var(--accent-ink);background:0 0;border:none;border-radius:0}.copy-html-btn{white-space:nowrap;border-radius:var(--r-md) 0 0 var(--r-md);padding:7px 14px}.copy-html-chevron{border-radius:0 var(--r-md) var(--r-md) 0;border-left:1px solid #ffffff47;padding:0 9px}.copy-html-btn:hover:not(:disabled),.copy-html-chevron:hover:not(:disabled){background:#0000001f;border-color:#0000}.copy-html-chevron:hover:not(:disabled){border-left-color:#ffffff47}.copy-menu{z-index:20;border-radius:var(--r-md);min-width:180px;padding:11px 13px;position:absolute;top:calc(100% + 8px);right:0}.copy-menu label{color:var(--text-h);cursor:pointer;align-items:center;gap:9px;font-size:13px;display:flex}.frame-width{font-family:var(--mono);color:var(--text-dim);flex-shrink:0;padding-right:6px;font-size:12px}.link-edit-toggle{color:var(--text);padding:6px 12px}.link-edit-toggle.active{background:var(--accent-bg-strong);border-color:var(--accent-border);color:var(--accent-text)}.link-edit-hint{border-radius:var(--r-md);background:var(--accent-bg);color:var(--text);margin:-4px 0 12px;padding:8px 12px;font-size:12.5px}.sync-status.saved{color:var(--success)}.sync-status.error{color:var(--danger)}#frame-wrap{flex:1;width:100%;min-height:500px}#frame-wrap.mobile{align-self:center;width:390px}#frame-wrap.resizable{resize:horizontal;border-radius:var(--r-lg);align-self:center;width:700px;min-width:320px;max-width:100%;overflow:auto}#frame-wrap iframe{border-radius:var(--r-lg);width:100%;height:100%;min-height:500px;box-shadow:0 0 0 1px var(--border), var(--shadow);background:#fff;border:none;display:block}#manifest,#links{border-radius:var(--r-lg);border:1px solid var(--glass-edge);box-shadow:0 0 0 1px var(--border), var(--shadow-xs);background:#ffffffb3;margin-top:14px;padding:2px 18px}#manifest>summary,#links>summary{cursor:pointer;color:var(--text-h);padding:12px 0;font-weight:600}#manifest[open]>summary,#links[open]>summary{border-bottom:1px solid var(--border);margin-bottom:12px}#manifest ul{flex-direction:column;gap:6px;max-height:240px;margin:0;padding:0 0 12px;list-style:none;display:flex;overflow-y:auto}#manifest li{font-size:12.5px;font-family:var(--mono);justify-content:space-between;gap:12px;display:flex}#manifest .slot-id{color:var(--text-h);flex-shrink:0}#manifest a{color:var(--accent-text);text-overflow:ellipsis;white-space:nowrap;text-decoration:none;overflow:hidden}.links-import{border:1px dashed var(--border-strong);border-radius:var(--r-md);background:#ffffff80;margin:0 0 12px;padding:12px 14px}.link-import-button{border-radius:var(--r-md);background:var(--accent-bg);border:1px solid var(--accent-border);color:var(--accent-text);cursor:pointer;padding:6px 12px;font-size:13px;font-weight:500;display:inline-block}.link-import-button:hover{background:var(--accent-bg-strong)}.link-import-button input{display:none}.links-import .disclaimer{color:var(--text-dim);margin:8px 0 0;font-size:12px}.import-summary{color:var(--text-h);margin:8px 0 0;font-size:13px}#links ul{flex-direction:column;gap:8px;max-height:340px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}#links li{align-items:center;gap:10px;font-size:13px;display:flex}#links li img{object-fit:cover;border:1px solid var(--border);border-radius:8px;flex-shrink:0;width:38px;height:38px}#links .slot-id{font-family:var(--mono);color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex-shrink:0;width:120px;font-size:12px;overflow:hidden}.sync-hint{color:var(--text-dim);white-space:nowrap;flex-shrink:0;font-size:11px}#links li input{flex:1;min-width:0}.links-actions{justify-content:flex-end;align-items:center;gap:12px;margin:14px 0;display:flex}.links-actions .unsaved{color:var(--text-dim);font-size:12px}.links-actions button{background:var(--accent);color:var(--accent-ink);box-shadow:inset 0 1px 0 #ffffff38, 0 2px 8px -2px var(--accent-ring);border-color:#0000;padding:7px 16px}.links-actions button:hover:not(:disabled){background:var(--accent-hover);border-color:#0000}.link-button-chip{text-overflow:ellipsis;white-space:nowrap;background:var(--accent);max-width:120px;color:var(--accent-ink);border-radius:999px;padding:4px 11px;font-size:12px;font-weight:500;display:inline-block;overflow:hidden}
