@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-400-normal-obahsSVq.woff2) format("woff2"),url(/assets/inter-cyrillic-400-normal-HOLc17fK.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2) format("woff2"),url(/assets/inter-greek-ext-400-normal-KugGGMne.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-400-normal-B4URO6DV.woff2) format("woff2"),url(/assets/inter-greek-400-normal-q2sYcFCs.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-vietnamese-400-normal-DMkecbls.woff2) format("woff2"),url(/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-ext-400-normal-C1nco2VV.woff2) format("woff2"),url(/assets/inter-latin-ext-400-normal-77YHD8bZ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2) format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-ext-500-normal-B0yAr1jD.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-500-normal-BmqWE9Dz.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-500-normal-BasfLYem.woff2) format("woff2"),url(/assets/inter-cyrillic-500-normal-CxZf_p3X.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-ext-500-normal-C4iEst2y.woff2) format("woff2"),url(/assets/inter-greek-ext-500-normal-2j5mBUwD.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-500-normal-BIZE56-Y.woff2) format("woff2"),url(/assets/inter-greek-500-normal-Xzm54t5V.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-vietnamese-500-normal-DOriooB6.woff2) format("woff2"),url(/assets/inter-vietnamese-500-normal-mJboJaSs.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-ext-500-normal-CV4jyFjo.woff2) format("woff2"),url(/assets/inter-latin-ext-500-normal-BxGbmqWO.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2) format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-ext-600-normal-Dfes3d0z.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-600-normal-Bcila6Z-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-600-normal-CWCymEST.woff2) format("woff2"),url(/assets/inter-cyrillic-600-normal-4D_pXhcN.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-ext-600-normal-DRtmH8MT.woff2) format("woff2"),url(/assets/inter-greek-ext-600-normal-B8X0CLgF.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-600-normal-plRanbMR.woff2) format("woff2"),url(/assets/inter-greek-600-normal-BZpKdvQh.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2) format("woff2"),url(/assets/inter-vietnamese-600-normal-BuLX-rYi.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2) format("woff2"),url(/assets/inter-latin-ext-600-normal-CIVaiw4L.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2) format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--c-bg: #f6f7f9;--c-surface: #ffffff;--c-surface-2: #f8fafc;--c-glass: rgba(255, 255, 255, .72);--c-glass-border: rgba(255, 255, 255, .55);--c-border: #e3e7ec;--c-border-strong: #cbd2da;--c-text: #0f172a;--c-text-muted: #5b6675;--c-text-subtle: #8a94a3;--c-primary: #2563eb;--c-primary-hover: #1d4ed8;--c-primary-weak: #eff4ff;--c-success: #047857;--c-success-weak: #ecfdf5;--c-danger: #b91c1c;--c-danger-weak: #fef2f2;--c-warning: #b45309;--c-zone-1: #2563eb;--c-zone-2: #059669;--c-zone-3: #d97706;--c-zone-4: #dc2626;--font-sans: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--fs-xs: .75rem;--fs-sm: .875rem;--fs-md: 1rem;--fs-lg: 1.125rem;--fs-xl: 1.5rem;--lh-tight: 1.25;--lh-base: 1.5;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 24px;--sp-6: 32px;--sp-8: 48px;--r-sm: 8px;--r-md: 12px;--r-lg: 16px;--r-pill: 9999px;--e-1: 0 1px 2px rgba(15, 23, 42, .06), 0 1px 3px rgba(15, 23, 42, .1);--e-2: 0 2px 8px rgba(15, 23, 42, .08), 0 1px 3px rgba(15, 23, 42, .06);--e-3: 0 8px 24px rgba(15, 23, 42, .12), 0 2px 6px rgba(15, 23, 42, .08);--e-glass: 0 4px 16px rgba(15, 23, 42, .14);--t-fast: .12s cubic-bezier(.2, 0, .2, 1);--t-base: .18s cubic-bezier(.2, 0, .2, 1);font-family:var(--font-sans);line-height:var(--lh-base);font-weight:var(--fw-regular);color-scheme:light;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-reduced-motion: reduce){:root{--t-fast: 0ms;--t-base: 0ms}}html,body,#app{width:100%;height:100%}body{margin:0;min-width:320px;min-height:100vh;font-family:var(--font-sans);color:var(--c-text);background:var(--c-bg);overflow:hidden}#app{margin:0;padding:0}.glass{background:var(--c-glass);-webkit-backdrop-filter:blur(16px) saturate(140%);backdrop-filter:blur(16px) saturate(140%);border:1px solid var(--c-glass-border);box-shadow:var(--e-glass)}button:focus,button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent-2, var(--c-primary));outline-offset:2px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);min-height:44px;padding:var(--sp-2) var(--sp-4);font-size:var(--fs-sm);font-weight:var(--fw-medium);line-height:1;border:1px solid transparent;border-radius:var(--r-sm);cursor:pointer;text-decoration:none;transition:background var(--t-fast),filter var(--t-fast),border-color var(--t-fast)}.btn:active{transform:translateY(1px)}.btn--primary{background:var(--c-primary);color:#fff;border-color:var(--c-primary)}.btn--primary:hover{background:var(--c-primary-hover)}.btn--success{background:var(--c-success);color:#fff;border-color:var(--c-success)}.btn--success:hover{filter:brightness(.94)}.btn--ghost{background:var(--c-surface);color:var(--c-text);border-color:var(--c-border)}.btn--ghost:hover{background:var(--c-surface-2)}.btn--danger{background:var(--c-surface);color:var(--c-danger);border-color:var(--c-danger)}.btn--danger:hover{background:var(--c-danger-weak)}.btn--sm{padding:var(--sp-1) var(--sp-3)}.field{display:flex;flex-direction:column;gap:var(--sp-1)}.field-label{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--c-text-muted)}.input{width:100%;min-height:44px;padding:0 var(--sp-3);font-size:var(--fs-sm);color:var(--c-text);background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-sm)}.card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-md);box-shadow:var(--e-1);padding:var(--sp-4)}.pill{display:inline-flex;align-items:center;gap:var(--sp-2);padding:var(--sp-1) var(--sp-3);font-size:var(--fs-xs);font-weight:var(--fw-medium);border-radius:var(--r-pill);border:1px solid var(--c-border);background:var(--c-surface);color:var(--c-text-muted)}.pill-dot{width:8px;height:8px;border-radius:var(--r-pill);background:var(--c-text-subtle);flex:0 0 auto}.pill--ok{border-color:#04785766;color:var(--c-success)}.pill--ok .pill-dot{background:var(--c-success)}.pill--warn{border-color:#b4530966;color:var(--c-warning)}.pill--warn .pill-dot{background:var(--c-warning)}.modal-backdrop{position:fixed;inset:0;z-index:1100;display:flex;align-items:center;justify-content:center;padding:var(--sp-4);background:#0f172a73;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-panel{width:min(520px,92vw);max-height:calc(100vh - 2 * var(--sp-4));overflow-y:auto;padding:var(--sp-4);background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);box-shadow:var(--e-3);outline:none}.modal-actions{display:flex;gap:var(--sp-2);justify-content:flex-end;margin-top:var(--sp-4)}.modal-delete{margin-right:auto}.modal-enter-active,.modal-leave-active{transition:opacity var(--t-base)}.modal-enter-active .modal-panel,.modal-leave-active .modal-panel{transition:transform var(--t-base)}.modal-enter-from,.modal-leave-to{opacity:0}.modal-enter-from .modal-panel,.modal-leave-to .modal-panel{transform:scale(.96) translateY(8px)}:root{--bg: #EDF0F4;--surface: #FFFFFF;--glass: rgba(255, 255, 255, .85);--ink: #161C24;--muted: #586170;--line: #D3D9E0;--accent: #E8622C;--accent-hover: #CC4E1D;--accent-ink: #FFFFFF;--accent-2: #2D6BD4;--good: #1A7A4F;--gap: #C43E3E;--overlap: #3E74C9;--group-1: #2D6BD4;--group-2: #12897E;--group-3: #8A5CF6;--group-4: #D98A1F;--group-5: #C43E6B;--group-6: #0EA5A5;--group-7: #DB2777;--group-8: #65A30D;--group-9: #7A5AF8;--group-10: #0891B2;--group-11: #CA8A04;--group-12: #BE123C;--font-datum: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-datum-mono: "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace;--fs-datum-micro: 11px;--fs-datum-label: 12.5px;--fs-datum-body: 14px;--fs-datum-title: 15px;--fs-datum-h1: clamp(24px, 4vw, 34px);--sp-datum-1: 4px;--sp-datum-2: 6px;--sp-datum-3: 7px;--sp-datum-4: 8px;--sp-datum-5: 12px;--sp-datum-6: 14px;--sp-datum-7: 16px;--sp-datum-8: 18px;--r-datum-pill: 999px;--r-datum-icon: 11px;--r-datum-panel: 16px;--r-datum-sheet: 18px;--r-datum-input: 8px;--e-datum-glass: 0 6px 18px rgba(10, 20, 30, .14);--e-datum-panel: 0 12px 30px rgba(10, 20, 30, .18);--e-datum-dock: 0 14px 34px rgba(10, 20, 30, .22);--e-datum-sheet: 0 -12px 34px rgba(10, 20, 30, .3);--t-datum: .2s cubic-bezier(.4, 0, .2, 1)}.datum-numeric{font-variant-numeric:tabular-nums}@media (prefers-reduced-motion: reduce){:root{--t-datum: 0ms}}.app-version[data-v-4f016a5a]{position:fixed;left:12px;bottom:12px;z-index:900;pointer-events:none;padding:2px var(--sp-2);font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--c-text-muted);border-radius:var(--r-pill)}.dialog-panel[data-v-e86a4c78]{width:min(420px,92vw);display:flex;flex-direction:column;gap:var(--sp-3)}.dialog-title[data-v-e86a4c78]{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-semibold);color:var(--c-text)}.dialog-message[data-v-e86a4c78]{margin:0;font-size:var(--fs-sm);line-height:var(--lh-base);color:var(--c-text)}.dialog-input[data-v-e86a4c78]{margin-top:var(--sp-1)}.home[data-v-0cafacb6]{height:100vh;overflow-y:auto;display:flex;flex-direction:column;gap:var(--sp-5);padding:var(--sp-5) var(--sp-4) var(--sp-8);max-width:1040px;margin:0 auto;width:100%;box-sizing:border-box}.home-header[data-v-0cafacb6]{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);flex-wrap:wrap}.brand[data-v-0cafacb6]{display:flex;align-items:center;gap:var(--sp-3)}.brand-mark[data-v-0cafacb6]{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--r-md);background:var(--c-primary-weak);color:var(--c-primary)}.brand-title[data-v-0cafacb6]{margin:0;font-size:var(--fs-xl);font-weight:var(--fw-semibold);color:var(--c-text)}.home-grid[data-v-0cafacb6]{display:grid;grid-template-columns:minmax(280px,360px) 1fr;gap:var(--sp-4);align-items:start}@media (max-width: 760px){.home-grid[data-v-0cafacb6]{grid-template-columns:1fr}}.card-title[data-v-0cafacb6]{margin:0 0 var(--sp-3);font-size:var(--fs-lg);font-weight:var(--fw-semibold);color:var(--c-text)}.new-project[data-v-0cafacb6]{display:flex;flex-direction:column;gap:var(--sp-3)}.field[data-v-0cafacb6]{display:flex;flex-direction:column;gap:var(--sp-1)}.field-label[data-v-0cafacb6]{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--c-text-muted)}.new-project .btn[data-v-0cafacb6]{margin-top:var(--sp-1)}.projects-head[data-v-0cafacb6]{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);flex-wrap:wrap;margin-bottom:var(--sp-4)}.projects-tools[data-v-0cafacb6]{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}.import-label[data-v-0cafacb6]{display:inline-flex;cursor:pointer}.empty[data-v-0cafacb6]{font-size:var(--fs-sm);color:var(--c-text-muted);padding:var(--sp-5) 0;text-align:center}.project-grid[data-v-0cafacb6]{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--sp-3)}.project-card[data-v-0cafacb6]{display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-3);background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-md);box-shadow:var(--e-1);cursor:pointer;transition:box-shadow var(--t-base),transform var(--t-base)}.project-card[data-v-0cafacb6]:hover{box-shadow:var(--e-2);transform:translateY(-2px)}.project-thumb[data-v-0cafacb6]{width:100%;aspect-ratio:230 / 120;border-radius:var(--r-sm);background:var(--c-surface-2);border:1px solid var(--c-border)}.project-name[data-v-0cafacb6]{font-size:var(--fs-md);font-weight:var(--fw-semibold);color:var(--c-text)}.project-rename-input[data-v-0cafacb6]{font-size:var(--fs-md);font-weight:var(--fw-semibold)}.project-meta[data-v-0cafacb6]{font-size:var(--fs-xs);color:var(--c-text-muted);margin-top:2px}.project-actions[data-v-0cafacb6]{display:flex;gap:var(--sp-2);flex-wrap:wrap}.project-actions .btn[data-v-0cafacb6]{cursor:pointer}.toast[data-v-0cafacb6]{position:fixed;top:var(--sp-2);left:50%;transform:translate(-50%);z-index:1100;display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-md);font-size:var(--fs-sm);color:var(--c-text);max-width:calc(100vw - 2 * var(--sp-4));flex-wrap:wrap}.toast-meta[data-v-0cafacb6]{color:var(--c-text-muted)}.toast--ok .pill-dot[data-v-0cafacb6]{background:var(--c-success)}.toast--warn .pill-dot[data-v-0cafacb6]{background:var(--c-warning)}.toast-enter-active[data-v-0cafacb6],.toast-leave-active[data-v-0cafacb6]{transition:opacity var(--t-base),transform var(--t-base)}.toast-enter-from[data-v-0cafacb6],.toast-leave-to[data-v-0cafacb6]{opacity:0;transform:translate(-50%,-8px)}.visually-hidden[data-v-0cafacb6]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.armed-bar[data-v-e28ed9e2]{position:fixed;top:var(--sp-datum-7, 16px);left:50%;transform:translate(-50%);z-index:1000;display:flex;align-items:center;gap:var(--sp-datum-4, 8px);padding:var(--sp-datum-3, 7px) var(--sp-datum-6, 14px);border-radius:var(--r-datum-pill, 999px);font-size:var(--fs-datum-label)}.armed-cancel[data-v-e28ed9e2]{border:none;background:transparent;color:var(--accent);font-weight:600;cursor:pointer;min-height:32px}.settings-menu[data-v-b32e44e4]{position:relative}.settings-gear-btn[data-v-b32e44e4]{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:none;background:transparent;color:var(--ink);cursor:pointer;border-radius:var(--r-datum-input, 8px)}.settings-gear-btn[data-v-b32e44e4]:hover{background:var(--bg)}.settings-dropdown[data-v-b32e44e4]{position:absolute;top:calc(100% + 6px);right:0;min-width:200px;border-radius:var(--r-datum-panel, 16px);box-shadow:var(--e-datum-panel);padding:var(--sp-datum-6, 14px);z-index:20}.settings-section-label[data-v-b32e44e4]{font-size:var(--fs-datum-label);font-weight:600;color:var(--muted);margin-bottom:var(--sp-datum-3, 7px)}.settings-segmented[data-v-b32e44e4]{display:flex;border:1px solid var(--line);border-radius:var(--r-datum-pill, 999px);overflow:hidden}.settings-segment[data-v-b32e44e4]{flex:1;min-height:44px;border:none;background:var(--surface);color:var(--muted);font-size:var(--fs-datum-body);cursor:pointer}.settings-segment--active[data-v-b32e44e4]{background:var(--accent);color:var(--accent-ink);font-weight:600}.top-bar[data-v-8904a6e8]{position:fixed;top:0;left:0;right:0;z-index:900;display:flex;align-items:center;gap:var(--sp-datum-4, 8px);padding:var(--sp-datum-4, 8px) var(--sp-datum-6, 14px)}.top-bar-btn[data-v-8904a6e8]{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:none;background:transparent;color:var(--ink);cursor:pointer;border-radius:var(--r-datum-input, 8px)}.top-bar-btn[data-v-8904a6e8]:hover{background:var(--bg)}.top-bar-btn--sm[data-v-8904a6e8]{position:relative;width:24px;height:24px}.top-bar-btn--sm[data-v-8904a6e8]:before{content:"";position:absolute;inset:-10px}.top-bar-brand[data-v-8904a6e8]{color:var(--accent)}.top-bar-title[data-v-8904a6e8]{display:flex;align-items:center;gap:4px;min-width:0}.top-bar-name[data-v-8904a6e8]{font-size:var(--fs-datum-title);font-weight:600;color:var(--ink);cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-bar-rename-input[data-v-8904a6e8]{font-size:var(--fs-datum-title);font-weight:600;font-family:var(--font-datum);border:1px solid var(--accent-2);border-radius:4px;padding:2px 6px}.top-bar-spacer[data-v-8904a6e8]{flex:1}.inspector[data-v-a85bd7fd]{width:280px;border-radius:var(--r-datum-panel, 16px);box-shadow:var(--e-datum-panel);padding:var(--sp-datum-6, 14px);color:var(--ink)}.inspector-title[data-v-a85bd7fd]{display:flex;align-items:center;gap:var(--sp-datum-3, 7px);font-size:var(--fs-datum-title);font-weight:600;margin-bottom:var(--sp-datum-6, 14px)}.inspector-group-dot[data-v-a85bd7fd]{width:10px;height:10px;border-radius:999px;flex:0 0 auto}.inspector-field[data-v-a85bd7fd]{margin-bottom:var(--sp-datum-6, 14px)}.inspector-field-label[data-v-a85bd7fd]{display:flex;justify-content:space-between;font-size:var(--fs-datum-label);font-weight:500;color:var(--muted);margin-bottom:var(--sp-datum-3, 7px)}.inspector-readout[data-v-a85bd7fd]{color:var(--ink);font-weight:600}.inspector-caption[data-v-a85bd7fd]{font-size:10.5px;color:var(--muted);margin-top:3px}.inspector-chips[data-v-a85bd7fd]{display:flex;flex-wrap:wrap;gap:7px}.inspector-swatch[data-v-a85bd7fd]{width:30px;height:30px;border-radius:9px;border:2px solid transparent;padding:0;cursor:pointer;box-shadow:inset 0 0 0 1px #0000001a;transition:transform .1s}.inspector-swatch[data-v-a85bd7fd]:hover{transform:translateY(-1px)}.inspector-swatch--active[data-v-a85bd7fd]{box-shadow:0 0 0 2px var(--surface),0 0 0 3px var(--ink)}.inspector-typeline[data-v-a85bd7fd]{display:flex;align-items:center;gap:8px;font-size:11.5px;color:var(--muted)}.inspector-typeline b[data-v-a85bd7fd]{color:var(--ink);font-weight:600}.inspector-type-btn[data-v-a85bd7fd]{margin-left:auto;border:0;background:transparent;color:var(--accent);font-family:inherit;font-size:11.5px;font-weight:600;cursor:pointer;padding:3px 5px;border-radius:6px;flex:none}.inspector-type-btn[data-v-a85bd7fd]:hover{background:#e8622c1a}.inspector-oos[data-v-a85bd7fd]{border:1px solid var(--accent);background:#e8622c14;border-radius:10px;padding:9px 10px;font-size:11.5px;color:var(--ink);line-height:1.5;margin-bottom:var(--sp-datum-6, 14px)}.inspector-oos b[data-v-a85bd7fd]{display:block;color:var(--accent);font-size:11px;letter-spacing:.03em;text-transform:uppercase;margin-bottom:3px}.inspector-oos-actions[data-v-a85bd7fd]{display:flex;gap:6px;margin-top:8px}.inspector-oos-actions button[data-v-a85bd7fd]{border:1px solid var(--line);background:var(--surface);color:var(--ink);font-family:inherit;font-size:11.5px;font-weight:600;padding:6px 10px;border-radius:8px;cursor:pointer}.inspector-oos-actions button[data-v-a85bd7fd]:hover{border-color:var(--accent);color:var(--accent)}.inspector-slider[data-v-a85bd7fd]{width:100%}.inspector-limit-tip[data-v-a85bd7fd]{margin-top:4px;font-size:var(--fs-datum-micro);font-weight:600;color:var(--accent)}.inspector-remove[data-v-a85bd7fd]{width:100%;min-height:44px;border:1px solid var(--gap);background:var(--surface);color:var(--gap);border-radius:var(--r-datum-input, 8px);cursor:pointer;font-weight:500}.inspector-remove[data-v-a85bd7fd]:hover{background:var(--gap);color:#fff}.groups-panel[data-v-99d9c77a]{width:260px;border-radius:var(--r-datum-panel, 16px);box-shadow:var(--e-datum-panel);padding:var(--sp-datum-6, 14px);color:var(--ink)}.groups-panel-header[data-v-99d9c77a]{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--sp-datum-5, 12px)}.groups-panel-title[data-v-99d9c77a]{font-size:var(--fs-datum-title);font-weight:600;margin:0}.groups-add-btn[data-v-99d9c77a]{display:inline-flex;align-items:center;gap:var(--sp-datum-2, 6px);border:none;background:transparent;color:var(--accent);font-size:var(--fs-datum-label);font-weight:500;cursor:pointer;padding:var(--sp-datum-2, 6px);border-radius:var(--r-datum-input, 8px)}.groups-add-btn[data-v-99d9c77a]:hover{background:var(--bg)}.groups-list[data-v-99d9c77a]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-datum-2, 6px)}.groups-row[data-v-99d9c77a]{display:flex;align-items:center;gap:var(--sp-datum-2, 6px);border-radius:var(--r-datum-input, 8px)}.groups-row--focused[data-v-99d9c77a]{background:var(--bg)}.groups-row-main[data-v-99d9c77a]{flex:1;display:flex;align-items:center;gap:var(--sp-datum-4, 8px);min-height:44px;padding:0 var(--sp-datum-3, 7px);border:none;background:transparent;cursor:pointer;text-align:left}.groups-swatch[data-v-99d9c77a]{width:10px;height:10px;border-radius:999px;flex:0 0 auto}.groups-name[data-v-99d9c77a]{flex:1;font-size:var(--fs-datum-body);color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.groups-rename-input[data-v-99d9c77a]{flex:1;font-size:var(--fs-datum-body);font-family:var(--font-datum);border:1px solid var(--accent-2);border-radius:4px;padding:2px 4px}.groups-count[data-v-99d9c77a]{color:var(--muted);font-size:var(--fs-datum-label)}.groups-icon-btn[data-v-99d9c77a]{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:none;background:transparent;color:var(--muted);cursor:pointer;border-radius:var(--r-datum-input, 8px)}.groups-icon-btn[data-v-99d9c77a]:hover{background:var(--bg);color:var(--ink)}.groups-icon-btn--disabled[data-v-99d9c77a]{opacity:.35;cursor:not-allowed}.groups-icon-btn--disabled[data-v-99d9c77a]:hover{background:transparent;color:var(--muted)}.group-focus-bar[data-v-f22696ce]{position:absolute;top:var(--sp-datum-7, 16px);left:50%;transform:translate(-50%);display:inline-flex;align-items:center;gap:var(--sp-datum-4, 8px);padding:var(--sp-datum-3, 7px) var(--sp-datum-6, 14px);border-radius:var(--r-datum-pill, 999px);background:#161c24eb;color:#fff;font-size:var(--fs-datum-label);box-shadow:var(--e-datum-glass)}.group-focus-swatch[data-v-f22696ce]{width:8px;height:8px;border-radius:999px;flex:0 0 auto}.group-focus-show-all[data-v-f22696ce]{border:none;background:transparent;color:var(--accent);font-weight:600;cursor:pointer;padding:0;min-height:44px}.materials-panel[data-v-083113bb]{width:300px;border-radius:var(--r-datum-panel, 16px);box-shadow:var(--e-datum-panel);padding:var(--sp-datum-6, 14px);color:var(--ink)}.materials-header[data-v-083113bb]{margin-bottom:var(--sp-datum-5, 12px)}.materials-title[data-v-083113bb]{font-size:var(--fs-datum-title);font-weight:600;margin:0 0 4px}.materials-scope[data-v-083113bb]{font-size:var(--fs-datum-micro);color:var(--muted);margin:0}.materials-group[data-v-083113bb]{margin-bottom:var(--sp-datum-5, 12px)}.materials-group-name[data-v-083113bb]{font-size:var(--fs-datum-label);font-weight:600;color:var(--muted);margin-bottom:var(--sp-datum-2, 6px)}.materials-line[data-v-083113bb]{display:flex;align-items:baseline;gap:var(--sp-datum-3, 7px);font-size:var(--fs-datum-body);padding:var(--sp-datum-1, 4px) 0}.materials-line-name[data-v-083113bb]{flex:1}.materials-line-no-type[data-v-083113bb]{color:var(--gap);font-size:var(--fs-datum-micro);margin-left:6px}.materials-line-count[data-v-083113bb]{color:var(--muted)}.materials-line-subtotal[data-v-083113bb]{font-weight:500;min-width:64px;text-align:right}.materials-empty[data-v-083113bb]{color:var(--muted);font-size:var(--fs-datum-body);padding:var(--sp-datum-4, 8px) 0}.materials-total[data-v-083113bb]{display:flex;justify-content:space-between;font-weight:700;font-size:var(--fs-datum-title);border-top:1px solid var(--line);padding-top:var(--sp-datum-4, 8px);margin-top:var(--sp-datum-4, 8px)}.head-picker[data-v-880ce7f7]{width:320px;max-height:480px;overflow-y:auto;border-radius:var(--r-datum-panel, 16px);box-shadow:var(--e-datum-panel);padding:var(--sp-datum-6, 14px);color:var(--ink)}.picker-search-input[data-v-880ce7f7],.picker-number-input[data-v-880ce7f7]{width:100%;min-height:44px;padding:0 var(--sp-datum-4, 8px);border:1px solid var(--line);border-radius:var(--r-datum-input, 8px);font-size:var(--fs-datum-body);font-family:var(--font-datum)}.picker-filters[data-v-880ce7f7]{margin-top:var(--sp-datum-5, 12px);display:flex;flex-direction:column;gap:var(--sp-datum-4, 8px)}.picker-field[data-v-880ce7f7]{display:flex;flex-direction:column;gap:4px}.picker-field-label[data-v-880ce7f7]{font-size:var(--fs-datum-label);color:var(--muted);font-weight:500}.picker-kind-chips[data-v-880ce7f7]{display:flex;flex-wrap:wrap;gap:var(--sp-datum-2, 6px)}.picker-kind-chip[data-v-880ce7f7]{min-height:32px;padding:4px var(--sp-datum-4, 8px);border:1px solid var(--line);border-radius:var(--r-datum-pill, 999px);background:var(--surface);font-size:var(--fs-datum-micro);cursor:pointer}.picker-kind-chip--active[data-v-880ce7f7]{border-color:var(--accent);background:var(--accent);color:var(--ink);font-weight:600}.picker-sections[data-v-880ce7f7]{margin-top:var(--sp-datum-6, 14px)}.picker-section-title[data-v-880ce7f7]{font-size:var(--fs-datum-label);font-weight:600;color:var(--muted);margin:var(--sp-datum-4, 8px) 0}.picker-row[data-v-880ce7f7]{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;width:100%;min-height:44px;padding:var(--sp-datum-3, 7px);border:none;border-radius:var(--r-datum-input, 8px);background:transparent;text-align:left;cursor:pointer}.picker-row[data-v-880ce7f7]:hover{background:var(--bg)}.picker-row-name[data-v-880ce7f7]{font-weight:500}.picker-row-brand[data-v-880ce7f7]{color:var(--muted);font-weight:400}.picker-row-kind[data-v-880ce7f7],.picker-row-range[data-v-880ce7f7]{font-size:var(--fs-datum-micro);color:var(--muted)}.picker-row-badge[data-v-880ce7f7]{font-size:var(--fs-datum-micro);color:var(--accent-2);border:1px solid var(--accent-2);border-radius:var(--r-datum-pill, 999px);padding:1px 6px}.picker-row-fit[data-v-880ce7f7]{font-size:var(--fs-datum-micro);color:var(--muted);font-style:italic}.picker-empty[data-v-880ce7f7]{padding:var(--sp-datum-6, 14px) 0;color:var(--muted);font-size:var(--fs-datum-body)}.picker-clear-btn[data-v-880ce7f7]{display:block;margin-top:var(--sp-datum-3, 7px);border:none;background:transparent;color:var(--accent);font-weight:600;cursor:pointer;padding:0}.dock[data-v-d3ee6a23]{position:absolute;bottom:var(--sp-datum-7, 16px);left:50%;transform:translate(-50%);display:flex;align-items:center;gap:var(--sp-datum-3, 7px);padding:var(--sp-datum-3, 7px);border-radius:var(--r-datum-panel, 16px);box-shadow:var(--e-datum-dock)}.dock-btn[data-v-d3ee6a23]{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border:none;background:transparent;color:var(--ink);cursor:pointer;border-radius:var(--r-datum-icon, 11px)}.dock-btn[data-v-d3ee6a23]:hover:not(:disabled){background:var(--bg)}.dock-btn[data-v-d3ee6a23]:disabled{opacity:.35;cursor:not-allowed}.dock-btn--primary[data-v-d3ee6a23]{background:var(--accent);color:var(--accent-ink)}.dock-btn--primary[data-v-d3ee6a23]:hover{background:var(--accent-hover)}.dock-btn--on[data-v-d3ee6a23]{color:var(--accent)}.dock-divider[data-v-d3ee6a23]{width:1px;height:28px;background:var(--line)}@media (max-width: 400px){.dock-btn[data-v-d3ee6a23]{width:42px;height:42px}}.save-pill[data-v-e59606f9]{display:inline-flex;align-items:center;gap:var(--sp-2, 8px);padding:var(--sp-1, 4px) var(--sp-3, 12px);border-radius:var(--r-pill, 999px);font-size:var(--fs-xs, 12px);font-weight:var(--fw-medium, 500);color:var(--c-text, #111827);background:var(--c-surface, #ffffff);border:1px solid var(--c-border, #e5e7eb);box-shadow:var(--e-1, 0 1px 2px rgba(0, 0, 0, .08));white-space:nowrap}.save-pill-dot[data-v-e59606f9]{width:8px;height:8px;border-radius:50%;flex:0 0 auto}.save-pill--saving .save-pill-dot[data-v-e59606f9]{background:var(--c-primary, #2563eb)}.save-pill--saved .save-pill-dot[data-v-e59606f9]{background:var(--c-success, #10b981)}.save-pill--failed .save-pill-dot[data-v-e59606f9]{background:var(--c-danger, #ef4444)}.save-pill--failed[data-v-e59606f9]{color:var(--c-danger, #ef4444);border-color:var(--c-danger, #ef4444)}.save-pill-fade-enter-active[data-v-e59606f9],.save-pill-fade-leave-active[data-v-e59606f9]{transition:opacity var(--t-base, .16s) ease,transform var(--t-base, .16s) ease}.save-pill-fade-enter-from[data-v-e59606f9],.save-pill-fade-leave-to[data-v-e59606f9]{opacity:0;transform:translateY(-4px)}@media (prefers-reduced-motion: reduce){.save-pill-fade-enter-active[data-v-e59606f9],.save-pill-fade-leave-active[data-v-e59606f9]{transition:none}}.inspector-slot[data-v-508f59ca]{position:fixed;top:64px;left:var(--sp-datum-7, 16px);z-index:800}.groups-slot[data-v-508f59ca]{position:fixed;top:64px;right:var(--sp-datum-7, 16px);z-index:800}.groups-slot--sheet[data-v-508f59ca]{position:fixed;inset:auto 0 0;border-radius:var(--r-datum-sheet, 18px) var(--r-datum-sheet, 18px) 0 0;box-shadow:var(--e-datum-sheet);z-index:950}.groups-scrim[data-v-508f59ca]{position:fixed;inset:0;background:#0a141e66;z-index:940}.materials-slot[data-v-508f59ca]{position:fixed;top:64px;right:var(--sp-datum-7, 16px);z-index:800}.picker-slot[data-v-508f59ca]{position:fixed;bottom:90px;left:50%;transform:translate(-50%);z-index:800}.focus-bar-slot[data-v-508f59ca]{z-index:850}@media (max-width: 640px){.inspector-slot[data-v-508f59ca]{top:auto;bottom:calc(96px + env(safe-area-inset-bottom,0px));left:var(--sp-datum-4, 8px);right:var(--sp-datum-4, 8px);width:auto}.inspector-slot[data-v-508f59ca] .inspector{width:auto}}.library-view[data-v-702d72c1]{height:100vh;overflow-y:auto;max-width:1000px;margin:0 auto;width:100%;box-sizing:border-box;padding:var(--sp-5) var(--sp-4) var(--sp-8);display:flex;flex-direction:column;gap:var(--sp-4)}.library-head[data-v-702d72c1]{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);flex-wrap:wrap}.library-title[data-v-702d72c1]{margin:0;font-size:var(--fs-xl);font-weight:var(--fw-semibold);color:var(--c-text)}.library-tools[data-v-702d72c1]{display:flex;gap:var(--sp-2);flex-wrap:wrap}.library-banner[data-v-702d72c1]{padding:var(--sp-3);border-radius:var(--r-sm);background:var(--c-warning, #b45309);background:color-mix(in srgb,var(--c-warning) 12%,var(--c-surface));border:1px solid var(--c-warning);color:var(--c-text);font-size:var(--fs-sm)}.library-search-field .input[data-v-702d72c1]{max-width:320px}.library-card[data-v-702d72c1]{padding:0;overflow:hidden}.data-table[data-v-702d72c1]{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.data-table th[data-v-702d72c1],.data-table td[data-v-702d72c1]{padding:var(--sp-3);text-align:left}.data-table thead th[data-v-702d72c1]{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--c-text-muted);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--c-border);background:var(--c-surface-2)}.data-table tbody tr[data-v-702d72c1]{border-bottom:1px solid var(--c-border)}.data-table tbody tr[data-v-702d72c1]:last-child{border-bottom:none}.library-empty[data-v-702d72c1]{text-align:center;color:var(--c-text-muted);padding:var(--sp-5)}.row-actions[data-v-702d72c1]{display:flex;gap:var(--sp-2);flex-wrap:wrap}.field-row[data-v-702d72c1]{display:flex;gap:var(--sp-2)}.field-row .field[data-v-702d72c1]{flex:1}.field-hint[data-v-702d72c1]{font-size:var(--fs-xs);color:var(--c-text-muted);margin:0}
