@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-vietnamese-wdth-normal-rJmnGBSt.woff2) format("woff2-variations");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:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-latin-ext-wdth-normal-7khWdh9v.woff2) format("woff2-variations");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:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-latin-wdth-normal-DY7AcnAa.woff2) format("woff2-variations");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-cyrillic-ext-600-normal-V-xxqcpd.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-600-normal-9HEixskS.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-cyrillic-600-normal-CTOM6hUh.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-600-normal-fLZuRloM.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-vietnamese-600-normal-D2EvbN8M.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-600-normal-iLQfcSjf.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-ext-600-normal-D38SheWl.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-600-normal-DmB0ttJJ.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-600-normal-DWFSQ4vo.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-g30qAdWV.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-Dsrv2Tcn.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-400-normal-DZqxrq2p.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-400-normal-BTotfTJu.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-greek-400-normal-_efipK4i.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-400-normal-D9ESIMu3.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-vietnamese-400-normal-DG4YqDda.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-400-normal-fK1oJ5dG.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-ext-400-normal-C5H60-Va.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-400-normal-RBey6euL.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-DUMzJB7m.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-Bz0x94Yp.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-600-normal-71GNu3SW.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-600-normal-BGq0mW3O.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-greek-600-normal-DzTrcv_p.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-600-normal-D-CqTdkO.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-vietnamese-600-normal-DpPYBSTl.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-600-normal-DgdngZtN.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-ext-600-normal-DOrvGEcy.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-600-normal-DIrixKbi.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-cyrillic-ext-700-normal-BmRLXWpJ.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-700-normal-DCQwxkRk.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-cyrillic-700-normal-D_uavGvn.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-700-normal-RFb1v-CK.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-greek-700-normal-wyJ6jzdA.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-700-normal-CkZN0sRy.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-vietnamese-700-normal-CkEo6LDy.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-700-normal-BV5B8Are.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-latin-ext-700-normal-aMgXseD4.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-700-normal-DZH6Xh-4.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-latin-700-normal-Bxkt5Cjx.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-700-normal-Bth3BMcD.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{--bw-graphite-950: #0E1013;--bw-graphite-900: #171A1E;--bw-graphite-800: #212529;--bw-graphite-700: #2C3238;--bw-graphite-600: #3A4248;--bw-graphite-400: #A2A9B1;--bw-concrete-50: #FFFFFF;--bw-concrete-100: #F2F3F4;--bw-concrete-200: #E8EAEC;--bw-concrete-300: #D6D9DC;--bw-concrete-600: #454B52;--bw-turquoise: #13BBA4;--bw-turquoise-hover: #2AC1AD;--bw-turquoise-ink: #0A5B4F;--bw-honey: #F5C542;--bw-honey-ink: #664A00;--bw-danger-ink: #A32B14;--bw-danger-lt: #EC7F6F;--bw-amber-ink: #7A4E00;--bw-amber-lt: #E8A33C;--bw-font-ui: "Archivo Variable", system-ui, -apple-system, sans-serif;--bw-font-display: "Archivo Variable", system-ui, -apple-system, sans-serif;--bw-font-mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--bw-wdth-display: 118;--bw-wdth-ui: 100;--bw-wdth-label: 108;--bw-text-xs: 11px;--bw-text-sm: 13px;--bw-text-base: 16px;--bw-text-lg: 20px;--bw-text-xl: 25px;--bw-text-2xl: 31px;--bw-text-3xl: 39px;--bw-text-4xl: 49px;--bw-display: clamp(38px, 6vw, 76px);--bw-leading-tight: 1.1;--bw-leading-snug: 1.35;--bw-leading-body: 1.55;--bw-track-display: -.022em;--bw-track-label: .11em;--bw-r-sm: 2px;--bw-r-md: 3px;--bw-r-lg: 4px;--bw-space-1: 4px;--bw-space-2: 8px;--bw-space-3: 12px;--bw-space-4: 16px;--bw-space-5: 24px;--bw-space-6: 32px;--bw-space-7: 48px;--bw-space-8: 64px;--bw-touch-min: 48px;--bw-touch-prim: 56px;--bw-maxw: 1120px;--bw-ease: cubic-bezier(.2, .7, .3, 1);--bw-dur: .16s;--color-bg: var(--bw-concrete-100);--color-surface: var(--bw-concrete-50);--color-surface-sunk: var(--bw-concrete-200);--color-line: var(--bw-concrete-300);--color-line-strong: var(--bw-graphite-600);--color-text: var(--bw-graphite-950);--color-text-muted: var(--bw-concrete-600);--color-text-invert: var(--bw-concrete-100);--color-accent: var(--bw-turquoise);--color-accent-hover: var(--bw-turquoise-hover);--color-accent-text: var(--bw-turquoise-ink);--color-on-accent: var(--bw-graphite-950);--color-accent-2: var(--bw-honey);--color-accent-2-text: var(--bw-honey-ink);--color-on-accent-2: var(--bw-graphite-950);--color-action: var(--bw-graphite-950);--color-on-action: var(--bw-turquoise);--color-logo-tile: var(--bw-graphite-950);--color-danger: var(--bw-danger-ink);--color-warn: var(--bw-amber-ink);--confidence-solid: var(--bw-graphite-950);--confidence-hatch: repeating-linear-gradient(45deg, transparent 0 3px, color-mix(in srgb, var(--bw-amber-ink) 34%, transparent) 3px 5px);--shadow-sm: 0 1px 2px rgba(14,16,19,.1);--shadow-md: 0 6px 20px rgba(14,16,19,.14);--shadow-lg: 0 20px 52px rgba(14,16,19,.22);color-scheme:light}:root:lang(ru){--bw-font-ui: "IBM Plex Sans", system-ui, -apple-system, sans-serif;--bw-font-display: "IBM Plex Sans", system-ui, -apple-system, sans-serif}:root[data-theme=dark]{--color-bg: var(--bw-graphite-950);--color-surface: var(--bw-graphite-900);--color-surface-sunk: var(--bw-graphite-800);--color-line: var(--bw-graphite-700);--color-line-strong: var(--bw-graphite-400);--color-text: var(--bw-concrete-100);--color-text-muted: var(--bw-graphite-400);--color-text-invert: var(--bw-graphite-950);--color-accent-text: var(--bw-turquoise);--color-accent-2-text: var(--bw-honey);--color-action: var(--bw-turquoise);--color-on-action: var(--bw-graphite-950);--color-logo-tile: var(--bw-graphite-950);--color-danger: var(--bw-danger-lt);--color-warn: var(--bw-amber-lt);--confidence-solid: var(--bw-concrete-100);--confidence-hatch: repeating-linear-gradient(45deg, transparent 0 3px, color-mix(in srgb, var(--bw-amber-lt) 34%, transparent) 3px 5px);--shadow-sm: 0 1px 2px rgba(0,0,0,.45);--shadow-md: 0 6px 20px rgba(0,0,0,.55);--shadow-lg: 0 20px 52px rgba(0,0,0,.65);color-scheme:dark}@media(prefers-color-scheme:dark){:root[data-theme=system]{--color-bg: var(--bw-graphite-950);--color-surface: var(--bw-graphite-900);--color-surface-sunk: var(--bw-graphite-800);--color-line: var(--bw-graphite-700);--color-line-strong: var(--bw-graphite-400);--color-text: var(--bw-concrete-100);--color-text-muted: var(--bw-graphite-400);--color-text-invert: var(--bw-graphite-950);--color-accent-text: var(--bw-turquoise);--color-accent-2-text: var(--bw-honey);--color-action: var(--bw-turquoise);--color-on-action: var(--bw-graphite-950);--color-logo-tile: var(--bw-graphite-950);--color-danger: var(--bw-danger-lt);--color-warn: var(--bw-amber-lt);--confidence-solid: var(--bw-concrete-100);--confidence-hatch: repeating-linear-gradient(45deg, transparent 0 3px, color-mix(in srgb, var(--bw-amber-lt) 34%, transparent) 3px 5px);--shadow-sm: 0 1px 2px rgba(0,0,0,.45);--shadow-md: 0 6px 20px rgba(0,0,0,.55);--shadow-lg: 0 20px 52px rgba(0,0,0,.65);color-scheme:dark}}.theme-paper{--color-bg: var(--bw-concrete-100);--color-surface: var(--bw-concrete-50);--color-surface-sunk: var(--bw-concrete-200);--color-line: var(--bw-concrete-300);--color-line-strong: var(--bw-graphite-600);--color-text: var(--bw-graphite-950);--color-text-muted: var(--bw-concrete-600);--color-text-invert: var(--bw-concrete-100);--color-accent: var(--bw-turquoise);--color-accent-hover: var(--bw-turquoise-hover);--color-accent-text: var(--bw-turquoise-ink);--color-on-accent: var(--bw-graphite-950);--color-accent-2: var(--bw-honey);--color-accent-2-text: var(--bw-honey-ink);--color-on-accent-2: var(--bw-graphite-950);--color-action: var(--bw-graphite-950);--color-on-action: var(--bw-turquoise);--color-logo-tile: var(--bw-graphite-950);--color-danger: var(--bw-danger-ink);--color-warn: var(--bw-amber-ink);--confidence-solid: var(--bw-graphite-950);--confidence-hatch: repeating-linear-gradient(45deg, transparent 0 3px, color-mix(in srgb, var(--bw-amber-ink) 22%, transparent) 3px 5px);color-scheme:light}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}:root{--safe-top: env(safe-area-inset-top);--safe-bot: env(safe-area-inset-bottom)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html,body,#root{height:100%}body{font-family:var(--bw-font-ui);font-variation-settings:"wdth" var(--bw-wdth-ui);font-size:var(--bw-text-base);background:var(--color-bg);color:var(--color-text);overscroll-behavior:none;-webkit-font-smoothing:antialiased;line-height:var(--bw-leading-body)}#app{max-width:560px;margin:0 auto;min-height:100%;display:flex;flex-direction:column}.topbar{background:var(--color-surface);color:var(--color-text);border-bottom:1.5px solid var(--color-line);padding:calc(var(--safe-top) + var(--bw-space-4)) var(--bw-space-4) var(--bw-space-3);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:50}.topbar h1{font-family:var(--bw-font-display);font-variation-settings:"wdth" var(--bw-wdth-display);font-size:var(--bw-text-lg);font-weight:800;letter-spacing:var(--bw-track-display);display:flex;align-items:center;gap:var(--bw-space-2)}.topbar h1>[role=img]{flex-shrink:0}.topbar .sub{font-family:var(--bw-font-mono);font-size:var(--bw-text-xs);letter-spacing:var(--bw-track-label);text-transform:uppercase;font-weight:600;color:var(--color-text-muted);background:none;border:none;cursor:pointer}.screen{flex:1;padding:var(--bw-space-4) var(--bw-space-4) calc(96px + var(--safe-bot));animation:fade var(--bw-dur) var(--bw-ease)}@keyframes fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.tabbar{position:fixed;bottom:0;left:0;right:0;max-width:560px;margin:0 auto;background:var(--color-surface);border-top:1.5px solid var(--color-line);display:flex;padding:calc(var(--bw-space-2) + 3px) 4px calc(var(--bw-space-2) + var(--safe-bot));overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;z-index:60}.tabbar::-webkit-scrollbar{display:none}.tab{position:relative;flex:1 0 64px;scroll-snap-align:start;min-height:var(--bw-touch-min);border:none;background:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:6px 2px;color:var(--color-text-muted);font-size:var(--bw-text-xs);font-weight:600;cursor:pointer;text-decoration:none}.tab svg{width:23px;height:23px}.tab.active{color:var(--color-accent-text)}.tab.active:before{content:"";position:absolute;top:-8px;left:50%;transform:translate(-50%);width:18px;height:3px;background:var(--color-accent);border-radius:var(--bw-r-sm)}.card{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--bw-r-lg);padding:var(--bw-space-4);margin-bottom:var(--bw-space-3);transition:border-color .15s ease,background-color .15s ease}.card--drag-active{border:1px dashed var(--color-accent);background:color-mix(in srgb,var(--color-accent) 8%,var(--color-surface))}.nouveau-drop-hint{margin:var(--bw-space-2) 0 0;font-size:var(--bw-text-sm);color:var(--color-text-muted)}.card h2{font-family:var(--bw-font-ui);font-variation-settings:"wdth" var(--bw-wdth-ui);font-size:var(--bw-text-base);font-weight:700;margin-bottom:4px}.card p.hint{font-size:var(--bw-text-sm);color:var(--color-text-muted);margin-bottom:var(--bw-space-3)}.eyebrow{font-family:var(--bw-font-mono);font-size:var(--bw-text-xs);font-weight:700;letter-spacing:var(--bw-track-label);text-transform:uppercase;color:var(--color-accent-text);margin-bottom:var(--bw-space-2)}.big-title{font-family:var(--bw-font-display);font-variation-settings:"wdth" var(--bw-wdth-display);font-size:var(--bw-text-2xl);font-weight:800;line-height:var(--bw-leading-tight);letter-spacing:var(--bw-track-display);margin-bottom:2px}.screen-sub{font-size:var(--bw-text-sm);color:var(--color-text-muted);margin-bottom:var(--bw-space-5)}.btn{display:flex;align-items:center;justify-content:center;gap:var(--bw-space-2);width:100%;min-height:var(--bw-touch-prim);border:none;border-radius:var(--bw-r-md);padding:var(--bw-space-4);font-family:var(--bw-font-ui);font-variation-settings:"wdth" var(--bw-wdth-ui);font-size:var(--bw-text-base);font-weight:700;cursor:pointer;transition:transform var(--bw-dur) var(--bw-ease),opacity var(--bw-dur) var(--bw-ease)}.btn:active{transform:scale(.98)}.btn-primary{background:var(--color-action);color:var(--color-on-action)}.btn-dark{background:var(--color-text);color:var(--color-bg)}.btn-ghost{background:var(--color-surface);color:var(--color-text);border:1.5px solid var(--color-line)}.btn-yellow{background:var(--color-accent);color:var(--color-on-accent)}.btn[disabled]{opacity:.5;pointer-events:none}.btn svg{width:20px;height:20px}.btn-row{display:flex;gap:var(--bw-space-2);margin-bottom:var(--bw-space-3)}.btn-sm{min-height:var(--bw-touch-min);padding:var(--bw-space-2) var(--bw-space-3);font-size:var(--bw-text-sm);border-radius:var(--bw-r-md)}label.fld{display:block;font-size:var(--bw-text-sm);font-weight:700;color:var(--color-text-muted);margin:var(--bw-space-3) 0 5px}input[type=text],input[type=password],input[type=email],input[type=number],input[type=search],input[type=tel],input[type=url],input[type=date],textarea,select{width:100%;min-height:var(--bw-touch-min);border:1.5px solid var(--color-line);border-radius:var(--bw-r-md);padding:var(--bw-space-3);font-family:var(--bw-font-ui);font-variation-settings:"wdth" var(--bw-wdth-ui);font-size:var(--bw-text-base);background:var(--color-surface);color:var(--color-text)}input[type=number]{font-family:var(--bw-font-mono);font-variant-numeric:tabular-nums}textarea{min-height:120px;resize:vertical;line-height:var(--bw-leading-body)}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--color-text);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 40%,transparent)}#btnDictee.rec{background:color-mix(in srgb,var(--color-danger) 12%,var(--color-surface));border-color:var(--color-danger);color:var(--color-danger)}#btnDictee.rec:before{content:"";width:9px;height:9px;border-radius:50%;background:var(--color-danger);display:inline-block;margin-right:4px;animation:pulse 1s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.lot-block{margin-bottom:var(--bw-space-3);border:1px solid var(--color-line);border-radius:var(--bw-r-lg);overflow:hidden}.lot-head{position:relative;background:var(--color-surface);border-bottom:2px solid var(--color-text);padding:var(--bw-space-2) var(--bw-space-3);padding-inline-start:calc(var(--bw-space-3) + 8px);font-family:var(--bw-font-mono);font-size:var(--bw-text-xs);font-weight:700;letter-spacing:var(--bw-track-label);text-transform:uppercase;color:var(--color-text)}.lot-head:before{content:"";position:absolute;inset-inline-start:0;top:0;bottom:0;width:4px;background:var(--color-accent)}.devis-card{border:1.5px solid var(--color-text);border-radius:var(--bw-r-lg);background:var(--color-surface);padding:var(--bw-space-3);margin:var(--bw-space-2) 0;font-size:var(--bw-text-sm)}.devis-card-head{display:flex;justify-content:space-between;align-items:baseline;gap:var(--bw-space-2);margin-bottom:var(--bw-space-2)}.devis-card-run{font-family:var(--bw-font-mono);font-size:var(--bw-text-xs);color:var(--color-text-muted)}.devis-card-lines{list-style:none;margin:0;padding:0}.devis-card-lines li{display:grid;grid-template-columns:minmax(0,auto) 1fr auto auto;gap:var(--bw-space-2);padding:4px 0;border-top:1px solid var(--color-line)}.devis-card-lines li:first-child{border-top:none}.devis-card-code{font-family:var(--bw-font-mono);font-size:var(--bw-text-xs);color:var(--color-accent-text)}.devis-card-pu,.devis-card-tot{font-family:var(--bw-font-mono);font-variant-numeric:tabular-nums;text-align:end}.devis-card-pu{color:var(--color-text-muted)}.devis-card-tag{margin-inline-start:var(--bw-space-1);padding:0 4px;border:1px solid var(--color-warn);border-radius:var(--bw-r-sm);color:var(--color-warn);font-size:var(--bw-text-xs);font-style:normal}.devis-card-total{display:flex;justify-content:space-between;margin-top:var(--bw-space-2);padding-top:var(--bw-space-2);border-top:1.5px solid var(--color-text);font-variant-numeric:tabular-nums}.devis-card-manquants{margin-top:var(--bw-space-2);font-size:var(--bw-text-xs);color:var(--color-text-muted)}.devis-card-manquants ul{margin:4px 0 0;padding-inline-start:var(--bw-space-3)}.devis-card-empty{color:var(--color-text-muted);margin:0}.devis-card-save{flex:none;width:auto;margin-top:var(--bw-space-3)}.poste-wrap{border-top:1px solid var(--color-line)}.poste-wrap:first-of-type{border-top:none}.poste{display:flex;align-items:flex-start;gap:var(--bw-space-2);padding:var(--bw-space-3) var(--bw-space-3)}.poste .pcode{font-family:var(--bw-font-mono);font-variant-numeric:tabular-nums;font-size:var(--bw-text-xs);font-weight:700;color:var(--color-accent-text);min-width:50px}.poste .pdesc{flex:1;font-size:var(--bw-text-sm)}.poste .pdesc small{display:block;color:var(--color-text-muted);font-size:var(--bw-text-xs);margin-top:4px;line-height:var(--bw-leading-snug)}.poste .pqty{width:60px}.poste .pqty input{min-height:0;padding:7px;font-size:var(--bw-text-sm);text-align:center}.poste .pqty .qty-static{display:block;padding:7px;font-family:var(--bw-font-mono);font-variant-numeric:tabular-nums;font-size:var(--bw-text-sm);text-align:center}.poste .ptot{display:flex;flex-direction:column;align-items:flex-end;gap:2px;font-family:var(--bw-font-mono);font-variant-numeric:tabular-nums;font-size:var(--bw-text-sm);font-weight:700;min-width:62px;text-align:right}.poste-wrap .pcaveat{display:block;margin:0 var(--bw-space-3) var(--bw-space-3);padding:var(--bw-space-2);border-inline-start:2px solid var(--color-warn);border-radius:var(--bw-r-sm);background:var(--color-surface);color:var(--color-text);font-family:var(--bw-font-ui);font-size:var(--bw-text-xs);line-height:1.45}.poste-wrap .pcaveat strong{color:var(--color-warn);font-weight:700}.poste-wrap .pcaveat-actions{display:flex;flex-wrap:wrap;gap:var(--bw-space-2);margin-top:var(--bw-space-1)}.poste-wrap .pcaveat-btn{flex:none;width:auto;padding:2px var(--bw-space-2);border:1.5px solid var(--color-warn);border-radius:var(--bw-r-sm);background:transparent;color:var(--color-warn);font-family:var(--bw-font-ui);font-size:var(--bw-text-xs);font-weight:700;cursor:pointer}.poste-wrap .pcaveat-btn:hover{background:var(--color-warn);color:var(--color-surface)}.poste .ptot-split{display:block;margin-top:2px;color:var(--color-text-muted);font-family:var(--bw-font-ui);font-size:var(--bw-text-xs);line-height:var(--bw-leading-snug)}.poste .ptot-detail{font-weight:400;font-size:11px;color:var(--color-text-muted);white-space:nowrap}.poste .pdel{display:flex;align-items:center;justify-content:center;min-width:var(--bw-touch-min);min-height:var(--bw-touch-min);margin:calc(var(--bw-space-2) * -1) calc(var(--bw-space-2) * -1) calc(var(--bw-space-2) * -1) 0;background:none;border:none;color:var(--color-danger);font-size:20px;cursor:pointer}.warn-flag,.valid-flag{display:inline-flex;align-items:center;gap:3px;margin-inline-start:var(--bw-space-1);margin-top:3px;padding:1px var(--bw-space-2);border:1.5px solid var(--color-warn);border-radius:var(--bw-r-sm);background:var(--confidence-hatch),var(--color-surface);color:var(--color-warn);font-family:var(--bw-font-ui);font-variation-settings:"wdth" var(--bw-wdth-ui);font-size:var(--bw-text-xs);font-weight:700;line-height:1.6}.totaux{background:var(--color-surface);border:1.5px solid var(--color-text);border-radius:var(--bw-r-lg);padding:var(--bw-space-4);margin-top:var(--bw-space-1)}.totaux .acc-edit{display:inline-flex;align-items:center;gap:var(--bw-space-1)}.totaux .qin-pct{width:4.5em;padding:2px var(--bw-space-1);text-align:end}.totaux .trow-split{color:var(--color-text-muted);font-size:var(--bw-text-xs)}.totaux .trow-split+.trow:not(.trow-split){border-top:1px solid var(--color-line);margin-top:2px;padding-top:var(--bw-space-2)}.totaux .trow{display:flex;justify-content:space-between;font-size:var(--bw-text-sm);padding:4px 0}.totaux .trow span:last-child{font-family:var(--bw-font-mono);font-variant-numeric:tabular-nums}.totaux .trow.big{font-size:var(--bw-text-xl);font-weight:800;border-top:1.5px solid var(--color-line);margin-top:var(--bw-space-2);padding-top:var(--bw-space-3)}.totaux .trow.acc{color:var(--color-accent-text);font-weight:700}.pill{position:relative;display:inline-block;background:color-mix(in srgb,var(--color-warn) 8%,var(--color-surface));border:1.5px solid var(--color-warn);color:var(--color-warn);font-size:var(--bw-text-xs);font-weight:700;padding:4px var(--bw-space-3);padding-inline-start:calc(var(--bw-space-3) + 10px);border-radius:var(--bw-r-sm);margin:2px 4px 2px 0;overflow:hidden}.pill:before{content:"";position:absolute;inset-inline-start:0;top:0;bottom:0;width:6px;background:var(--confidence-hatch),var(--color-surface);border-inline-end:1.5px solid var(--color-warn)}.pill.warn{background:var(--color-surface);border-color:var(--color-danger);color:var(--color-danger)}.loading{display:flex;flex-direction:column;align-items:center;gap:var(--bw-space-3);padding:40px 0;color:var(--color-text-muted)}.loading .nouveau-stop{flex:none;width:auto;align-self:center;padding-inline:var(--bw-space-4);border-color:var(--color-text-muted);color:var(--color-text-muted)}.loading .nouveau-stop:hover{border-color:var(--color-text);color:var(--color-text)}.spinner{width:38px;height:38px;border:3px solid var(--color-line);border-top-color:var(--color-accent-text);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.toast{position:fixed;bottom:calc(110px + var(--safe-bot));left:50%;transform:translate(-50%);background:var(--color-text);color:var(--color-bg);padding:var(--bw-space-3) var(--bw-space-5);border-radius:var(--bw-r-md);font-size:var(--bw-text-sm);font-weight:600;z-index:200;opacity:0;transition:opacity var(--bw-dur) var(--bw-ease);max-width:90%;text-align:center;pointer-events:none}.toast.show{opacity:1}.toast.err{background:var(--color-danger);color:var(--color-bg)}.empty{text-align:center;padding:50px var(--bw-space-5);color:var(--color-text-muted)}.empty svg{width:54px;height:54px;opacity:.3;margin-bottom:var(--bw-space-3)}.empty h3{font-size:var(--bw-text-base);color:var(--color-text);margin-bottom:6px}.empty p{font-size:var(--bw-text-sm)}.badge{display:inline-flex;align-items:center;font-family:var(--bw-font-mono);font-size:var(--bw-text-xs);font-weight:700;letter-spacing:var(--bw-track-label);padding:3px var(--bw-space-2);border-radius:var(--bw-r-sm);border:1.5px solid transparent;text-transform:uppercase}.badge-clickable{cursor:pointer}.badge-clickable:hover{filter:brightness(1.15)}.st-draft{background:var(--color-surface);border-color:var(--color-line);border-style:dashed;color:var(--color-text-muted)}.st-sent{background:var(--color-surface);border-color:var(--color-text);color:var(--color-text)}.st-ok{background:color-mix(in srgb,var(--color-accent) 14%,var(--color-surface));border-color:var(--color-accent-text);color:var(--color-accent-text)}.st-no{background:color-mix(in srgb,var(--color-danger) 10%,var(--color-surface));border-color:var(--color-danger);color:var(--color-danger)}.st-valider{background:var(--confidence-hatch),var(--color-surface);border-color:var(--color-warn);color:var(--color-warn)}.st-valide{background:var(--color-surface);border-color:var(--confidence-solid);color:var(--confidence-solid)}.hist-row{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--bw-r-lg);padding:var(--bw-space-3) var(--bw-space-4);margin-bottom:var(--bw-space-2);display:flex;align-items:center;gap:var(--bw-space-3);cursor:pointer;transition:transform var(--bw-dur) var(--bw-ease)}.hist-row:active{transform:scale(.99)}.hist-row .hmain{flex:1;min-width:0}.hist-row .hnum{font-family:var(--bw-font-mono);font-variant-numeric:tabular-nums;font-size:var(--bw-text-xs);font-weight:700;color:var(--color-accent-text)}.hist-row .htitle{font-size:var(--bw-text-sm);font-weight:700;margin:2px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hist-row .hmeta{font-size:var(--bw-text-xs);color:var(--color-text-muted)}.hist-row .hright{text-align:right;flex-shrink:0}.hist-row .hamount{font-family:var(--bw-font-mono);font-variant-numeric:tabular-nums;font-size:var(--bw-text-sm);font-weight:800;margin-top:4px}.hist-photos{display:flex;gap:6px;margin-top:var(--bw-space-2);flex-wrap:wrap}.hist-photos img{width:54px;height:54px;object-fit:cover;border-radius:var(--bw-r-md);border:1px solid var(--color-line)}.filter-bar{display:flex;gap:var(--bw-space-2);overflow-x:auto;padding-bottom:var(--bw-space-3);margin-bottom:6px}.filter-bar--facture{margin-top:calc(-1 * var(--bw-space-2));padding-bottom:var(--bw-space-2)}.filter-bar--facture .filter-chip{min-height:0;padding:5px var(--bw-space-3)}.filter-chip{flex-shrink:0;min-height:var(--bw-touch-min);border:1.5px solid var(--color-line);background:var(--color-surface);color:var(--color-text-muted);font-size:var(--bw-text-xs);font-weight:700;padding:7px var(--bw-space-4);border-radius:var(--bw-r-md);cursor:pointer}.filter-chip.on{background:var(--color-text);color:var(--color-bg);border-color:var(--color-text)}.statut-select{display:flex;gap:6px;flex-wrap:wrap;margin:6px 0 4px}.statut-btn{flex:1;min-width:70px;min-height:var(--bw-touch-min);border:1.5px solid var(--color-line);background:var(--color-surface);font-size:var(--bw-text-xs);font-weight:700;padding:var(--bw-space-2);border-radius:var(--bw-r-md);cursor:pointer;color:var(--color-text-muted)}.statut-btn.on.brouillon{border-color:var(--color-text-muted);color:var(--color-text-muted);background:color-mix(in srgb,var(--color-text-muted) 12%,var(--color-surface));border-width:2px;border-style:dashed}.statut-btn.on.envoye{border-color:var(--color-text);color:var(--color-text);background:color-mix(in srgb,var(--color-text) 8%,var(--color-surface));border-width:2px}.statut-btn.on.accepte{border-color:var(--color-accent-text);color:var(--color-accent-text);background:color-mix(in srgb,var(--color-accent) 14%,var(--color-surface));border-width:2px}.statut-btn.on.refuse{border-color:var(--color-danger);color:var(--color-danger);background:color-mix(in srgb,var(--color-danger) 10%,var(--color-surface));border-width:2px}.toggle-row{display:flex;align-items:center;justify-content:space-between;background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--bw-r-md);padding:var(--bw-space-3) var(--bw-space-4);margin-top:var(--bw-space-2)}.toggle-row .tlab{font-size:var(--bw-text-sm);font-weight:600}.switch{position:relative;width:50px;height:28px;flex-shrink:0}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;inset:0;background:var(--color-line);border-radius:28px;transition:background var(--bw-dur) var(--bw-ease);cursor:pointer}.slider:before{content:"";position:absolute;height:22px;width:22px;left:3px;top:3px;background:var(--color-surface);border-radius:50%;transition:transform var(--bw-dur) var(--bw-ease);box-shadow:var(--shadow-sm)}.switch input:checked+.slider{background:var(--color-action)}.switch input:checked+.slider:before{transform:translate(22px)}.autocomp{position:relative}.autocomp-list{position:absolute;left:0;right:0;top:100%;background:var(--color-surface);border:1px solid var(--color-line);border-radius:0 0 var(--bw-r-lg) var(--bw-r-lg);z-index:30;max-height:200px;overflow-y:auto;box-shadow:var(--shadow-md)}.autocomp-list div{padding:var(--bw-space-3);font-size:var(--bw-text-sm);border-bottom:1px solid var(--color-line);cursor:pointer}.autocomp-list div:active{background:color-mix(in srgb,var(--color-accent) 14%,var(--color-surface))}.client-courant{background:color-mix(in srgb,var(--color-accent) 14%,var(--color-surface));border:1.5px solid var(--color-accent-text);border-radius:var(--bw-r-md);padding:var(--bw-space-3) var(--bw-space-4);margin-top:var(--bw-space-3);font-size:var(--bw-text-sm);display:flex;align-items:center;justify-content:space-between}.client-courant b{color:var(--color-accent-text)}.client-courant button{background:none;border:none;color:var(--color-danger);font-size:var(--bw-text-sm);font-weight:700;cursor:pointer}.search-wrap{position:relative;margin-bottom:var(--bw-space-3)}.search-wrap>svg{position:absolute;left:13px;top:15px;width:18px;height:18px;color:var(--color-text-muted)}#biblioSearch{padding-left:40px}.sugg{position:absolute;left:0;right:0;top:100%;background:var(--color-surface);border:1px solid var(--color-line);border-radius:0 0 var(--bw-r-lg) var(--bw-r-lg);z-index:30;max-height:260px;overflow-y:auto;box-shadow:var(--shadow-md)}.sugg div{padding:var(--bw-space-2) var(--bw-space-3);font-size:var(--bw-text-sm);border-bottom:1px solid var(--color-line);cursor:pointer}.sugg div small{color:var(--color-text-muted)}.metier-sec{border:1px solid var(--color-line);border-radius:var(--bw-r-lg);margin-bottom:var(--bw-space-2);overflow:hidden;background:var(--color-surface)}.metier-head{min-height:var(--bw-touch-min);padding:var(--bw-space-3) var(--bw-space-4);display:flex;align-items:center;justify-content:space-between;cursor:pointer;background:var(--color-surface)}.metier-head .mname{font-family:var(--bw-font-ui);font-variation-settings:"wdth" var(--bw-wdth-ui);font-size:var(--bw-text-sm);font-weight:800;color:var(--color-text)}.metier-head .mcount{font-family:var(--bw-font-mono);font-variant-numeric:tabular-nums;font-size:var(--bw-text-xs);color:var(--color-text-muted);font-weight:600}.metier-head .chev{transition:transform var(--bw-dur) var(--bw-ease);color:var(--color-text-muted)}.metier-sec.open .chev{transform:rotate(90deg)}.metier-body{border-top:1px solid var(--color-line)}.souscat-sep{font-family:var(--bw-font-mono);font-size:var(--bw-text-xs);font-weight:700;letter-spacing:var(--bw-track-label);color:var(--color-text-muted);text-transform:uppercase;padding:var(--bw-space-2) var(--bw-space-4) 4px;background:var(--color-bg)}.prix-row{padding:var(--bw-space-3) var(--bw-space-4);border-top:1px solid var(--color-line)}.prix-row:first-child{border-top:none}.prix-row .pr-head{display:flex;align-items:flex-start;gap:var(--bw-space-2);margin-bottom:var(--bw-space-2)}.prix-row .pr-desc{flex:1;font-size:var(--bw-text-sm);font-weight:600}.prix-row .pr-code{font-family:var(--bw-font-mono);font-size:var(--bw-text-xs);color:var(--color-text-muted);font-weight:600;display:block;margin-top:2px}.prix-inputs{display:flex;gap:var(--bw-space-2);align-items:flex-end;flex-wrap:wrap}.prix-inputs .pinp{flex:1;min-width:74px}.prix-inputs .pinp label{display:block;font-family:var(--bw-font-mono);font-size:var(--bw-text-xs);color:var(--color-text-muted);font-weight:700;letter-spacing:var(--bw-track-label);margin-bottom:2px;text-transform:uppercase}.prix-inputs .pinp input,.prix-inputs .pinp select{min-height:0;padding:8px;font-size:var(--bw-text-sm)}.prix-vente{font-family:var(--bw-font-mono);font-variant-numeric:tabular-nums;font-size:var(--bw-text-sm);font-weight:800;color:var(--color-text);white-space:nowrap;padding-bottom:8px}.prix-actions{display:flex;gap:var(--bw-space-2);margin-top:var(--bw-space-2);align-items:center;flex-wrap:wrap}.mini-btn{min-height:var(--bw-touch-min);font-size:var(--bw-text-xs);font-weight:700;padding:6px var(--bw-space-3);border-radius:var(--bw-r-sm);border:1.5px solid var(--color-line);background:var(--color-surface);cursor:pointer;color:var(--color-text-muted)}.mini-btn.valider{border-color:var(--color-accent-text);color:var(--color-accent-text)}.add-line{padding:var(--bw-space-3) var(--bw-space-4);border-top:1px dashed var(--color-line);display:flex;gap:var(--bw-space-2)}.add-line button{flex:1;min-height:var(--bw-touch-min);font-size:var(--bw-text-xs);font-weight:700;padding:var(--bw-space-2);border-radius:var(--bw-r-sm);border:1.5px dashed var(--color-line);background:var(--color-bg);cursor:pointer;color:var(--color-text-muted)}.key-warn{background:color-mix(in srgb,var(--color-danger) 8%,var(--color-surface));border:1.5px solid var(--color-danger);color:var(--color-danger);font-size:var(--bw-text-xs);padding:var(--bw-space-3);border-radius:var(--bw-r-lg);margin-top:var(--bw-space-2);line-height:var(--bw-leading-snug)}.info-warn{position:relative;background:color-mix(in srgb,var(--color-warn) 8%,var(--color-surface));border:1.5px solid var(--color-warn);color:var(--color-warn);font-size:var(--bw-text-xs);padding:var(--bw-space-3);padding-inline-start:calc(var(--bw-space-3) + 12px);border-radius:var(--bw-r-lg);margin:var(--bw-space-2) 0;line-height:var(--bw-leading-snug);overflow:hidden}.info-warn:before{content:"";position:absolute;inset-inline-start:0;top:0;bottom:0;width:8px;background:var(--confidence-hatch),var(--color-surface);border-inline-end:1.5px solid var(--color-warn)}.photo-preview{width:100%;border-radius:var(--bw-r-lg);margin-top:var(--bw-space-3);max-height:240px;object-fit:contain;background:var(--color-surface)}.photo-thumb{position:relative;margin-top:var(--bw-space-2)}.photo-thumb button{position:absolute;top:6px;right:6px;background:color-mix(in srgb,var(--color-text) 70%,transparent);color:var(--color-bg);border:none;border-radius:50%;width:26px;height:26px;font-size:15px;cursor:pointer}.nouveau-actions{flex-wrap:wrap}.nouveau-actions .btn{flex:none;width:auto}.plan-list{margin-top:var(--bw-space-3)}.plan-card{background:var(--color-surface-sunk);border:1px solid var(--color-line);border-radius:var(--bw-r-lg);padding:var(--bw-space-3);margin-top:var(--bw-space-2)}.plan-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--bw-space-2)}.plan-card-name{display:flex;flex-direction:column;min-width:0}.plan-card-filename{font-size:var(--bw-text-sm);font-weight:700;overflow-wrap:anywhere}.plan-card-size{font-family:var(--bw-font-mono);font-variant-numeric:tabular-nums;font-size:var(--bw-text-xs);color:var(--color-text-muted)}.plan-card-remove{flex:none;width:26px;height:26px;border:none;border-radius:50%;background:color-mix(in srgb,var(--color-text) 70%,transparent);color:var(--color-bg);font-size:15px;cursor:pointer}.plan-card-status{font-size:var(--bw-text-sm);color:var(--color-text-muted);margin-top:var(--bw-space-2)}.plan-card-status-ok{color:var(--color-text);font-weight:700}.plan-calib{margin-top:var(--bw-space-3)}.plan-calib-title{font-size:var(--bw-text-sm);font-weight:700;margin-bottom:var(--bw-space-2)}.plan-calib-toggle{display:flex;gap:var(--bw-space-2);margin-bottom:var(--bw-space-2)}.plan-calib-toggle .btn{flex:1;width:auto}.plan-calib-toggle .btn.active{background:var(--color-action);color:var(--color-on-action);border-color:var(--color-action)}.plan-card-send{margin-top:var(--bw-space-3)}.plan-progress{margin-top:var(--bw-space-3);font-size:var(--bw-text-sm);color:var(--color-text-muted)}.plan-progress-track{height:6px;border-radius:var(--bw-r-sm);background:var(--color-line);overflow:hidden;margin-bottom:var(--bw-space-2)}.plan-progress-fill{height:100%;background:var(--color-text);transition:width var(--bw-dur) var(--bw-ease)}a.link{color:var(--color-accent-text);font-weight:600;text-decoration:none}.auth-wrap{min-height:100%;display:flex;flex-direction:column;justify-content:center;max-width:420px;margin:0 auto;padding:var(--bw-space-6) var(--bw-space-5) calc(40px + var(--safe-bot))}.auth-brand{display:flex;align-items:center;gap:var(--bw-space-2);font-family:var(--bw-font-display);font-variation-settings:"wdth" var(--bw-wdth-display);font-size:var(--bw-text-lg);font-weight:800;letter-spacing:var(--bw-track-display);color:var(--color-text);margin-bottom:4px}.auth-brand>[role=img]{flex-shrink:0}.auth-sub{font-size:var(--bw-text-sm);color:var(--color-text-muted);margin-bottom:var(--bw-space-5)}.auth-switch{text-align:center;font-size:var(--bw-text-sm);color:var(--color-text-muted);margin-top:var(--bw-space-4)}.auth-switch button{background:none;border:none;color:var(--color-accent-text);font-weight:700;cursor:pointer;font-size:var(--bw-text-sm);min-height:var(--bw-touch-min);padding-inline:var(--bw-space-2)}.auth-err{background:color-mix(in srgb,var(--color-danger) 8%,var(--color-surface));border:1.5px solid var(--color-danger);color:var(--color-danger);font-size:var(--bw-text-sm);padding:var(--bw-space-3);border-radius:var(--bw-r-lg);margin-bottom:var(--bw-space-4)}.auth-ok{background:color-mix(in srgb,var(--color-accent) 14%,var(--color-surface));border:1.5px solid var(--color-accent-text);color:var(--color-accent-text);font-size:var(--bw-text-sm);padding:var(--bw-space-3);border-radius:var(--bw-r-lg);margin-bottom:var(--bw-space-4)}.fullscreen-center{min-height:100%;display:flex;align-items:center;justify-content:center}.app-shell{display:flex;min-height:100%}.main{flex:1;min-width:0;display:flex;flex-direction:column;min-height:100%}.screen{max-width:600px;width:100%;margin:0 auto}.sidebar{display:none}@media(min-width:768px){.topbar,.tabbar{display:none}.sidebar{display:flex;flex-direction:column;width:244px;flex-shrink:0;background:var(--color-surface);border-inline-end:1px solid var(--color-line);position:sticky;top:0;height:100vh;padding:var(--bw-space-4) var(--bw-space-3) calc(var(--bw-space-3) + var(--safe-bot));gap:3px}.screen{max-width:900px;padding:var(--bw-space-7) var(--bw-space-6) 48px}}.sidebar-brand{display:flex;align-items:center;gap:var(--bw-space-2);font-family:var(--bw-font-display);font-variation-settings:"wdth" var(--bw-wdth-display);font-size:var(--bw-text-base);font-weight:800;letter-spacing:var(--bw-track-display);color:var(--color-text);padding:var(--bw-space-2) var(--bw-space-3) var(--bw-space-4)}.sidebar-brand>[role=img]{flex-shrink:0}.side-link{position:relative;display:flex;align-items:center;gap:var(--bw-space-3);min-height:var(--bw-touch-min);padding:var(--bw-space-2) var(--bw-space-3);padding-inline-start:calc(var(--bw-space-3) + 4px);border-radius:var(--bw-r-md);color:var(--color-text-muted);font-size:var(--bw-text-sm);font-weight:600;text-decoration:none;border:none;background:none;cursor:pointer;width:100%;text-align:start}.side-link svg{width:20px;height:20px;flex-shrink:0}.side-link:hover{background:var(--color-bg);color:var(--color-text)}.side-link.active{background:var(--color-bg);color:var(--color-accent-text)}.side-link.active:before{content:"";position:absolute;inset-inline-start:0;top:var(--bw-space-2);bottom:var(--bw-space-2);width:3px;border-radius:var(--bw-r-sm);background:var(--color-accent)}.sidebar-spacer{flex:1}.profile{position:relative}.profile-btn{display:flex;align-items:center;gap:var(--bw-space-2);min-height:var(--bw-touch-min);border:none;background:none;cursor:pointer;padding:var(--bw-space-2);border-radius:var(--bw-r-md);color:inherit;font:inherit;width:100%}.profile-btn:hover{background:color-mix(in srgb,var(--color-text) 8%,transparent)}.avatar{width:32px;height:32px;border-radius:50%;background:var(--color-action);color:var(--color-on-action);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:var(--bw-text-sm);flex-shrink:0}.profile-email{font-size:var(--bw-text-xs);color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar .profile-btn{width:auto;padding:2px;min-height:0}.topbar .profile-btn:hover{background:color-mix(in srgb,var(--color-text) 10%,transparent)}.profile-pop{position:absolute;bottom:calc(100% + var(--bw-space-2));inset-inline-start:0;min-width:232px;background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--bw-r-lg);box-shadow:var(--shadow-lg);padding:var(--bw-space-3);z-index:100}.topbar .profile-pop{bottom:auto;top:calc(100% + var(--bw-space-2));inset-inline-start:auto;inset-inline-end:0}.pp-email{font-size:var(--bw-text-xs);color:var(--color-text-muted);padding:4px 6px 10px;word-break:break-all}.pp-label{font-family:var(--bw-font-mono);font-size:var(--bw-text-xs);font-weight:700;letter-spacing:var(--bw-track-label);text-transform:uppercase;color:var(--color-text-muted);margin:var(--bw-space-3) 6px 6px}.pp-seg{display:flex;gap:6px}.pp-seg button{flex:1;min-height:var(--bw-touch-min);border:1.5px solid var(--color-line);background:none;color:var(--color-text-muted);border-radius:var(--bw-r-md);padding:8px 6px;font-size:var(--bw-text-xs);font-weight:700;cursor:pointer}.pp-seg button.on{border-color:var(--color-accent-text);color:var(--color-accent-text)}.langmenu{position:relative;display:inline-flex;flex:none}.langmenu--block{display:flex}.langmenu--block .langmenu__trigger{width:100%;justify-content:space-between}.langmenu__trigger{display:inline-flex;align-items:center;gap:var(--bw-space-2);min-height:var(--bw-touch-min);padding:var(--bw-space-2) var(--bw-space-3);border:1.5px solid var(--color-line);border-radius:var(--bw-r-md);background:none;color:var(--color-text);font-size:var(--bw-text-xs);font-weight:700;cursor:pointer;white-space:nowrap}.langmenu__trigger:hover{border-color:var(--color-text-muted)}.langmenu__caret{width:14px;height:14px;flex:none;opacity:.6;transform:rotate(90deg)}.langmenu__trigger[aria-expanded=true] .langmenu__caret{transform:rotate(-90deg)}.langmenu__menu{position:absolute;top:calc(100% + var(--bw-space-2));inset-inline-start:0;min-width:100%;width:max-content;max-height:min(70vh,420px);overflow-y:auto;background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--bw-r-lg);box-shadow:var(--shadow-lg);padding:var(--bw-space-1);z-index:120}.langmenu__menu--up{top:auto;bottom:calc(100% + var(--bw-space-2))}.langmenu__item{display:flex;align-items:center;gap:var(--bw-space-2);width:100%;min-height:var(--bw-touch-min);padding:var(--bw-space-2) var(--bw-space-3);border:none;border-radius:var(--bw-r-sm);background:none;color:var(--color-text);font-size:var(--bw-text-sm);text-align:start;cursor:pointer;white-space:nowrap}.langmenu__item:hover{background:var(--color-surface-sunk)}.langmenu__item:focus-visible{outline:2px solid var(--color-accent-text);outline-offset:-2px}.langmenu__item[aria-checked=true]{font-weight:700;color:var(--color-accent-text)}.langmenu__tick{width:16px;height:16px;flex:none;visibility:hidden}.langmenu__item[aria-checked=true] .langmenu__tick{visibility:visible}.pp-row{display:flex;align-items:center;gap:var(--bw-space-2);width:100%;min-height:var(--bw-touch-min);border:none;background:none;cursor:pointer;padding:var(--bw-space-2) 6px;border-radius:var(--bw-r-md);color:var(--color-text);font-size:var(--bw-text-sm);font-weight:600;text-align:start}.pp-row:hover{background:var(--color-bg)}.pp-row.danger{color:var(--color-danger)}.pp-row svg{width:18px;height:18px;flex-shrink:0}.pp-sep{height:1px;background:var(--color-line);margin:var(--bw-space-3) 0}.pdf-version{display:flex;align-items:center;gap:var(--bw-space-2);min-height:var(--bw-touch-min);padding:var(--bw-space-2) 4px;border-top:1px solid var(--color-line);color:var(--color-text);text-decoration:none;font-size:var(--bw-text-sm);width:100%;background:none;border-left:none;border-right:none;border-bottom:none;text-align:start;cursor:pointer;font-family:var(--bw-font-ui)}.pdf-version:first-of-type{border-top:none}.pdf-version svg{width:18px;height:18px;flex-shrink:0;color:var(--color-accent-text)}.pdf-version .pv-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.pdf-version .pv-date{font-family:var(--bw-font-mono);font-variant-numeric:tabular-nums;font-size:var(--bw-text-xs);color:var(--color-text-muted);flex-shrink:0}[dir=rtl] .search-wrap>svg{left:auto;right:13px}[dir=rtl] #biblioSearch{padding-left:13px;padding-right:40px}.auth-optional{margin-top:var(--bw-space-4);border:1px solid var(--color-line);border-radius:var(--bw-r-md);padding:0 var(--bw-space-3)}.auth-optional>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:var(--bw-space-2);min-height:var(--bw-touch-min);font-family:var(--bw-font-mono);font-size:var(--bw-text-xs);letter-spacing:var(--bw-track-label);text-transform:uppercase;color:var(--color-text-muted)}.auth-optional>summary::-webkit-details-marker{display:none}.auth-optional>summary:before{content:"+";font-weight:700;color:var(--color-accent-text)}.auth-optional[open]>summary:before{content:"−"}.auth-optional[open]{padding-bottom:var(--bw-space-3)}.auth-optional>summary:focus-visible{outline:2px solid var(--color-accent-text);outline-offset:2px}.auth-optional__row{display:grid;grid-template-columns:1fr 1fr;gap:var(--bw-space-3)}@media(max-width:380px){.auth-optional__row{grid-template-columns:1fr}}.auth-optional__row input{width:100%}.sigpad-surface,.sig-done-img{--sig-ink: #111418;--sig-paper: #ffffff;--sig-paper-line: rgba(17, 20, 24, .18);--sig-paper-muted: rgba(17, 20, 24, .42);color-scheme:light}.sigpad{margin:6px 0 2px;user-select:none;-webkit-user-select:none}.sigpad-surface{position:relative;height:150px;background:var(--sig-paper);border:1.5px dashed var(--sig-paper-line);border-radius:12px;overflow:hidden;touch-action:none}.sigpad-canvas{touch-action:none;width:100%;height:100%;display:block;position:relative;z-index:1;cursor:crosshair}.sigpad-hint{position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;text-align:center;padding:0 18px;pointer-events:none;font-size:13px;font-weight:600;line-height:1.4;color:var(--sig-paper-muted)}.sigpad-baseline{position:absolute;z-index:0;inset-inline:18px;bottom:30px;height:1px;background:var(--sig-paper-line);pointer-events:none}.sigpad-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px;margin-top:8px}.sigpad-actions .btn{width:auto;flex:0 0 auto}@media(min-width:480px){.sigpad-surface{height:180px}.sigpad-baseline{bottom:38px}}.sigform{margin-top:2px}.sigform>.fld:first-child{margin-top:0}.sig-consent{display:flex;align-items:flex-start;gap:12px;margin-top:14px;padding:12px 13px;min-height:48px;border:1.5px solid var(--color-line);border-radius:12px;background:var(--color-surface);font-size:13px;line-height:1.45;cursor:pointer}.sig-consent input[type=checkbox]{flex:0 0 auto;width:22px;height:22px;margin-top:1px;accent-color:var(--color-accent-text);cursor:pointer}.sig-consent:has(input:checked){border-color:var(--color-accent-text)}.sig-error{margin:12px 0 0}.sig-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:14px}.sig-actions .btn{width:auto;flex:1 1 160px}.sig-help{margin-top:10px;font-size:12.5px;color:var(--color-text-muted);line-height:1.5}.sig-legal{margin-top:14px;font-size:11px;color:var(--color-text-muted);line-height:1.5}.modal-backdrop{position:fixed;inset:0;z-index:150;display:flex;align-items:center;justify-content:center;padding:calc(var(--safe-top) + 16px) 14px calc(var(--safe-bot) + 16px);background:#131c178c;overflow-y:auto;animation:fade .18s ease}.modal{width:100%;background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-line);border-radius:var(--bw-r-lg);box-shadow:0 10px 30px #0e10132e;padding:18px 16px}.sig-modal{max-width:520px;max-height:90vh;overflow-y:auto;-webkit-overflow-scrolling:touch}.sig-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.sig-modal-head .btn{width:auto;flex:0 0 auto}.sig-modal-num{font-family:var(--bw-font-mono);font-size:15px;font-weight:800;letter-spacing:.2px}.sig-modal-intro{margin:10px 0 4px;font-size:12.5px;color:var(--color-text-muted);line-height:1.5}.sig-card{display:flow-root}.sig-card-intro{margin-bottom:12px;font-size:12.5px;color:var(--color-text-muted);line-height:1.5}.sig-card-actions{display:flex;flex-wrap:wrap;gap:10px}.sig-card-actions .btn{width:auto;flex:1 1 200px}.sig-done{display:flex;flex-direction:column;gap:8px;margin-top:4px}.sig-done-head{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:14.5px}.sig-done-meta{font-size:12.5px;color:var(--color-text-muted);line-height:1.45}.sig-done-img{display:block;width:auto;max-width:100%;height:70px;object-fit:contain;object-position:left center;margin-top:2px;padding:6px 10px;background:var(--sig-paper);border:1px solid var(--sig-paper-line);border-radius:10px}.sig-done-ref{font-family:var(--bw-font-mono);font-size:11px;color:var(--color-text-muted);word-break:break-all}.sig-link{display:flex;flex-direction:column;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--color-line)}.sig-link input{display:block;width:100%;max-width:100%;min-width:0;text-overflow:ellipsis;color:var(--color-text-muted);background:var(--color-bg)}.sig-link-meta{font-size:11.5px;color:var(--color-text-muted);line-height:1.5}.sig-link-send{display:flex;flex-wrap:wrap;gap:8px}.sig-link-send .btn{width:auto;flex:1 1 140px;text-decoration:none}.devis-request{display:flow-root}.devis-request-head{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-bottom:8px}.devis-request-title{font-size:12.5px;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.02em}.devis-request-runid{font-family:var(--bw-font-mono);font-size:11px;color:var(--color-text-muted)}.devis-request-body{margin:0;font-size:13.5px;line-height:1.55;color:var(--color-text);white-space:pre-wrap;overflow-wrap:anywhere}.devis-request-body.clamped{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.devis-request textarea{display:block;width:100%;min-width:0;box-sizing:border-box;min-height:64px;resize:vertical;font:inherit;font-size:13.5px;line-height:1.55;color:var(--color-text);background:var(--color-surface-sunk);border:1px solid var(--color-line);border-radius:var(--bw-r-md);padding:10px 12px}.devis-request-toggle{margin-top:6px}.devis-request-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px}.devis-request-actions .btn{width:auto;flex:none}.devis-request-reason{margin-top:8px;font-size:12px;color:var(--color-text-muted);line-height:1.5}.devis-request-pending{display:flex;align-items:center;gap:8px;margin-top:10px;font-size:12.5px;color:var(--color-text-muted)}.devis-generate{display:flow-root}.devis-generate-intro{margin:0 0 10px;font-size:13px;line-height:1.5;color:var(--color-text-muted)}.btn-link{display:inline-block;border:none;background:none;padding:11px 8px;font-family:inherit;font-size:13px;font-weight:600;color:var(--color-text-muted);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.btn-link:hover{color:var(--color-text)}.signer-page{min-height:100%;min-height:100dvh;background:var(--color-bg);color:var(--color-text);display:flex;align-items:flex-start;justify-content:center;padding:calc(var(--safe-top) + 16px) 14px calc(var(--safe-bot) + 40px)}.signer-card{width:100%;max-width:640px;margin:0 auto;background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--bw-r-lg);box-shadow:0 1px 2px #0e10130f;padding:22px 16px}@media(min-width:600px){.signer-page{align-items:center;padding:calc(var(--safe-top) + 40px) 24px calc(var(--safe-bot) + 56px)}.signer-card{padding:32px}}.signer-center{text-align:center}.signer-title{font-size:21px;font-weight:800;letter-spacing:-.3px;line-height:1.25;margin:3px 0 6px}.signer-muted{font-size:13px;color:var(--color-text-muted);line-height:1.5}.signer-head{margin-bottom:12px}.signer-client{margin-bottom:14px}.signer-lines{border:1px solid var(--color-line);border-radius:12px;overflow:hidden;margin-bottom:14px}.signer-line{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:11px 12px;border-top:1px solid var(--color-line)}.signer-line:first-child{border-top:none}.signer-line-desig{display:flex;flex-direction:column;gap:2px;min-width:0;font-size:13px}.signer-line-desig strong{font-weight:700}.signer-line-desig .signer-muted{font-size:11.5px}.signer-line-total{flex-shrink:0;text-align:end;font-size:13px;font-weight:800;white-space:nowrap;font-variant-numeric:tabular-nums}.signer-totaux{background:var(--color-accent-hover);color:#fff;border-radius:14px;padding:16px}.signer-totaux .trow{display:flex;justify-content:space-between;gap:12px;font-size:13.5px;padding:4px 0}.signer-totaux .trow.big{font-size:19px;font-weight:800;border-top:1px solid rgba(255,255,255,.2);margin-top:6px;padding-top:10px}.signer-totaux .trow.acc{color:var(--color-accent-text);font-weight:700}.signer-rule{border:none;border-top:1px solid var(--color-line);margin:20px 0 16px}.signer-refuse{text-align:center;margin-top:14px}.signer-refuse-form{text-align:start}.signer-foot{display:flex;flex-direction:column;gap:6px;margin-top:22px;padding-top:14px;border-top:1px solid var(--color-line)}.signer-foot .signer-muted{font-size:11.5px}.signer-check{width:62px;height:62px;margin:0 auto 14px;border-radius:50%;background:color-mix(in srgb,var(--color-accent) 14%,var(--color-surface));color:var(--color-accent-text);display:flex;align-items:center;justify-content:center;font-size:34px;font-weight:800;line-height:1}.signer-ref{margin:8px 0;font-family:var(--bw-font-mono);font-size:11.5px;color:var(--color-text-muted);word-break:break-all}.tab-label{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:380px){.tab{padding:6px 1px;font-size:10px}.tab svg{width:21px;height:21px}}.carnet-bar{display:flex;align-items:flex-start;gap:var(--bw-space-3);margin-bottom:var(--bw-space-3)}.carnet-bar .search-wrap{flex:1;margin-bottom:0}.carnet-search input{width:100%;padding-inline-start:40px}.carnet-bar .btn{flex:none;width:auto;white-space:nowrap}.client-card{margin-bottom:var(--bw-space-3)}.client-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--bw-space-3)}.client-nom{font-size:var(--bw-text-base)}.client-devis{flex-shrink:0;font-size:var(--bw-text-xs);color:var(--color-text-muted);font-variant-numeric:tabular-nums}.client-meta{display:flex;flex-direction:column;gap:2px;margin-top:6px;font-size:var(--bw-text-sm);color:var(--color-text-muted)}.client-meta a{color:var(--color-text-muted);text-decoration:none;width:fit-content}.client-meta a:hover{color:var(--color-accent-text);text-decoration:underline}.client-actions{display:flex;justify-content:flex-end;gap:var(--bw-space-2);margin-top:var(--bw-space-3)}.client-actions .btn,.client-form-actions .btn{flex:none;width:auto}.client-actions .danger{color:var(--color-danger)}.client-form{display:flex;flex-direction:column;gap:var(--bw-space-2);margin-top:var(--bw-space-2)}.client-form-actions{display:flex;gap:var(--bw-space-2);margin-top:2px}.client-form-row{display:flex;gap:var(--bw-space-2)}.client-form-row>input{min-width:0}.client-form-row--identite>input:nth-child(1){flex:0 1 7rem}.client-form-row--identite>input:nth-child(2),.client-form-row--identite>input:nth-child(3){flex:1 1 0}.client-form-row--ville>input:nth-child(1){flex:0 1 8rem}.client-form-row--ville>input:nth-child(2){flex:1 1 0}@media(max-width:560px){.client-form-row{flex-direction:column}.client-form-row>input{flex:none}}@media(max-width:420px){.carnet-bar{flex-direction:column}.carnet-bar .search-wrap,.carnet-bar .btn{width:100%}}.screen-back{display:inline-flex;align-items:center;gap:6px;min-height:var(--bw-touch-min);margin-bottom:2px;color:var(--color-text-muted);font-size:var(--bw-text-sm);font-weight:600;text-decoration:none}.screen-back:hover{color:var(--color-accent-text)}.screen-back svg{width:17px;height:17px}[dir=rtl] .screen-back svg{transform:scaleX(-1)}.lot-add{display:flex;gap:var(--bw-space-2);padding:var(--bw-space-2) var(--bw-space-3) var(--bw-space-3)}.lot-add .btn{flex:1;width:auto;min-height:var(--bw-touch-min);font-size:var(--bw-text-sm)}.lot-add--new{margin-bottom:var(--bw-space-4);padding-inline:0}.modal-backdrop{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:var(--bw-space-4);background:color-mix(in srgb,var(--color-text) 45%,transparent)}.modal{width:100%;max-width:560px;max-height:82vh;display:flex;flex-direction:column;gap:var(--bw-space-2);padding:var(--bw-space-4);border-radius:var(--bw-r-lg);border:1px solid var(--color-line);background:var(--color-surface);box-shadow:var(--shadow-md)}@media(max-width:560px){.modal-backdrop{align-items:flex-end;padding:0}.modal{max-height:88vh;border-radius:var(--bw-r-lg) var(--bw-r-lg) 0 0;padding-bottom:calc(var(--bw-space-4) + var(--safe-bot))}}.picker-head{display:flex;flex-wrap:wrap;gap:var(--bw-space-2)}.picker-search{flex:1 1 220px;margin-bottom:0}.picker-search input{width:100%;padding-inline-start:40px}.picker-scope{flex:0 1 200px;width:auto;min-width:140px;min-height:var(--bw-touch-min);padding:5px var(--bw-space-3);font-size:var(--bw-text-xs);font-weight:700;cursor:pointer}.picker-results{overflow-y:auto;-webkit-overflow-scrolling:touch}.picker-row{display:grid;grid-template-columns:72px 1fr auto;gap:var(--bw-space-3);align-items:center;width:100%;min-height:var(--bw-touch-min);padding:var(--bw-space-2) 4px;border:none;border-bottom:1px solid var(--color-line);background:none;color:var(--color-text);text-align:start;cursor:pointer}.picker-row:hover{background:var(--color-surface-sunk)}.picker-row .pdesc small{display:block;color:var(--color-text-muted);font-size:var(--bw-text-xs)}.picker-none{padding:var(--bw-space-5) 0;text-align:center;color:var(--color-text-muted);font-size:var(--bw-text-sm)}.libre-row{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:var(--bw-space-2)}.sigrow{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--bw-r-lg);padding:var(--bw-space-3) var(--bw-space-4);margin-bottom:var(--bw-space-2);display:flex;flex-direction:column;gap:var(--bw-space-2)}.sigrow-main{min-width:0}.sigrow-head{display:flex;align-items:center;flex-wrap:wrap;gap:var(--bw-space-2)}.sigrow-num{font-family:var(--bw-font-mono);font-variant-numeric:tabular-nums;font-size:var(--bw-text-xs);font-weight:700;color:var(--color-accent-text)}.sigrow-client{font-size:var(--bw-text-sm);font-weight:700;margin-top:2px;overflow-wrap:break-word}.sigrow-meta{font-size:var(--bw-text-xs);color:var(--color-text-muted);margin-top:2px;word-break:break-word}.sigrow-actions{display:flex;flex-wrap:wrap;gap:var(--bw-space-2)}.sigrow-actions .btn{width:auto;flex:1 1 auto;text-decoration:none}.sig-party+.sig-party{margin-top:14px;padding-top:14px;border-top:1px solid var(--color-line)}.sig-party-head{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px;margin-bottom:6px}.sig-party-title{font-size:14px;font-weight:650;color:var(--color-text)}.sig-optional{font-size:11px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted)}.sig-done .btn{flex:none;width:auto;align-self:flex-start}.sig-loading{display:flex;align-items:center;gap:10px;min-height:44px;font-size:13px;color:var(--color-text-muted)}.sig-loading .spinner{width:16px;height:16px;border-width:2px;flex:none}.sigfilters{display:flex;gap:8px;margin-bottom:var(--bw-space-3);padding-bottom:4px;overflow-x:auto;scrollbar-width:none}.sigfilters::-webkit-scrollbar{display:none}.chip{display:inline-flex;align-items:center;gap:6px;flex:none;min-height:34px;padding:0 12px;border:1.5px solid var(--color-line);border-radius:999px;background:var(--color-surface);color:var(--color-text-muted);font:inherit;font-size:12.5px;font-weight:550;white-space:nowrap;cursor:pointer}.chip:hover{border-color:var(--color-line-strong);color:var(--color-text)}.chip.active{border-color:var(--color-text);color:var(--color-text);font-weight:650}.chip-n{font-family:var(--bw-font-mono);font-size:11px;padding:1px 6px;border-radius:999px;background:var(--color-surface-sunk);color:var(--color-text-muted)}.chip.active .chip-n{background:var(--color-text);color:var(--color-text-invert)}.sigrow-link{display:flex;align-items:center;gap:8px;margin-top:8px}.sigrow-link input{flex:1 1 auto;min-width:0;text-overflow:ellipsis;font-size:12px;color:var(--color-text-muted);background:var(--color-bg)}.sigrow-link .btn{flex:none;width:auto}.chat-log{display:flex;flex-direction:column;gap:var(--bw-space-3);margin-bottom:var(--bw-space-4)}.chat-log-end{scroll-margin-bottom:calc(96px + var(--safe-bot) + var(--bw-touch-prim) + var(--bw-space-2))}@media(min-width:768px){.chat-log-end{scroll-margin-bottom:calc(var(--bw-touch-prim) + var(--bw-space-2) + var(--bw-space-4))}}.chat-row{display:flex}.chat-row.user{justify-content:flex-end}.chat-bubble{max-width:88%;padding:var(--bw-space-3);border-radius:var(--bw-r-lg);font-size:var(--bw-text-sm);line-height:var(--bw-leading-body);white-space:pre-wrap;overflow-wrap:break-word}.chat-bubble.assistant{background:var(--color-surface);border:1px solid var(--color-line)}.chat-bubble.user{background:var(--color-action);color:var(--color-on-action)}.chat-bubble .chat-role{display:block;font-family:var(--bw-font-mono);font-size:var(--bw-text-xs);letter-spacing:var(--bw-track-label);text-transform:uppercase;opacity:.65;margin-bottom:3px}.chat-tool{display:flex;align-items:center;gap:var(--bw-space-2);padding:2px var(--bw-space-1);font-size:var(--bw-text-xs);color:var(--color-text-muted)}.chat-tool-dot{flex:none;width:8px;height:8px;border-radius:50%;border:2px solid var(--color-line);border-top-color:var(--color-text-muted);animation:spin 1s linear infinite}.chat-tool.done .chat-tool-dot{border:none;background:var(--color-text-muted);animation:none}.chat-tool.error .chat-tool-dot{background:var(--color-danger)}.chat-question{border-color:var(--color-warn)}.chat-question .eyebrow{color:var(--color-warn)}.chat-question-existing{font-size:var(--bw-text-sm);margin:var(--bw-space-2) 0}.chat-question-actions.btn-row .btn{flex:1;width:auto}.chat-question-form,.chat-question-form .btn{margin-top:var(--bw-space-2)}.chat-question-done .pill{border-color:var(--color-line-strong);background:var(--color-surface-sunk);color:var(--color-text)}.chat-composer{display:flex;align-items:flex-end;gap:var(--bw-space-2);position:sticky;bottom:calc(96px + var(--safe-bot));background:var(--color-bg);padding-top:var(--bw-space-2)}.chat-input{flex:1;min-height:var(--bw-touch-min);max-height:140px;resize:none}.chat-mic{flex:none;width:var(--bw-touch-min);min-height:var(--bw-touch-min);padding:0}.chat-mic.rec{background:color-mix(in srgb,var(--color-danger) 12%,var(--color-surface));border-color:var(--color-danger);color:var(--color-danger)}.chat-mic.rec:before{content:"";width:9px;height:9px;border-radius:50%;background:var(--color-danger);display:inline-block;margin-inline-end:var(--bw-space-1);animation:pulse 1s infinite}.chat-send{flex:none;width:var(--bw-touch-prim);min-height:var(--bw-touch-prim);padding:0}@media(min-width:768px){.chat-composer{bottom:0;padding-bottom:var(--bw-space-4)}}.chat-screen{position:relative}.screen-header-actions{position:absolute;top:var(--bw-space-4);inset-inline-end:var(--bw-space-4)}.chat-history-toggle{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:none;border-radius:var(--bw-r-md);background:none;color:var(--color-text);cursor:pointer}.chat-history-toggle:hover{background:var(--color-surface-sunk)}.chat-history-toggle svg{width:20px;height:20px}@media(min-width:768px){.chat-history-toggle{display:none}}.chat-turn{display:flex;flex-direction:column;gap:var(--bw-space-2)}.chat-tool-group{font-size:var(--bw-text-xs)}.chat-tool-summary{cursor:pointer;color:var(--color-text-muted);list-style:none}.chat-tool-summary::-webkit-details-marker{display:none}.chat-tool-summary:before{content:"▸";display:inline-block;margin-inline-end:var(--bw-space-1);transition:transform var(--bw-dur) var(--bw-ease)}.chat-tool-group[open]>.chat-tool-summary:before{transform:rotate(90deg)}.chat-tool-list{display:flex;flex-direction:column;gap:var(--bw-space-1);margin-top:var(--bw-space-1)}.chat-markdown>:first-child{margin-top:0}.chat-markdown>:last-child{margin-bottom:0}.chat-markdown h1,.chat-markdown h2,.chat-markdown h3,.chat-markdown h4{margin:var(--bw-space-3) 0 var(--bw-space-1);line-height:var(--bw-leading-snug)}.chat-markdown h1{font-size:var(--bw-text-lg)}.chat-markdown h2{font-size:var(--bw-text-base)}.chat-markdown h3,.chat-markdown h4{font-size:var(--bw-text-sm)}.chat-markdown p{margin:var(--bw-space-2) 0}.chat-markdown ul,.chat-markdown ol{margin:var(--bw-space-2) 0;padding-inline-start:var(--bw-space-4)}.chat-markdown li+li{margin-top:var(--bw-space-1)}.chat-markdown code{font-family:var(--bw-font-mono);font-size:.9em;background:var(--color-surface-sunk);border-radius:var(--bw-r-sm);padding:1px 5px}.chat-markdown pre{margin:var(--bw-space-2) 0;padding:var(--bw-space-2);overflow-x:auto;background:var(--color-surface-sunk);border:1px solid var(--color-line);border-radius:var(--bw-r-md)}.chat-markdown pre code{background:none;padding:0}.chat-markdown blockquote{margin:var(--bw-space-2) 0;padding-inline-start:var(--bw-space-3);border-inline-start:3px solid var(--color-line-strong);color:var(--color-text-muted)}.chat-markdown hr{margin:var(--bw-space-3) 0;border:none;border-top:1px solid var(--color-line)}.chat-markdown a{color:var(--color-accent-text)}.chat-markdown table{width:100%;margin:var(--bw-space-2) 0;border-collapse:collapse;font-size:var(--bw-text-sm)}.chat-markdown th,.chat-markdown td{border:1px solid var(--color-line);padding:var(--bw-space-1) var(--bw-space-2);text-align:start}.chat-markdown th{background:var(--color-surface-sunk)}.chat-jump-bottom{position:fixed;left:50%;transform:translate(-50%);bottom:calc(96px + var(--safe-bot) + var(--bw-touch-prim) + var(--bw-space-3));z-index:40;padding:var(--bw-space-2) var(--bw-space-3);border-radius:999px;border:1px solid var(--color-line-strong);background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-md);font-size:var(--bw-text-sm);font-weight:600}@media(min-width:768px){.chat-jump-bottom{bottom:calc(var(--bw-touch-prim) + var(--bw-space-2) + var(--bw-space-4) + var(--bw-space-3))}}.chat-page{display:flex;min-height:100%}.chat-page>.chat-screen{flex:1;min-width:0}.chat-history-panel{position:fixed;inset-inline-start:0;top:0;bottom:0;z-index:160;width:min(320px,86vw);display:flex;flex-direction:column;gap:var(--bw-space-2);padding:var(--bw-space-4) var(--bw-space-3) calc(var(--bw-space-3) + var(--safe-bot));background:var(--color-surface);border-inline-end:1px solid var(--color-line);box-shadow:var(--shadow-lg);transform:translate(-100%);transition:transform var(--bw-dur) var(--bw-ease)}[dir=rtl] .chat-history-panel{transform:translate(100%)}.chat-history-panel.open{transform:translate(0)}.chat-history-backdrop{z-index:155;background:color-mix(in srgb,var(--color-text) 45%,transparent)}@media(min-width:768px){.chat-history-panel{position:sticky;top:0;height:100vh;flex-shrink:0;z-index:auto;box-shadow:none;width:52px;padding-inline:var(--bw-space-2);border-inline-end:1px solid var(--color-line);overflow:hidden;transform:none;transition:width var(--bw-dur) var(--bw-ease),padding var(--bw-dur) var(--bw-ease)}.chat-history-panel.open{width:280px;padding-inline:var(--bw-space-3);overflow:visible}.chat-history-panel:not(.open) .eyebrow,.chat-history-panel:not(.open) .chat-history-new,.chat-history-panel:not(.open) .chat-history-section-label,.chat-history-panel:not(.open) .chat-history-list,.chat-history-panel:not(.open) .chat-history-more,.chat-history-panel:not(.open) .chat-history-status,.chat-history-panel:not(.open) .chat-history-spacer{display:none}.chat-history-panel:not(.open) .chat-history-head{justify-content:center}[dir=rtl] .chat-history-panel{transform:none}.chat-history-backdrop,.chat-history-close{display:none}}.chat-history-head{display:flex;align-items:center;justify-content:space-between}.chat-history-collapse{display:none;align-items:center;justify-content:center;flex:none;width:36px;height:36px;padding:0;border:none;border-radius:var(--bw-r-md);background:none;color:var(--color-text);cursor:pointer}.chat-history-collapse:hover{background:var(--color-surface-sunk)}.chat-history-collapse svg{width:20px;height:20px}@media(min-width:768px){.chat-history-collapse{display:flex}}.chat-history-close{flex:none;width:auto;font-size:var(--bw-text-lg);line-height:1;padding:var(--bw-space-1) var(--bw-space-2)}.chat-history-new{flex:none;width:100%}.chat-history-section-label{font-size:var(--bw-text-xs);font-weight:700;letter-spacing:var(--bw-track-label);text-transform:uppercase;color:var(--color-text-muted);padding:0 var(--bw-space-1)}.chat-history-status{color:var(--color-text-muted);font-size:var(--bw-text-sm)}.chat-history-list{display:flex;flex-direction:column;gap:var(--bw-space-1);min-height:0;overflow-y:auto;list-style:none}.chat-history-row{position:relative;display:flex;align-items:stretch;gap:2px}.chat-history-item{display:flex;flex-direction:column;align-items:stretch;gap:2px;flex:1;min-width:0;text-align:start;padding:var(--bw-space-2) var(--bw-space-3);border:1px solid var(--color-line);border-radius:var(--bw-r-md);background:var(--color-surface);color:var(--color-text)}.chat-history-item.active{border-color:var(--color-line-strong);background:var(--color-surface-sunk)}.chat-history-item-title{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-history-item-meta{font-size:var(--bw-text-xs);color:var(--color-text-muted)}.chat-history-row-menu{position:relative;flex:none}.chat-history-row-more{flex:none;width:var(--bw-touch-min);min-height:100%;border:1px solid transparent;background:none;color:var(--color-text-muted);border-radius:var(--bw-r-md);font-size:var(--bw-text-base);line-height:1;cursor:pointer}.chat-history-row-more:hover{background:var(--color-surface-sunk);color:var(--color-text)}.chat-history-row-popover{position:absolute;inset-inline-end:0;top:calc(100% + 2px);z-index:10;min-width:140px;display:flex;flex-direction:column;padding:var(--bw-space-1);background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--bw-r-md);box-shadow:var(--shadow-md)}.chat-history-row-popover button{text-align:start;padding:var(--bw-space-2) var(--bw-space-2);border:none;background:none;border-radius:var(--bw-r-sm);color:var(--color-text);font-size:var(--bw-text-sm);cursor:pointer}.chat-history-row-popover button:hover{background:var(--color-surface-sunk)}.chat-history-rename-form{display:flex;align-items:center;gap:var(--bw-space-1);flex:1;min-width:0}.chat-history-rename-input{flex:1;min-width:0;padding:var(--bw-space-2);border:1px solid var(--color-line-strong);border-radius:var(--bw-r-md);background:var(--color-bg);color:var(--color-text);font-size:var(--bw-text-sm)}.chat-history-rename-form .btn{flex:none;width:auto}.chat-history-spacer{flex:1}.chat-not-found .btn{flex:none;width:auto;margin-top:var(--bw-space-2)}.undo-bar{position:fixed;bottom:calc(170px + var(--safe-bot));left:50%;transform:translate(-50%);z-index:199;display:flex;align-items:center;gap:var(--bw-space-3);max-width:min(92%,420px);background:var(--color-text);color:var(--color-bg);padding:var(--bw-space-3) var(--bw-space-3) var(--bw-space-3) var(--bw-space-4);border-radius:var(--bw-r-md);box-shadow:var(--shadow-lg)}.undo-bar-text{font-size:var(--bw-text-sm);line-height:1.3}.undo-bar .btn{flex:none;width:auto;white-space:nowrap}.chat-feedback{display:flex;align-items:center;gap:2px;margin:4px 0 0 var(--bw-space-2)}.chat-feedback-btn{flex:none;width:auto;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:none;border-radius:var(--bw-r-sm);background:transparent;color:var(--color-text-muted);cursor:pointer}.chat-feedback-btn:hover{background:var(--color-surface);color:var(--color-text)}.chat-feedback-btn.on{background:var(--color-surface);color:var(--color-accent-text)}.chat-feedback-icon{width:16px;height:16px}.chat-feedback-backdrop{position:fixed;inset:0;z-index:60;background:#00000080;display:flex;align-items:center;justify-content:center;padding:var(--bw-space-4)}.chat-feedback-modal{width:100%;max-width:420px;background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--bw-r-lg);padding:var(--bw-space-4)}.chat-feedback-modal-title{margin:0 0 4px;font-size:var(--bw-text-base);color:var(--color-text)}.chat-feedback-modal-sub{margin:0 0 var(--bw-space-3);font-size:var(--bw-text-sm);color:var(--color-text-muted)}.chat-feedback-textarea{width:100%;min-height:90px;resize:vertical;margin-bottom:var(--bw-space-3)}.chat-feedback-modal-actions{display:flex;justify-content:flex-end;gap:var(--bw-space-2)}.chat-feedback-modal-actions .btn{flex:none;width:auto}.rib{margin-top:var(--bw-space-3);padding:var(--bw-space-3) var(--bw-space-4);border:1px dashed var(--color-line);border-radius:var(--bw-r-lg);background:var(--color-surface)}.rib-row{display:flex;justify-content:space-between;align-items:baseline;gap:var(--bw-space-4);padding:2px 0;font-size:var(--bw-text-sm)}.rib-lab{color:var(--color-text-muted);flex:none}.rib-val{font-weight:600;text-align:end}.rib-iban{font-family:var(--bw-font-mono);letter-spacing:.02em;overflow-wrap:anywhere;direction:ltr}.outil-group{margin-bottom:var(--bw-space-5)}.outil-cat{margin:0 0 var(--bw-space-2);font-size:var(--bw-text-sm);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted)}.outil-grid{display:grid;grid-template-columns:1fr;gap:var(--bw-space-3)}@media(min-width:640px){.outil-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.outil-card{display:flex;flex-direction:column;gap:6px;margin-bottom:0}.outil-titre{margin:0;font-size:var(--bw-text-base);font-weight:700;line-height:1.25}.outil-ref{margin:0;font-size:var(--bw-text-xs);font-weight:600;color:var(--color-accent-text)}.outil-desc{margin:0;font-size:var(--bw-text-sm);line-height:1.45;color:var(--color-text-muted)}.outil-meta{margin:0;font-family:var(--bw-font-mono);font-size:var(--bw-text-xs);color:var(--color-text-muted)}.outil-actions{margin-top:auto;padding-top:var(--bw-space-2);flex-wrap:wrap;margin-bottom:0}.outil-actions .btn{flex:1 1 150px}.picker-row--devis{grid-template-columns:104px minmax(0,1fr)}.outil-picker-num{font-family:var(--bw-font-mono);font-size:var(--bw-text-xs);font-weight:700}.mkt{--mkt-header-h: 68px;font-family:var(--bw-font-ui);font-variation-settings:"wdth" var(--bw-wdth-ui);color:var(--color-text);background:var(--color-bg);min-height:100%;overflow-x:clip}.mkt-main{display:block}.mkt-container{width:100%;max-width:var(--bw-maxw);margin-inline:auto;padding-inline:clamp(20px,5vw,32px)}.mkt-container--narrow{max-width:760px}.mkt-section{padding-block:clamp(64px,9vw,124px)}.mkt-section--tight{padding-block:clamp(40px,6vw,72px)}.mkt-section--concrete{background:var(--color-surface-sunk)}.mkt-section--tight{padding-block-end:clamp(28px,3.5vw,44px)}.mkt-hero+.mkt-section,.mkt-section--panel+.mkt-section,.mkt-section--invert+.mkt-section{padding-block-start:clamp(40px,5vw,72px)}.mkt-hero,.mkt-footer,.mkt-section--panel,.mkt-cta--panel,.mkt-cta--accent{background:var(--color-surface-sunk);color:var(--color-text)}.mkt-eyebrow{font:600 var(--bw-text-xs)/1 var(--bw-font-mono);letter-spacing:var(--bw-track-label);text-transform:uppercase;color:var(--color-accent-text);display:inline-flex;align-items:center;gap:var(--bw-space-2);padding:var(--bw-space-2) 0}.mkt-eyebrow:before{content:"";inline-size:6px;block-size:6px;background:var(--color-accent);border-radius:1px;flex:none}.mkt-display{font-family:var(--bw-font-display);font-weight:800;font-variation-settings:"wdth" var(--bw-wdth-display);font-size:var(--bw-display);line-height:1.02;letter-spacing:var(--bw-track-display);margin:0}.mkt-display--2{font-size:clamp(var(--bw-text-3xl),4.4vw,var(--bw-text-4xl));line-height:1.06}.mkt-h2{font-family:var(--bw-font-display);font-weight:800;font-variation-settings:"wdth" var(--bw-wdth-display);font-size:clamp(var(--bw-text-2xl),3.4vw,var(--bw-text-3xl));line-height:1.1;letter-spacing:var(--bw-track-display);margin:0}.mkt-h3{font-family:var(--bw-font-display);font-weight:700;font-variation-settings:"wdth" var(--bw-wdth-label);font-size:var(--bw-text-lg);line-height:1.2;letter-spacing:-.01em;margin:0}.mkt-lead{font-size:clamp(var(--bw-text-base),1.6vw,var(--bw-text-lg));line-height:var(--bw-leading-body);color:var(--color-text-muted);margin:0}.mkt-hero .mkt-lead,.mkt-section--panel .mkt-lead,.mkt-cta--panel .mkt-lead,.mkt-cta--accent .mkt-lead,.mkt-prose-muted{color:var(--color-text-muted)}.mkt-mono{font-family:var(--bw-font-mono);font-variant-numeric:tabular-nums}.mkt-mark{white-space:nowrap;background-image:linear-gradient(var(--color-accent),var(--color-accent));background-repeat:no-repeat;background-position:0 92%;background-size:100% .3em;padding-inline:.04em}.mkt-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--bw-space-2);min-height:var(--bw-touch-min);font:700 var(--bw-text-sm)/1 var(--bw-font-ui);font-variation-settings:"wdth" var(--bw-wdth-ui);padding:var(--bw-space-3) var(--bw-space-5);border-radius:var(--bw-r-md);border:1.5px solid transparent;cursor:pointer;text-decoration:none;transition:transform var(--bw-dur) var(--bw-ease),background var(--bw-dur) ease,opacity var(--bw-dur) ease,border-color var(--bw-dur) ease;white-space:nowrap}.mkt-btn:active{transform:translateY(1px)}.mkt-btn--lg{min-height:var(--bw-touch-prim);padding:var(--bw-space-4) var(--bw-space-6);font-size:var(--bw-text-base);border-radius:var(--bw-r-lg)}.mkt-btn--primary{background:var(--color-action);color:var(--color-on-action);box-shadow:var(--shadow-sm)}.mkt-btn--primary:hover{opacity:.86;box-shadow:var(--shadow-md)}.mkt-hero .mkt-btn--primary,.mkt-footer .mkt-btn--primary,.mkt-section--panel .mkt-btn--primary,.mkt-cta--panel .mkt-btn--primary{background:var(--color-bg);color:var(--color-text)}.mkt-btn--accent{background:var(--color-accent);color:var(--color-on-accent)}.mkt-btn--accent:hover{background:var(--color-accent-hover)}.mkt-btn--dark{background:var(--color-bg);color:var(--color-text);box-shadow:var(--shadow-sm)}.mkt-btn--dark:hover{opacity:.86}.mkt-btn--ghost{background:transparent;color:var(--color-text);border-color:var(--color-line)}.mkt-btn--ghost:hover{border-color:var(--color-text)}.mkt-section--panel .mkt-btn--ghost,.mkt-hero .mkt-btn--ghost,.mkt-footer .mkt-btn--ghost,.mkt-header--over .mkt-btn--ghost,.mkt-cta--panel .mkt-btn--ghost,.mkt-cta--accent .mkt-btn--ghost{color:var(--color-text);border-color:var(--color-text-muted)}.mkt-section--panel .mkt-btn--ghost:hover,.mkt-hero .mkt-btn--ghost:hover,.mkt-footer .mkt-btn--ghost:hover,.mkt-header--over .mkt-btn--ghost:hover,.mkt-cta--panel .mkt-btn--ghost:hover,.mkt-cta--accent .mkt-btn--ghost:hover{border-color:var(--color-text)}.mkt-grid{display:grid;gap:clamp(16px,2vw,24px)}.mkt-grid--2{grid-template-columns:repeat(2,1fr)}.mkt-grid--3{grid-template-columns:repeat(3,1fr)}@media(max-width:900px){.mkt-grid--3{grid-template-columns:1fr 1fr}}@media(max-width:620px){.mkt-grid--2,.mkt-grid--3{grid-template-columns:1fr}}.mkt-head{max-width:680px;margin-bottom:clamp(32px,4vw,56px);display:grid;gap:var(--bw-space-3)}.mkt-head--center{margin-inline:auto;text-align:center;justify-items:center}.mkt-card{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--bw-r-lg);padding:var(--bw-space-5);display:grid;gap:var(--bw-space-2);align-content:start}.mkt-card__icon{width:46px;height:46px;display:grid;place-items:center;border-radius:var(--bw-r-md);background:color-mix(in srgb,var(--color-accent-text) 14%,transparent);color:var(--color-accent-text)}.mkt-card__icon svg{width:24px;height:24px}.mkt-header{position:sticky;top:0;z-index:100;transition:background .25s ease,box-shadow .25s ease,border-color .25s;border-bottom:1px solid transparent}.mkt-header__inner{display:flex;align-items:center;gap:var(--bw-space-3);height:var(--mkt-header-h)}.mkt-header--solid{background:color-mix(in srgb,var(--color-surface) 86%,transparent);-webkit-backdrop-filter:saturate(1.2) blur(10px);backdrop-filter:saturate(1.2) blur(10px);border-bottom-color:var(--color-line);box-shadow:var(--shadow-sm)}.mkt-header--over{color:var(--color-text)}.mkt-header--over .mkt-nav__link{color:var(--color-text-muted)}.mkt-header__brand{display:inline-flex;align-items:center;flex:none;text-decoration:none;color:inherit}.mkt-nav{display:flex;align-items:center;gap:var(--bw-space-1);margin-inline-start:var(--bw-space-1)}.mkt-nav__link{font:600 var(--bw-text-sm)/1 var(--bw-font-ui);color:var(--color-text);text-decoration:none;padding:var(--bw-space-2);border-radius:var(--bw-r-sm);white-space:nowrap}.mkt-nav__link:hover{background:color-mix(in srgb,currentColor 10%,transparent)}.mkt-nav__link.active{color:var(--color-accent-text)}.mkt-header--over .mkt-nav__link.active{color:var(--color-text)}.mkt-header__spacer{flex:1}.mkt-header__actions{display:flex;align-items:center;gap:var(--bw-space-2)}.mkt-burger{display:none;background:none;border:none;cursor:pointer;width:var(--bw-touch-min);height:var(--bw-touch-min);border-radius:var(--bw-r-sm);color:inherit;align-items:center;justify-content:center}.mkt-burger svg{width:24px;height:24px}.mkt-mobilemenu{display:none;background:var(--color-surface);border-bottom:1px solid var(--color-line);padding:var(--bw-space-3) clamp(20px,5vw,32px) var(--bw-space-5)}.mkt-mobilemenu a:not(.mkt-btn){display:block;padding:var(--bw-space-3) 4px;color:var(--color-text);text-decoration:none;font-weight:600;border-bottom:1px solid var(--color-line)}.mkt-mobilemenu .mkt-mobilemenu__cta{display:grid;gap:var(--bw-space-3);margin-top:var(--bw-space-4)}@media(max-width:1200px){.mkt-nav,.mkt-header__actions .mkt-desktop-only{display:none}.mkt-burger{display:inline-flex}.mkt-mobilemenu.open{display:block}}.mkt-header__actions .langmenu,.mkt-footer__bottom .langmenu{flex:none}.mkt-header__actions .langmenu__trigger,.mkt-footer__bottom .langmenu__trigger{border-color:var(--color-line);font:700 var(--bw-text-xs)/1 var(--bw-font-ui);color:inherit;min-height:34px}.mkt-header--over .langmenu__trigger,.mkt-footer .langmenu__trigger{border-color:var(--color-text-muted)}.mkt-footer__grid{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:var(--bw-space-7);padding-block:clamp(48px,6vw,72px) var(--bw-space-6)}.mkt-footer h4{font:700 var(--bw-text-xs)/1 var(--bw-font-mono);letter-spacing:var(--bw-track-label);text-transform:uppercase;color:var(--color-text);margin:0 0 var(--bw-space-3)}.mkt-footer a:not(.mkt-btn){display:flex;align-items:center;min-height:var(--bw-touch-min);color:var(--color-text-muted);text-decoration:none;padding:var(--bw-space-1) 0;font-size:var(--bw-text-sm)}.mkt-footer a:not(.mkt-btn):hover{color:var(--color-text)}.mkt-footer__tagline{font-size:var(--bw-text-sm);line-height:1.6;max-width:30ch;margin-top:var(--bw-space-4);color:var(--color-text-muted)}.mkt-footer__bottom{display:flex;align-items:center;justify-content:space-between;gap:var(--bw-space-4);flex-wrap:wrap;padding-block:var(--bw-space-5);border-top:1px solid var(--color-line);font-size:var(--bw-text-sm);color:var(--color-text-muted)}@media(max-width:760px){.mkt-footer__grid{grid-template-columns:1fr 1fr;gap:var(--bw-space-6)}}@media(max-width:460px){.mkt-footer__grid{grid-template-columns:1fr}}.mkt-hero{position:relative;margin-top:calc(-1 * var(--mkt-header-h));padding-block:clamp(104px,13vw,168px) clamp(64px,8vw,112px);overflow:clip}.mkt-hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(color-mix(in srgb,var(--color-text) 7%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--color-text) 7%,transparent) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(120% 90% at 70% 10%,#000 30%,transparent 78%);mask-image:radial-gradient(120% 90% at 70% 10%,#000 30%,transparent 78%);pointer-events:none}.mkt-hero__grid{position:relative;display:grid;grid-template-columns:1.04fr .96fr;gap:clamp(32px,5vw,64px);align-items:center}.mkt-hero__copy{max-width:560px}.mkt-hero__title{margin-top:var(--bw-space-4);color:var(--color-text)}.mkt-hero__lead{margin-top:var(--bw-space-5);max-width:48ch}.mkt-hero__cta{display:flex;gap:var(--bw-space-3);flex-wrap:wrap;margin-top:var(--bw-space-6)}.mkt-hero__trust{margin-top:var(--bw-space-5);font-size:var(--bw-text-sm);color:var(--color-text-muted);display:flex;gap:var(--bw-space-2);align-items:center;flex-wrap:wrap}.mkt-hero__trust b{color:var(--color-text);font-weight:700}@media(max-width:900px){.mkt-hero__grid{grid-template-columns:1fr}.mkt-hero__visual{order:2}}.mkt-mockup{position:relative;background:var(--color-surface);color:var(--color-text);border-radius:var(--bw-r-lg);box-shadow:var(--shadow-lg);border:1px solid var(--color-line);padding:var(--bw-space-4);rotate:1deg;max-width:440px;margin-inline:auto}.mkt-mockup__bar{display:flex;align-items:center;justify-content:space-between;padding-bottom:var(--bw-space-3);border-bottom:1px solid var(--color-line)}.mkt-mockup__num{font-family:var(--bw-font-mono);font-size:var(--bw-text-xs);color:var(--color-text-muted)}.mkt-mockup__client{font-size:var(--bw-text-sm);color:var(--color-text-muted);margin:var(--bw-space-3) 0 var(--bw-space-1)}.mkt-mockup__row{display:grid;grid-template-columns:auto 1fr auto;gap:var(--bw-space-2);align-items:baseline;padding:var(--bw-space-2) 0;border-bottom:1px dashed var(--color-line)}.mkt-mockup__code{font-family:var(--bw-font-mono);font-size:var(--bw-text-xs);font-weight:700;color:var(--color-accent-text)}.mkt-mockup__label{font-size:var(--bw-text-sm)}.mkt-mockup__price{font-family:var(--bw-font-mono);font-size:var(--bw-text-sm);font-variant-numeric:tabular-nums}.mkt-mockup__totals{margin-top:var(--bw-space-3);display:grid;gap:var(--bw-space-1)}.mkt-mockup__tot{display:flex;justify-content:space-between;font-size:var(--bw-text-sm);color:var(--color-text-muted)}.mkt-mockup__tot--ttc{font-family:var(--bw-font-display);font-weight:800;font-variation-settings:"wdth" var(--bw-wdth-display);font-size:var(--bw-text-lg);color:var(--color-text);padding-top:var(--bw-space-2);border-top:1px solid var(--color-line)}.mkt-mockup__tot--ttc span:last-child{color:var(--color-accent-text);font-family:var(--bw-font-mono);font-variant-numeric:tabular-nums}.mkt-mockup__tag{position:absolute;top:-14px;inset-inline-end:16px;background:var(--color-accent-2);color:var(--color-on-accent-2);font:800 var(--bw-text-xs)/1 var(--bw-font-mono);letter-spacing:.04em;padding:var(--bw-space-2) var(--bw-space-3);border-radius:var(--bw-r-sm);box-shadow:var(--shadow-md);rotate:-3deg}.mkt-proof{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:auto auto;gap:var(--bw-space-5)}.mkt-proof__item{display:grid;grid-template-rows:subgrid;grid-row:span 2;gap:4px;min-width:0}.mkt-proof__num{font-family:var(--bw-font-display);font-weight:800;font-variation-settings:"wdth" var(--bw-wdth-display);font-size:clamp(var(--bw-text-lg),2.6vw,var(--bw-text-2xl));letter-spacing:var(--bw-track-display);text-wrap:balance;align-self:end}.mkt-proof__num .mkt-mono{font-family:var(--bw-font-mono)}.mkt-proof__num--list{font-family:var(--bw-font-mono);font-size:clamp(var(--bw-text-sm),1.3vw,var(--bw-text-lg));letter-spacing:0;text-wrap:pretty}.mkt-proof__label{font-size:var(--bw-text-sm);color:var(--color-text-muted)}@media(max-width:720px){.mkt-proof{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(4,auto);gap:var(--bw-space-6) var(--bw-space-4)}}.mkt-step{display:grid;gap:var(--bw-space-3);align-content:start}.mkt-step__n{width:44px;height:44px;display:grid;place-items:center;border-radius:var(--bw-r-md);background:var(--color-action);color:var(--color-on-action);font-family:var(--bw-font-mono);font-weight:700;font-size:var(--bw-text-base)}.mkt-step__line{display:none}.mkt-split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,72px);align-items:center}.mkt-split+.mkt-split{margin-top:clamp(48px,7vw,96px)}.mkt-split--reverse .mkt-split__media{order:-1}.mkt-split__media{background:var(--color-surface-sunk);border:1px solid var(--color-line);border-radius:var(--bw-r-lg);padding:clamp(20px,3vw,36px);min-height:260px;display:grid;place-items:center}.mkt-split__body{display:grid;gap:var(--bw-space-4);align-content:center}.mkt-feature-list{display:grid;gap:var(--bw-space-3);margin:0;padding:0;list-style:none}.mkt-feature-list li{display:flex;gap:var(--bw-space-3);align-items:flex-start;font-size:var(--bw-text-base);line-height:1.5}.mkt-feature-list svg{flex:none;width:20px;height:20px;color:var(--color-accent-text);margin-top:1px}@media(max-width:820px){.mkt-split{grid-template-columns:1fr}.mkt-split--reverse .mkt-split__media{order:0}}.mkt-quote{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--bw-r-lg);padding:var(--bw-space-5);display:grid;gap:var(--bw-space-4);align-content:start}.mkt-quote__text{font-size:var(--bw-text-base);line-height:var(--bw-leading-body)}.mkt-quote__text:before{content:"“";font-family:var(--bw-font-display);font-size:var(--bw-text-4xl);line-height:0;color:var(--color-accent-text);vertical-align:-16px;margin-inline-end:4px}.mkt-quote__who{display:flex;align-items:center;gap:var(--bw-space-3)}.mkt-quote__avatar{width:40px;height:40px;border-radius:50%;background:var(--color-text);color:var(--color-text-invert);display:grid;place-items:center;font-weight:800;font-family:var(--bw-font-display)}.mkt-quote__name{font-weight:700;font-size:var(--bw-text-sm)}.mkt-quote__role{font-size:var(--bw-text-xs);color:var(--color-text-muted)}.mkt-faq{max-width:760px;margin-inline:auto}.mkt-faq__item{border-bottom:1px solid var(--color-line)}.mkt-faq__q{width:100%;background:none;border:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:var(--bw-space-4);min-height:var(--bw-touch-min);padding:var(--bw-space-4) 4px;text-align:start;font-family:var(--bw-font-display);font-weight:700;font-variation-settings:"wdth" var(--bw-wdth-label);font-size:var(--bw-text-lg);color:var(--color-text)}.mkt-faq__icon{flex:none;transition:transform .2s ease;color:var(--color-accent-text)}.mkt-faq__q[aria-expanded=true] .mkt-faq__icon{transform:rotate(45deg)}.mkt-faq__a{padding:0 4px var(--bw-space-4);color:var(--color-text-muted);font-size:var(--bw-text-base);line-height:1.6;max-width:64ch}.mkt-cta{border-radius:var(--bw-r-lg);padding:clamp(40px,6vw,72px);text-align:center;display:grid;gap:var(--bw-space-5);justify-items:center}.mkt-cta--accent{box-shadow:0 0 0 2px var(--color-accent)}.mkt-cta__title{font-family:var(--bw-font-display);font-weight:800;font-variation-settings:"wdth" var(--bw-wdth-display);font-size:clamp(var(--bw-text-2xl),4vw,var(--bw-text-4xl));line-height:1.05;letter-spacing:var(--bw-track-display);max-width:18ch;color:var(--color-text)}.mkt-price{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--bw-r-lg);padding:var(--bw-space-6);display:grid;gap:var(--bw-space-2);align-content:start}.mkt-price--featured{border-color:transparent;box-shadow:0 0 0 2px var(--color-accent-2),var(--shadow-md);position:relative}.mkt-price__badge{position:absolute;top:-12px;inset-inline-start:28px;background:var(--color-accent-2);color:var(--color-on-accent-2);font:700 var(--bw-text-xs)/1 var(--bw-font-mono);letter-spacing:var(--bw-track-label);text-transform:uppercase;padding:var(--bw-space-2) var(--bw-space-3);border-radius:var(--bw-r-sm)}.mkt-price__name{font-family:var(--bw-font-display);font-weight:800;font-variation-settings:"wdth" var(--bw-wdth-label);font-size:var(--bw-text-lg)}.mkt-price__amount{font-family:var(--bw-font-mono);font-weight:700;font-size:var(--bw-text-4xl);letter-spacing:-.02em;font-variant-numeric:tabular-nums}.mkt-price__amount small{font-family:var(--bw-font-ui);font-size:var(--bw-text-sm);font-weight:600;color:var(--color-text-muted)}.mkt-price__tagline{color:var(--color-text-muted);font-size:var(--bw-text-sm);margin-bottom:var(--bw-space-2)}.mkt-price__features{list-style:none;margin:var(--bw-space-2) 0 var(--bw-space-5);padding:0;display:grid;gap:var(--bw-space-3)}.mkt-price__features li{display:flex;gap:var(--bw-space-3);font-size:var(--bw-text-sm);line-height:1.4}.mkt-price__features svg{flex:none;width:18px;height:18px;color:var(--color-accent-text);margin-top:1px}.mkt-prose{max-width:760px;margin-inline:auto}.mkt-prose__updated{font-size:var(--bw-text-sm);color:var(--color-text-muted);margin-bottom:var(--bw-space-6)}.mkt-prose h2{font-family:var(--bw-font-display);font-weight:800;font-variation-settings:"wdth" var(--bw-wdth-label);font-size:var(--bw-text-xl);letter-spacing:-.01em;margin:var(--bw-space-7) 0 var(--bw-space-3)}.mkt-prose h3{font-family:var(--bw-font-display);font-weight:700;font-size:var(--bw-text-lg);margin:var(--bw-space-6) 0 var(--bw-space-2)}.mkt-prose p,.mkt-prose li{font-size:var(--bw-text-base);line-height:1.7;color:var(--color-text)}.mkt-prose p+p{margin-top:var(--bw-space-3)}.mkt-prose ul{padding-inline-start:22px;display:grid;gap:var(--bw-space-2);margin:var(--bw-space-2) 0}.mkt-prose a:not(.mkt-btn){color:var(--color-accent-text)}.mkt-note{background:color-mix(in srgb,var(--color-warn) 12%,transparent);border:1px solid color-mix(in srgb,var(--color-warn) 36%,transparent);border-inline-start:3px solid var(--color-warn);border-radius:var(--bw-r-md);padding:var(--bw-space-3) var(--bw-space-4);font-size:var(--bw-text-sm);line-height:1.5;margin-bottom:var(--bw-space-6);color:var(--color-text)}.mkt-form{display:grid;gap:var(--bw-space-4);max-width:560px}.mkt-field{display:grid;gap:var(--bw-space-1)}.mkt-field label{font-weight:600;font-size:var(--bw-text-sm)}.mkt-field input,.mkt-field textarea{border:1.5px solid var(--color-line);border-radius:var(--bw-r-md);padding:var(--bw-space-3);font:inherit;font-size:var(--bw-text-base);background:var(--color-surface);color:var(--color-text);width:100%;min-height:var(--bw-touch-min)}.mkt-field input:focus,.mkt-field textarea:focus{outline:none;border-color:var(--color-text)}.mkt-field textarea{min-height:130px;resize:vertical}.mkt-field__err{color:var(--color-danger);font-size:var(--bw-text-xs)}.mkt-req{color:var(--color-danger);margin-inline-start:2px;font-weight:700}.mkt-seg-field{border:0;padding:0;margin:0;min-width:0}.mkt-seg-field>legend{padding:0;margin-bottom:var(--bw-space-1);font-weight:600;font-size:var(--bw-text-sm)}.mkt-seg{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:3px;padding:3px;max-width:360px;border:1.5px solid var(--color-line);border-radius:var(--bw-r-md);background:var(--color-surface)}.mkt-seg__input{position:absolute;width:1px;height:1px;margin:0;padding:0;border:0;opacity:0;pointer-events:none}.mkt-seg__option{display:flex;align-items:center;justify-content:center;min-height:calc(var(--bw-touch-min) - 8px);padding:var(--bw-space-2) var(--bw-space-3);border-radius:calc(var(--bw-r-md) - 1px);font-weight:600;font-size:var(--bw-text-sm);text-align:center;color:var(--color-text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color var(--bw-dur) var(--bw-ease),color var(--bw-dur) var(--bw-ease)}.mkt-seg__option:hover{color:var(--color-text)}.mkt-seg__input:checked+.mkt-seg__option{background:var(--color-action);color:var(--color-on-action)}.mkt .mkt-seg__input:focus-visible{outline:none}.mkt-seg__input:focus-visible+.mkt-seg__option{outline:2.5px solid var(--color-accent);outline-offset:2px}.mkt :focus-visible,.mkt-header :focus-visible{outline:2.5px solid var(--color-accent);outline-offset:2px;border-radius:var(--bw-r-sm)}.mkt-center{text-align:center}.mkt-skip{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.mkt-skip:focus{width:auto;height:auto;margin:0;clip:auto;clip-path:none;inset-inline-start:16px;top:16px;z-index:200;background:var(--color-surface);color:var(--color-text);padding:var(--bw-space-3) var(--bw-space-4);border-radius:var(--bw-r-md);box-shadow:var(--shadow-md)}@media(prefers-reduced-motion:reduce){.mkt *,.mkt *:before,.mkt *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media(max-width:860px){.mkt-nav__link,.mkt-footer a,.mkt-footer__bottom a{min-height:var(--bw-touch-min);display:flex;align-items:center}.mkt-header__brand{min-height:var(--bw-touch-min);align-items:center}.langmenu__trigger,.langmenu__item{min-height:44px;min-width:44px}a[href^="mailto:"]{display:inline-flex;align-items:center;min-height:44px}}.mkt-lot-demo{position:relative;background:var(--color-surface);border-bottom:2px solid var(--color-text);padding:var(--bw-space-2) var(--bw-space-3);padding-inline-start:calc(var(--bw-space-3) + 8px);font-family:var(--bw-font-mono);font-size:var(--bw-text-xs);font-weight:600;letter-spacing:var(--bw-track-label);text-transform:uppercase;color:var(--color-text)}.mkt-lot-demo:before{content:"";position:absolute;inset-inline-start:0;top:0;bottom:0;width:4px;background:var(--color-accent)}.adm-shell{--adm-bg: #0b0d10;--adm-surface: #15181c;--adm-surface-raised: #1b1f24;--adm-line: #262b31;--adm-text: #e8eaed;--adm-text-muted: #9aa1ab;--adm-accent: #34c77b;--adm-danger: #f2555a;--adm-warn: #e0a63d;display:flex;min-height:100vh;background:var(--adm-bg);color:var(--adm-text);font-family:var(--bw-font-ui, system-ui, sans-serif)}.adm-sidebar{width:240px;flex:none;display:flex;flex-direction:column;background:var(--adm-surface);border-right:1px solid var(--adm-line);padding:16px 12px;gap:4px}.adm-brand{display:flex;align-items:center;gap:8px;font-weight:700;padding:8px 8px 16px}.adm-brand-dot{width:10px;height:10px;border-radius:999px;background:var(--adm-accent);flex:none}.adm-back{display:flex;align-items:center;gap:10px;margin:0 12px 12px;padding:0 10px 14px;color:var(--adm-text-muted);font-size:13px;text-decoration:none;border-bottom:1px solid var(--adm-line)}.adm-back:hover{color:var(--adm-text)}.adm-back-icon{width:16px;height:16px;flex:none}[dir=rtl] .adm-back-icon{transform:scaleX(-1)}.adm-nav{display:flex;flex-direction:column;gap:14px}.adm-nav-group-label{font-size:11px;font-weight:700;letter-spacing:.08em;color:var(--adm-text-muted);padding:4px 10px}.adm-nav-link{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;color:var(--adm-text-muted);text-decoration:none;font-size:14px}.adm-nav-link:hover{background:var(--adm-surface-raised);color:var(--adm-text)}.adm-nav-link.active{background:var(--adm-surface-raised);color:var(--adm-text);font-weight:600}.adm-nav-icon{width:16px;height:16px;flex:none}.adm-sidebar-spacer{flex:1}.adm-user{display:flex;align-items:center;gap:10px;padding:10px;border-top:1px solid var(--adm-line)}.adm-user-avatar{width:30px;height:30px;flex:none;border-radius:999px;background:var(--adm-accent);color:#06110c;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px}.adm-user-info{display:flex;flex-direction:column;min-width:0}.adm-user-name{font-size:13px;font-weight:600}.adm-user-email{font-size:12px;color:var(--adm-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.adm-main{flex:1;min-width:0;padding:28px 32px 48px}.adm-screen{display:flex;flex-direction:column;gap:20px;max-width:1200px}.adm-screen-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.adm-eyebrow{font-size:12px;font-weight:700;letter-spacing:.06em;color:var(--adm-text-muted);text-transform:uppercase}.adm-title{font-size:28px;font-weight:700;margin:2px 0 4px}.adm-sub{color:var(--adm-text-muted);font-size:14px;margin:0}.adm-head-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.adm-range-chip{font-size:13px;color:var(--adm-text-muted);border:1px solid var(--adm-line);border-radius:999px;padding:6px 12px}.adm-back-link{color:var(--adm-text-muted);text-decoration:none;font-size:13px;flex:none;width:auto}.adm-back-link:hover{color:var(--adm-text)}.adm-btn{flex:none;width:auto;display:inline-flex;align-items:center;gap:6px;background:var(--adm-surface-raised);border:1px solid var(--adm-line);color:var(--adm-text);padding:8px 14px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer}.adm-btn:disabled{opacity:.5;cursor:not-allowed}.adm-btn-primary{background:var(--adm-accent);border-color:var(--adm-accent);color:#06110c}.adm-shell .adm-input,.adm-shell .adm-textarea,.adm-shell .adm-sql-controls select,.adm-shell .adm-filter select,.adm-shell .adm-filter input[type=search],.adm-shell .adm-filter input[type=text]{width:auto;min-height:0;background:var(--adm-bg);border:1px solid var(--adm-line);color:var(--adm-text);border-radius:8px;padding:8px 10px;font-size:13px;font-family:inherit}.adm-shell .adm-filter input::placeholder{color:var(--adm-text-muted)}.adm-filter select{min-width:140px}.adm-shell .adm-filter input[type=search]{min-width:240px}.adm-textarea{width:100%;min-height:90px;resize:vertical}.adm-textarea-lg{min-height:220px}.adm-mono{font-family:var(--bw-font-mono, ui-monospace, monospace)}.adm-field{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--adm-text-muted)}.adm-field-inline{flex-direction:row;align-items:center;gap:8px}.adm-field-inline .adm-input{width:90px}.adm-checkbox,.adm-radio{display:flex;align-items:center;gap:8px;font-size:13px}.adm-kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.adm-stat-card{background:var(--adm-surface);border:1px solid var(--adm-line);border-radius:12px;padding:16px}.adm-stat-head{display:flex;align-items:center;justify-content:space-between;color:var(--adm-text-muted);font-size:13px}.adm-stat-icon{width:16px;height:16px}.adm-stat-value{font-size:28px;font-weight:700;margin-top:6px}.adm-stat-delta{display:flex;align-items:center;gap:4px;font-size:12px;margin-top:6px;color:var(--adm-text-muted)}.adm-stat-delta--good.adm-stat-delta--up,.adm-stat-delta--bad.adm-stat-delta--down{color:var(--adm-accent)}.adm-stat-delta--good.adm-stat-delta--down,.adm-stat-delta--bad.adm-stat-delta--up{color:var(--adm-danger)}.adm-delta-arrow{width:12px;height:12px}.adm-section-label{font-size:11px;font-weight:700;letter-spacing:.08em;color:var(--adm-text-muted);text-transform:uppercase;margin-top:8px}.adm-chart-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px}.adm-card{background:var(--adm-surface);border:1px solid var(--adm-line);border-radius:12px;padding:16px}.adm-card-title{font-size:13px;font-weight:600;margin-bottom:10px}.adm-spark{display:block;width:100%;height:auto}.adm-spark-line{stroke:var(--adm-accent);stroke-width:2}.adm-spark-bar{fill:var(--adm-accent)}.adm-pre{white-space:pre-wrap;word-break:break-word;font-family:var(--bw-font-mono, ui-monospace, monospace);font-size:12px;color:var(--adm-text);margin:0}.adm-filter-bar{display:flex;gap:16px;flex-wrap:wrap}.adm-filter{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--adm-text-muted)}.adm-table-scroll{overflow-x:auto}.adm-table{width:100%;border-collapse:collapse;font-size:13px}.adm-table th{text-align:left;color:var(--adm-text-muted);font-weight:600;font-size:12px;padding:8px 10px;border-bottom:1px solid var(--adm-line)}.adm-table td{padding:10px;border-bottom:1px solid var(--adm-line)}.adm-row-link{cursor:pointer}.adm-row-link:hover{background:var(--adm-surface-raised)}.adm-badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;border:1px solid var(--adm-line);color:var(--adm-text-muted)}.adm-badge--status-succeeded,.adm-badge--model{color:var(--adm-accent);border-color:var(--adm-accent)}.adm-badge--status-failed{color:var(--adm-danger);border-color:var(--adm-danger)}.adm-badge--status-running,.adm-badge--tool{color:var(--adm-warn);border-color:var(--adm-warn)}.adm-pagination{display:flex;align-items:center;gap:12px;font-size:13px;color:var(--adm-text-muted)}.adm-meta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px 24px;background:var(--adm-surface);border:1px solid var(--adm-line);border-radius:12px;padding:16px}.adm-meta-grid>div:first-child{grid-column:span 2}.adm-meta-grid>div{display:flex;flex-direction:column;gap:2px}.adm-meta-label{font-size:11px;color:var(--adm-text-muted)}.adm-trace{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.adm-trace-step{background:var(--adm-surface);border:1px solid var(--adm-line);border-left:3px solid var(--adm-line);border-radius:10px;padding:12px 14px}.adm-trace-step--model{border-left-color:var(--adm-accent)}.adm-trace-step--tool{border-left-color:var(--adm-warn)}.adm-trace-step--handoff{border-left-color:var(--adm-text-muted)}.adm-trace-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:13px}.adm-trace-seq{color:var(--adm-text-muted);font-variant-numeric:tabular-nums}.adm-trace-agent{font-weight:600}.adm-trace-tool{font-family:var(--bw-font-mono, ui-monospace, monospace);color:var(--adm-text-muted)}.adm-trace-meta{margin-inline-start:auto;color:var(--adm-text-muted);font-size:12px}.adm-trace-sql{margin-top:10px}.adm-trace-sql-label{font-size:11px;font-weight:700;color:var(--adm-warn);text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px}.adm-trace-sql pre{background:var(--adm-bg);border:1px solid var(--adm-line);border-radius:8px;padding:10px;font-family:var(--bw-font-mono, ui-monospace, monospace);font-size:12px;white-space:pre-wrap;word-break:break-word;margin:0}.adm-trace-details{margin-top:8px;font-size:12px}.adm-trace-details summary{cursor:pointer;color:var(--adm-text-muted)}.adm-trace-details pre{margin-top:6px;background:var(--adm-bg);border:1px solid var(--adm-line);border-radius:8px;padding:10px;white-space:pre-wrap;word-break:break-word;font-family:var(--bw-font-mono, ui-monospace, monospace)}.adm-trace-error{margin-top:8px;color:var(--adm-danger);font-size:12px}.adm-conv-turns{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.adm-conv-turn{background:var(--adm-surface);border:1px solid var(--adm-line);border-left:3px solid var(--adm-line);border-radius:10px;padding:12px 14px}.adm-conv-turn--assistant{border-left-color:var(--adm-accent)}.adm-conv-turn-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}.adm-conv-turn-content{white-space:pre-wrap}.adm-conv-turn-steps{margin-top:10px;padding-top:10px;border-top:1px solid var(--adm-line)}.adm-conv-view-run{margin-left:auto;color:var(--adm-accent);font-size:12px;text-decoration:none}.adm-conv-view-run:hover{text-decoration:underline}.adm-badge--role-assistant{color:var(--adm-accent);border-color:var(--adm-accent)}.adm-badge--role-tool{color:var(--adm-warn);border-color:var(--adm-warn)}.adm-verdict-card,.adm-prompt-editor,.adm-verdict-form,.adm-sql-form{display:flex;flex-direction:column;gap:12px}.adm-verdict-options{display:flex;gap:16px;flex-wrap:wrap}.adm-editor-actions,.adm-sql-controls{display:flex;align-items:center;gap:10px}.adm-history-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--adm-text-muted)}.adm-error{color:var(--adm-danger);font-size:13px}.adm-success{color:var(--adm-accent);font-size:13px}.adm-empty{color:var(--adm-text-muted);font-size:13px;padding:24px 0}.admin-gate-loading{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#0b0d10}@media(max-width:720px){.adm-shell{flex-direction:column}.adm-sidebar{width:100%;flex-direction:row;flex-wrap:wrap;align-items:center;padding:10px 12px}.adm-nav{flex-direction:row;flex-wrap:wrap;gap:6px}.adm-nav-group{display:flex;align-items:center;gap:6px}.adm-nav-group-label,.adm-sidebar-spacer{display:none}.adm-user{border-top:none;margin-inline-start:auto}.adm-main{padding:16px}.adm-title{font-size:22px}}.adm-explorer-tabs{display:flex;align-items:center;gap:4px;flex-wrap:wrap;border-bottom:1px solid var(--adm-line);margin-bottom:16px;padding-bottom:0}.adm-explorer-tab{display:flex;align-items:center;gap:4px;padding:8px 6px 8px 14px;border-radius:8px 8px 0 0;color:var(--adm-text-muted);border:1px solid transparent;border-bottom:none;cursor:pointer}.adm-explorer-tab--active{background:var(--adm-surface);border-color:var(--adm-line);color:var(--adm-text)}.adm-explorer-tab-label{background:none;border:none;color:inherit;font:inherit;font-weight:600;font-size:13px;cursor:pointer;padding:0}.adm-explorer-tab-close{flex:none;width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;background:none;border:none;border-radius:6px;color:var(--adm-text-muted);cursor:pointer;font-size:14px;line-height:1}.adm-explorer-tab-close:hover{background:var(--adm-surface-raised);color:var(--adm-text)}.adm-explorer-tab-add-wrap{position:relative}.adm-explorer-tab-add{flex:none;width:auto;display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;margin-bottom:6px;border-radius:8px;border:1px dashed var(--adm-line);background:none;color:var(--adm-text-muted);cursor:pointer;font-size:15px}.adm-explorer-tab-add:hover{color:var(--adm-text);border-color:var(--adm-text-muted)}.adm-explorer-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:12px}.adm-explorer-toolbar-group{display:flex;align-items:center;gap:8px;position:relative}.adm-explorer-column-menu-wrap{position:relative}.adm-explorer-popover{position:absolute;z-index:20;top:calc(100% + 6px);left:0;min-width:240px;max-width:320px;max-height:380px;overflow-y:auto;background:var(--adm-surface-raised);border:1px solid var(--adm-line);border-radius:10px;box-shadow:0 12px 28px #00000073;padding:12px}.adm-explorer-popover-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.adm-explorer-popover-head strong{font-size:13px;color:var(--adm-text)}.adm-explorer-column-list,.adm-explorer-table-picker-list,.adm-explorer-facet-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.adm-explorer-column-list li,.adm-explorer-facet-list li{padding:4px 2px}.adm-explorer-table-picker-item{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;background:none;border:none;color:var(--adm-text);text-align:left;padding:8px 6px;border-radius:6px;cursor:pointer;font:inherit;font-size:13px}.adm-explorer-table-picker-item:hover{background:var(--adm-surface)}.adm-explorer-facet-count{color:var(--adm-text-muted);font-size:12px;font-variant-numeric:tabular-nums}.adm-explorer-facet-list label{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%}.adm-explorer-filter-actions{display:flex;gap:6px;margin:8px 0}.adm-explorer-filter-actions .adm-btn{padding:4px 10px;font-size:12px}.adm-explorer-table{table-layout:auto}.adm-explorer-th{position:relative}.adm-explorer-th-inner{display:flex;align-items:center;gap:4px}.adm-explorer-th-sort{flex:none;width:auto;background:none;border:none;color:inherit;font:inherit;font-weight:600;font-size:12px;padding:0;cursor:pointer;text-transform:none}.adm-explorer-th-sort:hover{color:var(--adm-text)}.adm-explorer-th-filter{flex:none;width:auto;background:none;border:none;color:var(--adm-text-muted);cursor:pointer;padding:0 2px;font-size:11px;line-height:1}.adm-explorer-th-filter--active{color:var(--adm-accent)}.adm-explorer-td-editable{cursor:pointer}.adm-explorer-td-editable:hover{background:var(--adm-surface-raised);outline:1px dashed var(--adm-line);outline-offset:-1px}.adm-explorer-cell-editor{width:100%;min-height:0;padding:4px 6px;font-size:13px}.adm-explorer-modal-backdrop{position:fixed;inset:0;z-index:40;background:#0000008c;display:flex;align-items:center;justify-content:center;padding:16px}.adm-explorer-modal{width:100%;max-width:420px;background:var(--adm-surface-raised);border:1px solid var(--adm-line);border-radius:12px;padding:20px;box-shadow:0 20px 48px #00000080}.adm-explorer-modal-title{margin:0 0 12px;font-size:16px;color:var(--adm-text)}.adm-explorer-modal-body{display:grid;grid-template-columns:auto 1fr;gap:6px 12px;margin:0 0 16px;font-size:13px}.adm-explorer-modal-body dt{color:var(--adm-text-muted)}.adm-explorer-modal-body dd{margin:0;color:var(--adm-text);word-break:break-word}.adm-explorer-modal-actions{display:flex;justify-content:flex-end;gap:8px}@media(max-width:720px){.adm-explorer-popover{left:auto;right:0;max-width:calc(100vw - 48px)}.adm-explorer-toolbar{flex-direction:column;align-items:stretch}.adm-explorer-toolbar-group{justify-content:space-between}}.adm-tab{flex:none;width:auto;background:none;border:1px solid transparent;border-bottom:none;border-radius:8px 8px 0 0;color:var(--adm-text-muted);font:inherit;font-size:13px;font-weight:600;padding:8px 14px;cursor:pointer;margin-bottom:-1px}.adm-tab.on{background:var(--adm-surface);border-color:var(--adm-line);color:var(--adm-text)}.adm-muted{color:var(--adm-text-muted)}.adm-devis-paper{background:var(--color-surface);color:var(--color-text);border:1px solid var(--adm-line);border-radius:10px;padding:20px;overflow-x:auto}.adm-devis-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;align-items:start}.adm-devis-side{display:flex;flex-direction:column;gap:14px}.adm-devis-side dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:6px 12px;font-size:13px}.adm-devis-side dt{color:var(--adm-text-muted)}.adm-devis-side dd{margin:0;overflow-wrap:anywhere}.adm-devis-pdf{width:100%;height:min(78vh,1000px);border:1px solid var(--adm-line);border-radius:10px;background:#fff}.adm-devis-deleted{color:var(--adm-danger);font-weight:600}.adm-files-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}.adm-file-card{background:var(--adm-surface);border:1px solid var(--adm-line);border-radius:10px;overflow:hidden;display:flex;flex-direction:column;min-width:0}.adm-file-thumb{height:132px;display:grid;place-items:center;background:var(--adm-bg);border-bottom:1px solid var(--adm-line)}.adm-file-thumb img{max-width:100%;max-height:132px;object-fit:contain}.adm-file-thumb audio{width:100%;max-width:100%;padding:0 8px;box-sizing:border-box}.adm-file-glyph{color:var(--adm-text-muted);font-size:12px;text-align:center;padding:0 10px}.adm-file-meta{padding:10px 12px;display:flex;flex-direction:column;gap:4px;font-size:12px;min-width:0}.adm-file-name{font-weight:600;overflow-wrap:anywhere}.adm-file-sub{color:var(--adm-text-muted)}.adm-file-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.adm-file-actions .adm-btn{flex:none;font-size:12px;padding:5px 9px}.adm-file-unavailable{color:var(--adm-warn)}.devis-doc-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:4px}.devis-doc-head h2{margin:4px 0 0;font-size:20px}.devis-doc-meta{color:var(--color-text-muted);font-size:13px}.adm-sig-img{max-width:100%;margin-top:8px;background:#fff;border:1px solid var(--adm-line);border-radius:6px}.adm-file-list{margin:0;padding-left:18px;font-size:13px;display:flex;flex-direction:column;gap:6px}.adm-filter-check{flex-direction:row;align-items:center;gap:8px}.adm-tabs{display:flex;gap:4px;border-bottom:1px solid var(--adm-line);margin-bottom:16px}.adm-devis-side .adm-files-grid{grid-template-columns:minmax(0,1fr)}@media(max-width:900px){.adm-devis-layout{grid-template-columns:minmax(0,1fr)}}
