@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/outfit-latin-ext-wght-normal-DdQaqQDo.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/outfit-latin-wght-normal-Bc-8i84L.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--samm-navy:#0a1e2a;--samm-navy-2:#0e3042;--samm-navy-3:#16425a;--samm-lime:#dee061;--samm-lime-2:#d2d44a;--samm-lime-soft:#f4f7d7;--samm-lime-ink:#5c5e12;--f-bg:#f5f6f0;--f-surface:#fff;--f-surface-hover:#f9faf3;--f-surface-sunken:#e9ebe2;--f-stage:#e4e7dc;--f-ink:#1e1e1e;--f-ink-2:#212529;--f-muted:#6c7680;--f-line:#e6e8e1;--f-line-2:#cfd3c9;--f-primary:var(--samm-lime);--f-primary-ink:var(--samm-navy);--f-primary-hover:var(--samm-navy);--f-primary-hover-ink:#fff;--f-strong:var(--samm-navy-2);--f-strong-ink:#fff;--f-soft:var(--samm-lime-soft);--f-soft-ink:var(--samm-navy);--f-selected:var(--samm-navy);--f-selected-ink:#fff;--f-accent-text:#6b7a1f;--f-focus:#dee06173;--f-focus-border:var(--samm-navy-2);--f-chrome:var(--samm-navy);--f-chrome-2:var(--samm-navy-2);--f-chrome-ink:#ffffffc7;--f-chrome-muted:#ffffff80;--f-chrome-line:#ffffff24;--f-chrome-hover:#ffffff12;--f-chrome-active:#dee06129;--f-chrome-active-ink:var(--samm-lime);--f-mark:var(--samm-lime);--f-mark-ink:var(--samm-navy);--f-brand-context:"&samm Studio";--f-ok:#1f7a3f;--f-ok-soft:#e2f4e8;--f-warn:#9a6700;--f-warn-soft:#fff1cc;--f-err:#b4261f;--f-err-soft:#fde7e5;--f-info:#0e3042;--f-info-soft:#e3edf3;--f-radius:20px;--f-radius-md:12px;--f-radius-sm:8px;--f-radius-pill:999px;--f-shadow:0 1px 2px #0a1e2a0a, 0 8px 24px #0a1e2a0f;--f-shadow-pop:0 20px 60px #0a1e2a40;--f-shadow-canvas:0 1px 3px #0a1e2a1f, 0 12px 32px #0a1e2a1f;--f-font:"Inter Variable", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--f-font-head:"Outfit Variable", "Outfit", "Inter Variable", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--f-font-mono:"SF Mono", Menlo, Consolas, monospace}*{box-sizing:border-box}html,body{background:var(--f-bg);color:var(--f-ink-2);font:14px/1.5 var(--f-font);-webkit-font-smoothing:antialiased;margin:0}#app{height:100vh;flex-direction:column;height:100dvh;display:flex;overflow:auto}button,input,select,textarea{font:inherit;color:inherit}h1,h2,h3{font-family:var(--f-font-head);color:var(--f-ink)}h1{letter-spacing:-.01em;margin:0 0 4px;font-size:28px;font-weight:600;line-height:1.15}h2{margin:0 0 12px;font-size:18px;font-weight:600}h3{margin:0 0 8px;font-size:15px;font-weight:600}a{color:var(--f-strong)}code{background:var(--f-surface-sunken);font-family:var(--f-font-mono);border-radius:5px;padding:1px 6px;font-size:12.5px}.muted{color:var(--f-muted)}.small{font-size:12.5px}.mono{font-family:var(--f-font-mono);font-size:12.5px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--f-accent-text);margin:0 0 8px;font-size:11px;font-weight:700;display:block}.row{flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0;display:flex}.req{color:var(--f-err);margin-left:2px}:focus-visible{outline:3px solid var(--f-focus);outline-offset:1px}svg{flex:none}.btn{border-radius:var(--f-radius-pill);border:1px solid var(--f-primary);background:var(--f-primary);color:var(--f-primary-ink);cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:8px;padding:8px 18px;font-size:13px;font-weight:600;line-height:1.2;text-decoration:none;transition:background .15s,border-color .15s,color .15s;display:inline-flex;box-shadow:0 1px 2px #0a1e2a14}.btn:hover:not(:disabled){background:var(--f-primary-hover);border-color:var(--f-primary-hover);color:var(--f-primary-hover-ink)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-strong{background:var(--f-strong);border-color:var(--f-strong);color:var(--f-strong-ink)}.btn-outline{background:var(--f-surface);color:var(--f-primary-ink);border-color:var(--f-line-2);box-shadow:none}.btn-outline:hover:not(:disabled){background:var(--f-soft);border-color:var(--f-strong);color:var(--f-soft-ink)}.btn-ghost{color:var(--f-ink-2);box-shadow:none;background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){background:var(--f-soft);color:var(--f-soft-ink);border-color:#0000}.btn-danger{background:var(--f-surface);color:var(--f-err);box-shadow:none;border-color:#f0cfcc}.btn-danger:hover:not(:disabled){background:var(--f-err-soft);border-color:var(--f-err);color:var(--f-err)}.btn-sm{gap:6px;padding:5px 12px;font-size:12px}.btn-lg{padding:12px 22px;font-size:14px}.btn-block{width:100%}.icon-btn{border-radius:var(--f-radius-pill);width:32px;height:32px;color:var(--f-ink-2);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0;display:inline-flex}.icon-btn:hover{background:var(--f-soft);color:var(--f-soft-ink)}.icon-btn.danger{color:var(--f-err)}.icon-btn.danger:hover{background:var(--f-err-soft)}button.link{cursor:pointer;color:var(--f-strong);text-underline-offset:2px;background:0 0;border:0;align-items:center;gap:4px;padding:0;font-size:12.5px;font-weight:600;text-decoration:underline;display:inline-flex}button.link:hover{color:var(--f-primary-hover)}.file-btn{position:relative}.field{color:var(--f-ink-2);flex-direction:column;gap:6px;margin:0 0 14px;font-size:13px;font-weight:600;display:flex}.field-label{color:var(--f-ink-2);gap:2px;font-size:13px;font-weight:600;display:inline-flex}.input,.ui-select{border:1px solid var(--f-line-2);border-radius:var(--f-radius-md);background:var(--f-surface);width:100%;min-height:42px;color:var(--f-ink);padding:10px 12px;font-size:14px;font-weight:400;transition:border-color .15s,box-shadow .15s}.input:hover,.ui-select:hover{border-color:var(--f-muted)}.input:focus,.ui-select:focus,.ui-select[data-state=open]{border-color:var(--f-focus-border);box-shadow:0 0 0 3px var(--f-focus);outline:0}textarea.input{resize:vertical;min-height:84px;line-height:1.5}select.input{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' fill='none' stroke='%230a1e2a' stroke-width='1.8' stroke-linecap='round'/></svg>");background-position:right 12px center;background-repeat:no-repeat;padding-right:36px}input[type=checkbox]{width:16px;height:16px;accent-color:var(--f-strong);margin:0}input[type=color]{border:1px solid var(--f-line-2);border-radius:var(--f-radius-sm);background:var(--f-surface);cursor:pointer;width:42px;height:38px;padding:2px}.check{color:var(--f-ink);cursor:pointer;flex-direction:row;align-items:center;gap:8px;margin:6px 0;font-size:13px;font-weight:500;display:flex}.fields-2{grid-template-columns:1fr 1fr;gap:0 12px;display:grid}.hint{color:var(--f-muted);margin:6px 0 0;font-size:12px;line-height:1.45}fieldset{border:1px solid var(--f-line);border-radius:var(--f-radius-md);margin:0 0 14px;padding:10px 12px 6px}legend{color:var(--f-muted);align-items:center;gap:6px;padding:0 4px;font-size:12px;font-weight:700;display:inline-flex}fieldset.locks{grid-template-columns:1fr 1fr;gap:0 8px;display:grid}fieldset.locks legend{grid-column:1/-1}.ui-select{text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:8px;display:inline-flex}.ui-select-chevron{color:var(--f-primary-ink)}.ui-select-content{z-index:60;min-width:var(--reka-select-trigger-width);max-height:var(--reka-select-content-available-height);background:var(--f-surface);border:1px solid var(--f-line);border-radius:var(--f-radius-md);box-shadow:var(--f-shadow-pop);padding:4px}.ui-select-item{border-radius:var(--f-radius-sm);cursor:pointer;-webkit-user-select:none;user-select:none;outline:none;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;font-size:13.5px;display:flex;position:relative}.ui-select-item[data-highlighted]{background:var(--f-soft);color:var(--f-soft-ink)}.ui-select-item[data-state=checked]{font-weight:600}.ui-select-check{color:var(--f-strong);display:inline-flex}.ui-tooltip{z-index:70;background:var(--f-chrome);color:#fff;border-radius:var(--f-radius-sm);max-width:260px;box-shadow:var(--f-shadow);padding:6px 10px;font-size:12px;font-weight:500;line-height:1.35;animation:.12s ease-out f-fade}@keyframes f-fade{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:none}}.ui-ratio{flex:none;justify-content:center;align-items:center;display:inline-flex}.ui-ratio>span{border:1.6px solid;border-radius:3px;display:block}.pill{border-radius:var(--f-radius-pill);background:var(--f-surface-sunken);color:var(--f-ink-2);white-space:nowrap;align-items:center;padding:3px 10px;font-size:12px;font-weight:600;display:inline-flex}.pill-dot:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px;margin-right:7px}.pill-ok{background:var(--f-ok-soft);color:var(--f-ok)}.pill-warn{background:var(--f-warn-soft);color:var(--f-warn)}.pill-err{background:var(--f-err-soft);color:var(--f-err)}.pill-info{background:var(--f-info-soft);color:var(--f-info)}.pill-grey{background:var(--f-surface-sunken);color:var(--f-ink-2)}.issues{background:var(--f-warn-soft);color:var(--f-warn);border-radius:var(--f-radius-md);margin:0 0 12px;padding:10px 14px;font-size:13px}.issues strong{align-items:center;gap:6px;display:inline-flex}.issues ul{margin:4px 0 0;padding-left:18px}.warnings{color:var(--f-muted);margin:8px 0 0;padding-left:18px;font-size:12px}.restored,.draft-banner{background:var(--f-ok-soft);color:var(--f-ok);border-radius:var(--f-radius-md);flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 16px;padding:10px 14px;font-size:13px;display:flex}.draft-banner{border-radius:0;justify-content:center;margin:0;padding:8px 20px}.restored button.link,.draft-banner button.link{color:var(--f-ok)}.save-state{color:var(--f-muted);align-items:center;gap:6px;margin:0 0 12px;font-size:12px;display:inline-flex}.save-state.saved{color:var(--f-ok)}.save-state.offline{color:var(--f-err)}.spin{animation:.9s linear infinite f-spin}@keyframes f-spin{to{transform:rotate(360deg)}}.topbar{background:var(--f-chrome);min-height:60px;color:var(--f-chrome-ink);z-index:30;flex-wrap:wrap;align-items:center;gap:12px;padding:10px 20px;display:flex;position:sticky;top:0}.brandmark{align-items:center;gap:10px;margin-right:8px;display:inline-flex}.brandmark-icon{background:var(--f-mark);width:30px;height:30px;color:var(--f-mark-ink);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.brand{font-family:var(--f-font-head);letter-spacing:.01em;color:#fff;font-size:19px;font-weight:600}.brand-context:before{content:var(--f-brand-context,"");color:var(--f-chrome-muted);border-left:1px solid var(--f-chrome-line);padding-left:10px;font-size:12px}.brandmark.big .brandmark-icon{width:40px;height:40px}.brandmark.big .brand{font-size:24px}.topnav{gap:2px;display:flex}.topnav button,.seg-chrome button{border-radius:var(--f-radius-pill);color:var(--f-chrome-ink);cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:7px 14px;font-size:13.5px;font-weight:500;display:inline-flex}.topnav button:hover,.seg-chrome button:hover{background:var(--f-chrome-hover);color:#fff}.topnav button.on,.seg-chrome button.on{background:var(--f-chrome-active);color:var(--f-chrome-active-ink);font-weight:600}.docbar{flex:320px;align-items:center;gap:10px;min-width:0;display:flex}.docbar .sep{background:var(--f-chrome-line);width:1px;height:24px}.topbar .title{border-radius:var(--f-radius-md);color:#fff;min-width:120px;font-family:var(--f-font-head);background:0 0;border:1px solid #0000;flex:0 280px;padding:7px 12px;font-size:15px;font-weight:600}.topbar .title:hover{border-color:var(--f-chrome-line)}.topbar .title:focus{border-color:var(--f-chrome-active-ink);background:var(--f-chrome-2);outline:0}.pill-chrome{background:var(--f-chrome-hover);color:var(--f-chrome-ink)}.seg-chrome{border-radius:var(--f-radius-pill);background:#ffffff0f;gap:2px;padding:3px;display:inline-flex}.topbar .status{color:var(--f-chrome-muted);text-align:right;max-width:420px;margin-left:auto;font-size:12.5px}.topbar.embedded .brand-context{display:none}.page{width:100%;max-width:1180px;margin:0 auto;padding:32px 32px 64px}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:24px;display:flex}.page-head .sub{color:var(--f-muted);margin:4px 0 0}.page-head .actions{flex-wrap:wrap;gap:8px;display:flex}.card{background:var(--f-surface);border-radius:var(--f-radius);box-shadow:var(--f-shadow);border:1px solid #00000005;padding:24px}.card.flush{padding:8px 12px}.card+.card{margin-top:16px}.grid-import>.card{margin:0}.empty{text-align:center;flex-direction:column;align-items:center;gap:6px;padding:40px 16px;display:flex}.empty h3{margin:6px 0 0}.empty p{margin:0}.empty-icon{background:var(--f-primary);width:44px;height:44px;color:var(--f-primary-ink);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.empty-icon.err{background:var(--f-err-soft);color:var(--f-err)}.small-empty{padding:16px 8px}.small-empty .empty-icon{background:var(--f-soft);width:36px;height:36px}.table{border-collapse:collapse;width:100%;font-size:14px}.table th{text-align:left;text-transform:uppercase;letter-spacing:.12em;color:var(--f-muted);border-bottom:1px solid var(--f-line);padding:12px;font-size:11px;font-weight:700}.table td{border-bottom:1px solid var(--f-line);vertical-align:middle;padding:12px}.table tr:last-child td{border-bottom:0}.table tbody tr:hover td{background:var(--f-surface-hover)}.table td.name{color:var(--f-ink);font-weight:600}.table td.num{font-variant-numeric:tabular-nums;color:var(--f-muted)}.table td.actions{text-align:right;white-space:nowrap}.table td.actions .btn+.btn{margin-left:6px}.connect{background:var(--f-chrome);flex:1 0 auto;justify-content:center;align-items:center;padding:32px 16px;display:flex}.connect-card{background:var(--f-surface);border-radius:28px;grid-template-columns:1.05fr 1fr;width:min(920px,100%);display:grid;overflow:hidden;box-shadow:0 30px 80px #00000059}.connect-card.single{grid-template-columns:1fr;width:min(480px,100%)}.connect-side{background:var(--f-chrome-2);color:#fff;flex-direction:column;justify-content:space-between;gap:48px;padding:40px;display:flex}.connect-side .eyebrow{color:var(--f-chrome-active-ink)}.connect-side h2{color:#fff;margin:0 0 12px;font-size:28px;font-weight:500;line-height:1.2}.connect-side p{color:#ffffffb8;max-width:360px;margin:0}.connect-form{flex-direction:column;padding:40px;display:flex}.connect-form h1{margin-bottom:24px;font-size:24px}.connect-card.single .connect-form{align-items:flex-start;gap:8px}.connect-card.single h1{margin:8px 0 0}.grid-import{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.steps{counter-reset:s;margin:0;padding:0;list-style:none}.steps li{counter-increment:s;margin-bottom:14px;padding-left:38px;line-height:1.55;position:relative}.steps li:before{content:counter(s);background:var(--f-primary);width:26px;height:26px;color:var(--f-primary-ink);border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex;position:absolute;top:0;left:0}.dropzone{text-align:center;border:2px dashed var(--f-line-2);border-radius:var(--f-radius-md);background:var(--f-surface-hover);cursor:pointer;flex-direction:column;align-items:center;gap:6px;margin-top:4px;padding:28px 16px;transition:border-color .15s,background .15s;display:flex;position:relative}.dropzone:hover,.dropzone:focus-within{border-color:var(--f-strong);background:var(--f-soft)}.dropzone.busy{opacity:.6;cursor:progress}.report{margin-top:16px}.kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.kpi{background:var(--f-surface-hover);border-radius:14px;flex-direction:column;padding:14px 16px;display:flex}.kpi .n{font-family:var(--f-font-head);color:var(--f-primary-ink);font-size:28px;font-weight:600;line-height:1.1}.kpi .l{color:var(--f-muted);font-size:12.5px}.panel{background:var(--f-surface);flex-direction:column;min-height:0;display:flex}.panel-body{flex:auto;padding:20px;overflow-y:auto}.panel-foot{border-top:1px solid var(--f-line);background:var(--f-surface);flex-direction:column;gap:10px;padding:16px 20px;display:flex}.panel-foot .row{margin:0}.psection{border-bottom:1px solid var(--f-line);margin-bottom:18px;padding-bottom:18px}.psection:last-child{border-bottom:0;margin-bottom:0}.psection-title,.group-title{font-family:var(--f-font);text-transform:uppercase;letter-spacing:.12em;color:var(--f-muted);align-items:center;gap:8px;margin:0 0 12px;font-size:11px;font-weight:700;display:flex}.list{flex-direction:column;gap:2px;margin:0 0 8px;padding:0;list-style:none;display:flex}.list li{border-radius:var(--f-radius-sm);align-items:center;gap:10px;min-width:0;padding:7px 10px;font-size:13.5px;display:flex}.layouts li,.layers li{cursor:pointer}.layouts li:hover,.layers li:hover{background:var(--f-surface-hover)}.list li.active{background:var(--f-selected);color:var(--f-selected-ink)}.list li.active .tag{color:var(--f-chrome-active-ink);background:#ffffff24}.li-name{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.li-icon{color:var(--f-muted)}.list li.active .li-icon{color:var(--f-chrome-active-ink)}.layers li:not(.named){color:var(--f-muted)}.layers li.named .li-name{font-weight:600}.tag{border-radius:var(--f-radius-pill);background:var(--f-surface-sunken);color:var(--f-muted);white-space:nowrap;padding:1px 8px;font-size:11px;font-weight:600}.collapsible-trigger{margin-left:-6px}.collapsible-trigger .chev{transition:transform .15s}.collapsible-trigger[data-state=open] .chev{transform:rotate(180deg)}.collapsible-content{padding:12px 0 4px}.designer{flex:1 1 0;grid-template-rows:minmax(0,1fr);grid-template-columns:264px minmax(0,1fr) 320px;min-height:0;display:grid}.designer .left{border-right:1px solid var(--f-line)}.designer .right{border-left:1px solid var(--f-line)}.stage-col{background:var(--f-stage);flex-direction:column;min-width:0;min-height:0;display:flex}.stage-toolbar{background:var(--f-surface);border-bottom:1px solid var(--f-line);justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;display:flex}.pages{border-radius:var(--f-radius-pill);background:var(--f-surface-sunken);gap:4px;max-width:100%;padding:3px;display:flex;overflow-x:auto}.pages button{border-radius:var(--f-radius-pill);cursor:pointer;white-space:nowrap;color:var(--f-ink-2);background:0 0;border:0;padding:6px 14px;font-size:12.5px;font-weight:500}.pages button:hover{color:var(--f-ink);background:#fff9}.pages button.on{background:var(--f-selected);color:var(--f-selected-ink);font-weight:600}.page-actions{gap:2px;display:flex}.stage{background-color:var(--f-stage);background-image:radial-gradient(#0a1e2a17 1px,#0000 1px);background-size:18px 18px;flex:auto;justify-content:center;align-items:center;min-width:0;min-height:0;display:flex;position:relative;overflow:hidden}.stage .canvas-container{box-shadow:var(--f-shadow-canvas)}.stage-head{color:var(--f-muted);background:var(--f-surface);border-top:1px solid var(--f-line);flex-wrap:wrap;align-items:center;gap:8px;padding:8px 14px;font-size:12px;display:flex}.stage-head .dot{background:var(--f-line-2);border-radius:50%;width:3px;height:3px}.g-trim{color:#e4007c;font-weight:600}.g-safe{color:#00a0e4;font-weight:600}.colour{grid-template-columns:42px minmax(0,1fr) 104px;align-items:center;gap:6px;margin-bottom:6px;display:grid}.colour .input{min-height:38px;padding:7px 10px;font-size:13px}.designer .input,.designer .ui-select{border-radius:10px;min-height:36px;padding:7px 10px;font-size:13px}.designer .field{margin-bottom:12px}.layouts .li-name{white-space:normal;line-height:1.3}.panel-foot .row .btn{flex:140px}.overrides{background:var(--f-surface-hover);border:1px solid var(--f-line);border-radius:var(--f-radius-md);margin:0 0 14px;padding:12px}.overrides .psection-title{margin-bottom:8px}.overrides p{margin:0}.overrides .list li{justify-content:space-between;padding:5px 0}.overrides .btn{margin-top:4px}.fill{flex:1 1 0;grid-template-rows:minmax(0,1fr);grid-template-columns:380px minmax(0,1fr);min-height:0;display:grid}.fill .form{border-right:1px solid var(--f-line)}.group{margin-bottom:22px}.group:last-child{margin-bottom:0}.formats{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;display:grid}.format{border-radius:var(--f-radius-md);border:1px solid var(--f-line-2);background:var(--f-surface);color:var(--f-ink-2);text-align:left;cursor:pointer;align-items:center;gap:10px;padding:10px 12px;font-size:13px;font-weight:500;line-height:1.25;display:flex}.format:hover{border-color:var(--f-strong)}.format[data-state=on]{border-color:var(--f-strong);background:var(--f-soft);color:var(--f-soft-ink);box-shadow:inset 0 0 0 1px var(--f-strong);font-weight:600}.image-field{flex-direction:column;gap:6px;margin:0 0 10px;display:flex}.image-row{border:1px solid var(--f-line-2);border-radius:var(--f-radius-md);background:var(--f-surface);cursor:pointer;align-items:center;gap:12px;padding:8px;transition:border-color .15s,background .15s;display:flex;position:relative}.image-row:hover,.image-row:focus-within{border-color:var(--f-strong);background:var(--f-surface-hover)}.image-slot{border-radius:var(--f-radius-sm);background:var(--f-surface-sunken);width:64px;height:48px;color:var(--f-muted);flex:none;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.image-row .mini{object-fit:cover;width:100%;height:100%;display:block}.image-text{flex-direction:column;gap:2px;min-width:0;display:flex}.image-action{color:var(--f-strong);text-underline-offset:2px;font-size:12.5px;font-weight:600;text-decoration:underline}.crop-note{color:var(--f-muted);align-items:center;gap:5px;padding-left:4px;font-size:12px;display:inline-flex}.crop-reset{align-self:flex-start;padding-left:4px!important}.render-status{flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-size:12.5px;display:flex}.err-text{color:var(--f-err)}.outputs{margin:0}.outputs li{padding:0}.outputs a{border-radius:var(--f-radius-sm);background:var(--f-surface-hover);border:1px solid var(--f-line);width:100%;color:var(--f-ink);align-items:center;gap:8px;padding:8px 12px;font-size:13px;font-weight:600;text-decoration:none;display:flex}.outputs a:hover{border-color:var(--f-strong);background:var(--f-soft)}.preview{background:var(--f-stage);flex-direction:column;min-width:0;min-height:0;display:flex}.preview-bar{background:var(--f-surface);border-bottom:1px solid var(--f-line);justify-content:space-between;align-items:center;gap:12px;padding:8px 12px 8px 16px;display:flex}.preview-bar .hint{align-items:center;gap:8px;margin:0;display:inline-flex}.zoom{border-radius:var(--f-radius-pill);background:var(--f-surface-sunken);flex:none;align-items:center;gap:2px;padding:2px;display:inline-flex}.zoom-value{text-align:center;font-variant-numeric:tabular-nums;min-width:46px;font-size:12px;font-weight:600}.preview-scroll{background-image:radial-gradient(#0a1e2a17 1px,#0000 1px);background-size:18px 18px;flex:auto;justify-content:safe center;align-items:safe center;min-height:0;padding:24px;display:flex;overflow:auto}.strip{justify-content:center;align-items:flex-start;gap:16px;width:100%;display:flex}.strip.carousel{flex-wrap:nowrap;justify-content:safe center;padding-bottom:8px;overflow-x:auto}.strip figure{flex-direction:column;flex:none;align-items:center;gap:8px;margin:0;display:flex}.strip figcaption{color:var(--f-muted);font-size:12px;font-weight:600}.strip canvas{box-shadow:var(--f-shadow-canvas);cursor:grab;touch-action:none;background:#fff;border-radius:2px;display:block}.strip canvas:active{cursor:grabbing}.pagestrip{background:var(--f-surface);border-top:1px solid var(--f-line);gap:10px;padding:10px 16px;display:flex;overflow-x:auto}.page-thumb{border-radius:var(--f-radius-sm);cursor:pointer;background:0 0;border:1px solid #0000;flex-direction:column;flex:none;align-items:center;gap:4px;padding:4px;display:flex}.page-thumb:hover{background:var(--f-surface-hover)}.page-thumb.on{border-color:var(--f-strong);background:var(--f-soft)}.page-thumb-img{background:var(--f-surface-sunken);border-radius:4px;justify-content:center;align-items:center;width:64px;height:64px;display:flex;overflow:hidden}.page-thumb-img img{max-width:100%;max-height:100%;display:block}.page-thumb-name{color:var(--f-ink-2);white-space:nowrap;font-size:11.5px;font-weight:600}.preview-warnings{background:var(--f-surface);margin:0;padding:8px 16px 10px 32px}.preview-warnings li svg{vertical-align:-2px;margin-right:4px}@media (max-width:1180px){.designer{grid-template-columns:232px minmax(0,1fr) 288px}.fill{grid-template-columns:340px minmax(0,1fr)}}@media (max-width:900px){#app{height:auto;min-height:100dvh;overflow:visible}.topbar{gap:8px;min-height:52px;padding:8px 12px}.brand-context{display:none}.docbar{flex-basis:100%;order:3}.docbar .sep{display:none}.topbar .title{flex:auto}.topbar .status{text-align:left;flex-basis:100%;order:4;margin:0}.topbar .status:empty{display:none}.page{padding:20px 16px 48px}.grid-import{grid-template-columns:1fr}.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.connect-card{grid-template-columns:1fr}.connect-side{display:none}.connect-form{padding:28px 22px}.table thead{display:none}.table tr{border-bottom:1px solid var(--f-line);grid-template-columns:1fr auto;gap:4px 8px;padding:12px 4px;display:grid}.table td{border:0;padding:0}.table td.num{display:none}.table td.actions{text-align:left;grid-column:1/-1}.designer,.fill{flex-direction:column;flex:none;display:flex}.designer .left,.designer .right,.fill .form{border:0;border-top:1px solid var(--f-line)}.stage-col{order:-1;height:70vh}.panel-body{padding:16px;overflow:visible}.preview{order:-1}.preview-bar .hint{font-size:11.5px}.preview-scroll{padding:16px 12px}.panel-foot{z-index:10;padding:12px 16px calc(12px + env(safe-area-inset-bottom));position:sticky;bottom:0;box-shadow:0 -8px 24px #0a1e2a14}.input,.ui-select{font-size:16px}}
