@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}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-cyrillic-ext-700-normal-BjwYoWNd.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-700-normal-LO58E6JB.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:700;src:url(/assets/inter-cyrillic-700-normal-CjBOestx.woff2) format("woff2"),url(/assets/inter-cyrillic-700-normal-DrXBdSj3.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:700;src:url(/assets/inter-greek-ext-700-normal-qfdV9bQt.woff2) format("woff2"),url(/assets/inter-greek-ext-700-normal-BoQ6DsYi.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-greek-700-normal-C3JjAnD8.woff2) format("woff2"),url(/assets/inter-greek-700-normal-BUv2fZ6O.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:700;src:url(/assets/inter-vietnamese-700-normal-DlLaEgI2.woff2) format("woff2"),url(/assets/inter-vietnamese-700-normal-BZaoP0fm.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:700;src:url(/assets/inter-latin-ext-700-normal-Ca8adRJv.woff2) format("woff2"),url(/assets/inter-latin-ext-700-normal-TidjK2hL.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:700;src:url(/assets/inter-latin-700-normal-Yt3aPRUw.woff2) format("woff2"),url(/assets/inter-latin-700-normal-BLAVimhd.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{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#182238;background:#f4f6fb;font-synthesis:none;text-rendering:optimizeLegibility;--bg: #f4f6fb;--surface: #ffffff;--surface-2: #f7f9fd;--ink: #182238;--muted: #68748a;--line: #e4e9f2;--blue: #2458e6;--blue-dark: #1947c7;--blue-soft: #eaf0ff;--green: #13855c;--green-soft: #e5f6ee;--amber: #a35e08;--amber-soft: #fff2db;--red: #bb3c46;--red-soft: #fff0f0;--shadow: 0 18px 52px rgba(32, 47, 78, .12);color-scheme:light}:root[data-theme=dark]{color:#eef2fa;background:#101521;--bg: #101521;--surface: #1a2231;--surface-2: #202b3d;--ink: #eef2fa;--muted: #a4aec0;--line: #303b4d;--blue: #7299ff;--blue-dark: #8ba9ff;--blue-soft: #26385e;--green: #6ad2a8;--green-soft: #193d34;--amber: #ffc268;--amber-soft: #46351d;--red: #ff9399;--red-soft: #47272e;--shadow: 0 18px 52px rgba(0, 0, 0, .4);color-scheme:dark}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-width:320px;background:var(--bg);color:var(--ink);font-size:14px;-webkit-tap-highlight-color:transparent}button,input,select,textarea{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid color-mix(in srgb,var(--blue) 35%,transparent);outline-offset:1px}button:disabled{opacity:.55;cursor:not-allowed}.app-shell{min-height:100vh;min-height:100dvh;display:flex}.desktop-sidebar{display:none}.app-main{width:100%;min-width:0;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:15;height:58px;flex:0 0 auto;display:flex;align-items:center;gap:10px;padding:max(7px,env(safe-area-inset-top)) 15px 7px;background:color-mix(in srgb,var(--bg) 94%,transparent);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.topbar-spacer{flex:1}.mobile-brand{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700;letter-spacing:-.02em}.mobile-brand img,.brand-lockup img{width:30px;height:30px;border-radius:9px}.connection-pill{display:inline-flex;align-items:center;gap:5px;color:var(--green);font-size:11px;font-weight:600;white-space:nowrap}.connection-pill.offline{color:var(--amber)}.language-chip,.install-icon-button{min-width:36px;height:36px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);font-weight:700}.route-content{flex:1;padding-bottom:calc(72px + env(safe-area-inset-bottom))}.page-content{width:min(100%,980px);margin:0 auto;padding:16px 15px 32px}.page-content.dashboard-page{padding-top:13px}.section-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 15px}.section-title h2{margin:0;font-size:21px;letter-spacing:-.035em}.button{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 14px;border:1px solid transparent;border-radius:12px;cursor:pointer;font-size:13px;font-weight:650;transition:transform .14s ease,background .14s ease,border .14s ease}.button:active{transform:scale(.98)}.button-primary{color:#fff;background:var(--blue)}.button-primary:hover{background:var(--blue-dark)}.button-secondary{color:var(--ink);background:var(--surface);border-color:var(--line)}.button-ghost{color:var(--blue);background:transparent}.button-danger{color:var(--red);background:var(--red-soft)}.hero-panel{position:relative;overflow:hidden;min-height:222px;display:flex;justify-content:space-between;padding:21px 19px;border-radius:20px;color:#fff;background:linear-gradient(124deg,#1c49c5,#326bea 53%,#4c86ff);box-shadow:0 12px 30px #2656cd38}.hero-panel:after{content:"";position:absolute;width:230px;height:230px;right:-72px;top:-120px;border-radius:50%;border:1px solid rgba(255,255,255,.18);box-shadow:0 0 0 24px #ffffff0b,0 0 0 48px #ffffff09}.hero-copy{position:relative;z-index:1;max-width:540px}.eyebrow{color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.hero-copy .eyebrow{color:#ffffffb8}.hero-copy h1{max-width:410px;margin:13px 0 8px;font-size:clamp(25px,7vw,35px);line-height:1.08;letter-spacing:-.045em}.hero-copy p{max-width:340px;margin:0 0 17px;color:#fffc;line-height:1.5}.hero-copy .button-primary{color:#1d48ba;background:#fff}.hero-mark{display:none}.dashboard-stats{display:grid;grid-template-columns:1fr;gap:9px;margin:12px 0 18px}.stat-card{min-width:0;display:flex;align-items:center;gap:11px;padding:12px;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:15px;cursor:pointer}.stat-icon,.history-icon,.aside-card-icon{width:36px;height:36px;flex:0 0 auto;display:grid;place-items:center;color:var(--blue);background:var(--blue-soft);border-radius:11px}.stat-icon.amber,.aside-card-icon.warm{color:var(--amber);background:var(--amber-soft)}.stat-icon.green{color:var(--green);background:var(--green-soft)}.stat-copy{min-width:0;display:flex;flex:1;flex-direction:column;gap:4px}.stat-copy small,.stat-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stat-copy small{color:var(--muted);font-size:11px}.stat-copy strong{font-size:15px}.stat-copy .stat-amount{font-size:14px}.stat-arrow{color:var(--muted)}.dashboard-columns{display:grid;gap:18px}.recent-section,.dashboard-aside{min-width:0}.recent-list,.history-list,.catalog-list,.customer-list{display:flex;flex-direction:column;gap:8px}.recent-row,.history-card,.catalog-row,.customer-card{min-width:0;display:flex;align-items:center;gap:10px;padding:12px;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:14px}.recent-row{width:100%;cursor:pointer}.recent-date{min-width:43px;color:var(--muted);font-size:11px}.recent-main,.history-main,.customer-info,.catalog-row-main{min-width:0;display:flex;flex:1;flex-direction:column;gap:4px}.recent-main strong,.history-main strong,.catalog-row-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.recent-main small,.history-main small,.catalog-row-main span{overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px}.recent-total,.history-total{white-space:nowrap;font-size:12px}.recent-arrow{display:none;color:var(--muted)}.status-badge{padding:5px 7px;border-radius:99px;font-size:10px;font-weight:700;white-space:nowrap}.status-draft{color:var(--muted);background:var(--surface-2)}.status-sent{color:var(--blue);background:var(--blue-soft)}.status-approved{color:var(--green);background:var(--green-soft)}.status-cancelled{color:var(--red);background:var(--red-soft)}.dashboard-aside{display:grid;gap:9px}.aside-card{display:flex;gap:10px;padding:13px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.aside-card-icon{width:32px;height:32px}.aside-card strong{font-size:12px}.aside-card p{margin:5px 0 0;color:var(--muted);font-size:11px;line-height:1.45}.first-estimate-card{padding:18px;background:var(--surface);border:1px dashed var(--line);border-radius:16px}.first-estimate-card strong{display:block;margin:8px 0 4px}.first-estimate-card p{color:var(--muted);font-size:12px;line-height:1.5}.empty-icon{width:44px;height:44px;display:grid;place-items:center;color:var(--blue);background:var(--blue-soft);border-radius:13px}.search-box{min-width:0;display:flex;align-items:center;gap:8px;padding:0 11px;color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:11px}.search-box input{width:100%;min-width:0;height:42px;padding:0;border:0;outline:none;background:transparent;color:var(--ink)}.wide-search{margin-bottom:10px}.filter-chips{display:flex;gap:6px;overflow-x:auto;margin:0 -15px 11px;padding:0 15px 3px;scrollbar-width:none}.filter-chips button{flex:0 0 auto;padding:7px 10px;border:1px solid var(--line);border-radius:99px;color:var(--muted);background:var(--surface);font-size:11px}.filter-chips button.active{color:#fff;background:var(--blue);border-color:var(--blue)}.history-card{position:relative;padding-right:40px}.history-open{min-width:0;display:flex;flex:1;align-items:center;gap:9px;padding:0;text-align:left;border:0;background:transparent;cursor:pointer}.history-icon{width:32px;height:32px}.history-copy{position:absolute;right:8px;top:50%;transform:translateY(-50%)}.icon-button{width:36px;height:36px;display:inline-grid;flex:0 0 auto;place-items:center;padding:0;border:1px solid var(--line);border-radius:10px;color:var(--muted);background:var(--surface);cursor:pointer}.icon-button.quiet{border-color:transparent;background:transparent}.danger-text{color:var(--red)!important}.catalog-toolbar{display:flex;align-items:center;gap:10px;margin:12px 0}.catalog-toolbar .search-box{flex:1}.muted{color:var(--muted)}.tiny{font-size:11px}.centered{text-align:center}.catalog-row{padding:10px}.catalog-type-icon{width:33px;height:33px;display:grid;place-items:center;flex:0 0 auto;border-radius:10px;color:var(--blue);background:var(--blue-soft)}.catalog-row-price{color:var(--ink);white-space:nowrap;font-size:11px}.catalog-row-price em{color:var(--muted);font-style:normal}.segmented-control{display:grid;grid-template-columns:1fr 1fr;padding:3px;background:var(--surface-2);border:1px solid var(--line);border-radius:12px}.segmented-control button{min-height:39px;display:flex;align-items:center;justify-content:center;gap:6px;border:0;border-radius:9px;color:var(--muted);background:transparent;font-size:12px}.segmented-control button.selected{color:var(--blue);background:var(--surface);box-shadow:0 1px 4px #141e3c1a}.customer-card{align-items:flex-start}.customer-avatar{width:38px;height:38px;display:grid;place-items:center;flex:0 0 auto;border-radius:12px;color:var(--blue);background:var(--blue-soft);font-weight:700}.customer-info strong{margin-bottom:1px;font-size:13px}.customer-info span{display:flex;align-items:center;gap:6px;overflow-wrap:anywhere;color:var(--muted);font-size:11px}.row-actions{display:flex;flex:0 0 auto}.empty-state{display:flex;flex-direction:column;align-items:center;gap:10px;padding:35px 16px;color:var(--muted);text-align:center}.empty-state strong{color:var(--ink)}.empty-state p{margin:0;font-size:12px}.settings-page{display:flex;flex-direction:column;gap:11px}.settings-page .section-title{margin-bottom:0}.settings-card{padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:15px}.settings-card-title{display:flex;align-items:center;gap:8px;margin-bottom:12px;color:var(--blue)}.settings-card-title h3{margin:0;color:var(--ink);font-size:14px}.field{min-width:0;display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.field-label{color:var(--muted);font-size:11px;font-weight:600}.field-hint{color:var(--muted);font-size:10px}.field input,.field select,.field textarea,input:not([type=checkbox]),select,textarea{max-width:100%;color:var(--ink)}.field input,.field select,.field textarea,.adjustment-row input,.adjustment-row select{min-height:41px;width:100%;padding:9px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2)}.field textarea,textarea{resize:vertical}input[type=checkbox]{accent-color:var(--blue)}.form-grid{display:grid;grid-template-columns:1fr;gap:0 10px}.form-stack{display:flex;flex-direction:column;gap:3px}.theme-options{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:6px 0 2px}.theme-option{min-height:38px;display:flex;align-items:center;justify-content:center;gap:5px;padding:5px;border:1px solid var(--line);border-radius:9px;color:var(--muted);background:var(--surface);font-size:11px}.theme-option.active{color:var(--blue);border-color:var(--blue);background:var(--blue-soft)}.visibility-grid{display:grid;grid-template-columns:1fr;gap:8px;margin:10px 0}.check-field{display:flex;align-items:center;gap:8px;color:var(--ink);font-size:12px}.check-field input{width:16px;height:16px}.backup-actions{display:grid;gap:8px}.settings-footer{display:flex;align-items:center;gap:12px;padding:3px 0}.success-note{color:var(--green);font-size:12px}.logo-preview{display:flex;align-items:center;gap:10px;margin:8px 0 14px}.logo-preview img{max-width:120px;max-height:76px;object-fit:contain;border:1px solid var(--line);border-radius:8px}.editor-page{width:min(100%,920px);margin:0 auto;padding:0 13px 110px}.editor-header{position:sticky;top:58px;z-index:12;display:flex;align-items:center;gap:8px;margin:0 -13px 12px;padding:8px 13px;background:color-mix(in srgb,var(--bg) 96%,transparent);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.back-button{min-height:37px;display:flex;align-items:center;gap:4px;padding:0 6px;border:0;border-radius:9px;background:transparent;color:var(--blue);font-size:12px}.editor-header-title{min-width:0;display:flex;flex:1;flex-direction:column;gap:2px}.editor-header-title strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.editor-header-title span{color:var(--muted);font-size:10px}.editor-header select{width:auto;max-width:82px;min-height:35px;padding:5px;border:1px solid var(--line);border-radius:8px;background:var(--surface);font-size:10px}.editor-header .button{min-height:35px;padding:7px 9px;font-size:11px}.editor-content{display:flex;flex-direction:column;gap:11px}.editor-section{min-width:0;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:16px}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:11px}.section-heading h2{margin:5px 0 0;font-size:17px;letter-spacing:-.03em}.step-mark{width:29px;height:29px;display:grid;place-items:center;color:var(--blue);background:var(--blue-soft);border-radius:9px;font-size:11px;font-weight:700}.add-line-actions,.export-actions,.share-format-actions{display:grid;grid-template-columns:1fr;gap:7px;margin:10px 0}.inline-empty{padding:12px;color:var(--muted);border:1px dashed var(--line);border-radius:11px;font-size:12px}.estimate-lines{display:flex;flex-direction:column;gap:9px;margin-top:10px}.estimate-line-card{min-width:0;padding:11px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2)}.line-top,.line-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px}.line-kind{padding:4px 7px;color:var(--blue);background:var(--blue-soft);border-radius:99px;font-size:9px;font-weight:700;text-transform:uppercase}.line-kind-material{color:var(--green);background:var(--green-soft)}.line-index{margin-left:auto;color:var(--muted);font-size:10px}.line-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 8px}.line-grid .field:last-child{grid-column:1 / -1}.input-with-action{display:flex;gap:5px}.input-with-action input{min-width:0;flex:1}.mini-action{width:39px;flex:0 0 auto;border:1px solid var(--line);border-radius:9px;color:var(--blue);background:var(--surface)}.line-bottom{margin-top:2px;padding-top:8px;border-top:1px solid var(--line);color:var(--muted);font-size:11px}.line-bottom strong{color:var(--ink);font-size:13px}.line-details{margin-top:9px;color:var(--muted);font-size:11px}.line-details summary,.visibility-details summary{padding:7px 0;color:var(--blue);cursor:pointer}.measurement-note{margin:3px 0}.totals-card{display:flex;flex-direction:column;gap:8px;margin-top:13px;padding:12px;background:var(--surface-2);border:1px solid var(--line);border-radius:12px}.totals-card>div{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:11px}.totals-card strong{color:var(--ink)}.totals-card .grand-total{padding-top:9px;border-top:1px solid var(--line);color:var(--ink);font-size:13px;font-weight:700}.grand-total strong{color:var(--blue);font-size:16px}.adjustment-block{margin:12px 0;padding:10px;border:1px solid var(--line);border-radius:11px}.adjustment-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px}.adjustment-row{display:grid;grid-template-columns:1fr 75px 80px 34px;gap:5px;margin-top:8px}.adjustment-row input,.adjustment-row select{min-width:0;min-height:38px;padding:6px;font-size:11px}.switch-line input{width:18px;height:18px}.text-button{display:inline-flex;align-items:center;gap:5px;padding:5px 0;border:0;color:var(--blue);background:transparent;font-size:11px;cursor:pointer}.visibility-details{margin-top:8px}.editor-footer{position:fixed;z-index:14;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px max(10px,env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--line);box-shadow:0 -6px 20px #1423410f}.editor-footer>div{display:flex;flex-direction:column;gap:3px;color:var(--muted);font-size:10px}.editor-footer strong{color:var(--ink);font-size:15px}.modal-backdrop{position:fixed;z-index:60;top:0;right:0;bottom:0;left:0;display:flex;align-items:flex-end;justify-content:center;padding:8px 8px max(8px,env(safe-area-inset-bottom));background:#0d14227a;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal-panel{width:min(100%,560px);max-height:88vh;max-height:88dvh;overflow:auto;padding:16px;border-radius:19px 19px 14px 14px;color:var(--ink);background:var(--surface);box-shadow:var(--shadow)}.modal-panel-wide{width:min(100%,760px)}.modal-header{position:sticky;top:-16px;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:-16px -16px 13px;padding:14px 16px 10px;background:var(--surface);border-bottom:1px solid var(--line)}.modal-header h2{margin:0;font-size:16px}.modal-content{padding-bottom:2px}.modal-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px;margin-top:12px}.form-grid+.modal-actions{margin-top:14px}.picker-search{margin:0 0 10px}.picker-list{max-height:48vh;overflow:auto;display:flex;flex-direction:column;gap:5px}.picker-item{width:100%;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px;text-align:left;background:var(--surface-2);border:1px solid var(--line);border-radius:11px}.picker-item>span:first-child{min-width:0;display:flex;flex-direction:column;gap:4px}.picker-item strong{font-size:12px}.picker-item small,.picker-price{color:var(--muted);font-size:10px}.picker-footer{padding-top:10px}.calc-result{display:flex;justify-content:space-between;margin:12px 0;padding:12px;border-radius:11px;background:var(--blue-soft)}.calc-result strong{color:var(--blue)}.toast{position:fixed;z-index:80;left:50%;bottom:calc(78px + env(safe-area-inset-bottom));max-width:calc(100vw - 30px);padding:10px 14px;transform:translate(-50%);color:#fff;background:#1e293b;border-radius:11px;box-shadow:var(--shadow);font-size:12px}.success-note{font-size:11px}.small-copy{font-size:12px;line-height:1.55}.mobile-bottom-nav{position:fixed;z-index:16;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(5,1fr);padding:6px 4px max(6px,env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--line)}.bottom-nav-item{min-width:0;min-height:49px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:0;border-radius:10px;color:var(--muted);background:transparent;font-size:9px}.bottom-nav-item.active{color:var(--blue);background:var(--blue-soft);font-weight:700}.boot-screen{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--muted)}.boot-screen img{width:56px;height:56px;border-radius:16px}.boot-screen span{color:var(--ink);font-weight:700}.boot-loader{width:24px;height:24px;border:2px solid var(--line);border-top-color:var(--blue);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.limit-banner{display:flex;align-items:center;justify-content:space-between;gap:9px;margin:10px 0;padding:10px;color:var(--amber);background:var(--amber-soft);border:1px solid color-mix(in srgb,var(--amber) 18%,transparent);border-radius:11px;font-size:11px}.paywall-card{display:flex;flex-direction:column;gap:12px}.paywall-price{font-size:23px;font-weight:700}.paywall-feature-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.paywall-feature-list li{display:flex;gap:7px;color:var(--muted);line-height:1.4}.paywall-feature-list svg{flex:0 0 auto;color:var(--green)}.legal-links{display:flex;gap:12px;flex-wrap:wrap;font-size:11px}.legal-links a{color:var(--blue)}.page-legal{width:min(100% - 28px,740px);margin:18px auto 50px;padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:16px;line-height:1.6}.page-legal h1{font-size:22px}.page-legal h2{margin-top:23px;font-size:16px}.page-legal p,.page-legal li{color:var(--muted);font-size:13px}@media(min-width:720px){.app-main{width:calc(100% - 238px);margin-left:238px}.desktop-sidebar{position:fixed;inset:0 auto 0 0;z-index:20;width:238px;display:flex;flex-direction:column;padding:24px 15px 16px;background:var(--surface);border-right:1px solid var(--line)}.brand-lockup{display:flex;align-items:center;gap:10px;padding:2px 6px 25px}.brand-lockup div{display:flex;flex-direction:column;gap:3px}.brand-lockup strong{font-size:13px}.brand-lockup span{color:var(--muted);font-size:10px}.side-navigation{display:grid;gap:5px}.nav-item{min-height:43px;display:flex;align-items:center;gap:11px;padding:0 11px;border:0;border-radius:11px;color:var(--muted);background:transparent;text-align:left;cursor:pointer}.nav-item.active{color:var(--blue);background:var(--blue-soft);font-weight:700}.nav-item small{margin-left:auto}.sidebar-bottom{margin-top:auto}.offline-card{display:flex;gap:8px;padding:10px;border-radius:11px;background:var(--surface-2)}.offline-dot{width:8px;height:8px;margin-top:4px;border-radius:50%;background:var(--green)}.offline-card div{display:flex;flex-direction:column;gap:3px}.offline-card strong{font-size:11px}.offline-card small{color:var(--muted);font-size:9px}.install-link{width:100%;display:flex;align-items:center;gap:8px;margin-top:10px;padding:9px;border:0;color:var(--blue);background:transparent;font-size:11px}.install-link svg:last-child{margin-left:auto}.mobile-brand,.mobile-bottom-nav{display:none}.topbar{padding-inline:25px}.route-content{padding-bottom:20px}.page-content{padding:24px 28px 34px}.dashboard-stats{grid-template-columns:repeat(3,1fr)}.dashboard-columns{grid-template-columns:minmax(0,1.7fr) minmax(210px,.9fr);align-items:start}.hero-panel{min-height:240px;padding:28px}.hero-mark{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;padding:15px;color:#ffffffbf;font-size:9px;letter-spacing:.09em}.hero-mark img{width:86px;height:86px;border-radius:23px;box-shadow:0 8px 25px #0a237840}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.line-grid{grid-template-columns:1fr 1fr 1.2fr}.line-grid .field:last-child{grid-column:auto}.add-line-actions,.export-actions,.share-format-actions{grid-template-columns:repeat(3,1fr)}.backup-actions{display:flex}.modal-backdrop{align-items:center;padding:16px}.modal-panel{border-radius:18px}.editor-page{padding-inline:22px}.editor-header{top:58px;margin-inline:-22px;padding-inline:22px}.editor-content{gap:14px}.editor-section{padding:20px}.editor-footer{right:0;left:238px;padding-inline:24px}}@media(min-width:1020px){.page-content{padding-inline:38px}.dashboard-stats{gap:12px;margin:16px 0 24px}.stat-card{padding:16px}.editor-content{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:start}.editor-section:first-child,.editor-section:nth-child(2){grid-column:span 1}.editor-section:nth-child(3),.editor-section:nth-child(4){grid-column:span 1}}@media(max-width:380px){.connection-pill span{display:none}.section-title h2{font-size:19px}.history-total{display:none}.adjustment-row{grid-template-columns:1fr 64px 70px 32px}}.pro-chip{min-height:35px;display:inline-flex;align-items:center;gap:5px;padding:0 9px;border:1px solid color-mix(in srgb,var(--amber) 45%,var(--line));border-radius:10px;color:var(--amber);background:var(--amber-soft);font-size:11px;font-weight:700}.terms-check{padding:9px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);line-height:1.4}.terms-check span{font-size:11px}.paywall-card .modal-actions{justify-content:flex-start}@media(max-width:380px){.pro-chip{padding-inline:7px}}
