:root{--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", system-ui, sans-serif;--font-display: "Inter", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--bg: #F4F3F1;--bg-2: #EAE9E6;--surface: #FFFFFF;--surface-2: #FAF9F7;--surface-3: #F0EFEC;--line: rgba(20, 20, 18, .08);--line-strong: rgba(20, 20, 18, .14);--ink: #1B1B1A;--ink-2: #2E2E2C;--ink-3: #58575A;--ink-4: #8E8D8A;--ink-5: #BCBBB7;--char-1: #1B1B1A;--char-2: #2E2E2C;--char-3: #45433F;--char-4: #6B6864;--char-5: #B0AEA9;--accent: var(--char-2);--accent-2: var(--char-1);--accent-tint: #ECEAE6;--accent-soft: rgba(46, 46, 44, .07);--status-paid-bg: var(--char-2);--status-paid-fg: #FAF9F7;--status-pending-bg: #FFFFFF;--status-pending-fg: var(--ink-2);--status-pending-bd: var(--ink-3);--status-overdue-bg: var(--char-1);--status-overdue-fg: #FAF9F7;--status-overdue-bd: var(--char-1);--status-draft-bg: #ECEAE6;--status-draft-fg: var(--char-4);--status-sent-bg: #DCDAD5;--status-sent-fg: var(--ink-2);--status-partial-bg: #FFFFFF;--status-partial-fg: var(--ink-2);--status-partial-bd: var(--ink-3);--tint-1: #F2F1EE;--tint-2: #E6E5E1;--tint-3: #D6D4CF;--r-xs: 4px;--r-sm: 6px;--r-md: 8px;--r-lg: 12px;--r-xl: 18px;--r-pill: 999px;--shadow-sm: 0 1px 0 rgba(0,0,0,.04), 0 1px 2px rgba(0,0,0,.04);--shadow-md: 0 1px 0 rgba(0,0,0,.04), 0 4px 14px rgba(0,0,0,.06);--shadow-lg: 0 1px 0 rgba(0,0,0,.04), 0 18px 40px -12px rgba(0,0,0,.18);--shadow-pop: 0 1px 0 rgba(0,0,0,.04), 0 8px 24px rgba(0,0,0,.12), 0 2px 6px rgba(0,0,0,.06);--ring-focus: 0 0 0 3px rgba(0,0,0,.16)}*{box-sizing:border-box}html,body{margin:0;padding:0;font-family:var(--font-sans);background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body{font-size:14px;line-height:1.45;letter-spacing:-.005em}a{color:var(--ink);text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:3px}.page{display:grid;grid-template-columns:220px 1fr;min-height:100vh}.page-nav{position:sticky;top:0;height:100vh;padding:28px 18px;border-right:1px solid var(--line);background:var(--surface);overflow-y:auto}.page-nav .brand{display:flex;align-items:center;gap:10px;margin-bottom:28px;font-weight:600;font-size:15px;letter-spacing:-.01em}.page-nav .brand-mark{width:28px;height:28px;background:var(--char-2);border-radius:7px;display:grid;place-items:center;color:#faf9f7;font-weight:700;font-size:14px}.page-nav h6{text-transform:uppercase;font-size:10px;letter-spacing:.1em;color:var(--ink-4);margin:18px 0 6px;font-weight:500}.page-nav ul{list-style:none;margin:0;padding:0}.page-nav li a{display:block;padding:6px 10px;border-radius:6px;color:var(--ink-2);font-size:13px;text-decoration:none}.page-nav li a:hover{background:var(--bg-2)}.page-nav li a.active{background:var(--char-2);color:#faf9f7}.page-main{padding:56px 64px 120px;max-width:1280px}.hero-row{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;padding-bottom:24px;border-bottom:1px solid var(--line);margin-bottom:48px}.hero-row h1{font-family:var(--font-display);font-weight:600;font-size:52px;line-height:1;letter-spacing:-.035em;margin:0 0 8px}.hero-row .eyebrow{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-4);margin-bottom:14px;font-weight:500}.hero-row .lede{max-width:360px;color:var(--ink-3);font-size:14px;text-align:right}section.cl-section{margin-bottom:88px}section.cl-section>header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:28px;padding-bottom:16px;border-bottom:1px solid var(--line)}section.cl-section>header h2{font-family:var(--font-display);font-weight:600;font-size:28px;letter-spacing:-.025em;margin:0}section.cl-section>header .sec-num{font-family:var(--font-mono);font-size:11px;color:var(--ink-4);letter-spacing:.04em}.sub{font-size:10px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-4);margin-bottom:14px}.group{margin-bottom:36px}.group-grid{display:grid;gap:24px}.row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:36px;padding:0 16px;border-radius:var(--r-pill);font-family:inherit;font-size:13.5px;font-weight:500;letter-spacing:-.005em;border:1px solid transparent;cursor:pointer;transition:transform .06s ease,background .15s ease,box-shadow .15s ease,border-color .15s ease;white-space:nowrap;user-select:none}.btn:active{transform:translateY(.5px)}.btn:focus-visible{outline:none;box-shadow:var(--ring-focus)}.btn .chev{transition:transform .15s ease}.btn:hover .chev{transform:translateY(1px)}.btn-primary{background:var(--char-2);color:#faf9f7;box-shadow:inset 0 1px #ffffff14}.btn-primary:hover{background:var(--char-1)}.btn-secondary{background:var(--surface);color:var(--ink);border-color:var(--line-strong);box-shadow:var(--shadow-sm)}.btn-secondary:hover{background:var(--surface-2);border-color:var(--ink-4)}.btn-ghost{background:transparent;color:var(--ink-2)}.btn-ghost:hover{background:var(--bg-2)}.btn-destructive{background:var(--surface);color:var(--char-1);border-color:var(--char-1);box-shadow:var(--shadow-sm)}.btn-destructive:hover{background:var(--char-1);color:var(--surface)}.btn-dark{background:var(--char-3);color:#faf9f7}.btn-dark:hover{background:var(--char-2)}.btn-sm{height:28px;padding:0 12px;font-size:12.5px}.btn-lg{height:44px;padding:0 22px;font-size:14.5px}.btn-icon{width:36px;padding:0;background:var(--surface);border:1px solid var(--line-strong);color:var(--ink-2);box-shadow:var(--shadow-sm)}.btn-icon:hover{background:var(--surface-2)}.btn-icon-ghost{background:transparent;border-color:transparent;box-shadow:none;color:var(--ink-3)}.btn-icon-ghost:hover{background:#0000000f;color:var(--ink)}.btn-split{display:inline-flex;border-radius:var(--r-pill);background:var(--char-2);color:#faf9f7;box-shadow:0 1px 2px #00000026;overflow:hidden}.btn-split>button{background:transparent;color:inherit;border:0;padding:0 18px;height:36px;font:inherit;font-weight:500;cursor:pointer}.btn-split>button:last-child{border-left:1px solid rgba(255,255,255,.18);padding:0 12px}.btn-split>button:hover{background:#ffffff14}.btn-fab{width:44px;height:44px;border-radius:50%;background:var(--char-2);color:#faf9f7;border:0;display:grid;place-items:center;box-shadow:0 8px 24px #2e2e2c4d;cursor:pointer}.btn-fab:hover{background:var(--char-1)}.btn-mac-traffic{width:12px;height:12px;border-radius:50%;border:0;padding:0}.t-red{background:#ed6a5e}.t-amber{background:#f5bf4f}.t-green{background:#61c554}.pill-shelf{display:inline-flex;background:var(--surface);border:1px solid var(--line);padding:4px;border-radius:var(--r-pill);box-shadow:var(--shadow-sm);gap:2px}.pill-shelf>button{border:0;background:transparent;height:30px;padding:0 14px;font:inherit;font-size:13px;color:var(--ink-3);border-radius:var(--r-pill);cursor:pointer;display:inline-flex;align-items:center;gap:6px}.pill-shelf>button.active{background:var(--char-2);color:#faf9f7}.pill-shelf>button:not(.active):hover{background:var(--bg-2);color:var(--ink-2)}.field{display:flex;flex-direction:column;gap:6px;min-width:240px}.field label{font-size:12px;font-weight:500;color:var(--ink-2);letter-spacing:-.005em}.field .hint{font-size:12px;color:var(--ink-4)}.field .err{font-size:12px;color:var(--ink);font-weight:500;display:inline-flex;align-items:center;gap:4px}.field .err:before{content:"";width:4px;height:4px;border-radius:50%;background:var(--ink)}.input,.textarea{appearance:none;-webkit-appearance:none;width:100%;height:40px;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-md);padding:0 12px;font:inherit;font-size:13.5px;color:var(--ink);transition:border-color .12s ease,box-shadow .12s ease}.input::placeholder,.textarea::placeholder{color:var(--ink-4)}.input:hover,.textarea:hover{border-color:var(--ink-4)}.input:focus,.textarea:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px #00000014}.input[disabled],.textarea[disabled]{background:var(--bg-2);color:var(--ink-4);cursor:not-allowed}.input.err-state{border-color:var(--ink);box-shadow:0 0 0 3px #0000001f}.textarea{height:auto;min-height:88px;padding:10px 12px;resize:vertical;line-height:1.5}.select-wrap{position:relative;display:inline-flex;width:100%}.select{appearance:none;-webkit-appearance:none;width:100%;height:40px;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-md);padding:0 48px 0 14px;font:inherit;font-size:13.5px;font-weight:500;color:var(--ink);cursor:pointer;transition:border-color .12s ease,box-shadow .12s ease;letter-spacing:-.005em}.select:hover{border-color:var(--ink-4)}.select:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px #00000014}.select[disabled]{background:var(--bg-2);color:var(--ink-4);cursor:not-allowed}.select-wrap:after{content:"";position:absolute;top:4px;right:4px;bottom:4px;width:36px;background:var(--ink);border-radius:6px;pointer-events:none}.select-wrap:before{content:"";position:absolute;top:50%;right:13px;width:10px;height:10px;margin-top:-3px;background:none;border-right:1.7px solid #fff;border-bottom:1.7px solid #fff;transform:rotate(45deg);pointer-events:none;z-index:1}.select-wrap.compact:after{background:transparent;border:1px solid var(--ink);width:30px;border-radius:6px}.select-wrap.compact:before{border-color:var(--ink)}.input-wrap{position:relative}.input-wrap .lead,.input-wrap .trail{position:absolute;top:50%;transform:translateY(-50%);color:var(--ink-4);display:flex;align-items:center}.input-wrap .lead{left:12px}.input-wrap .trail{right:12px}.input-wrap .input.with-lead{padding-left:38px}.input-wrap .input.with-trail{padding-right:50px}.input-currency .lead{font-family:var(--font-mono);font-size:13px;color:var(--ink-2);font-weight:500}.search{position:relative;display:inline-flex;align-items:center;height:36px;width:320px;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-md);padding:0 10px 0 34px}.search input{border:0;background:transparent;font:inherit;font-size:13px;width:100%;outline:none}.search svg{position:absolute;left:12px;color:var(--ink-3)}.search .kbd{font-family:var(--font-mono);font-size:11px;color:var(--ink-3);background:var(--bg-2);border:1px solid var(--line);border-radius:4px;padding:1px 5px}.check{display:inline-flex;align-items:center;gap:10px;cursor:pointer;user-select:none;font-size:13.5px;position:relative}.check input{position:absolute;opacity:0;pointer-events:none}.check .box{width:20px;height:20px;border:1.5px solid var(--ink);border-radius:4px;background:var(--surface);display:inline-grid;place-items:center;transition:all .12s ease;flex:0 0 20px;position:relative}.check .box svg{opacity:0;color:var(--surface);transition:opacity .12s ease}.check input:checked+.box{background:var(--ink);border-color:var(--ink)}.check input:checked+.box svg{opacity:1}.check:hover .box{background:var(--bg-2)}.check input:checked~.box,.check input:checked+.box:hover{background:var(--ink)}.check input:focus-visible+.box{box-shadow:var(--ring-focus)}.check input:disabled+.box{background:var(--bg-2);border-color:var(--ink-5)}.check input:disabled~*{color:var(--ink-4)}.check.mixed input+.box{background:var(--ink);border-color:var(--ink)}.check.mixed input+.box:after{content:"";width:10px;height:2px;background:var(--surface);border-radius:1px}.check.mixed .box svg{display:none}.radio{display:inline-flex;align-items:center;gap:10px;cursor:pointer;font-size:13.5px;position:relative}.radio input{position:absolute;opacity:0;pointer-events:none}.radio .dot{width:20px;height:20px;border-radius:50%;border:1.5px solid var(--ink);background:var(--surface);position:relative;display:inline-grid;place-items:center;flex:0 0 20px;transition:background .12s ease}.radio .dot:after{content:"";width:10px;height:10px;background:var(--ink);border-radius:50%;transform:scale(0);transition:transform .15s cubic-bezier(.5,1.6,.5,1)}.radio input:checked+.dot:after{transform:scale(1)}.radio:hover .dot{background:var(--bg-2)}.radio input:focus-visible+.dot{box-shadow:var(--ring-focus)}.radio input:disabled+.dot{border-color:var(--ink-5)}.radio input:disabled~*{color:var(--ink-4)}.switch{position:relative;display:inline-flex;align-items:center;gap:12px;cursor:pointer;font-size:13.5px;user-select:none}.switch input{position:absolute;opacity:0;pointer-events:none}.switch .track{width:44px;height:26px;background:var(--surface);border:1.5px solid var(--ink);border-radius:var(--r-pill);position:relative;transition:background .18s ease;flex:0 0 44px}.switch .track:after{content:"";position:absolute;top:2px;left:2px;width:19px;height:19px;background:var(--ink);border-radius:50%;transition:transform .22s cubic-bezier(.5,1.4,.5,1),background .15s ease}.switch input:checked+.track{background:var(--ink)}.switch input:checked+.track:after{transform:translate(18px);background:var(--surface)}.switch input:focus-visible+.track{box-shadow:var(--ring-focus)}.switch input:disabled+.track{opacity:.4;cursor:not-allowed}.file-drop{border:1.5px dashed var(--line-strong);border-radius:var(--r-lg);padding:22px;background:var(--surface-2);display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;transition:all .12s ease}.file-drop:hover{border-color:var(--ink);background:var(--surface)}.file-drop .file-icon{width:38px;height:38px;border-radius:10px;background:var(--surface);border:1px solid var(--line);display:grid;place-items:center;color:var(--ink-2);margin-bottom:4px}.stepper{display:inline-flex;align-items:center;border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface);overflow:hidden}.stepper button{width:32px;height:38px;background:transparent;border:0;cursor:pointer;color:var(--ink-2);font-size:16px}.stepper button:hover{background:var(--bg-2)}.stepper input{width:56px;height:38px;border:0;text-align:center;font:inherit;font-size:13.5px;outline:none;background:transparent;font-feature-settings:"tnum"}.segmented{display:inline-flex;background:var(--bg-2);border-radius:var(--r-md);padding:2px;border:1px solid var(--line)}.segmented button{border:0;background:transparent;padding:0 14px;height:30px;font:inherit;font-size:12.5px;color:var(--ink-3);border-radius:6px;cursor:pointer}.segmented button.active{background:var(--char-2);color:#faf9f7;font-weight:500}.badge{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 10px;border-radius:var(--r-pill);font-size:11.5px;font-weight:500;letter-spacing:.01em;white-space:nowrap}.badge .dot{width:6px;height:6px;border-radius:50%;background:currentColor}.badge-paid{background:var(--status-paid-bg);color:var(--status-paid-fg)}.badge-paid .dot{background:#faf9f7}.badge-pending{background:var(--status-pending-bg);color:var(--status-pending-fg);border:1px solid var(--status-pending-bd);height:20px}.badge-pending .dot{background:var(--ink)}.badge-overdue{background:var(--status-overdue-bg);color:var(--status-overdue-fg);border:1.5px solid var(--status-overdue-bd);height:20px;font-weight:600}.badge-overdue .dot{background:#faf9f7;animation:pulse-ring 1.6s ease-out infinite}@keyframes pulse-ring{0%,to{box-shadow:0 0 #faf9f799}50%{box-shadow:0 0 0 4px #faf9f700}}.badge-draft{background:var(--status-draft-bg);color:var(--status-draft-fg)}.badge-draft .dot{background:var(--ink-4);width:6px;height:6px;border-radius:1px}.badge-sent{background:var(--status-sent-bg);color:var(--status-sent-fg)}.badge-sent .dot{background:var(--ink)}.badge-partial{background:var(--status-partial-bg);color:var(--status-partial-fg);border:1px dashed var(--ink);height:20px}.badge-partial .dot{background:linear-gradient(90deg,var(--ink) 50%,transparent 50%)}.tag{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border-radius:5px;font-size:12px;font-weight:500;background:var(--surface);border:1px solid var(--line-strong);color:var(--ink-2)}.tag .x{color:var(--ink-4);cursor:pointer;font-size:14px}.tag .x:hover{color:var(--ink)}.alert{display:flex;align-items:center;gap:14px;padding:14px 18px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm)}.alert .body{display:flex;flex-direction:column;justify-content:center}.alert .ico{width:28px;height:28px;flex:0 0 28px;border-radius:8px;display:grid;place-items:center;background:var(--bg-2);color:var(--ink)}.alert .body{flex:1}.alert .title{font-weight:600;font-size:13.5px;margin-bottom:2px;letter-spacing:-.005em}.alert .desc{font-size:13px;color:var(--ink-3)}.alert .close{background:transparent;border:0;color:var(--ink-4);cursor:pointer}.alert-info .ico{background:var(--tint-1);color:var(--ink)}.alert-success .ico{background:var(--ink);color:var(--surface)}.alert-warning .ico{background:var(--surface);color:var(--char-1);border:1.5px solid var(--char-1);width:26px;height:26px;flex:0 0 26px}.alert-danger{border-color:var(--char-1)}.alert-danger .ico{background:var(--char-1);color:#faf9f7}.alert-banner{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:var(--r-md);font-size:13px;border:1px solid var(--line-strong);background:var(--surface)}.alert-banner.info{border-color:var(--line-strong)}.alert-banner.warning{background:var(--char-2);color:#faf9f7;border-color:var(--char-2)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);padding:20px}.stat-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px 20px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:14px;min-width:200px}.stat-card .stat-head{display:flex;align-items:center;justify-content:space-between;color:var(--ink-3);font-size:12px;letter-spacing:.01em;font-weight:500}.stat-card .stat-icon{width:28px;height:28px;border-radius:7px;background:var(--bg-2);display:grid;place-items:center;color:var(--ink-2)}.stat-card .stat-value{font-weight:600;font-size:32px;line-height:1;letter-spacing:-.03em;color:var(--ink);font-feature-settings:"tnum"}.stat-card .stat-meta{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--ink-3)}.delta-up,.delta-down{color:var(--ink);font-weight:600}.delta-up:before{content:"↑ "}.delta-down:before{content:"↓ "}.stat-card.accent{background:var(--char-3);color:#f4f2ee;border-color:var(--char-3)}.stat-card.accent .stat-head{color:#b8b5ae}.stat-card.accent .stat-icon{background:#ffffff1a;color:#f4f2ee}.stat-card.accent .stat-value{color:#faf9f7}.stat-card.accent .stat-meta{color:#b8b5ae}.stat-card.accent .delta-up{color:#faf9f7}.invoice-mini{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px;display:flex;flex-direction:column;gap:14px;box-shadow:var(--shadow-sm);min-width:280px}.invoice-mini .row1{display:flex;align-items:center;justify-content:space-between}.invoice-mini .num{font-family:var(--font-mono);font-size:11.5px;color:var(--ink-3);letter-spacing:.04em}.invoice-mini .client{font-weight:600;font-size:15px;letter-spacing:-.01em}.invoice-mini .amount{font-weight:600;font-size:28px;letter-spacing:-.03em;font-feature-settings:"tnum"}.invoice-mini .meta{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--ink-4);border-top:1px solid var(--line);padding-top:10px}.customer-card{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md)}.avatar{width:36px;height:36px;border-radius:50%;background:var(--char-3);color:#faf9f7;display:grid;place-items:center;font-size:12px;font-weight:600;flex:0 0 36px;letter-spacing:.01em}.avatar.outline{background:var(--surface);color:var(--ink);border:1.5px solid var(--char-2)}.avatar.light{background:var(--char-5);color:var(--ink)}.avatar.mid{background:var(--char-4);color:#faf9f7}.table-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-md);overflow:hidden}.table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line)}table.cl-table{width:100%;border-collapse:collapse;font-size:13.5px}.cl-table thead th{text-align:left;font-size:10.5px;font-weight:500;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-4);padding:12px 18px;border-bottom:1px solid var(--line);background:var(--surface-2);white-space:nowrap}.cl-table thead th .sort{margin-left:4px;opacity:.6}.cl-table tbody td{padding:14px 18px;border-bottom:1px solid var(--line);vertical-align:middle}.cl-table tbody tr:last-child td{border-bottom:0}.cl-table tbody tr:hover{background:var(--surface-2)}.cl-table .num{font-family:var(--font-mono);font-size:12.5px;color:var(--ink-2);font-weight:500}.cl-table .amount{font-feature-settings:"tnum";font-weight:500}.cl-table .row-check{width:36px;padding-right:0}.cl-table tr.selected{background:var(--accent-soft)}.table-footer{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:12px 18px;font-size:12.5px;color:var(--ink-3);border-top:1px solid var(--line);background:var(--surface-2)}.table-footer>:first-child{justify-self:start}.table-footer>.pager{justify-self:center}.pager{display:inline-flex;gap:4px;align-items:center}.pager button{width:28px;height:28px;border-radius:6px;border:1px solid var(--line);background:var(--surface);font:inherit;font-size:12.5px;cursor:pointer;color:var(--ink-2)}.pager button.active{background:var(--char-2);color:#faf9f7;border-color:var(--char-2)}.pager button:hover:not(.active){background:var(--bg-2)}.app-window{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-xl);overflow:hidden;box-shadow:var(--shadow-lg)}.titlebar{height:38px;background:linear-gradient(180deg,#ececec,#d8d8d8);border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 14px;gap:8px}.titlebar .lights{display:flex;gap:8px}.titlebar .url{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;font-size:12px;color:var(--ink-3)}.titlebar .url .pill{background:#ffffffb3;padding:4px 14px;border-radius:var(--r-pill);border:1px solid var(--line);display:inline-flex;align-items:center;gap:6px;min-width:240px;justify-content:center;font-family:var(--font-mono);font-size:11.5px}.titlebar .actions{display:flex;gap:6px;color:var(--ink-3)}.appnav{display:flex;align-items:center;justify-content:space-between;padding:12px 22px;background:var(--surface);border-bottom:1px solid var(--line)}.appnav .brand-area{display:flex;align-items:center;gap:14px}.appnav .logo{display:flex;align-items:center;gap:8px;font-weight:600;font-size:15px;letter-spacing:-.01em}.appnav .logo-mark{width:28px;height:28px;background:var(--char-2);border-radius:7px;display:grid;place-items:center;color:#faf9f7;font-weight:700;font-size:14px}.appnav .nav-tabs{display:flex;gap:4px;margin-left:18px}.appnav .nav-tabs a{padding:6px 12px;border-radius:6px;font-size:13.5px;color:var(--ink-2);text-decoration:none}.appnav .nav-tabs a:hover{background:var(--bg-2)}.appnav .nav-tabs a.active{background:var(--char-2);color:#faf9f7}.appnav .right{display:flex;align-items:center;gap:12px}.bell{position:relative;width:36px;height:36px;border-radius:50%;background:var(--surface);border:1px solid var(--line-strong);display:grid;place-items:center;color:var(--ink-2);cursor:pointer}.bell:hover{background:var(--surface-2)}.bell .pulse{position:absolute;top:6px;right:7px;width:8px;height:8px;border-radius:50%;background:var(--char-1);border:2px solid var(--surface)}.sidebar-card{width:80px;background:var(--surface);border-right:1px solid var(--line);padding:18px 0;display:flex;flex-direction:column;align-items:center;gap:4px}.sidebar-card .menu-label{font-size:9.5px;font-weight:500;letter-spacing:.14em;color:var(--ink-4);margin-bottom:8px}.sb-icon{width:44px;height:44px;border-radius:10px;display:grid;place-items:center;color:var(--ink-3);cursor:pointer;transition:all .12s ease;position:relative}.sb-icon:hover{background:var(--bg-2);color:var(--ink)}.sb-icon.active{background:var(--char-2);color:#faf9f7}.sb-icon .ind-dot{position:absolute;top:8px;right:8px;width:7px;height:7px;border-radius:50%;background:var(--ink);border:2px solid var(--surface)}.lnk{color:var(--ink);font-size:14px;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;text-decoration-color:var(--ink-5);display:inline-flex;align-items:center;gap:4px}.lnk:hover{text-decoration-color:var(--ink)}.lnk-ghost{color:var(--ink-3);text-decoration:none}.lnk-ghost:hover{color:var(--ink)}.lnk-underline{text-decoration:underline;text-underline-offset:4px}.lnk-arrow{font-weight:500;text-decoration:none}.lnk-arrow:hover{text-decoration:underline}.lnk-mono{font-family:var(--font-mono);font-size:13px}.footer{background:var(--char-3);color:#c7c4be;border-radius:var(--r-xl);overflow:hidden}.footer .footer-top{padding:56px 56px 40px;display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:32px}.footer h4{font-family:var(--font-display);font-weight:600;font-size:32px;letter-spacing:-.03em;color:var(--surface);margin:0 0 12px;line-height:1.05}.footer p.tag-line{color:#909090;font-size:14px;max-width:320px}.footer .col-title{font-size:10px;font-weight:600;letter-spacing:.14em;color:#7c7c7c;text-transform:uppercase;margin-bottom:14px}.footer ul{list-style:none;margin:0;padding:0}.footer li{margin-bottom:8px}.footer li a{color:#c8c8c8;text-decoration:none;font-size:13.5px}.footer li a:hover{color:var(--surface);text-decoration:underline;text-underline-offset:3px}.footer .footer-bottom{padding:18px 56px;border-top:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#7c7c7c}.footer .footer-bottom .socials{display:flex;gap:14px}.footer .footer-bottom .socials a{color:#909090}.landing{background:var(--surface);border-radius:var(--r-xl);border:1px solid var(--line);overflow:hidden;box-shadow:var(--shadow-md)}.landing-nav{display:flex;align-items:center;justify-content:space-between;padding:18px 36px;border-bottom:1px solid var(--line);background:var(--surface)}.landing-nav nav{display:flex;gap:22px;font-size:14px}.landing-nav nav a{color:var(--ink-2);text-decoration:none}.landing-nav nav a:hover{color:var(--ink)}.hero{padding:80px 56px 64px;display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:center;background:var(--surface);position:relative}.hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(0,0,0,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.025) 1px,transparent 1px);background-size:32px 32px;pointer-events:none;mask-image:radial-gradient(circle at 30% 50%,black,transparent 80%)}.hero>*{position:relative}.hero .eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;background:var(--surface);padding:6px 12px;border-radius:var(--r-pill);border:1px solid var(--ink);color:var(--ink);margin-bottom:22px;width:fit-content;font-weight:500}.hero .eyebrow .pulse-dot{width:8px;height:8px;border-radius:50%;background:var(--ink);box-shadow:0 0 0 4px #0000001a}.hero h1{font-family:var(--font-display);font-weight:600;font-size:76px;line-height:.98;letter-spacing:-.045em;margin:0 0 18px;color:var(--ink)}.hero h1 .accent{display:inline-block;position:relative;color:var(--ink)}.hero h1 .accent:after{content:"";position:absolute;left:-2px;right:-2px;bottom:6px;height:12px;background:var(--ink);z-index:-1;opacity:.12}.hero p.lede{font-size:17px;line-height:1.5;color:var(--ink-3);max-width:460px;margin:0 0 30px}.hero .cta-row{display:flex;gap:10px;align-items:center}.hero .trust{margin-top:36px;display:flex;gap:28px;font-size:12px;color:var(--ink-4)}.hero .trust b{color:var(--ink);font-weight:600;font-size:22px;display:block;margin-bottom:2px;letter-spacing:-.025em}.hero-illust{position:relative;aspect-ratio:4/5;background:var(--surface);border-radius:var(--r-xl);border:1px solid var(--ink);box-shadow:12px 12px 0 var(--ink);padding:22px;display:flex;flex-direction:column;gap:14px;overflow:hidden}.toast{display:inline-flex;align-items:center;gap:12px;padding:10px 14px 10px 12px;background:var(--char-2);color:#faf9f7;border-radius:var(--r-pill);box-shadow:var(--shadow-pop);font-size:13px}.toast .ico{width:22px;height:22px;border-radius:50%;background:#faf9f7;color:var(--char-2);display:grid;place-items:center}.toast button{background:transparent;border:0;color:#909090;cursor:pointer;font-size:13px}.toast button:hover{color:var(--surface)}.menu{position:relative;display:inline-block}.menu-pop{background:var(--surface);border-radius:var(--r-md);box-shadow:var(--shadow-pop);border:1px solid var(--line-strong);padding:6px;min-width:200px}.menu-pop button{display:flex;align-items:center;gap:10px;width:100%;background:transparent;border:0;padding:8px 10px;border-radius:6px;font:inherit;font-size:13.5px;color:var(--ink-2);cursor:pointer;text-align:left}.menu-pop button:hover{background:var(--bg-2)}.menu-pop button.danger{color:var(--ink);font-weight:500}.menu-pop button.danger:hover{background:var(--ink);color:var(--surface)}.menu-pop hr{border:0;border-top:1px solid var(--line);margin:6px 4px}.menu-pop .kbd-hint{margin-left:auto;font-family:var(--font-mono);font-size:11px;color:var(--ink-4)}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line)}.tabs button{border:0;background:transparent;padding:10px 14px;font:inherit;font-size:13.5px;color:var(--ink-3);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.tabs button.active{color:var(--ink);font-weight:500;border-bottom-color:var(--char-2)}.tabs button:hover:not(.active){color:var(--ink-2)}.tabs .count{display:inline-flex;align-items:center;justify-content:center;height:18px;min-width:18px;padding:0 6px;font-size:11px;font-family:var(--font-mono);background:var(--bg-2);border-radius:4px;margin-left:6px;color:var(--ink-3)}.tabs button.active .count{background:var(--char-2);color:#faf9f7}.kbd{font-family:var(--font-mono);font-size:11px;background:var(--surface);border:1px solid var(--line-strong);padding:1px 5px;border-radius:4px;color:var(--ink-2);box-shadow:0 1px 0 var(--line)}.divider{height:1px;background:var(--line);margin:24px 0}.code-inline{font-family:var(--font-mono);font-size:12px;background:var(--bg-2);padding:1px 6px;border-radius:4px;color:var(--ink-2)}.type-row{display:grid;grid-template-columns:140px 1fr 100px;gap:16px;padding:18px 0;border-bottom:1px solid var(--line);align-items:baseline}.type-row .lbl{font-family:var(--font-mono);font-size:11px;color:var(--ink-4);letter-spacing:.04em;text-transform:uppercase}.type-row .meta{font-family:var(--font-mono);font-size:11px;color:var(--ink-4);text-align:right}.t-display-1{font-family:var(--font-display);font-weight:600;font-size:72px;line-height:.95;letter-spacing:-.04em}.t-display-2{font-family:var(--font-display);font-weight:600;font-size:48px;line-height:1;letter-spacing:-.035em}.t-h1{font-size:28px;font-weight:600;letter-spacing:-.025em;line-height:1.1}.t-h2{font-size:20px;font-weight:600;letter-spacing:-.02em}.t-body{font-size:14px}.t-small{font-size:12px;color:var(--ink-3)}.t-mono{font-family:var(--font-mono);font-size:13px;letter-spacing:.02em}.swatch-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.swatch{border-radius:var(--r-md);padding:12px;border:1px solid var(--line);background:var(--surface);display:flex;flex-direction:column;gap:10px}.swatch .chip{height:70px;border-radius:var(--r-sm);box-shadow:inset 0 0 0 1px #0000000f}.swatch .name{font-size:12.5px;font-weight:500}.swatch .hex{font-family:var(--font-mono);font-size:11px;color:var(--ink-4)}:root{--char-1: #1B2658;--char-2: #2A3B7A;--accent: #2A3B7A;--accent-2: #1B2658;--accent-tint: #E0E5F3;--accent-soft: rgba(42, 59, 122, .1);--ring-focus: 0 0 0 3px rgba(42, 59, 122, .28);--status-paid-bg: #1F6F4B;--status-paid-fg: #F6FBF8;--status-pending-bg: #FFF4DD;--status-pending-fg: #6B4607;--status-pending-bd: #C9821E;--status-overdue-bg: #B33530;--status-overdue-fg: #FFF1F0;--status-overdue-bd: #B33530;--status-draft-bg: #ECEAE6;--status-draft-fg: #58575A;--status-sent-bg: #E6E7EC;--status-sent-fg: #3F4664;--status-partial-bg: #FFFFFF;--status-partial-fg: #2E2E2C;--status-partial-bd: #58575A;--hue-emerald: #1F6F4B;--hue-amber: #C9821E;--hue-amber-soft: #FFF4DD;--hue-crimson: #B33530;--hue-indigo: #2A3B7A;--hue-sky: #3F7592;--hue-plum: #5E2C5C}.hero h1 .accent:after{background:var(--accent);opacity:.18}a,a:hover,.lnk,.lnk:hover,.lnk-underline,.lnk-arrow,.lnk-arrow:hover,.lnk-ghost,.lnk-ghost:hover,.footer li a,.footer li a:hover,.md-content a,.md-content a:hover{text-decoration:none}a.btn,a.btn:hover,a.btn:focus,a.btn:visited,.btn,.btn:hover{text-decoration:none;text-decoration-line:none}a.btn,a.btn:visited{color:inherit}a.btn-primary,a.btn-primary:hover,a.btn-primary:visited{color:#faf9f7}a.btn-secondary,a.btn-secondary:hover,a.btn-secondary:visited{color:var(--ink)}a.btn-ghost,a.btn-ghost:hover,a.btn-ghost:visited{color:var(--ink-2)}a.btn-destructive,a.btn-destructive:hover,a.btn-destructive:visited{color:var(--char-2)}a:hover,.lnk:hover,.lnk-arrow:hover,.md-content a{color:var(--accent)}.md-content a:hover{color:var(--accent-2)}button.lnk,button.lnk-ghost,button.lnk-arrow,button.lnk-underline{background:transparent;border:0;padding:0;font:inherit;cursor:pointer;color:inherit}button.lnk-ghost{color:var(--ink-3)}button.lnk-ghost:hover{color:var(--accent)}.row-action{width:26px;height:26px;padding:0;display:inline-grid;place-items:center;background:transparent;border:1px solid transparent;border-radius:6px;color:var(--ink-4);font:inherit;font-size:16px;line-height:1;cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease}.row-action:hover{background:var(--bg-2);color:var(--ink);border-color:var(--line)}.row-action:focus-visible{outline:none;box-shadow:var(--ring-focus)}.badge-pending .dot{background:var(--status-pending-bd)}.badge-sent .dot{background:var(--status-sent-fg)}.app-shell{min-height:100vh;background:var(--bg)}.container{max-width:1280px;margin:0 auto;padding:0 24px}.stack{display:flex;flex-direction:column;gap:16px}.stack-lg{display:flex;flex-direction:column;gap:28px}.row-between{display:flex;align-items:center;justify-content:space-between;gap:16px}.row-gap{display:flex;align-items:center;gap:12px}.muted{color:var(--ink-3)}.mono{font-family:var(--font-mono)}.right{text-align:right}.landing-page section{padding:80px 56px;border-bottom:1px solid var(--line)}.landing-page section:last-of-type{border-bottom:0}.landing-page section h2{font-family:var(--font-display);font-weight:600;font-size:40px;letter-spacing:-.025em;margin:0 0 16px}.landing-page section .sub-lede{color:var(--ink-3);font-size:16px;max-width:620px;margin-bottom:36px}.feature-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.feature-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:24px;box-shadow:var(--shadow-sm)}.feature-card .num{font-family:var(--font-mono);font-size:11px;color:var(--ink-4);letter-spacing:.08em}.feature-card h3{margin:8px 0 4px;font-size:18px;font-weight:600;letter-spacing:-.01em}.feature-card p{font-size:14px;color:var(--ink-3);margin:0}.icon-tile{width:38px;height:38px;border-radius:10px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;flex:0 0 38px;margin-bottom:14px}.icon-tile.muted{background:var(--bg-2);color:var(--ink-3)}.icon-tile.lg{width:44px;height:44px;flex:0 0 44px;border-radius:12px}.step-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:24px;position:relative;box-shadow:var(--shadow-sm)}.step-card .step-num{position:absolute;top:16px;right:20px;font-family:var(--font-mono);font-size:11px;color:var(--ink-4);letter-spacing:.08em}.step-card h3{margin:4px 0 6px;font-size:18px;font-weight:600;letter-spacing:-.01em}.step-card p{font-size:14px;color:var(--ink-3);margin:0}.format-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:16px 18px;display:flex;align-items:center;gap:12px;box-shadow:var(--shadow-sm);transition:border-color .15s ease,transform .15s ease}.format-card:hover{border-color:var(--ink-4);transform:translateY(-1px)}.format-card .icon-tile{margin-bottom:0}.format-card .label{font-weight:600;font-size:14.5px;letter-spacing:-.005em}.format-card .sub{font-size:12px;color:var(--ink-4);margin-top:2px}.format-card .text{display:flex;flex-direction:column;min-width:0}.sec-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:22px;box-shadow:var(--shadow-sm)}.sec-card h3{margin:8px 0 4px;font-size:16px;font-weight:600;letter-spacing:-.005em}.sec-card p{margin:0;font-size:13.5px;color:var(--ink-3);line-height:1.55}.pricing-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.pricing-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:24px;display:flex;flex-direction:column;gap:10px;box-shadow:var(--shadow-sm);position:relative}.pricing-card.featured{border-color:var(--accent);box-shadow:var(--shadow-md)}.pricing-card.featured:before{content:"Most popular";position:absolute;top:-10px;left:24px;background:var(--accent);color:#fff;font-size:10.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:3px 10px;border-radius:var(--r-pill)}.pricing-card .tier{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-4);font-weight:500}.pricing-card .price{font-family:var(--font-display);font-size:36px;font-weight:600;letter-spacing:-.025em;display:flex;align-items:baseline;gap:6px}.pricing-card .price small{font-family:var(--font-sans);font-size:13px;color:var(--ink-3);font-weight:400}.pricing-card .desc{font-size:13.5px;color:var(--ink-3);margin:0 0 4px}.pricing-card ul{list-style:none;padding:0;margin:6px 0 18px;display:flex;flex-direction:column;gap:8px}.pricing-card ul li{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--ink-2)}.pricing-card ul li svg{color:var(--accent)}.pricing-card .cta{margin-top:auto}.cta-band{background:var(--char-3);color:#f6f5f1;border-radius:var(--r-xl);padding:56px;display:grid;grid-template-columns:1.4fr auto;gap:36px;align-items:center;position:relative;overflow:hidden;margin:0 56px}.cta-band h2{font-family:var(--font-display);font-weight:600;font-size:36px;letter-spacing:-.025em;margin:0 0 8px;color:#faf9f7}.cta-band p{color:#c8c5bd;margin:0;max-width:540px;font-size:15.5px;line-height:1.5}.cta-band .actions{display:flex;gap:12px;flex-wrap:wrap}.cta-band .btn.btn-primary{background:#faf9f7;color:var(--ink);box-shadow:none}.cta-band .btn.btn-primary:hover{background:#fff;color:var(--accent-2)}.cta-band .btn.btn-ghost{color:#d6d3cd}.cta-band .btn.btn-ghost:hover{color:#faf9f7;background:#ffffff14}.cta-band .grid-bg{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:32px 32px;pointer-events:none;mask-image:radial-gradient(circle at 80% 50%,black,transparent 75%)}.cta-band>*{position:relative}@media (max-width: 760px){.cta-band{grid-template-columns:1fr;padding:40px 28px;margin:0 16px}}.faq{display:flex;flex-direction:column;gap:4px}.faq details{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:16px 18px}.faq details+details{margin-top:8px}.faq summary{cursor:pointer;font-weight:500;font-size:15px;list-style:none;display:flex;justify-content:space-between;align-items:center}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";font-size:18px;color:var(--ink-3)}.faq details[open] summary:after{content:"−"}.faq p{color:var(--ink-3);margin:12px 0 0;font-size:14px}.auth-page{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-card{width:100%;max-width:440px}.auth-tabs{display:flex;border-bottom:1px solid var(--line);margin-bottom:24px}.auth-tabs button{background:transparent;border:0;font:inherit;font-size:14px;padding:12px 16px;cursor:pointer;color:var(--ink-3);border-bottom:2px solid transparent}.auth-tabs button.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:500}.pw-strength{height:4px;background:var(--bg-2);border-radius:4px;overflow:hidden;margin-top:4px}.pw-strength>div{height:100%;transition:width .2s ease,background .2s ease}.dash-layout{--sidebar-w: 220px;display:grid;grid-template-columns:var(--sidebar-w) 1fr;min-height:100vh;transition:grid-template-columns .22s cubic-bezier(.16,1,.3,1)}.dash-layout.collapsed{--sidebar-w: 72px}.dash-sidebar{background:linear-gradient(180deg,var(--surface) 0%,var(--surface-2) 100%);border-right:1px solid var(--line);padding:22px 14px 18px;position:sticky;top:0;height:100vh;max-height:100vh;align-self:start;display:flex;flex-direction:column;overflow-x:hidden;overflow-y:auto;transition:padding .22s ease;box-shadow:inset -1px 0 #0f111505}.dash-layout.collapsed .dash-sidebar{padding:22px 10px 14px}.dash-sidebar::-webkit-scrollbar{width:6px}.dash-sidebar::-webkit-scrollbar-thumb{background:#0f111514;border-radius:3px}.dash-sidebar::-webkit-scrollbar-thumb:hover{background:#0f11152e}.dash-sidebar .brand{display:flex;align-items:center;gap:10px;margin-bottom:22px;font-weight:600;white-space:nowrap;letter-spacing:-.005em}.dash-sidebar .brand .name{transition:opacity .15s ease;font-size:15px}.dash-sidebar .brand-toggle{margin-left:auto}.dash-layout.collapsed .dash-sidebar .brand{flex-direction:column;align-items:center;gap:8px;margin-bottom:18px}.dash-layout.collapsed .dash-sidebar .brand .name{display:none}.dash-layout.collapsed .dash-sidebar .brand-toggle{margin-left:0}.dash-sidebar .brand-mark{width:32px;height:32px;background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.18),transparent 55%),linear-gradient(135deg,var(--char-1) 0%,var(--char-2) 100%);border-radius:9px;display:grid;place-items:center;color:#faf9f7;font-weight:700;font-size:15px;flex:0 0 32px;box-shadow:0 1px #ffffff2e inset,0 4px 10px -3px #2a3b7a59}.dash-sidebar .nav-group-label{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-4);font-weight:600;padding:14px 12px 6px;white-space:nowrap}.dash-layout.collapsed .dash-sidebar .nav-group-label{font-size:0;padding:8px 0;position:relative;height:1px;align-self:stretch}.dash-layout.collapsed .dash-sidebar .nav-group-label:after{content:"";display:block;height:1px;width:24px;margin:4px auto;background:var(--line)}.dash-sidebar nav{display:flex;flex-direction:column;gap:4px}.dash-sidebar nav .nav-group{display:flex;flex-direction:column;gap:1px}.dash-layout.collapsed .dash-sidebar nav .nav-group{align-items:center}.dash-sidebar nav a{position:relative;display:flex;align-items:center;gap:11px;padding:9px 12px;border-radius:8px;font-size:13.5px;font-weight:500;color:var(--ink-2);text-decoration:none;white-space:nowrap;transition:background .16s ease,color .16s ease,transform .12s ease}.dash-sidebar nav a img,.dash-sidebar nav a svg{opacity:.7;transition:opacity .16s ease,color .16s ease;flex:0 0 18px}.dash-sidebar nav a:hover{background:var(--bg-2);color:var(--ink)}.dash-sidebar nav a:hover img,.dash-sidebar nav a:hover svg{opacity:1}.dash-sidebar nav a.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.dash-sidebar nav a.active:before{content:"";position:absolute;left:-6px;top:8px;bottom:8px;width:3px;border-radius:0 2px 2px 0;background:var(--accent)}.dash-sidebar nav a.active img,.dash-sidebar nav a.active svg{opacity:1;color:var(--accent)}.dash-sidebar nav a .label{transition:opacity .15s ease}.dash-layout.collapsed .dash-sidebar nav{align-items:center}.dash-layout.collapsed .dash-sidebar nav a{justify-content:center;padding:10px;width:44px;position:relative}.dash-layout.collapsed .dash-sidebar nav a .label{display:none}.dash-layout.collapsed .dash-sidebar nav a.active:before{left:-10px;top:6px;bottom:6px}.dash-sidebar .spacer{flex:1}.dash-sidebar .user-chip{display:flex;align-items:center;gap:10px;padding:8px 10px;background:var(--surface);border:1px solid var(--line);border-radius:10px;margin-bottom:10px;min-width:0}.dash-sidebar .user-chip .avatar{width:28px;height:28px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font-weight:600;font-size:12px;flex:0 0 28px;text-transform:uppercase}.dash-sidebar .user-chip .who{display:flex;flex-direction:column;min-width:0}.dash-sidebar .user-chip .who .who-name{font-size:12.5px;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dash-sidebar .user-chip .who .who-email{font-size:11px;color:var(--ink-4);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dash-layout.collapsed .dash-sidebar .user-chip{padding:0;border:0;background:transparent;justify-content:center}.dash-layout.collapsed .dash-sidebar .user-chip .who{display:none}.dash-sidebar .user-email{font-size:12px;color:var(--ink-4);margin-bottom:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dash-layout.collapsed .dash-sidebar .user-email{display:none}.dash-sidebar .sidebar-bottom{display:flex;flex-direction:column;gap:4px}.dash-layout.collapsed .dash-sidebar .sidebar-bottom{align-items:center}.sidebar-toggle{width:28px;height:28px;background:transparent;border:1px solid var(--line);border-radius:6px;color:var(--ink-3);cursor:pointer;display:grid;place-items:center;flex:0 0 28px;transition:background .12s ease,border-color .12s ease,color .12s ease,transform .18s ease}.sidebar-toggle:hover{background:var(--bg-2);border-color:var(--line-strong);color:var(--ink)}.sidebar-toggle:focus-visible{outline:none;box-shadow:var(--ring-focus)}.sidebar-resize-handle{position:absolute;top:0;bottom:0;right:-6px;width:12px;cursor:ew-resize;z-index:4;background:transparent;touch-action:none}.sidebar-resize-handle:after{content:"";position:absolute;top:50%;left:50%;width:2px;height:36px;margin:-18px 0 0 -1px;background:var(--line);border-radius:1px;opacity:0;transition:opacity .15s ease,background .15s ease}.sidebar-resize-handle:hover:after,body.is-resizing-ew .sidebar-resize-handle:after{opacity:1;background:var(--accent)}body.is-resizing-ew{cursor:ew-resize!important;user-select:none}body.is-resizing-ew *{cursor:ew-resize!important}.dash-main{width:100%;max-width:1440px;margin:0 auto;padding:36px 56px 96px;transition:padding .22s ease}@media (max-width: 1100px){.dash-main{padding:28px 32px 80px}}@media (max-width: 720px){.dash-main{padding:20px 16px 64px}}.dash-topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.file-drop-lg{padding:48px 24px;gap:12px;border-radius:var(--r-lg)}.file-drop-lg .file-icon{width:48px;height:48px;border-radius:12px;margin-bottom:8px}.file-drop-lg h3{margin:0;font-size:18px;font-weight:600;letter-spacing:-.01em}.file-drop-lg p{color:var(--ink-3);margin:0 0 8px;font-size:14px;max-width:380px;text-align:center}.file-drop.active,.file-drop-lg.active{border-color:var(--accent);background:var(--accent-soft)}.file-drop.active .file-icon,.file-drop-lg.active .file-icon{border-color:var(--accent);color:var(--accent)}.upload-list{display:flex;flex-direction:column;gap:8px;margin-top:16px}.upload-list .row{display:flex;align-items:center;gap:12px;padding:10px 14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md)}.upload-list .name{flex:1;font-size:13.5px}.upload-list .progress{width:120px;height:6px;background:var(--bg-2);border-radius:3px;overflow:hidden}.upload-list .progress>div{height:100%;background:var(--accent);transition:width .2s ease}.upload-list .status{font-size:12px;color:var(--ink-3);white-space:nowrap}.create-page .create-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,460px);gap:24px;align-items:start}@media (max-width: 1180px){.create-page .create-grid{grid-template-columns:1fr}}.create-page .card-section-title{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-4);margin:0 0 12px;font-weight:600}.field-label,.create-page .field-label{display:block;font-size:12px;color:var(--ink-3);margin-bottom:6px;font-weight:500}.create-page .theme-picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px}.create-page .theme-swatch{display:flex;flex-direction:column;align-items:stretch;padding:0;background:var(--surface);border:1.5px solid var(--line);border-radius:var(--r-md);cursor:pointer;overflow:hidden;text-align:left;transition:border-color .12s ease,transform .12s ease,box-shadow .12s ease}.create-page .theme-swatch:hover{border-color:var(--ink-4);transform:translateY(-1px)}.create-page .theme-swatch.active{border-color:var(--accent);box-shadow:0 0 0 3px #2a3b7a26}.create-page .theme-swatch-band{height:16px;background:var(--accent);transition:background .12s ease}.create-page .theme-swatch-body{padding:8px 10px;display:flex;flex-direction:column}.create-page .theme-swatch-body strong{font-size:13px;color:var(--ink)}.create-page .theme-swatch-body small{font-size:11px;color:var(--ink-3)}.create-page .accent-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.create-page .accent-dot{width:28px;height:28px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0;transition:transform .12s ease,border-color .12s ease}.create-page .accent-dot:hover{transform:scale(1.08)}.create-page .accent-dot.active{border-color:var(--ink);box-shadow:inset 0 0 0 2px var(--surface)}.create-page .accent-picker{width:28px;height:28px;border:1.5px dashed var(--line-strong);border-radius:50%;background:var(--surface);cursor:pointer;padding:0}.settings-page .settings-header{margin-bottom:4px}.settings-page .settings-header h1{margin:0;font-size:28px;letter-spacing:-.025em}.settings-page .settings-header p.muted{margin:4px 0 0;font-size:14px}.settings-page .settings-card-head{margin:-4px 0 16px}.settings-page .settings-card-head h3{margin:0;font-size:17px;letter-spacing:-.015em}.settings-page .settings-card-head p.muted{margin:4px 0 0;font-size:13px;color:var(--ink-3)}.settings-page .settings-danger{border-color:#b3353073;background:linear-gradient(180deg,var(--surface),var(--surface))}.settings-page .settings-danger .settings-card-head h3{color:var(--hue-crimson)}.settings-page .pw-meter{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-top:6px}.settings-page .pw-meter span{display:block;height:4px;border-radius:2px;background:var(--bg-2);transition:background .18s ease}.settings-page .pw-meter[data-score="1"] span:nth-child(-n+1),.settings-page .pw-meter[data-score="2"] span:nth-child(-n+2),.settings-page .pw-meter[data-score="3"] span:nth-child(-n+3),.settings-page .pw-meter[data-score="4"] span:nth-child(-n+4){background:var(--accent)}.settings-page .pw-meter[data-score="1"] span:nth-child(-n+1){background:var(--hue-crimson)}.settings-page .pw-meter[data-score="2"] span:nth-child(-n+2){background:var(--hue-amber)}.settings-page .pw-meter[data-score="3"] span:nth-child(-n+3){background:var(--accent)}.settings-page .pw-meter[data-score="4"] span:nth-child(-n+4){background:var(--hue-emerald)}.client-form{display:flex;flex-direction:column;gap:20px;margin-top:2px}.client-form section{display:flex;flex-direction:column;gap:12px}.client-form section+section{border-top:1px solid var(--line);padding-top:18px}.client-form h4{margin:0;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-4);font-weight:600}.client-form .section-head p.muted,.client-form>section>p.muted{font-size:12.5px;margin:0;color:var(--ink-3)}.client-form .form-grid{gap:12px 16px}.client-form textarea.input{width:100%;font-family:inherit;font-size:13.5px;line-height:1.45;padding:10px 12px}.row-menu{position:relative;display:inline-block}.row-menu-trigger{width:28px;height:28px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--ink-3);cursor:pointer;display:inline-grid;place-items:center;transition:background .12s ease,border-color .12s ease,color .12s ease}.row-menu-trigger:hover{background:var(--bg-2);border-color:var(--line);color:var(--ink)}.row-menu-trigger:focus-visible{outline:none;box-shadow:var(--ring-focus)}.row-menu-pop{position:absolute;top:calc(100% + 4px);right:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-lg);padding:4px;min-width:180px;z-index:50;animation:dropdown-pop .14s cubic-bezier(.16,1,.3,1) both}.row-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;background:transparent;border:0;border-radius:6px;font:inherit;font-size:13px;color:var(--ink-2);cursor:pointer;text-align:left;transition:background .1s ease,color .1s ease}.row-menu-item:hover:not(:disabled){background:var(--bg-2);color:var(--ink)}.row-menu-item:disabled{opacity:.5;cursor:not-allowed}.row-menu-item.danger{color:var(--hue-crimson)}.row-menu-item.danger:hover:not(:disabled){background:#b3353014}.create-page .create-totals{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-md);padding:10px 14px;font-size:13px;line-height:1.6}.create-page .create-totals .row{display:flex;justify-content:space-between;align-items:baseline;color:var(--ink-3)}.create-page .create-totals .row.total{border-top:1px solid var(--line);margin-top:6px;padding-top:6px;color:var(--ink);font-size:15px;font-weight:600}.create-page .create-preview{position:sticky;top:16px;background:var(--surface-3);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;max-height:calc(100vh - 32px);display:flex;flex-direction:column}.create-page .create-preview .preview-scroll{flex:1;overflow:auto;padding:18px;background:var(--surface-3);cursor:grab;overscroll-behavior:contain;touch-action:pan-x pan-y;display:flex;flex-direction:column;align-items:center}.create-page .create-preview .preview-scroll.panning{cursor:grabbing;user-select:none}.create-page .preview-toolbar .zoom-hint{margin-left:10px;color:var(--ink-4);font-size:11.5px}@media (max-width: 1180px){.create-page .create-preview{position:static;max-height:none}}.invoice-preview{user-select:text}.workflow-steps{display:flex;align-items:stretch;gap:0;list-style:none;margin:0 0 4px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-sm)}.workflow-steps .step{flex:1;display:flex;align-items:flex-start;gap:12px;position:relative;padding:0 10px;min-width:0}.workflow-steps .step:first-child{padding-left:4px}.workflow-steps .step:last-child{padding-right:4px}.workflow-steps .step-marker{flex:0 0 30px;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-weight:600;font-size:13px;background:var(--bg-2);color:var(--ink-3);border:1.5px solid var(--line);transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease}.workflow-steps .step .step-dot{width:6px;height:6px;border-radius:50%;background:var(--ink-4)}.workflow-steps .step .step-spinner{width:14px;height:14px;border-radius:50%;border:2px solid var(--accent-soft);border-top-color:var(--accent);animation:step-spin .85s linear infinite}@keyframes step-spin{to{transform:rotate(360deg)}}.workflow-steps .step-body{display:flex;flex-direction:column;gap:2px;min-width:0}.workflow-steps .step-num{font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-4)}.workflow-steps .step-label{font-size:13.5px;font-weight:500;color:var(--ink);display:inline-flex;align-items:center;gap:6px}.workflow-steps .step-sub{font-size:12px;color:var(--ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workflow-steps .step-connector{position:absolute;top:14px;right:-10px;width:20px;height:2px;background:var(--line);border-radius:1px;transition:background .25s ease}.workflow-steps .step.state-done .step-marker{background:var(--accent);border-color:var(--accent);color:#faf9f7}.workflow-steps .step.state-done+.step .step-connector,.workflow-steps .step.state-done .step-connector{background:var(--accent)}.workflow-steps .step.state-active .step-marker{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.workflow-steps .step.state-failed .step-marker{background:var(--hue-crimson);border-color:var(--hue-crimson);color:#fff1f0}.workflow-steps .step.state-failed .step-label{color:var(--hue-crimson)}.workflow-steps .step.state-pending .step-marker{opacity:.85}.workflow-steps .step.state-pending .step-label{color:var(--ink-3);font-weight:500}@media (max-width: 900px){.workflow-steps{flex-direction:column;gap:12px;padding:14px}.workflow-steps .step{padding:0}.workflow-steps .step-connector{display:none}}.detail-grid{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(360px,1fr);gap:24px}@media (max-width: 1100px){.detail-grid{grid-template-columns:1fr}}.preview-pane{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;position:sticky;top:16px;align-self:start;height:calc(100vh - 32px);max-height:calc(100vh - 32px);min-height:540px;display:flex;flex-direction:column}@media (max-width: 1100px){.preview-pane{position:static;height:auto;max-height:none;min-height:600px}}.preview-pane>header{padding:12px 16px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.preview-pane>.body{flex:1;display:grid;place-items:stretch;background:var(--surface-3);overflow:hidden}.preview-pane .preview-scroll{width:100%;height:100%;min-height:540px;overflow:auto;display:flex;flex-direction:column;align-items:center;padding:12px;gap:12px;background:var(--surface-3);cursor:grab;overscroll-behavior:contain;touch-action:pan-x pan-y}.preview-pane .preview-scroll.panning{cursor:grabbing;user-select:none}.preview-pane .preview-scroll.panning *{pointer-events:none}.preview-pane .preview-scroll img{display:block;max-width:none;height:auto;border:0;box-shadow:0 8px 24px -10px #00000040}.preview-pane .preview-scroll.pdf{padding:16px 8px;gap:16px}.pdf-canvas-wrap,.pdf-canvas-host{display:flex;flex-direction:column;align-items:center;gap:16px;width:100%}.pdf-canvas-host .pdf-page{background:#fff;box-shadow:0 10px 28px -12px #00000047,0 2px 6px -2px #0000001f;border-radius:4px;display:block}.preview-pane{position:relative}.preview-pane .preview-resize-handle{position:absolute;top:0;bottom:0;left:-6px;width:12px;cursor:ew-resize;z-index:4;background:transparent;touch-action:none}.preview-pane .preview-resize-handle:after{content:"";position:absolute;top:50%;left:50%;width:2px;height:36px;margin:-18px 0 0 -1px;background:var(--line);border-radius:1px;opacity:0;transition:opacity .15s ease,background .15s ease}.preview-pane .preview-resize-handle:hover:after,body.is-resizing-ew .preview-pane .preview-resize-handle:after{opacity:1;background:var(--accent)}.preview-toolbar{display:flex;align-items:center;justify-content:center;gap:4px;padding:6px 8px;border-bottom:1px solid var(--line);background:var(--surface)}.preview-toolbar .zoom-btn,.preview-toolbar .zoom-level{border:1px solid var(--line);background:var(--surface);color:var(--ink-2);border-radius:6px;font-size:13px;font-variant-numeric:tabular-nums;padding:0 8px;height:26px;min-width:28px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .12s ease,border-color .12s ease,color .12s ease,transform .1s ease}.preview-toolbar .zoom-btn:hover:not([disabled]),.preview-toolbar .zoom-level:hover{background:var(--bg-2);border-color:var(--line-strong);color:var(--ink)}.preview-toolbar .zoom-btn:active:not([disabled]){transform:scale(.96)}.preview-toolbar .zoom-btn[disabled]{opacity:.4;cursor:not-allowed}.preview-toolbar .zoom-level{min-width:52px;font-weight:500}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid .full{grid-column:1 / -1}.form-section-full{display:block}.form-section-full>*{width:100%}.line-items-table{width:100%;border-collapse:separate;border-spacing:8px 6px;font-size:13px;margin:4px -8px 8px}.line-items-table thead th{text-align:left;padding:4px 4px 8px;font-size:10.5px;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-4);border-bottom:1px solid var(--line)}.line-items-table thead th.right{text-align:right}.line-items-table tbody td{padding:2px 0;vertical-align:middle}.line-items-table tbody td input.input{width:100%;height:32px;padding:0 10px;font-size:13px}.line-items-table tbody td:first-child input.input{min-width:180px}.line-items-table tbody td.amount input.input{text-align:right;font-variant-numeric:tabular-nums}.line-items-table tbody td:last-child{width:36px;text-align:center;padding:0 0 0 4px}.line-items-table tbody tr+tr td{border-top:1px solid var(--line-soft, var(--line))}.line-items-table .row-action{width:28px;height:28px;margin:0 auto}.modal-back{position:fixed;inset:0;background:#14141273;display:grid;place-items:center;padding:24px;z-index:200}.modal-card{background:var(--surface);border-radius:var(--r-lg);width:100%;max-width:520px;box-shadow:var(--shadow-lg);padding:24px;max-height:calc(100vh - 48px);overflow-y:auto;display:flex;flex-direction:column}.modal-card.modal-sm{max-width:460px}.modal-card.modal-md{max-width:520px}.modal-card.modal-lg{max-width:640px}.modal-card h3{margin:0 0 6px;font-size:20px;font-weight:600;letter-spacing:-.015em}.modal-card .lead{color:var(--ink-3);font-size:14px;margin:0 0 18px;line-height:1.45}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}.toast-stack{position:fixed;top:20px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:10px;z-index:300;pointer-events:none;width:max-content;max-width:calc(100vw - 32px)}.toast-stack .toast{pointer-events:auto;display:inline-flex;align-items:center;gap:12px;padding:10px 14px;border-radius:var(--r-md);box-shadow:0 12px 28px -8px #00000038,0 4px 10px -4px #0000001f;font-size:13.5px;min-width:260px;max-width:420px;background:var(--ink);color:#faf9f7;border:1px solid rgba(255,255,255,.08);animation:toast-pop .24s cubic-bezier(.16,1,.3,1) both;transform-origin:top center;will-change:transform,opacity}.toast-stack .toast.leaving{animation:toast-fade .22s cubic-bezier(.4,0,1,1) forwards}@keyframes toast-pop{0%{opacity:0;transform:translateY(-12px) scale(.94)}60%{opacity:1;transform:translateY(2px) scale(1.015)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes toast-fade{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-10px) scale(.98)}}.toast-stack .toast .ico{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;flex:0 0 24px;background:#ffffff29;color:inherit;font-weight:600;font-size:13px;line-height:1}.toast-stack .toast .msg{flex:1;min-width:0;word-break:break-word}.toast-stack .toast .close{background:transparent;border:0;color:#ffffff8c;cursor:pointer;padding:0 4px;font-size:17px;line-height:1}.toast-stack .toast .close:hover{color:#faf9f7}.toast-stack .toast.tone-success{background:var(--hue-emerald);border-color:#ffffff1a}.toast-stack .toast.tone-danger{background:var(--hue-crimson);border-color:#ffffff1f}.toast-stack .toast.tone-info{background:var(--accent);border-color:#ffffff1a}.dropdown-select{position:relative;width:100%}.select-trigger{width:100%;height:40px;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-md);padding:0 4px 0 12px;display:flex;align-items:center;justify-content:space-between;gap:8px;font:inherit;font-size:13.5px;color:var(--ink);cursor:pointer;transition:border-color .12s ease,box-shadow .12s ease,background .12s ease;text-align:left}.select-trigger:hover:not([disabled]){border-color:var(--ink-4)}.dropdown-select.is-open .select-trigger,.select-trigger:focus-visible{outline:none;border-color:var(--ink);box-shadow:var(--ring-focus)}.dropdown-select.err-state .select-trigger{border-color:var(--hue-crimson);box-shadow:0 0 0 3px #b335302e}.select-trigger[disabled]{background:var(--bg-2);color:var(--ink-4);cursor:not-allowed}.select-trigger .select-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.select-trigger .select-label.placeholder{color:var(--ink-4);font-weight:400}.select-trigger .chev-slot{width:30px;height:30px;background:var(--ink);color:#faf9f7;border-radius:6px;display:grid;place-items:center;flex:0 0 30px;transition:transform .18s ease}.select-trigger .chev-slot.open{transform:rotate(180deg)}.dropdown-menu{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:100;max-height:320px;overflow-y:auto;padding:6px;min-width:0;animation:dropdown-pop .16s cubic-bezier(.16,1,.3,1);transform-origin:top center}@keyframes dropdown-pop{0%{opacity:0;transform:translateY(-4px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.menu-option{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;background:transparent;border:0;font:inherit;font-size:13.5px;padding:8px 10px;border-radius:6px;cursor:pointer;color:var(--ink-2);text-align:left}.menu-option:hover,.menu-option.focused{background:var(--bg-2);color:var(--ink)}.menu-option.selected{color:var(--ink)}.menu-option .opt-text{display:flex;flex-direction:column;min-width:0}.menu-option .opt-label{font-weight:500}.menu-option .opt-hint{font-size:12px;color:var(--ink-4)}.menu-option svg{color:var(--accent);flex:0 0 auto}.date-picker{position:relative;width:100%}.date-trigger{width:100%;height:40px;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-md);padding:0 8px 0 36px;display:flex;align-items:center;gap:8px;position:relative;font:inherit;font-size:13.5px;color:var(--ink);cursor:pointer;transition:border-color .12s ease,box-shadow .12s ease;text-align:left}.date-trigger .lead{position:absolute;left:12px;color:var(--ink-3);display:grid;place-items:center;pointer-events:none}.date-trigger .date-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.date-trigger .date-label.placeholder{color:var(--ink-4);font-weight:400}.date-trigger:hover:not([disabled]){border-color:var(--ink-4)}.date-picker.is-open .date-trigger,.date-trigger:focus-visible{outline:none;border-color:var(--ink);box-shadow:var(--ring-focus)}.date-trigger[disabled]{background:var(--bg-2);color:var(--ink-4);cursor:not-allowed}.date-picker.err-state .date-trigger{border-color:var(--hue-crimson);box-shadow:0 0 0 3px #b335302e}.date-trigger .clear-btn{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;color:var(--ink-4);cursor:pointer;flex:0 0 22px;transition:background .12s ease,color .12s ease}.date-trigger .clear-btn:hover{background:var(--bg-2);color:var(--ink)}.date-popover{position:absolute;top:calc(100% + 6px);left:0;z-index:100;width:288px;padding:12px;animation:dropdown-pop .16s cubic-bezier(.16,1,.3,1);transform-origin:top left}.cal-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.cal-month{flex:1;text-align:center;font-weight:600;font-size:14px;letter-spacing:-.005em}.cal-nav{width:28px;height:28px;background:transparent;border:1px solid var(--line);border-radius:6px;color:var(--ink-3);cursor:pointer;display:grid;place-items:center;transition:background .12s ease,border-color .12s ease,color .12s ease}.cal-nav:hover{background:var(--bg-2);border-color:var(--line-strong);color:var(--ink)}.cal-weekdays,.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.cal-weekdays{margin-bottom:4px}.cal-weekdays span{height:22px;display:grid;place-items:center;font-size:10.5px;color:var(--ink-4);font-weight:500;letter-spacing:.04em;text-transform:uppercase}.cal-day{height:32px;background:transparent;border:0;border-radius:6px;font:inherit;font-size:13px;color:var(--ink);cursor:pointer;display:grid;place-items:center;transition:background .12s ease,color .12s ease,border-color .12s ease;font-feature-settings:"tnum"}.cal-day:hover:not(:disabled):not(.selected){background:var(--bg-2)}.cal-day.other{color:var(--ink-5)}.cal-day.today{box-shadow:inset 0 0 0 1px var(--accent);color:var(--accent);font-weight:600}.cal-day.selected{background:var(--accent);color:#faf9f7;font-weight:600;box-shadow:none}.cal-day.selected:hover{background:var(--accent-2);color:#faf9f7}.cal-day.disabled,.cal-day:disabled{color:var(--ink-5);cursor:not-allowed;opacity:.5}.cal-footer{margin-top:10px;padding-top:10px;border-top:1px solid var(--line);display:flex;gap:8px;justify-content:space-between}.cal-link{background:transparent;border:0;font:inherit;font-size:12.5px;color:var(--ink-3);cursor:pointer;padding:4px 8px;border-radius:6px}.cal-link:hover{background:var(--bg-2);color:var(--ink)}.empty-state{text-align:center;padding:64px 24px;color:var(--ink-3)}.empty-state h3{color:var(--ink);margin:0 0 8px;font-size:18px}.skeleton{background:linear-gradient(90deg,var(--bg-2) 0,var(--surface-2) 50%,var(--bg-2) 100%);background-size:200% 100%;animation:shimmer 1.4s linear infinite;border-radius:var(--r-md)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.md-content h1{font-size:32px;font-weight:600;letter-spacing:-.025em;margin:24px 0 12px}.md-content h2{font-size:22px;font-weight:600;margin:20px 0 8px}.md-content h3{font-size:17px;font-weight:600;margin:18px 0 6px}.md-content p,.md-content li{color:var(--ink-2);font-size:15px;line-height:1.6}.md-content ul{padding-left:22px}.md-content code{background:var(--bg-2);padding:2px 6px;border-radius:4px;font-family:var(--font-mono);font-size:13px}.filter-row{display:flex;flex-wrap:wrap;gap:12px;align-items:stretch;margin-bottom:16px}.filter-row>.field{flex:1 1 240px;min-width:240px}.filter-row>.field .input{width:100%}.filter-row .filter-status{flex:0 0 180px;min-width:180px}.filter-row .filter-date{flex:0 0 170px;min-width:170px}.filter-row>button:last-child{margin-left:auto;align-self:center}@media (max-width: 640px){.filter-row>.field,.filter-row .filter-status,.filter-row .filter-date{flex:1 1 100%;min-width:0}.filter-row>button:last-child{margin-left:0;align-self:flex-end}}.empty-state{display:flex;flex-direction:column;align-items:center;text-align:center}.empty-icon{display:inline-grid;place-items:center;width:56px;height:56px;border-radius:14px;background:var(--accent-soft);color:var(--accent);margin-bottom:14px}.titlebar .btn-mac-traffic{display:inline-block;cursor:pointer;box-shadow:inset 0 0 0 1px #00000014;transition:transform .12s ease,filter .12s ease}.titlebar .btn-mac-traffic:hover{transform:scale(1.08);filter:brightness(1.05)}.titlebar.in-card{margin:-20px -20px 14px;border-top-left-radius:var(--r-lg);border-top-right-radius:var(--r-lg)}.btn{transition:transform .08s ease,background .15s ease,box-shadow .15s ease,border-color .15s ease,color .15s ease}.btn:active:not([disabled]){transform:scale(.97)}.format-card,.step-card,.sec-card,.pricing-card{transition:transform .18s cubic-bezier(.16,1,.3,1),border-color .18s ease,box-shadow .18s ease}.format-card:hover,.step-card:hover,.sec-card:hover,.pricing-card:hover:not(.featured){transform:translateY(-2px);box-shadow:var(--shadow-md)}.dash-sidebar nav a{transition:background .16s ease,color .16s ease,transform .12s ease}.dash-sidebar nav a:active:not(.active){transform:scale(.98)}.row-action:active:not([disabled]),.sidebar-toggle:active:not([disabled]),.cal-nav:active:not([disabled]){transform:scale(.94)}.hero-illust{padding:0}.hero-illust .titlebar{border-radius:var(--r-xl) var(--r-xl) 0 0;margin:0}.hero-illust .illust-body{padding:18px 22px 22px;display:flex;flex-direction:column;gap:12px;flex:1}.preview-pane .titlebar{border-radius:0;border-bottom:1px solid var(--line)}.preview-pane>header{display:none}.alert.alert-success{border-color:#1f6f4b40}.alert.alert-success .ico{background:var(--hue-emerald);color:#f6fbf8}.alert.alert-warning{border-color:#c9821e4d}.alert.alert-warning .ico{background:var(--hue-amber-soft);color:var(--hue-amber);border:1.5px solid var(--hue-amber)}.alert.alert-danger{border-color:#b3353059}.alert.alert-danger .ico{background:var(--hue-crimson);color:#fff1f0}.alert.alert-info{border-color:#2a3b7a40}.alert.alert-info .ico{background:var(--accent-soft);color:var(--accent)}.verify-list{margin:8px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px}.verify-row{display:grid;grid-template-columns:14px auto 1fr;gap:8px;align-items:baseline;font-size:13px;line-height:1.45}.verify-dot{width:8px;height:8px;border-radius:50%;margin-top:6px;flex-shrink:0}.verify-high .verify-dot{background:var(--hue-crimson, #B33530)}.verify-medium .verify-dot{background:var(--hue-amber, #C9821E)}.verify-low .verify-dot{background:var(--ink-4, #8B96A3)}.verify-field{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;background:var(--bg-2);padding:1px 6px;border-radius:4px;color:var(--ink-2);white-space:nowrap}.verify-issue{color:var(--ink-2)}
