@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-ext-wght-normal-BOFOeGcA.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:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-wght-normal-Xz1IZZA0.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:DM Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-mono-latin-ext-400-normal-C2zvOubV.woff2) format("woff2"),url(/assets/dm-mono-latin-ext-400-normal-1aZr6b2b.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:DM Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-mono-latin-400-normal-4GdczIuU.woff2) format("woff2"),url(/assets/dm-mono-latin-400-normal--0xN8mdc.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:DM Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-mono-latin-ext-500-normal-BtRyHRi6.woff2) format("woff2"),url(/assets/dm-mono-latin-ext-500-normal-Dw3M13d8.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:DM Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-mono-latin-500-normal-DRMDZjhP.woff2) format("woff2"),url(/assets/dm-mono-latin-500-normal-CN8Miw6E.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{--page: #f8e9d3;--page-2: #f3dfc2;--surface: #fffaf2;--surface-2: #f7ecda;--ink: #33222b;--ink-2: #5d4450;--muted: #a08d84;--border: rgba(90, 40, 60, .13);--grid: #ead9c6;--accent: #8e2a5a;--accent-2: #74214a;--accent-soft: #f5e2eb;--grain: #dd9552;--grain-soft: #f9e9d1;--ok: #6f8b58;--ok-soft: #e9eeda;--ok-ink: #4b6337;--warn: #bf7f26;--warn-soft: #f8ead0;--warn-ink: #7d5314;--bad: #b23336;--bad-soft: #f8e0dc;--bad-ink: #8c2420;--info-soft: #e3edf8;--info-ink: #3f6f9e;--violet-soft: #eee4f2;--violet-ink: #6d3f86;--sidebar: #3a2135;--sidebar-2: #2b1727;--sidebar-ink: #e6d3da;--sidebar-muted: #a5828f;--shadow-sm: 0 1px 2px rgba(80, 35, 55, .07);--shadow: 0 8px 26px rgba(80, 35, 55, .11);--radius: 14px;--field-bg: #fffdf8}:root[data-theme=dark]{--page: #1b1119;--page-2: #221525;--surface: #271a24;--surface-2: #33222e99;--ink: #f3e7e9;--ink-2: #d3bcc4;--muted: #9d8791;--border: rgba(255, 226, 238, .11);--grid: #3c2938;--accent: #c65f92;--accent-2: #b34a7e;--accent-soft: rgba(198, 95, 146, .16);--grain: #e2a35e;--grain-soft: rgba(226, 163, 94, .15);--ok: #93b678;--ok-soft: rgba(147,182,120,.16);--ok-ink: #b8d6a3;--warn: #dfa844;--warn-soft: rgba(223,168,68,.16);--warn-ink: #ecc87e;--bad: #e0695e;--bad-soft: rgba(224,105,94,.16);--bad-ink: #f0a49a;--info-soft: rgba(110,160,220,.16);--info-ink: #a9c8ee;--violet-soft: rgba(160,120,200,.16);--violet-ink: #cdb2e4;--sidebar: #150b13;--sidebar-2: #0e070d;--sidebar-ink: #dcc6cf;--sidebar-muted: #93798a;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow: 0 10px 30px rgba(0, 0, 0, .5);--field-bg: #1d1119}*{box-sizing:border-box}body{margin:0;font-family:DM Sans Variable,DM Sans,system-ui,-apple-system,Segoe UI,sans-serif;background:var(--page);background-image:radial-gradient(1200px 500px at 100% -10%,var(--accent-soft),transparent 60%),radial-gradient(900px 500px at -10% 110%,var(--grain-soft),transparent 55%);background-attachment:fixed;color:var(--ink);font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased}h1{font-size:24px;font-weight:650;margin:0;letter-spacing:-.03em}h2{font-size:15px;font-weight:600;margin:0 0 12px;color:var(--ink-2);letter-spacing:-.015em}.splash{display:grid;place-items:center;min-height:100vh;color:var(--muted)}.shell{display:flex;min-height:100vh}.sidebar{width:244px;flex-shrink:0;background:linear-gradient(180deg,var(--sidebar),var(--sidebar-2));color:var(--sidebar-ink);display:flex;flex-direction:column;padding:18px 14px;position:sticky;top:0;height:100vh;z-index:60}.brand{display:flex;gap:11px;align-items:center}.brand-text{min-width:0}.brand-name{font-weight:700;color:#fff;letter-spacing:-.02em;font-size:17px}.logo-mark{display:block;object-fit:contain;flex-shrink:0}.brand-sub{font-size:11px;color:var(--sidebar-muted);letter-spacing:.02em}.sidebar .brand{margin-bottom:20px}.sidebar nav{display:flex;flex-direction:column;gap:3px;flex:1;overflow-y:auto}.nav-link{display:flex;align-items:center;gap:11px;color:var(--sidebar-ink);text-decoration:none;padding:10px 12px;border-radius:10px;font-weight:500;font-size:13.5px}.nav-link svg{opacity:.85;flex-shrink:0}.nav-link:hover{background:#ffffff12}.nav-link.active{background:var(--accent);color:#fff;box-shadow:0 4px 12px #0000002e}.nav-link.active svg{opacity:1}.sidebar-footer{border-top:1px solid rgba(255,255,255,.1);padding-top:12px;margin-top:8px}.user-chip{display:flex;gap:10px;align-items:center;margin-bottom:10px}.avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--grain));color:#fff;display:grid;place-items:center;font-weight:700;flex-shrink:0}.user-meta{min-width:0}.user-name{color:#fff;font-weight:600;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-role{font-size:11px;color:var(--sidebar-muted)}.footer-actions{display:flex;gap:8px}.footer-actions .btn{flex:1}.theme-toggle{border:1px solid rgba(255,255,255,.14);background:#ffffff0d;color:var(--sidebar-ink);border-radius:10px;cursor:pointer;width:40px;min-height:36px;display:grid;place-items:center}.theme-toggle:hover{background:#ffffff1f}.mobile-header{display:none;position:sticky;top:0;z-index:55;align-items:center;gap:12px;padding:10px 14px;background:linear-gradient(180deg,var(--sidebar),var(--sidebar-2));color:#fff}.mobile-header .brand-name{font-size:15px}.hamburger,.drawer-close{border:none;background:transparent;color:inherit;cursor:pointer;padding:6px;border-radius:8px;display:grid;place-items:center}.hamburger:hover,.drawer-close:hover{background:#ffffff1f}.mh-spacer{flex:1}.mh-toggle{color:#fff;border-color:#fff3}.drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:59}.drawer-close{display:none}.content{flex:1;padding:26px 30px;max-width:1200px;width:100%}.page-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:12px;flex-wrap:wrap}.page-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:14px;flex-wrap:wrap}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px;margin-bottom:16px;box-shadow:var(--shadow-sm)}.muted{color:var(--muted);font-size:13px}.empty{color:var(--muted);text-align:center;padding:22px 0!important}.text-ok{color:var(--ok-ink)}.text-bad{color:var(--bad)}.text-warn{color:var(--warn-ink)}.alert{padding:11px 14px;border-radius:10px;margin-bottom:14px;font-size:13px;border:1px solid transparent}.alert-error{background:var(--bad-soft);color:var(--bad-ink);border-color:color-mix(in srgb,var(--bad) 30%,transparent)}.alert-warn{background:var(--warn-soft);color:var(--warn-ink);border-color:color-mix(in srgb,var(--warn) 30%,transparent)}.alert-ok{background:var(--ok-soft);color:var(--ok-ink);border-color:color-mix(in srgb,var(--ok) 30%,transparent)}.btn{border:1px solid var(--border);background:var(--surface);color:var(--ink);padding:9px 15px;border-radius:10px;cursor:pointer;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;gap:7px;transition:background .12s,transform .05s}.btn:hover{background:var(--surface-2)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:default}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-2)}.btn-ghost{border-color:transparent;background:transparent}.btn-ghost:hover{background:color-mix(in srgb,var(--ink) 7%,transparent)}.btn-sm{padding:5px 10px;font-size:12px}.btn:focus-visible,.chip:focus-visible,.search-options button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.nav-link:focus-visible,.theme-toggle:focus-visible,.hamburger:focus-visible,.drawer-close:focus-visible,.sidebar-footer .btn:focus-visible{outline:2px solid #fff;outline-offset:2px}.chip-row{display:flex;gap:7px;margin-bottom:14px;flex-wrap:wrap}.chip{border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:6px 14px;cursor:pointer;font-size:12px;color:var(--ink-2);text-transform:capitalize;font-weight:500}.chip:hover{border-color:var(--accent)}.chip-on{background:var(--accent);color:#fff;border-color:var(--accent)}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:10px 11px;border-bottom:1px solid var(--grid)}th{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:640;white-space:nowrap}tr:last-child td{border-bottom:none}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}td.num,.stage-count{font-family:DM Mono,ui-monospace,Consolas,monospace;font-size:.95em}.row-muted td{opacity:.5}.total-row td{border-top:2px solid var(--grid)}.note-cell{max-width:280px;font-size:12px;color:var(--ink-2)}.badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.02em}.badge-pending,.badge-contacted{background:var(--warn-soft);color:var(--warn-ink)}.badge-synced,.badge-converted{background:var(--ok-soft);color:var(--ok-ink)}.badge-failed,.badge-lost{background:var(--bad-soft);color:var(--bad-ink)}.badge-new{background:var(--info-soft);color:var(--info-ink)}.badge-qualified{background:var(--violet-soft);color:var(--violet-ink)}label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:600;color:var(--ink-2)}input,select,textarea{font:inherit;padding:9px 11px;border:1px solid var(--grid);border-radius:10px;background:var(--field-bg);color:var(--ink);width:100%}input::placeholder,textarea::placeholder{color:var(--muted)}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:var(--accent)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;align-items:end}.form-grid .span-2{grid-column:span 2}.form-inline{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}.check-label{flex-direction:row;align-items:center;gap:8px}.check-label input{width:auto}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a080480;display:grid;place-items:center;z-index:80;padding:16px}.modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;width:min(560px,100%);max-height:90vh;overflow-y:auto;box-shadow:var(--shadow)}.modal:focus{outline:none}.modal-wide{width:min(760px,100%)}.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.modal-head h3{margin:0;font-size:16px}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:8px;flex-wrap:wrap}.login-page{--field-bg: #fff;--grid: #ead9c6;--ink: #33222b;--ink-2: #5d4450;--muted: #a08d84;--border: rgba(90, 40, 60, .12);--accent: #8e2a5a;--accent-2: #74214a;--bad: #c2452e;--bad-soft: #f7e1da;--bad-ink: #8c2c1c;min-height:100vh;display:grid;place-items:center;padding:clamp(12px,3vw,36px);background:#f8e3cb;color:var(--ink)}.login-card{display:flex;width:min(1150px,100%);background:#fff;border-radius:26px;overflow:hidden;box-shadow:0 30px 70px #6e2a4238}.login-hero{flex:1.2;background:#fbe5cd;min-height:620px}.login-hero img{width:100%;height:100%;object-fit:cover;display:block}.login-side{flex:1;display:grid;place-items:center;padding:48px 40px}.login-form{width:min(340px,100%);display:flex;flex-direction:column;gap:14px}.login-brand{display:flex;flex-direction:column;align-items:center;gap:7px;font-weight:800;font-size:15px;letter-spacing:-.01em}.login-title{font-size:25px;font-weight:650;margin:6px 0 0;text-align:center;letter-spacing:-.03em}.login-sub{color:var(--muted);font-size:13px;text-align:center;margin:0 0 8px}.login-remember{font-size:12.5px;color:var(--ink-2)}.login-remember input{accent-color:var(--accent)}.login-submit{justify-content:center;padding:12px;font-size:14px;border-radius:9px}.login-hint{color:var(--muted);font-size:12px;text-align:center;margin:22px 0 0}@media (max-width: 760px){.login-hero{display:none}.login-card{border-radius:20px}.login-side{padding:36px 22px}}.kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin-bottom:16px}.kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:15px 16px;box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.kpi:after{content:"";position:absolute;right:-18px;top:-18px;width:64px;height:64px;border-radius:50%;background:var(--accent-soft)}.kpi-label{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700}.kpi-value{font-size:28px;font-weight:680;margin:5px 0 2px;letter-spacing:-.035em;position:relative}.kpi-sub{font-size:12px;color:var(--muted);position:relative}.chart-row{display:flex;gap:16px;align-items:stretch;flex-wrap:wrap}.chart-row .card{flex:1;min-width:300px}.stage-bars{display:flex;flex-direction:column;gap:10px}.stage-row{display:flex;align-items:center;gap:10px}.stage-label{width:78px;text-transform:capitalize;font-size:12px;color:var(--ink-2)}.stage-track{flex:1;background:var(--surface-2);border-radius:5px;height:15px;overflow:hidden}.stage-fill{background:linear-gradient(90deg,var(--accent),var(--grain));height:100%;border-radius:5px;min-width:3px}.stage-count{width:30px;text-align:right;font-variant-numeric:tabular-nums;font-weight:700}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:14px}.detail-grid .label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:700;margin-bottom:3px}.profile-card{max-width:640px}.search-picker{position:relative}.search-options{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:30;background:var(--surface);border:1px solid var(--border);border-radius:11px;max-height:240px;overflow-y:auto;box-shadow:var(--shadow)}.search-options button{display:flex;justify-content:space-between;gap:10px;width:100%;padding:9px 12px;border:none;background:none;cursor:pointer;font:inherit;text-align:left;color:var(--ink)}.search-options button:hover{background:var(--accent-soft)}@media (max-width: 860px){.shell{flex-direction:column}.mobile-header{display:flex}.drawer-close{display:grid}.sidebar{position:fixed;left:0;top:0;height:100dvh;width:82vw;max-width:300px;transform:translate(-100%);transition:transform .22s ease;box-shadow:0 0 40px #0006}.sidebar.open{transform:translate(0)}.sidebar .brand{justify-content:space-between}.content{padding:18px 16px}.form-grid{grid-template-columns:1fr}.form-grid .span-2{grid-column:span 1}h1{font-size:20px}.card:has(>table):not(.lines-card),.modal:has(>table){overflow-x:auto}.lines-table thead{display:none}.lines-table tbody{display:block}.lines-table tr{display:block;border:1px solid var(--grid);border-radius:12px;padding:6px 12px 10px;margin-bottom:10px}.lines-table td{display:flex;justify-content:space-between;align-items:center;gap:12px;border:none;padding:6px 0}.lines-table td:before{content:attr(data-label);font-size:11px;font-weight:700;text-transform:uppercase;color:var(--muted)}.lines-table td.line-idx{display:none}.lines-table td.cell-item{display:block}.lines-table td.cell-item:before{display:block;margin-bottom:5px}.lines-table td.cell-remove{justify-content:flex-end}.lines-table td.cell-remove:before{display:none}.lines-table tr.total-row{border:none;padding:4px 0 0;display:flex;justify-content:space-between}.lines-table tr.total-row td{padding:0}.lines-table tr.total-row td:before{display:none}}@media (max-width: 480px){.content{padding:14px 12px}.card{padding:13px}.kpi-value{font-size:24px}.page-head{align-items:flex-start}}
