:root{--font-sans: "IBM Plex Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--text-micro: 10px;--text-caption: 11px;--text-small: 12px;--text-body: 13px;--text-base: 14px;--text-medium: 15px;--text-large: 16px;--text-title: 20px;--text-page: 22px;--font-regular: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--tracking-tight: -.02em;--tracking-snug: -.01em;--tracking-normal: 0;--tracking-wide: .04em;--tracking-wider: .06em;--tracking-widest: .08em;--leading-tight: 1.2;--leading-snug: 1.35;--leading-normal: 1.5;--leading-relaxed: 1.55;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 28px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--color-bg: #f6f7f9;--color-surface: #ffffff;--color-surface-hover: #f8f9fb;--color-surface-sunken: #f0f2f5;--color-surface-tint: #eef4f9;--color-border: #e4e7eb;--color-border-strong: #cdd3da;--color-text: #1a202c;--color-text-dim: #586172;--color-text-faint: #8a93a3;--color-text-inverse:#ffffff;--color-navy: #1a202c;--color-navy-soft: #2d3748;--color-navy-line: #2d3748;--color-nav-link: #cbd5e1;--color-brand: #b91c1c;--color-brand-light: #dc2626;--color-brand-dark: #991b1b;--gradient-brand: linear-gradient(135deg, var(--color-brand-light) 0%, var(--color-brand-dark) 100%);--shadow-brand-glow: 0 1px 2px rgba(185, 28, 28, .4);--color-brand-blue: #1A5FA8;--color-accent: #0e7490;--color-accent-dark: #155e75;--color-accent-soft: #cffafe;--color-accent-ring: rgba(14, 116, 144, .2);--color-good: #047857;--color-good-bg: #d1fae5;--color-good-border: #6ee7b7;--color-bad: #b91c1c;--color-bad-bg: #fee2e2;--color-bad-border: #fca5a5;--color-warn: #b45309;--color-warn-bg: #fef3c7;--color-warn-border: #fcd34d;--color-inactive: #6b7280;--color-inactive-bg: #f3f4f6;--color-pos-blue-bg: #dbeafe;--color-pos-blue-text: #1e40af;--color-pos-red-bg: #fee2e2;--color-pos-red-text: #991b1b;--color-pos-purple-bg: #ede9fe;--color-pos-purple-text:#5b21b6;--color-pos-orange-bg: #ffedd5;--color-pos-orange-text:#9a3412;--color-pos-pink-bg: #fce7f3;--color-pos-pink-text: #9d174d;--color-pos-yellow-bg: #fef3c7;--color-pos-yellow-text:#92400e;--border-width: 1px;--border-width-thick: 2px;--border-width-accent: 3px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-pill: 999px;--shadow-sm: 0 1px 2px rgba(15, 23, 42, .04);--shadow-md: 0 4px 12px rgba(15, 23, 42, .06), 0 1px 3px rgba(15, 23, 42, .04);--shadow-lg: 0 20px 50px rgba(15, 23, 42, .18);--focus-ring: 0 0 0 3px var(--color-accent-ring);--status-dot-ring-good: 0 0 0 2px var(--color-good-bg);--status-dot-ring-bad: 0 0 0 2px var(--color-bad-bg);--transition-fast: .12s;--transition-base: .2s;--easing: ease;--header-height: 56px;--sidebar-width: 240px;--sidebar-width-collapsed: 64px;--input-h-sm: 32px;--input-h-md: 36px;--input-h-lg: 40px;--button-h-sm: 28px;--button-h-md: 32px;--button-h-lg: 40px;--page-max-width: 1600px;--page-pad-y: var(--space-6);--page-pad-x: var(--space-8);--card-pad: var(--space-6);--card-pad-tight: var(--space-4);--z-header: 100;--z-dropdown: 500;--z-modal: 1000;--z-toast: 2000}*{box-sizing:border-box}body{margin:0;font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4{font-weight:var(--font-semibold);color:var(--color-text);letter-spacing:var(--tracking-snug)}.mono,.cell-mono{font-family:var(--font-mono);font-feature-settings:"tnum" 1}.app{min-height:100vh;background:var(--color-bg);display:flex;align-items:stretch}.app-sidebar{width:var(--sidebar-width);flex-shrink:0;height:100vh;position:sticky;top:0;background:var(--color-navy);color:var(--color-text-inverse);border-right:var(--border-width) solid var(--color-navy-line);display:flex;flex-direction:column;z-index:var(--z-header);transition:width var(--transition-base) var(--easing)}.app-sidebar.is-collapsed{width:var(--sidebar-width-collapsed)}.sidebar-brand{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);height:var(--header-height);border-bottom:var(--border-width) solid var(--color-navy-line);overflow:hidden}.brand-logo{width:36px;height:36px;border-radius:var(--radius-lg);border:2px solid var(--color-brand-blue);background:var(--color-brand-blue);display:flex;flex-direction:column;overflow:hidden;flex-shrink:0}.brand-logo-top,.brand-logo-bottom{flex:1;display:flex;align-items:center;justify-content:center;font-family:var(--font-sans);line-height:1;letter-spacing:.04em}.brand-logo-top{background:var(--color-brand-blue);color:var(--color-text-inverse);font-weight:900;font-size:11px}.brand-logo-bottom{background:var(--color-surface);color:var(--color-brand-blue);font-weight:800;font-size:9px}.brand-name{display:flex;flex-direction:column;line-height:var(--leading-tight);white-space:nowrap;opacity:1;transition:opacity var(--transition-fast) var(--easing)}.app-sidebar.is-collapsed .brand-name{opacity:0;pointer-events:none}.brand-name .primary{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--color-text-inverse);letter-spacing:var(--tracking-snug)}.brand-name .secondary{font-family:var(--font-mono);font-size:var(--text-micro);font-weight:var(--font-medium);color:var(--color-accent-soft);text-transform:uppercase;letter-spacing:var(--tracking-widest);margin-top:2px}.sidebar-toggle{position:absolute;top:calc(var(--header-height) - 12px);right:-12px;width:24px;height:24px;border-radius:var(--radius-pill);background:var(--color-navy);color:var(--color-nav-link);border:var(--border-width) solid var(--color-navy-line);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;z-index:1;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.sidebar-toggle:hover{background:var(--color-accent);color:var(--color-text-inverse);border-color:var(--color-accent)}.sidebar-nav{flex:1;display:flex;flex-direction:column;gap:2px;padding:var(--space-3) var(--space-2);overflow-y:auto}.sidebar-footer{display:flex;flex-direction:column;gap:2px;padding:var(--space-3) var(--space-2);border-top:var(--border-width) solid var(--color-navy-line)}.sidebar-link{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-3);border-radius:var(--radius-md);color:var(--color-nav-link);text-decoration:none;font-family:inherit;font-size:var(--text-body);font-weight:var(--font-medium);background:transparent;border:none;cursor:pointer;width:100%;text-align:left;white-space:nowrap;position:relative;transition:background var(--transition-fast),color var(--transition-fast)}.sidebar-link:hover{background:var(--color-navy-soft);color:var(--color-text-inverse)}.sidebar-link.is-active{background:#0e74902e;color:var(--color-accent-soft)}.sidebar-link.is-active:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--color-accent);border-radius:0 var(--radius-sm) var(--radius-sm) 0;box-shadow:0 0 8px #0e749080}.sidebar-link-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0;transition:filter var(--transition-fast) var(--easing)}.sidebar-link.is-active .sidebar-link-icon{filter:brightness(1.35) saturate(1.2) drop-shadow(0 0 4px rgba(255,255,255,.15))}.sidebar-link-label{opacity:1;transition:opacity var(--transition-fast) var(--easing)}.app-sidebar.is-collapsed .sidebar-link{justify-content:center;padding:var(--space-2)}.app-sidebar.is-collapsed .sidebar-link-label{display:none}.sidebar-user{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);margin:var(--space-2) 0;border-top:var(--border-width) solid var(--color-navy-line);padding-top:var(--space-3);overflow:hidden}.sidebar-user-avatar{width:28px;height:28px;border-radius:var(--radius-pill);background:var(--color-navy-soft);color:var(--color-text-inverse);font-family:var(--font-mono);font-size:var(--text-small);font-weight:var(--font-semibold);display:flex;align-items:center;justify-content:center;flex-shrink:0}.sidebar-user-text{display:flex;flex-direction:column;line-height:var(--leading-tight);min-width:0}.sidebar-user-name{font-size:var(--text-small);font-weight:var(--font-medium);color:var(--color-text-inverse);overflow:hidden;text-overflow:ellipsis}.sidebar-user-email{font-family:var(--font-mono);font-size:var(--text-micro);color:var(--color-text-faint);overflow:hidden;text-overflow:ellipsis}.app-sidebar.is-collapsed .sidebar-user{justify-content:center;padding:var(--space-2)}.app-sidebar.is-collapsed .sidebar-user-text{display:none}main{flex:1;min-width:0;padding:var(--page-pad-y) var(--page-pad-x);max-width:var(--page-max-width)}.page-header{display:flex;align-items:center;justify-content:space-between;margin:0 0 var(--space-5);gap:var(--space-4)}.page-header h2{margin:0;font-size:var(--text-page);font-weight:var(--font-semibold);letter-spacing:var(--tracking-tight)}.page-header .subtitle{font-size:var(--text-body);color:var(--color-text-dim);margin-top:2px}.btn-primary,.btn-secondary{font-family:inherit;font-size:var(--text-body);font-weight:var(--font-medium);padding:0 var(--space-4);height:var(--button-h-md);border-radius:var(--radius-md);cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:var(--space-2);transition:background var(--transition-fast),border-color var(--transition-fast),opacity var(--transition-fast);line-height:1;white-space:nowrap}.btn-primary{background:var(--color-accent);color:var(--color-text-inverse);border:var(--border-width) solid var(--color-accent)}.btn-primary:hover{background:var(--color-accent-dark);border-color:var(--color-accent-dark)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--color-surface);color:var(--color-text);border:var(--border-width) solid var(--color-border-strong)}.btn-secondary:hover{background:var(--color-surface-hover)}.btn-danger{background:var(--color-bad-bg);color:var(--color-bad);border:var(--border-width) solid var(--color-bad-border)}.btn-danger:hover{background:var(--color-bad);color:var(--color-text-inverse);border-color:var(--color-bad)}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.toolbar{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3)}.search-input{flex:1;max-width:420px;height:var(--input-h-md);padding:0 var(--space-3);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-body);font-family:inherit;background:var(--color-surface);outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.search-input:focus{border-color:var(--color-accent);box-shadow:var(--focus-ring)}.result-count{color:var(--color-text-dim);font-size:var(--text-small);font-family:var(--font-mono);font-feature-settings:"tnum" 1}.toolbar-prefs{display:inline-flex;align-items:center;gap:var(--space-2);margin-left:auto}.column-toggle{position:relative}.layout-dropdown{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:var(--color-surface);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");background-repeat:no-repeat;background-position:right var(--space-2) center;background-size:12px 12px;height:var(--button-h-md);min-width:140px;padding:0 var(--space-6) 0 var(--space-3);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);font-family:inherit;font-size:var(--text-small);font-weight:var(--font-medium);color:var(--color-text);cursor:pointer;transition:background-color var(--transition-fast),border-color var(--transition-fast)}.layout-dropdown:hover{background-color:var(--color-surface-hover);border-color:var(--color-border-strong)}.layout-dropdown:focus-visible{outline:none;border-color:var(--color-accent);box-shadow:var(--focus-ring)}.column-toggle-button{display:inline-flex;align-items:center;justify-content:center;width:var(--button-h-md);height:var(--button-h-md);padding:0;border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);background:transparent;color:var(--color-text-faint);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.column-toggle-button:hover{background:var(--color-surface-hover);border-color:var(--color-border-strong);color:var(--color-text)}.column-toggle-button:focus-visible{outline:none;border-color:var(--color-accent);box-shadow:var(--focus-ring);color:var(--color-accent-dark)}.column-toggle-button[aria-expanded=true]{border-color:var(--color-accent);color:var(--color-accent-dark);background:var(--color-surface-hover)}.column-toggle-panel{z-index:var(--z-dropdown);min-width:240px;background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);overflow:hidden}.column-toggle-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:var(--border-width) solid var(--color-border)}.column-toggle-title{display:block;font-family:var(--font-mono);font-size:var(--text-caption);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:var(--tracking-widest);color:var(--color-text-dim)}.column-toggle-sub{display:block;margin-top:2px;font-size:var(--text-small);font-weight:var(--font-semibold);color:var(--color-text)}.column-toggle-show-all{background:transparent;border:none;padding:0;font-family:inherit;font-size:var(--text-small);color:var(--color-accent);cursor:pointer}.column-toggle-show-all:hover{color:var(--color-accent-dark);text-decoration:underline}.column-toggle-groups{list-style:none;margin:0;padding:0;max-height:360px;overflow-y:auto}.column-toggle-group+.column-toggle-group{border-top:var(--border-width) solid var(--color-border)}.column-toggle-group-head{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);transition:background var(--transition-fast)}.column-toggle-group-head:hover{background:var(--color-surface-hover)}.column-toggle-group-label{display:flex;align-items:center;gap:var(--space-2);flex:1;cursor:pointer;font-size:var(--text-body);color:var(--color-text);font-weight:var(--font-medium)}.column-toggle-group-label input[type=checkbox]{width:16px;height:16px;margin:0;accent-color:var(--color-accent);cursor:pointer;flex-shrink:0}.column-toggle-group-name{flex:1}.column-toggle-group-count{font-family:var(--font-mono);font-size:var(--text-caption);color:var(--color-text-faint);letter-spacing:var(--tracking-wide)}.column-toggle-group-expand{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;background:transparent;border:none;color:var(--color-text-faint);border-radius:var(--radius-sm);cursor:pointer;transition:color var(--transition-fast),background var(--transition-fast)}.column-toggle-group-expand:hover{color:var(--color-text);background:var(--color-surface-sunken)}.column-toggle-fields{list-style:none;margin:0;padding:0 0 var(--space-2);background:var(--color-surface-sunken)}.column-toggle-field{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-4) var(--space-1) var(--space-8);cursor:pointer;font-size:var(--text-body);color:var(--color-text-dim);transition:background var(--transition-fast),color var(--transition-fast)}.column-toggle-field:hover{background:var(--color-surface);color:var(--color-text)}.column-toggle-field input[type=checkbox]{width:14px;height:14px;margin:0;accent-color:var(--color-accent);cursor:pointer;flex-shrink:0}.column-toggle-saveas{padding:var(--space-3) var(--space-4);border-top:var(--border-width) solid var(--color-border);background:var(--color-surface-tint)}.column-toggle-saveas-label{display:block;font-family:var(--font-mono);font-size:var(--text-caption);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:var(--tracking-widest);color:var(--color-text-dim);margin-bottom:var(--space-2)}.column-toggle-saveas-row{display:flex;gap:var(--space-2)}.column-toggle-saveas-row input{flex:1;height:var(--input-h-sm);padding:0 var(--space-3);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-small);font-family:inherit;background:var(--color-surface);outline:none}.column-toggle-saveas-row input:focus{border-color:var(--color-accent);box-shadow:var(--focus-ring)}.column-toggle-saveas-row .btn-primary{height:var(--input-h-sm);padding:0 var(--space-3);font-size:var(--text-small)}.column-toggle-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-top:var(--border-width) solid var(--color-border);font-family:var(--font-mono);font-size:var(--text-caption);color:var(--color-text-faint)}.column-toggle-delete{display:inline-flex;align-items:center;justify-content:center;background:transparent;border:var(--border-width) solid transparent;color:var(--color-text-faint);padding:4px;border-radius:var(--radius-sm);cursor:pointer;transition:color var(--transition-fast),background var(--transition-fast)}.column-toggle-delete:hover{color:var(--color-bad);background:var(--color-bad-bg)}.table-wrap{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);overflow:auto;box-shadow:var(--shadow-sm)}.auto-populate-bar{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-3);margin-bottom:var(--space-4);background:var(--color-accent-soft);border:var(--border-width) solid var(--color-accent);border-radius:var(--radius-md)}.auto-populate-btn{display:inline-flex;align-items:center;gap:var(--space-1);flex-shrink:0}.auto-populate-hint{flex:1;font-size:var(--text-small);color:var(--color-accent-dark);line-height:var(--leading-snug)}.auto-populate-hint strong{color:var(--color-accent-dark)}.settings-card{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);padding:var(--card-pad);box-shadow:var(--shadow-sm);max-width:640px;margin-bottom:var(--space-4)}.settings-card-head h3{margin:0;font-size:var(--text-large)}.settings-card-sub{margin:var(--space-2) 0 var(--space-4);font-size:var(--text-small);color:var(--color-text-dim)}.fuel-brand-add{display:flex;gap:var(--space-2);margin-bottom:var(--space-4)}.fuel-brand-add input{flex:1;height:var(--input-h-md);padding:0 var(--space-3);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-body);background:var(--color-surface);outline:none}.fuel-brand-add input:focus{border-color:var(--color-accent);box-shadow:var(--focus-ring)}.fuel-brand-add .btn-sm{display:inline-flex;align-items:center;gap:var(--space-1)}.fuel-brand-list{display:flex;flex-direction:column;gap:var(--space-1)}.fuel-brand-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-3);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);font-size:var(--text-body)}.fuel-brand-row>input{flex:1;height:var(--input-h-sm);padding:0 var(--space-2);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--text-body);background:var(--color-surface);outline:none}.fuel-brand-row>input:focus{border-color:var(--color-accent);box-shadow:var(--focus-ring)}.fuel-brand-name{font-weight:var(--font-medium);color:var(--color-text)}.fuel-brand-actions{display:flex;gap:var(--space-1)}.fuel-brand-delete:not(:disabled){color:var(--color-bad);border-color:var(--color-bad-border)}.fuel-brand-delete:not(:disabled):hover{background:var(--color-bad-bg)}.contact-site-row{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:flex-end;margin-top:var(--space-3);padding-top:var(--space-3);border-top:var(--border-width) solid var(--color-border)}.contact-site-field{display:flex;flex-direction:column;gap:2px}.contact-site-field>span{font-size:var(--text-caption);text-transform:uppercase;letter-spacing:var(--tracking-wider);color:var(--color-text-dim);font-weight:var(--font-medium)}.contact-site-field input,.contact-site-field select{height:var(--input-h-sm);padding:0 var(--space-2);font-size:var(--text-body);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font-family:inherit;outline:none}.contact-site-field input:focus,.contact-site-field select:focus{border-color:var(--color-accent);box-shadow:var(--focus-ring)}.contact-site-field-pos{width:150px}.contact-site-field-site{width:110px}.contact-site-field-date{width:140px}.contact-site-field-xsite{width:160px}.contact-address-toggle{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-2)}.contact-address-toggle-btn{display:inline-flex;align-items:center;gap:var(--space-1);background:transparent;border:none;padding:var(--space-1) 0;cursor:pointer;font-family:inherit;font-size:var(--text-small);color:var(--color-accent);text-transform:uppercase;letter-spacing:var(--tracking-wider);font-weight:var(--font-medium)}.contact-address-toggle-btn:hover{color:var(--color-accent-dark);text-decoration:underline}.contact-address-input{flex:1;max-width:520px;height:var(--input-h-sm);padding:0 var(--space-2);font-size:var(--text-body);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font-family:inherit;outline:none}.contact-address-input:focus{border-color:var(--color-accent);box-shadow:var(--focus-ring)}.tab-toolbar{display:flex;justify-content:flex-end;margin-bottom:var(--space-3)}.btn-sm{height:var(--button-h-sm);padding:0 var(--space-3);font-size:var(--text-small)}th.th-filter-active{background:var(--color-accent-soft);color:var(--color-accent-dark);box-shadow:inset 0 -2px 0 var(--color-accent)}.th-label{display:inline-block;vertical-align:middle}.col-filter{display:inline-block;position:relative;margin-left:var(--space-1);vertical-align:middle}.col-filter-button{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:var(--radius-sm);border:var(--border-width) solid transparent;background:transparent;color:var(--color-text-faint);cursor:pointer;padding:0;position:relative;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.col-filter-button:hover{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border)}.col-filter-button.is-active{background:var(--color-accent);color:var(--color-text-inverse);border-color:var(--color-accent)}.col-filter-dot{position:absolute;top:-2px;right:-2px;width:6px;height:6px;border-radius:var(--radius-pill);background:var(--color-accent-dark);border:1px solid var(--color-surface)}.col-filter-panel{min-width:220px;max-width:280px;background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:var(--z-dropdown);font-family:var(--font-sans);text-transform:none;letter-spacing:0;font-size:var(--text-body);color:var(--color-text);font-weight:var(--font-regular)}.col-filter-head{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-3);border-bottom:var(--border-width) solid var(--color-border)}.col-filter-title{font-size:var(--text-caption);font-weight:var(--font-semibold);color:var(--color-text-dim);text-transform:uppercase;letter-spacing:var(--tracking-wider)}.col-filter-link{background:none;border:none;padding:0;cursor:pointer;font-size:var(--text-small);color:var(--color-accent);font-family:inherit}.col-filter-link:hover{color:var(--color-accent-dark);text-decoration:underline}.col-filter-search{width:calc(100% - var(--space-4));margin:var(--space-2) var(--space-2);height:var(--input-h-sm);padding:0 var(--space-2);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--text-small);font-family:inherit;background:var(--color-surface);color:var(--color-text);outline:none}.col-filter-search:focus{border-color:var(--color-accent);box-shadow:var(--focus-ring)}.col-filter-list{max-height:240px;overflow-y:auto;padding:var(--space-1) 0}.col-filter-option{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);cursor:pointer;font-size:var(--text-body);color:var(--color-text)}.col-filter-option:hover{background:var(--color-surface-hover)}.col-filter-option input[type=checkbox]{width:14px;height:14px;accent-color:var(--color-accent);cursor:pointer;flex-shrink:0}.col-filter-option span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.col-filter-empty{margin:0;padding:var(--space-3);color:var(--color-text-faint);font-size:var(--text-small);text-align:center}.col-filter-foot{padding:var(--space-2) var(--space-3);border-top:var(--border-width) solid var(--color-border);display:flex;justify-content:flex-end}.sftp-test-banner{margin:0 0 var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-body);border:var(--border-width) solid transparent}.sftp-test-banner code{font-family:var(--font-mono);font-size:var(--text-small)}.sftp-test-ok{background:var(--color-good-bg);color:var(--color-good);border-color:var(--color-good-border)}.sftp-test-fail{background:var(--color-bad-bg);color:var(--color-bad);border-color:var(--color-bad-border)}.sftp-browser{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5);box-shadow:var(--shadow-sm);margin-bottom:var(--space-4)}.sftp-browser-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}.sftp-browser-head h3{margin:0;font-size:var(--text-large)}.sftp-browser-sub{margin:2px 0 0;color:var(--color-text-dim);font-size:var(--text-small)}.sftp-browser-sub code{font-family:var(--font-mono)}.sftp-browser .btn-sm{display:inline-flex;align-items:center;gap:var(--space-1)}.sftp-folder{margin-top:var(--space-3);border-top:var(--border-width) solid var(--color-border);padding-top:var(--space-3)}.sftp-folder:first-of-type{border-top:none;padding-top:0;margin-top:0}.sftp-folder-head{display:flex;align-items:baseline;gap:var(--space-2);margin-bottom:var(--space-2)}.sftp-folder-head-clickable{cursor:pointer;align-items:center;-webkit-user-select:none;user-select:none;padding:var(--space-1) 0;border-radius:var(--radius-sm);transition:background var(--transition-fast)}.sftp-folder-head-clickable:hover{background:var(--color-surface-hover)}.sftp-toolbar{display:flex;align-items:flex-end;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-3);margin-bottom:var(--space-3);background:var(--color-surface-sunken);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md)}.sftp-toolbar-field{display:flex;flex-direction:column;gap:2px;font-size:var(--text-caption)}.sftp-toolbar-field>span{text-transform:uppercase;letter-spacing:var(--tracking-wider);color:var(--color-text-dim);font-weight:var(--font-medium)}.sftp-toolbar-field select{height:var(--input-h-sm);padding:0 var(--space-2);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--text-body);background:var(--color-surface);font-family:inherit}.sftp-toolbar-field select:focus{outline:none;border-color:var(--color-accent);box-shadow:var(--focus-ring)}.sftp-toolbar-sortlabel{align-self:center;font-size:var(--text-small);color:var(--color-text-dim);padding-bottom:2px}.sftp-toolbar-spacer{flex:1}.sftp-toolbar .btn-sm{display:inline-flex;align-items:center;gap:var(--space-1)}.sftp-delete-button:not(:disabled){color:var(--color-bad);border-color:var(--color-bad-border)}.sftp-delete-button:not(:disabled):hover{background:var(--color-bad-bg)}.sftp-row-check{width:28px;text-align:center;padding-left:var(--space-2)!important}.sftp-row-check input[type=checkbox]{width:14px;height:14px;accent-color:var(--color-accent);cursor:pointer}.sftp-delete-list{max-height:220px;overflow-y:auto;padding:var(--space-2) var(--space-3);background:var(--color-surface-sunken);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--text-small);margin-top:var(--space-3)}.sftp-delete-list>div{padding:2px 0;word-break:break-all}.sftp-folder-head h4{margin:0;font-size:var(--text-body);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:var(--tracking-wider);color:var(--color-text-dim)}.sftp-folder-count{font-size:var(--text-small);color:var(--color-text-dim)}.sftp-folder-count code{font-family:var(--font-mono)}.sftp-listing-table th,.sftp-listing-table td{padding:var(--space-1) var(--space-3);font-size:var(--text-small)}.subscription-form{display:flex;flex-direction:column}.subscription-grid{display:grid;grid-template-columns:160px 90px 120px 60px 90px;gap:var(--space-2) var(--space-3);align-items:center;margin-bottom:var(--space-4);width:max-content;max-width:100%}.subscription-grid-head,.subscription-grid-row{display:contents}.subscription-grid-head>div{font-size:var(--text-caption);font-weight:var(--font-medium);color:var(--color-text-dim);text-transform:uppercase;letter-spacing:var(--tracking-wider);padding-bottom:var(--space-1);border-bottom:var(--border-width) solid var(--color-border)}.subscription-grid-label{font-size:var(--text-body);font-weight:var(--font-medium);color:var(--color-text);display:flex;align-items:center;gap:var(--space-2)}.subscription-grid-label .badge{flex:0 0 auto;min-width:36px;text-align:center}.subscription-grid-label-text{flex:1 1 auto}.subscription-input{height:var(--input-h-sm);padding:0 var(--space-2);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--text-small);font-family:var(--font-mono);background:var(--color-surface);color:var(--color-text);outline:none;width:100%;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.subscription-input:focus{border-color:var(--color-accent);box-shadow:var(--focus-ring)}.subscription-input[type=number]::-webkit-outer-spin-button,.subscription-input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.subscription-input[type=number]{-moz-appearance:textfield}.subscription-section-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}.subscription-status-chip{display:inline-flex;align-items:center;gap:var(--space-2)}.subscription-status-chip-label{font-size:var(--text-caption);text-transform:uppercase;letter-spacing:var(--tracking-wider);color:var(--color-text-dim);font-weight:var(--font-medium)}.subscription-computed{height:var(--input-h-sm);display:inline-flex;align-items:center;justify-content:flex-end;padding:0 var(--space-2);border:var(--border-width) dashed var(--color-border);border-radius:var(--radius-sm);font-size:var(--text-small);background:var(--color-surface-sunken);color:var(--color-text-dim);width:100%;white-space:nowrap}.subscription-totals{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:var(--space-3);margin-top:var(--space-5);padding:var(--space-4) var(--space-5);background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.subscription-totals-item{display:flex;flex-direction:column;gap:var(--space-1);padding-right:var(--space-3);border-right:var(--border-width) solid var(--color-border)}.subscription-totals-item:last-child{border-right:none;padding-right:0}.subscription-totals-label{font-size:var(--text-caption);text-transform:uppercase;letter-spacing:var(--tracking-wider);color:var(--color-text-dim);font-weight:var(--font-medium)}.subscription-totals-value{font-size:var(--text-title);font-weight:var(--font-semibold);color:var(--color-text)}.subscription-totals-prominent .subscription-totals-value{font-size:26px;font-weight:var(--font-bold);color:var(--color-accent)}.price-increase-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-3) var(--space-4);background:var(--color-surface-sunken);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);margin-bottom:var(--space-4)}.price-increase-bar-meta{display:flex;flex-direction:column;gap:2px}.price-increase-bar-meta .form-field-label{font-size:var(--text-caption);text-transform:uppercase;letter-spacing:var(--tracking-wider);color:var(--color-text-dim);font-weight:var(--font-medium)}.lead-sub-grid{display:grid;grid-template-columns:220px 120px;gap:var(--space-2) var(--space-3);align-items:center;margin-bottom:var(--space-4);width:max-content;max-width:100%}.lead-sub-grid-head,.lead-sub-grid-row{display:contents}.lead-sub-grid-head>div{font-size:var(--text-caption);font-weight:var(--font-medium);color:var(--color-text-dim);text-transform:uppercase;letter-spacing:var(--tracking-wider);padding-bottom:var(--space-1);border-bottom:var(--border-width) solid var(--color-border)}.lead-sub-label{font-size:var(--text-body);color:var(--color-text);display:flex;align-items:center;gap:var(--space-2)}.lead-sub-label .badge{flex:0 0 auto;min-width:36px;text-align:center}.lead-sub-subtotal{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-3) var(--space-4);margin-top:var(--space-4);background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);width:max-content;max-width:100%}.lead-sub-subtotal-label{font-size:var(--text-caption);text-transform:uppercase;letter-spacing:var(--tracking-wider);color:var(--color-text-dim);font-weight:var(--font-medium);min-width:200px}.lead-sub-subtotal-value{font-size:var(--text-title);font-weight:var(--font-bold);color:var(--color-accent);min-width:110px;text-align:right}.addon-grid{display:grid;grid-template-columns:28px 180px 90px;gap:var(--space-2) var(--space-3);align-items:center;margin-bottom:var(--space-4);width:max-content;max-width:100%}.addon-grid-head,.addon-grid-row{display:contents}.addon-grid-head>div{font-size:var(--text-caption);font-weight:var(--font-medium);color:var(--color-text-dim);text-transform:uppercase;letter-spacing:var(--tracking-wider);padding-bottom:var(--space-1);border-bottom:var(--border-width) solid var(--color-border)}.addon-label{font-size:var(--text-body);color:var(--color-text)}.addon-check{width:16px;height:16px;accent-color:var(--color-accent);cursor:pointer}.cred-stack{display:flex;flex-direction:column;gap:var(--space-2);min-width:240px}.cred-card{border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);background:var(--color-surface);font-size:var(--text-small)}.cred-card-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2);margin-bottom:2px}.cred-card-label{font-weight:var(--font-semibold);color:var(--color-accent);text-transform:uppercase;letter-spacing:var(--tracking-wider);font-size:var(--text-caption)}.cred-card-date{color:var(--color-text-dim);font-size:var(--text-caption)}.cred-card-line{color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cred-sep{color:var(--color-text-faint);margin:0 var(--space-1)}.cred-card-dirs{color:var(--color-text-dim);font-size:var(--text-caption)}.cred-card-actions{display:flex;gap:var(--space-2);margin-top:var(--space-2)}.cred-add{align-self:flex-start}.cred-edit-card{border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);background:var(--color-surface-hover);margin-bottom:var(--space-3)}.cred-edit-card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.config-flag-col{text-align:center;white-space:nowrap;font-size:var(--text-caption)}.config-flag-cell{text-align:center;padding:var(--space-1) var(--space-2)}.config-flag-check{display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.config-flag-check input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-accent);cursor:pointer}.sftp-subfolders{margin-top:var(--space-3);margin-left:var(--space-4);padding-left:var(--space-4);border-left:var(--border-width) solid var(--color-border)}.sftp-subfolder+.sftp-subfolder{margin-top:var(--space-3)}.sftp-subfolder .sftp-folder-head h5{margin:0;font-size:var(--text-small);font-weight:var(--font-semibold);font-family:var(--font-mono);color:var(--color-text)}.sftp-listing-table td:first-child{padding-right:0;vertical-align:middle}.sftp-root-details{margin-top:var(--space-4);padding-top:var(--space-3);border-top:var(--border-width) solid var(--color-border)}.sftp-root-details summary{cursor:pointer;font-size:var(--text-small);color:var(--color-text-dim);font-weight:var(--font-medium);list-style:revert}.sftp-root-details summary:hover{color:var(--color-text)}.sftp-root-details[open] summary{margin-bottom:var(--space-2)}.bulloch-parse-textarea{width:100%;font-family:var(--font-mono);font-size:var(--text-body);padding:var(--space-3);border:var(--border-width) solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);resize:vertical;min-height:200px}.bulloch-parse-textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:var(--focus-ring)}.data-table{width:100%;border-collapse:collapse;font-size:var(--text-body);font-variant-numeric:tabular-nums}.data-table thead{background:var(--color-surface-sunken)}.data-table th{text-align:left;padding:var(--space-2) var(--space-4);font-weight:var(--font-semibold);font-size:var(--text-caption);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--color-text-dim);white-space:nowrap;border-bottom:var(--border-width) solid var(--color-border)}.data-table td{padding:var(--space-2) var(--space-4);border-bottom:var(--border-width) solid var(--color-border);color:var(--color-text);vertical-align:middle}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover td{background:var(--color-surface-hover)}.row-clickable{cursor:pointer}.cell-primary{font-weight:var(--font-medium);color:var(--color-text);line-height:var(--leading-snug)}.cell-subtext{color:var(--color-text-dim);font-size:var(--text-small);font-weight:var(--font-regular);margin-top:1px;line-height:var(--leading-snug)}.cell-mono{font-family:var(--font-mono);font-size:var(--text-small);color:var(--color-text-dim);font-feature-settings:"tnum" 1}.cell-muted{color:var(--color-text-faint)}.empty-row{text-align:center;color:var(--color-text-faint);padding:var(--space-8) var(--space-4)!important}.badge{display:inline-flex;align-items:center;padding:2px 7px;border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:10.5px;font-weight:var(--font-semibold);letter-spacing:var(--tracking-wide);line-height:1.5;white-space:nowrap;text-transform:uppercase}.badge-blue{background:var(--color-pos-blue-bg);color:var(--color-pos-blue-text)}.badge-red{background:var(--color-pos-red-bg);color:var(--color-pos-red-text)}.badge-purple{background:var(--color-pos-purple-bg);color:var(--color-pos-purple-text)}.badge-orange{background:var(--color-pos-orange-bg);color:var(--color-pos-orange-text)}.badge-grey{background:var(--color-inactive-bg);color:var(--color-inactive)}.badge-teal{background:var(--color-accent-soft);color:var(--color-accent-dark)}.badge-pink{background:var(--color-pos-pink-bg);color:var(--color-pos-pink-text)}.badge-yellow{background:var(--color-pos-yellow-bg);color:var(--color-pos-yellow-text)}.badge-green{background:var(--color-good-bg);color:var(--color-good);border:var(--border-width) solid var(--color-good-border);padding:1px 6px}.badge-amber{background:var(--color-warn-bg);color:var(--color-warn);border:var(--border-width) solid var(--color-warn-border);padding:1px 6px}.status-dot{display:inline-block;width:6px;height:6px;border-radius:var(--radius-pill);margin-right:var(--space-2);vertical-align:middle}.status-dot-green{background:var(--color-good);box-shadow:var(--status-dot-ring-good)}.status-dot-red{background:var(--color-bad);box-shadow:var(--status-dot-ring-bad)}.status-dot-amber{background:var(--color-warn);box-shadow:0 0 0 2px var(--color-warn-bg)}.status-dot-grey{background:var(--color-text-faint)}.tabs{display:flex;border-bottom:var(--border-width) solid var(--color-border);margin:0 0 var(--space-5);flex-wrap:wrap}.tab{background:transparent;border:none;border-bottom:var(--border-width-thick) solid transparent;padding:var(--space-2) var(--space-4);font-size:var(--text-body);font-weight:var(--font-medium);font-family:inherit;color:var(--color-text-dim);cursor:pointer;display:inline-flex;align-items:center;gap:var(--space-2);margin-bottom:-1px;transition:color var(--transition-fast),border-color var(--transition-fast)}.tab:hover{color:var(--color-text)}.tab-active{color:var(--color-accent);border-bottom-color:var(--color-accent);font-weight:var(--font-semibold)}.tab-count{background:var(--color-surface-sunken);color:var(--color-text-dim);padding:1px 6px;border-radius:var(--radius-pill);font-family:var(--font-mono);font-size:10.5px;font-weight:var(--font-semibold);min-width:18px;text-align:center}.tab-active .tab-count{background:var(--color-accent-soft);color:var(--color-accent-dark)}.tab-panel{padding-top:var(--space-1)}.record-header{display:flex;align-items:flex-start;justify-content:space-between;padding:var(--space-4) var(--space-5);background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:var(--space-4);box-shadow:var(--shadow-sm)}.record-title h2{margin:0 0 var(--space-1);font-size:var(--text-title);letter-spacing:var(--tracking-tight)}.record-meta{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);color:var(--color-text-dim);font-size:var(--text-small);margin-top:var(--space-2);align-items:center}.record-meta .sep{width:3px;height:3px;background:var(--color-text-faint);border-radius:var(--radius-pill);display:inline-block}.customer-form fieldset{border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);padding:var(--space-4) var(--space-5) var(--space-5);margin:0 0 var(--space-4);box-shadow:var(--shadow-sm)}.customer-form legend{font-family:var(--font-mono);font-weight:var(--font-semibold);color:var(--color-text-dim);padding:0 var(--space-2);font-size:var(--text-caption);letter-spacing:var(--tracking-widest);text-transform:uppercase}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-3) var(--space-4)}.form-field{display:flex;flex-direction:column;font-size:var(--text-body)}.form-field-wide{grid-column:1 / -1}.form-field>span{font-weight:var(--font-medium);color:var(--color-text-dim);margin-bottom:var(--space-1);font-size:var(--text-caption);letter-spacing:var(--tracking-wider);text-transform:uppercase}.form-field input,.form-field select,.form-field textarea{height:var(--input-h-md);padding:0 var(--space-3);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-body);font-family:inherit;background:var(--color-surface);outline:none;color:var(--color-text);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.form-field textarea{height:auto;padding:var(--space-2) var(--space-3);resize:vertical}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--color-accent);box-shadow:var(--focus-ring)}.form-actions{display:flex;justify-content:flex-end;align-items:center;gap:var(--space-3);margin-top:var(--space-2)}.form-hint{flex:1;font-size:var(--text-small);color:var(--color-text-faint)}.req{color:var(--color-bad);font-weight:var(--font-semibold)}.field-error{color:var(--color-bad);font-size:var(--text-caption);margin-top:var(--space-1);letter-spacing:0;text-transform:none;font-weight:var(--font-medium)}.form-field-error input,.form-field-error select,.form-field-error textarea{border-color:var(--color-bad)!important}.form-field-error input:focus,.form-field-error select:focus,.form-field-error textarea:focus{box-shadow:0 0 0 3px var(--color-bad-bg)!important}.chain-toggle{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);margin:0 0 var(--space-4);background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-wrap:wrap}.chain-toggle-label{font-family:var(--font-mono);font-size:var(--text-caption);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:var(--tracking-widest);color:var(--color-text-dim)}.chain-toggle-segmented{display:inline-flex;border:var(--border-width) solid var(--color-border-strong);border-radius:var(--radius-md);overflow:hidden;background:var(--color-bg)}.chain-toggle-option{background:transparent;border:none;padding:7px 14px;font-family:inherit;font-size:var(--text-body);font-weight:var(--font-medium);color:var(--color-text-dim);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast);border-right:var(--border-width) solid var(--color-border-strong)}.chain-toggle-option:last-child{border-right:none}.chain-toggle-option:hover{color:var(--color-text)}.chain-toggle-active{background:var(--color-accent);color:var(--color-text-inverse)}.chain-toggle-active:hover{color:var(--color-text-inverse)}.chain-inherit{margin-top:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-surface-tint);border:var(--border-width) solid var(--color-accent-soft);border-left:var(--border-width-accent) solid var(--color-accent);border-radius:var(--radius-md)}.chain-inherit-head{display:flex;flex-direction:column;margin-bottom:var(--space-3)}.chain-inherit-title{font-size:var(--text-body);color:var(--color-text)}.chain-inherit-title strong{color:var(--color-accent-dark);font-weight:var(--font-semibold)}.chain-inherit-hint{font-size:var(--text-small);color:var(--color-text-dim);margin-top:2px}.chain-inherit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--space-2) var(--space-4);margin:0}.chain-inherit-grid>div{display:flex;flex-direction:column}.chain-inherit-grid dt{font-family:var(--font-mono);font-size:var(--text-caption);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:var(--tracking-wider);color:var(--color-text-dim)}.chain-inherit-grid dd{margin:2px 0 0;font-size:var(--text-body);font-weight:var(--font-medium);color:var(--color-text)}.email-with-domain{display:flex;align-items:stretch;border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);overflow:hidden;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.email-with-domain:focus-within{border-color:var(--color-accent);box-shadow:var(--focus-ring)}.email-with-domain>input{flex:1;border:none!important;outline:none!important;background:transparent!important;box-shadow:none!important;height:var(--input-h-md);padding:0 var(--space-3);font-size:var(--text-body);font-family:inherit;color:var(--color-text)}.email-domain-suffix{display:flex;align-items:center;padding:0 var(--space-3);background:var(--color-surface-sunken);color:var(--color-text-dim);font-size:var(--text-body);border-left:var(--border-width) solid var(--color-border);white-space:nowrap}.form-disclosure{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);margin:0 0 var(--space-4);box-shadow:var(--shadow-sm);overflow:hidden}.form-disclosure>summary{list-style:none;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--transition-fast)}.form-disclosure>summary::-webkit-details-marker{display:none}.form-disclosure>summary::marker{display:none}.form-disclosure>summary:hover{background:var(--color-surface-hover)}.form-disclosure-title{font-family:var(--font-mono);font-size:var(--text-caption);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:var(--tracking-widest);color:var(--color-text)}.form-disclosure-hint{flex:1;font-size:var(--text-small);color:var(--color-text-faint)}.form-disclosure-chevron{font-size:16px;color:var(--color-text-dim);transition:transform var(--transition-fast);flex-shrink:0}.form-disclosure[open]>summary .form-disclosure-chevron{transform:rotate(180deg)}.form-disclosure[open]>summary{border-bottom:var(--border-width) solid var(--color-border)}.form-disclosure-body{padding:var(--space-4) var(--space-5) var(--space-5)}.form-disclosure-body fieldset{box-shadow:none;background:var(--color-bg)}.probability-input{display:flex;align-items:center;gap:var(--space-1)}.probability-input input{flex:1;min-width:0;text-align:right;font-variant-numeric:tabular-nums}.probability-suffix{font-family:var(--font-mono);font-size:var(--text-body);color:var(--color-text-dim)}.toggle{display:inline-flex;align-items:center;gap:var(--space-2);cursor:pointer;-webkit-user-select:none;user-select:none;font-size:var(--text-body);color:var(--color-text);text-transform:none;letter-spacing:0}.toggle input[type=checkbox]{width:16px;height:16px;margin:0;accent-color:var(--color-accent);cursor:pointer}.toggle-label{color:var(--color-text);font-weight:var(--font-medium)}.record-actions{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0;margin-left:var(--space-4)}.convert-confirm{background:var(--color-warn-bg);border:var(--border-width) solid var(--color-warn-border);border-left:var(--border-width-accent) solid var(--color-warn);border-radius:var(--radius-md);padding:var(--space-4) var(--space-5);margin-bottom:var(--space-4)}.convert-confirm-head strong{color:var(--color-warn);font-size:var(--text-base);display:block;margin-bottom:var(--space-2)}.convert-confirm-head p{margin:0 0 var(--space-3);color:var(--color-text);font-size:var(--text-body);line-height:var(--leading-normal)}.convert-confirm-head strong+p strong{color:var(--color-warn);font-weight:var(--font-semibold)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;display:flex;align-items:flex-start;justify-content:center;padding:var(--space-8) var(--space-4);z-index:var(--z-modal);overflow-y:auto}.modal-card{background:var(--color-surface);border-radius:var(--radius-lg);border:var(--border-width) solid var(--color-border);box-shadow:var(--shadow-md);width:100%;max-width:720px;display:flex;flex-direction:column;max-height:calc(100vh - 64px)}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:var(--border-width) solid var(--color-border)}.modal-head h3{margin:0;font-size:var(--text-large);font-weight:var(--font-semibold);letter-spacing:var(--tracking-snug)}.modal-close{background:transparent;border:none;color:var(--color-text-dim);font-size:22px;line-height:1;padding:4px 8px;cursor:pointer;border-radius:var(--radius-sm)}.modal-close:hover{background:var(--color-surface-hover);color:var(--color-text)}.modal-body{padding:var(--space-4) var(--space-5) var(--space-5);overflow-y:auto}.modal-sub{margin:0 0 var(--space-4);font-size:var(--text-body);color:var(--color-text-dim)}.quote-success{text-align:center;padding:var(--space-4) 0}.quote-success-icon{width:48px;height:48px;border-radius:var(--radius-pill);background:var(--color-good-bg);color:var(--color-good);display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:var(--font-bold);margin:0 auto var(--space-3)}.quote-success h4{margin:0 0 var(--space-2);font-size:var(--text-large);color:var(--color-good)}.quote-success>p{color:var(--color-text);margin:0 0 var(--space-4)}.quote-success-meta{display:grid;gap:var(--space-2);margin:0 0 var(--space-4);padding:var(--space-3) var(--space-4);background:var(--color-surface-sunken);border-radius:var(--radius-md);text-align:left}.quote-success-meta>div{display:grid;grid-template-columns:110px 1fr;gap:var(--space-3);font-size:var(--text-body)}.quote-success-meta dt{font-family:var(--font-mono);font-size:var(--text-caption);text-transform:uppercase;letter-spacing:var(--tracking-wider);color:var(--color-text-dim)}.quote-success-meta dd{margin:0;color:var(--color-text);word-break:break-all}.quote-step-card{display:flex;gap:var(--space-4);background:var(--color-surface-tint);border:var(--border-width) solid var(--color-accent-soft);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-4)}.quote-step-icon{flex-shrink:0;width:40px;height:40px;border-radius:var(--radius-md);background:var(--color-accent-soft);display:flex;align-items:center;justify-content:center;font-size:20px;line-height:1}.quote-step-icon-info{color:var(--color-accent-dark)}.quote-step-card h4{margin:0 0 var(--space-2);font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--color-text)}.quote-step-card p{margin:0 0 var(--space-3);color:var(--color-text-dim);font-size:var(--text-body)}.test-mode-panel{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:var(--border-width) solid var(--color-border);border-left:var(--border-width-accent) solid var(--color-accent);margin:var(--space-4) 0 0;transition:background var(--transition-fast),border-color var(--transition-fast)}.test-mode-on{background:var(--color-good-bg);border-color:var(--color-good-border);border-left-color:var(--color-good)}.test-mode-off{background:var(--color-warn-bg);border-color:var(--color-warn-border);border-left-color:var(--color-warn)}.test-mode-toggle{display:inline-flex;align-items:center;gap:var(--space-2);cursor:pointer;-webkit-user-select:none;user-select:none}.test-mode-toggle input[type=checkbox]{width:16px;height:16px;margin:0;accent-color:var(--color-accent);cursor:pointer}.test-mode-label{font-family:var(--font-mono);font-size:var(--text-caption);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:var(--tracking-widest)}.test-mode-on .test-mode-label{color:var(--color-good)}.test-mode-off .test-mode-label{color:var(--color-warn)}.test-mode-status{margin:0;font-size:var(--text-body);color:var(--color-text);line-height:var(--leading-snug)}.test-mode-status code{background:var(--color-surface);padding:1px 6px;border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--text-small);color:var(--color-text)}.quicknote-list{list-style:none;margin:var(--space-2) 0 0;padding:0;border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);max-height:240px;overflow-y:auto}.quicknote-option{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-bottom:var(--border-width) solid var(--color-border);cursor:pointer;transition:background var(--transition-fast)}.quicknote-option:last-child{border-bottom:none}.quicknote-option:hover{background:var(--color-surface-hover)}.quicknote-option-main{flex:1;min-width:0}.quicknote-option-primary{font-weight:var(--font-medium);color:var(--color-text);font-size:var(--text-body);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.quicknote-option-secondary{font-size:var(--text-small);color:var(--color-text-dim);margin-top:1px}.quicknote-option-tag{font-family:var(--font-mono);font-size:10px;font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--color-accent-dark);background:var(--color-accent-soft);padding:2px 7px;border-radius:var(--radius-sm);flex-shrink:0}.quicknote-empty{padding:var(--space-3);text-align:center;color:var(--color-text-faint);font-size:var(--text-body)}.quicknote-selected{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3);border:var(--border-width) solid var(--color-accent-soft);background:var(--color-surface-tint);border-radius:var(--radius-md)}.quicknote-selected-primary{font-weight:var(--font-semibold);color:var(--color-text);font-size:var(--text-base)}.quicknote-selected-secondary{font-size:var(--text-small);color:var(--color-text-dim);margin-top:1px}.save-message{background:var(--color-good-bg);color:var(--color-good);border:var(--border-width) solid var(--color-good-border);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);margin:0 0 var(--space-4);font-size:var(--text-body);font-weight:var(--font-medium);display:inline-flex;align-items:center;gap:var(--space-2)}.note-form{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-4);box-shadow:var(--shadow-sm)}.note-form h3,.notes-panel h3{margin:0 0 var(--space-3);font-family:var(--font-mono);font-size:var(--text-caption);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:var(--tracking-widest);color:var(--color-text-dim)}.notes-panel h3{margin:var(--space-5) 0 var(--space-3)}.note-form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--space-3);margin-bottom:var(--space-3)}.note-form-row label{display:flex;flex-direction:column;font-size:var(--text-small)}.note-form-row span{font-weight:var(--font-medium);color:var(--color-text-dim);margin-bottom:var(--space-1);font-size:var(--text-caption);text-transform:uppercase;letter-spacing:var(--tracking-wider)}.note-form-row input,.note-form-row select{height:var(--input-h-sm);padding:0 var(--space-3);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-body);font-family:inherit;background:var(--color-surface)}.note-form-row input:focus,.note-form-row select:focus,.note-form textarea:focus{border-color:var(--color-accent);outline:none;box-shadow:var(--focus-ring)}.note-form textarea{width:100%;padding:var(--space-2) var(--space-3);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-body);font-family:inherit;resize:vertical;outline:none}.note-list{list-style:none;margin:0;padding:0}.note-item{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-left:var(--border-width-accent) solid var(--color-accent);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-2)}.note-item.note-type-phone{border-left-color:var(--color-pos-blue-text)}.note-item.note-type-email{border-left-color:var(--color-pos-purple-text)}.note-item.note-type-meeting{border-left-color:var(--color-good)}.note-item.note-type-demo{border-left-color:var(--color-pos-orange-text)}.note-item.note-type-other{border-left-color:var(--color-text-faint)}.note-meta{font-size:var(--text-caption);color:var(--color-text-dim);display:flex;gap:var(--space-2);align-items:center;margin-bottom:var(--space-1);font-family:var(--font-mono);font-feature-settings:"tnum" 1}.note-text{white-space:pre-wrap;color:var(--color-text);font-size:var(--text-body);line-height:var(--leading-relaxed)}.empty-tab{color:var(--color-text-faint);font-size:var(--text-body);padding:var(--space-6) 0;text-align:center}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-bg);padding:var(--space-6)}.login-card{background:var(--color-surface);width:100%;max-width:400px;padding:var(--space-6);border-radius:var(--radius-lg);border:var(--border-width) solid var(--color-border);box-shadow:var(--shadow-md);display:flex;flex-direction:column}.login-card h2{margin:0 0 var(--space-1);font-size:var(--text-large);font-weight:var(--font-semibold)}.login-sub{margin:0 0 var(--space-5);color:var(--color-text-dim);font-size:var(--text-body)}.login-card label{font-size:var(--text-caption);font-weight:var(--font-medium);text-transform:uppercase;letter-spacing:var(--tracking-wider);margin-top:var(--space-3);margin-bottom:var(--space-2);color:var(--color-text-dim)}.login-card input{height:var(--input-h-lg);padding:0 var(--space-3);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-base);font-family:inherit;background:var(--color-surface);outline:none}.login-card input:focus{border-color:var(--color-accent);box-shadow:var(--focus-ring)}.password-field{position:relative;display:flex}.password-field input{flex:1;padding-right:40px}.password-toggle{position:absolute;top:0;right:0;height:var(--input-h-lg);width:40px;margin:0;background:transparent;border:none;color:var(--color-text-faint);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-md);transition:color var(--transition-fast)}.password-toggle:hover{color:var(--color-text)}.password-toggle:focus-visible{outline:none;color:var(--color-accent);box-shadow:var(--focus-ring)}.login-card>button{margin-top:var(--space-4);height:var(--input-h-lg);background:var(--color-accent);color:var(--color-text-inverse);border:none;border-radius:var(--radius-md);font-size:var(--text-base);font-weight:var(--font-medium);cursor:pointer;transition:background var(--transition-fast)}.login-card>button:hover{background:var(--color-accent-dark)}.login-card>button:disabled{opacity:.5;cursor:not-allowed}.login-card .error{margin:var(--space-3) 0 0;font-size:var(--text-body)}.error{color:var(--color-bad);background:var(--color-bad-bg);border:var(--border-width) solid var(--color-bad-border);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--text-body);margin:0 0 var(--space-3)}code{background:var(--color-surface-sunken);padding:1px 6px;border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--text-small);color:var(--color-text-dim)}.placeholder-note{color:var(--color-text-faint);font-size:var(--text-body)}.stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-3);margin-bottom:var(--space-5)}.stat-card{position:relative;background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;display:flex;text-decoration:none;color:inherit;transition:box-shadow var(--transition-fast),transform var(--transition-fast)}.stat-card-clickable{cursor:pointer}.stat-card-clickable:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.stat-accent{width:4px;flex-shrink:0}.stat-accent-green{background:var(--color-good)}.stat-accent-red{background:var(--color-bad)}.stat-accent-teal{background:var(--color-accent)}.stat-accent-amber{background:var(--color-warn)}.stat-accent-grey{background:var(--color-border-strong)}.stat-body{padding:var(--space-4) var(--space-5);flex:1;display:flex;flex-direction:column;gap:var(--space-1)}.stat-label{font-family:var(--font-mono);font-size:var(--text-caption);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:var(--tracking-widest);color:var(--color-text-dim)}.stat-value{font-size:32px;font-weight:var(--font-semibold);letter-spacing:var(--tracking-tight);line-height:1.1;font-variant-numeric:tabular-nums}.stat-value-green{color:var(--color-good)}.stat-value-red{color:var(--color-bad)}.stat-value-teal{color:var(--color-accent)}.stat-value-amber{color:var(--color-warn)}.stat-value-grey{color:var(--color-text-faint)}.stat-sub{font-size:var(--text-small);margin-top:var(--space-1)}.stat-sub-dim{color:var(--color-text-dim)}.stat-sub-green{color:var(--color-good);font-weight:var(--font-medium)}.stat-sub-red{color:var(--color-bad);font-weight:var(--font-medium)}.quick-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-3);margin-bottom:var(--space-5)}.quick-action{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-left:var(--border-width-accent) solid var(--color-accent);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);cursor:pointer;text-decoration:none;color:inherit;font-family:inherit;text-align:left;transition:box-shadow var(--transition-fast),transform var(--transition-fast),border-color var(--transition-fast)}.quick-action:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.quick-action-add{border-left-color:var(--color-good)}.quick-action-note{border-left-color:var(--color-accent)}.quick-action-quote{border-left-color:var(--color-warn)}.quick-action-icon{flex-shrink:0;width:36px;height:36px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:20px;font-weight:var(--font-bold);line-height:1}.quick-action-add .quick-action-icon{background:var(--color-good-bg);color:var(--color-good)}.quick-action-note .quick-action-icon{background:var(--color-accent-soft);color:var(--color-accent-dark)}.quick-action-quote .quick-action-icon{background:var(--color-warn-bg);color:var(--color-warn)}.quick-action-title{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--color-text);letter-spacing:var(--tracking-snug);line-height:1.2}.quick-action-sub{font-size:var(--text-small);color:var(--color-text-dim);margin-top:2px}.dashboard-row{display:grid;gap:var(--space-3);margin-bottom:var(--space-5)}.dashboard-row-3{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.dashboard-row-2{grid-template-columns:repeat(auto-fit,minmax(380px,1fr))}.price-increase-alert{background:var(--color-warn-bg);border:var(--border-width) solid var(--color-warn-border);border-left:4px solid var(--color-warn);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5);box-shadow:var(--shadow-sm)}.price-increase-alert-head{display:flex;align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-3)}.price-increase-alert-head h3{margin:0;font-size:var(--text-large);color:var(--color-warn)}.price-increase-alert-count{font-size:var(--text-small);color:var(--color-text-dim);font-family:var(--font-mono)}.price-increase-alert-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:var(--space-2)}.price-increase-alert-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--color-surface);border:var(--border-width) solid var(--color-warn-border);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.price-increase-alert-item:hover{background:var(--color-warn-bg);border-color:var(--color-warn)}.price-increase-alert-date{display:flex;flex-direction:column;align-items:flex-start;min-width:110px}.price-increase-alert-date .cell-mono{font-size:var(--text-body);font-weight:var(--font-semibold);color:var(--color-text)}.price-increase-alert-rel{font-size:var(--text-caption);color:var(--color-warn);font-weight:var(--font-medium)}.price-increase-alert-main{display:flex;flex-direction:column;min-width:0;flex:1}.price-increase-alert-company{font-size:var(--text-body);font-weight:var(--font-semibold);color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.price-increase-alert-status{font-size:var(--text-small);color:var(--color-text-dim)}.panel{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;overflow:hidden}.panel-head{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-bottom:var(--border-width) solid var(--color-border);background:var(--color-surface)}.panel-head h3{margin:0;display:inline-flex;align-items:center;gap:var(--space-2);font-family:var(--font-mono);font-size:var(--text-caption);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:var(--tracking-widest);color:var(--color-text-dim)}.panel-count{background:var(--color-accent-soft);color:var(--color-accent-dark);padding:1px 7px;border-radius:var(--radius-pill);font-family:var(--font-mono);font-size:10.5px;font-weight:var(--font-semibold);min-width:20px;text-align:center}.panel-link{font-size:var(--text-small);color:var(--color-accent);text-decoration:none;font-weight:var(--font-medium)}.panel-link:hover{color:var(--color-accent-dark);text-decoration:underline}.panel-body{padding:var(--space-3) var(--space-4);overflow-y:auto;max-height:560px}.panel-empty{margin:var(--space-3) 0;color:var(--color-text-faint);text-align:center;font-size:var(--text-body)}.followup-stack{display:flex;flex-direction:column;gap:var(--space-2)}.activity-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.activity-item{padding:var(--space-3) 0;border-bottom:var(--border-width) solid var(--color-border);cursor:pointer;transition:background var(--transition-fast)}.activity-item:last-child{border-bottom:none}.activity-item:hover{background:var(--color-surface-hover)}.activity-head{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-1)}.activity-company{flex:1;font-weight:var(--font-semibold);color:var(--color-text);font-size:var(--text-body);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.activity-date{font-size:var(--text-caption);color:var(--color-text-dim)}.activity-text{font-size:var(--text-body);color:var(--color-text);line-height:var(--leading-snug)}.activity-author{margin-top:var(--space-1);font-size:var(--text-caption);color:var(--color-text-faint);font-style:italic}.config-list,.renewal-list,.converted-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.config-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:var(--border-width) solid var(--color-border);cursor:pointer;transition:background var(--transition-fast)}.config-item:last-child{border-bottom:none}.config-item:hover{background:var(--color-surface-hover)}.config-main{flex:1;min-width:0}.config-company{font-weight:var(--font-medium);color:var(--color-text);font-size:var(--text-body);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.config-site{font-size:var(--text-small);color:var(--color-text-dim);margin-top:1px}.config-wait{display:flex;flex-direction:column;align-items:flex-end;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);min-width:64px;text-align:right;flex-shrink:0}.config-wait-green{background:var(--color-good-bg);color:var(--color-good)}.config-wait-amber{background:var(--color-warn-bg);color:var(--color-warn)}.config-wait-red{background:var(--color-bad-bg);color:var(--color-bad)}.config-wait-days{font-family:var(--font-mono);font-size:var(--text-large);font-weight:var(--font-bold);font-variant-numeric:tabular-nums;line-height:1}.config-wait-label{font-family:var(--font-mono);font-size:10px;font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:var(--tracking-wide);margin-top:2px;opacity:.85}.renewal-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:var(--border-width) solid var(--color-border);cursor:pointer;transition:background var(--transition-fast)}.renewal-item:last-child{border-bottom:none}.renewal-item:hover{background:var(--color-surface-hover)}.renewal-date{display:flex;flex-direction:column;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);min-width:130px;flex-shrink:0}.renewal-date-green{background:var(--color-good-bg);color:var(--color-good)}.renewal-date-amber{background:var(--color-warn-bg);color:var(--color-warn)}.renewal-date-red{background:var(--color-bad-bg);color:var(--color-bad)}.renewal-date-value{font-size:var(--text-body);font-weight:var(--font-semibold);line-height:1}.renewal-date-rel{font-size:var(--text-caption);font-weight:var(--font-medium);margin-top:2px;opacity:.85}.renewal-main{flex:1;min-width:0}.renewal-company{font-weight:var(--font-medium);color:var(--color-text);font-size:var(--text-body);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.renewal-site{font-size:var(--text-small);color:var(--color-text-dim);margin-top:1px}.awaiting-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.awaiting-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:var(--border-width) solid var(--color-border);cursor:pointer;transition:background var(--transition-fast)}.awaiting-item:last-child{border-bottom:none}.awaiting-item:hover{background:var(--color-surface-hover)}.awaiting-main{flex:1;min-width:0}.awaiting-company{font-weight:var(--font-medium);color:var(--color-text);font-size:var(--text-body);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.awaiting-sent{font-size:var(--text-small);color:var(--color-text-dim);margin-top:1px}.awaiting-open-row{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-2)}.awaiting-opened-at{font-size:var(--text-caption);color:var(--color-text-faint)}.awaiting-wait{display:flex;flex-direction:column;align-items:flex-end;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);min-width:64px;flex-shrink:0}.awaiting-wait-green{background:var(--color-good-bg);color:var(--color-good)}.awaiting-wait-amber{background:var(--color-warn-bg);color:var(--color-warn)}.awaiting-wait-red{background:var(--color-bad-bg);color:var(--color-bad)}.awaiting-wait-days{font-family:var(--font-mono);font-size:var(--text-large);font-weight:var(--font-bold);font-variant-numeric:tabular-nums;line-height:1}.awaiting-wait-label{font-family:var(--font-mono);font-size:10px;font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:var(--tracking-wide);margin-top:2px;opacity:.85}.converted-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:var(--border-width) solid var(--color-border);cursor:pointer;transition:background var(--transition-fast)}.converted-item:last-child{border-bottom:none}.converted-item:hover{background:var(--color-surface-hover)}.converted-date{font-size:var(--text-body);color:var(--color-text-dim);min-width:100px;flex-shrink:0}.converted-company{flex:1;font-weight:var(--font-medium);color:var(--color-text);font-size:var(--text-body);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.followup-panel{margin-bottom:var(--space-5)}.followup-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:var(--space-3);gap:var(--space-3);flex-wrap:wrap}.followup-header h3{margin:0;font-family:var(--font-mono);font-size:var(--text-caption);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:var(--tracking-widest);color:var(--color-text-dim);display:inline-flex;align-items:center;gap:var(--space-2)}.followup-header h3:before{content:"";display:inline-block;width:6px;height:6px;border-radius:var(--radius-pill);background:var(--color-warn);box-shadow:0 0 0 2px var(--color-warn-bg)}.followup-count{font-size:var(--text-small);color:var(--color-text-faint)}.followup-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-3)}.followup-card{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-left:var(--border-width-accent) solid var(--color-warn);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);box-shadow:var(--shadow-sm);cursor:pointer;text-align:left;font-family:inherit;display:flex;flex-direction:column;gap:var(--space-2);transition:box-shadow var(--transition-fast),transform var(--transition-fast),border-color var(--transition-fast)}.followup-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.followup-card:focus-visible{outline:none;box-shadow:var(--shadow-md),var(--focus-ring)}.followup-overdue{border-left-color:var(--color-bad)}.followup-today{border-left-color:var(--color-warn)}.followup-upcoming{border-left-color:var(--color-accent)}.followup-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.followup-title{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--color-text);letter-spacing:var(--tracking-snug);line-height:var(--leading-tight)}.followup-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);font-size:var(--text-small);color:var(--color-text-dim)}.followup-meta .sep{width:3px;height:3px;background:var(--color-text-faint);border-radius:var(--radius-pill);display:inline-block}.followup-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding-top:var(--space-2);border-top:var(--border-width) solid var(--color-border)}.followup-status{font-family:var(--font-mono);font-size:var(--text-caption);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:var(--tracking-wide)}.followup-status-overdue{color:var(--color-bad)}.followup-status-today{color:var(--color-warn)}.followup-status-upcoming{color:var(--color-text-dim)}.followup-date{font-size:var(--text-small);color:var(--color-text-dim)}.drop-zone{background:var(--color-surface);border:2px dashed var(--color-border-strong);border-radius:var(--radius-lg);padding:var(--space-12) var(--space-6);text-align:center;cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast);outline:none}.drop-zone:hover,.drop-zone:focus-visible{border-color:var(--color-accent);background:var(--color-surface-tint)}.drop-icon{font-size:36px;color:var(--color-accent);margin-bottom:var(--space-3);line-height:1}.drop-primary{font-size:var(--text-large);font-weight:var(--font-semibold);color:var(--color-text);margin-bottom:var(--space-1)}.drop-secondary{font-size:var(--text-body);color:var(--color-text-dim)}.import-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-3);margin-bottom:var(--space-4)}.summary-card{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);box-shadow:var(--shadow-sm)}.summary-label{font-family:var(--font-mono);font-size:var(--text-caption);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:var(--tracking-widest);color:var(--color-text-dim);margin-bottom:var(--space-1)}.summary-value{font-size:var(--text-large);font-weight:var(--font-semibold);color:var(--color-text)}.summary-value .summary-warn{font-size:var(--text-small);font-weight:var(--font-medium);color:var(--color-warn);margin-left:var(--space-2)}.mapping-detail{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-4);box-shadow:var(--shadow-sm)}.mapping-detail summary{cursor:pointer;font-family:var(--font-mono);font-size:var(--text-caption);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:var(--tracking-widest);color:var(--color-text-dim);outline:none}.mapping-detail[open] summary{margin-bottom:var(--space-3)}.mapping-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-1) var(--space-4);font-size:var(--text-body)}.mapping-row{display:grid;grid-template-columns:1fr auto 1fr;align-items:baseline;gap:var(--space-2);padding:var(--space-1) 0}.mapping-csv{color:var(--color-text)}.mapping-arrow{color:var(--color-text-faint)}.mapping-db{color:var(--color-accent-dark);font-weight:var(--font-medium)}.mapping-ignored{margin-top:var(--space-3);padding-top:var(--space-3);border-top:var(--border-width) solid var(--color-border);font-size:var(--text-small);color:var(--color-text-faint)}.preview-heading{font-family:var(--font-mono);font-size:var(--text-caption);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:var(--tracking-widest);color:var(--color-text-dim);margin:0 0 var(--space-3)}.import-result{background:var(--color-good-bg);border:var(--border-width) solid var(--color-good-border);border-radius:var(--radius-lg);padding:var(--space-5);margin-bottom:var(--space-4)}.import-result h3{margin:0 0 var(--space-2);color:var(--color-good);font-size:var(--text-large)}.import-result p{margin:0;color:var(--color-text)}.import-result details{margin-top:var(--space-3)}.import-result summary{cursor:pointer;color:var(--color-text-dim);font-size:var(--text-body)}.skipped-list{margin:var(--space-2) 0 0;padding-left:var(--space-5);font-size:var(--text-small);color:var(--color-text-dim)}.skipped-list li{margin-bottom:var(--space-1)}.cell-chevron{text-align:center;color:var(--color-text-dim);font-family:var(--font-mono);font-size:var(--text-body);width:28px;-webkit-user-select:none;user-select:none}.site-expanded-row>td{background:var(--color-surface-sunken);padding:var(--space-4) var(--space-4);border-top:1px solid var(--color-border);border-bottom:2px solid var(--color-border-strong)}.site-detail-split{display:grid;grid-template-columns:minmax(260px,1fr) minmax(420px,1.6fr);gap:var(--space-5);align-items:start}@media (max-width: 1024px){.site-detail-split{grid-template-columns:1fr}}.site-detail-left,.site-detail-right{background:var(--color-surface);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);min-width:0}.site-detail-right{display:flex;flex-direction:column;padding:0;max-height:calc(100vh - 180px);overflow:hidden}.site-detail-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:var(--space-3)}.site-detail-list{margin:0;display:grid;grid-template-columns:max-content 1fr;row-gap:var(--space-2);column-gap:var(--space-3)}.site-detail-list>div{display:contents}.site-detail-list dt{font-size:var(--text-caption);color:var(--color-text-dim);text-transform:uppercase;letter-spacing:var(--tracking-wider);font-weight:var(--font-semibold)}.site-detail-list dd{margin:0;font-size:var(--text-body);color:var(--color-text)}.site-subscription-form .subscription-grid{font-size:var(--text-body)}.site-subscription-form{flex:1 1 auto;min-height:0;height:100%}.site-subscription-form .subscription-section-head{flex:0 0 auto;margin:0;padding:var(--space-4) var(--space-4) var(--space-3);border-bottom:1px solid var(--color-border)}.site-subscription-form .subscription-scroll{flex:1 1 auto;min-height:0;overflow:auto;padding:var(--space-4)}.site-subscription-form .subscription-scroll .subscription-grid{margin-bottom:var(--space-4)}.site-subscription-form .subscription-footer{flex:0 0 auto;display:flex;justify-content:flex-end;padding:var(--space-3) var(--space-4);border-top:1px solid var(--color-border);background:var(--color-surface)}.th-checkbox,.td-checkbox{width:32px;padding-left:var(--space-3);padding-right:var(--space-2);text-align:center}.th-checkbox input,.td-checkbox input{cursor:pointer}.row-selected,.row-selected:hover{background:var(--color-accent-soft)}.toolbar-selection{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);background:var(--color-accent-soft);border:1px solid var(--color-accent);border-radius:var(--radius-md);color:var(--color-accent-dark)}.toolbar-selection .result-count{font-weight:var(--font-semibold);color:var(--color-accent-dark)}.modal-narrow{max-width:460px}.send-email-body{width:100%;font-family:var(--font-sans);font-size:var(--text-body);line-height:1.5;resize:vertical;min-height:280px}.modal-wide{max-width:920px;width:95vw}.statement-preview{display:flex;flex-direction:column;margin:var(--space-3) 0 var(--space-4);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-sunken);overflow:hidden}.statement-preview-frame{width:100%;height:min(60vh,560px);border:0;display:block;background:var(--color-surface)}.statement-preview-empty{height:180px;display:flex;align-items:center;justify-content:center;color:var(--color-text-dim);font-size:var(--text-small);padding:var(--space-4);text-align:center}.merge-selected-list{margin:0 0 var(--space-4);padding:var(--space-2) var(--space-4);list-style:disc inside;background:var(--color-surface-sunken);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-body);max-height:160px;overflow-y:auto}.merge-selected-list li{padding:2px 0}.merge-selected-company{font-weight:var(--font-semibold);color:var(--color-text)}.merge-selected-loc{color:var(--color-text-dim)}.merge-selected-meta{color:var(--color-text-faint)}.merge-parent-mode{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-4)}.merge-radio{display:flex;align-items:center;gap:var(--space-2);cursor:pointer;font-size:var(--text-body);color:var(--color-text)}.merge-radio input{cursor:pointer}.merge-parent-select{margin-left:var(--space-6);min-width:360px;max-width:100%}.merge-new-parent{margin-left:var(--space-6);display:grid;grid-template-columns:minmax(220px,2fr) minmax(140px,1fr) minmax(140px,1fr);gap:var(--space-3)}@media (max-width: 720px){.merge-new-parent{grid-template-columns:1fr}}.merge-preview-list{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-3);max-height:460px;overflow-y:auto;padding-right:var(--space-2)}.merge-preview-row{background:var(--color-surface-sunken);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4)}.merge-preview-head{margin-bottom:var(--space-2);font-size:var(--text-base)}.merge-site-fields{margin:0 0 var(--space-2);display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--space-1) var(--space-3)}.merge-site-fields>div{display:contents}.merge-site-fields dt{font-size:var(--text-caption);color:var(--color-text-dim);text-transform:uppercase;letter-spacing:var(--tracking-wider);font-weight:var(--font-semibold)}.merge-site-fields dd{margin:0 0 var(--space-1);font-size:var(--text-body);color:var(--color-text);overflow-wrap:anywhere}.merge-counts{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px dashed var(--color-border);font-size:var(--text-small);color:var(--color-text-dim)}.merge-warnings{margin:var(--space-2) 0 0;padding-left:var(--space-5);font-size:var(--text-small);color:var(--color-warn)}.merge-result-table th,.merge-result-table td{font-size:var(--text-small)}.date-input-wrap{position:relative;display:inline-flex;align-items:stretch;width:100%;font-family:var(--font-mono)}.date-input-text{flex:1 1 auto;min-width:0;padding-right:calc(var(--input-h-md) * .6);font-family:var(--font-mono);font-feature-settings:"tnum" 1;letter-spacing:.01em}.date-input-picker-btn{position:absolute;top:50%;right:var(--space-1);transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--color-text-dim);cursor:pointer;transition:background-color .12s ease,color .12s ease,border-color .12s ease}.date-input-picker-btn:hover:not(:disabled){background:var(--color-accent-soft);color:var(--color-accent-dark);border-color:var(--color-border)}.date-input-picker-btn:focus-visible{outline:none;border-color:var(--color-accent);box-shadow:var(--focus-ring)}.date-input-picker-btn:disabled{opacity:.5;cursor:not-allowed}.date-input-hidden-native{position:absolute;top:0;right:0;width:1px;height:1px;border:0;padding:0;margin:0;background:transparent;opacity:0;pointer-events:none}.date-input-invalid .date-input-text{border-color:var(--color-bad-border);background:var(--color-bad-bg)}.date-input-invalid .date-input-text:focus{border-color:var(--color-bad);box-shadow:0 0 0 3px #b91c1c33}.date-input-error{position:absolute;top:100%;left:0;margin-top:2px;font-family:var(--font-sans);font-size:var(--text-caption);color:var(--color-bad);pointer-events:none;white-space:nowrap;z-index:1}.customer-overview-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-3);margin:0 0 var(--space-5);padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.overview-stat{display:flex;flex-direction:column;gap:var(--space-1);padding:0 var(--space-3);border-left:1px solid var(--color-border)}.overview-stat:first-child{border-left:0;padding-left:0}.overview-stat-label{font-size:var(--text-caption);color:var(--color-text-dim);text-transform:uppercase;letter-spacing:var(--tracking-wider);font-weight:var(--font-semibold)}.overview-stat-value{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-large);font-weight:var(--font-semibold);color:var(--color-text)}.overview-stat-value.cell-mono{font-family:var(--font-mono);letter-spacing:.01em}.overview-stat-badge{display:inline-flex;align-items:center;justify-content:center;min-width:36px;padding:2px var(--space-2);background:var(--color-accent-soft);color:var(--color-accent-dark);border-radius:var(--radius-pill);font-family:var(--font-mono);font-size:var(--text-base)}.overview-stat-sub{font-size:var(--text-small);font-weight:var(--font-regular);color:var(--color-text-dim)}.site-actions-bar{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border)}.site-config-panel{margin-top:var(--space-4);padding:var(--space-3) var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.site-config-panel-empty{display:flex;flex-direction:column;gap:var(--space-2)}.site-config-head{margin-bottom:var(--space-2)}.site-config-row+.site-config-row{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px dashed var(--color-border)}.site-config-meta{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center;margin-bottom:var(--space-2);font-size:var(--text-small)}.site-config-flags{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4)}.site-config-flags .config-flag-check{display:inline-flex;align-items:center;gap:var(--space-1);font-family:var(--font-mono);font-size:var(--text-caption);color:var(--color-text);cursor:pointer}.site-config-flags .config-flag-check input{cursor:pointer}.contacts-panel .tab-toolbar{display:flex;align-items:center;gap:var(--space-3)}.contacts-table{table-layout:auto}.contacts-table th.th-actions{width:1%;white-space:nowrap}.contact-row{transition:background-color .12s ease}.contact-row:hover{background:var(--color-surface-hover)}.contact-row-primary>td:first-child{box-shadow:inset 3px 0 0 var(--color-accent)}.contact-name-cell{display:inline-flex;align-items:center;gap:var(--space-2)}.contact-name{font-weight:var(--font-semibold);color:var(--color-text)}.contact-row-actions{display:flex;gap:var(--space-1);justify-content:flex-end;white-space:nowrap}.contact-row-delete{color:var(--color-bad)}.contact-row-delete:hover{background:var(--color-bad-bg);border-color:var(--color-bad-border)}.contact-row-editing>td{background:var(--color-surface-sunken);padding:var(--space-3) var(--space-4)}.contact-row-draft>td{background:var(--color-accent-soft);border-top:2px solid var(--color-accent)}.contact-edit-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--space-3);align-items:end}.contact-edit-grid .form-field{min-width:0}.contact-edit-position,.contact-edit-phone{grid-column:span 2}.contact-edit-ext{grid-column:span 1}.contact-edit-email{grid-column:span 3}.contact-edit-primary{grid-column:span 2;align-self:center}.contact-primary-toggle{display:flex!important;flex-direction:row!important;align-items:center;gap:var(--space-2)}.contact-primary-toggle input{width:16px;height:16px;cursor:pointer}.contact-primary-toggle span{font-size:var(--text-body);color:var(--color-text);font-weight:var(--font-medium)}.contact-edit-actions{display:flex;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-3)}@media (max-width: 900px){.contact-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-edit-position,.contact-edit-phone,.contact-edit-email,.contact-edit-primary{grid-column:span 2}}.contact-card-form{display:flex;flex-direction:column;gap:var(--space-3)}.contact-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-3) var(--space-4)}.contact-card-grid{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-3)}.contact-card-grid .form-field{min-width:0}.contact-card-grid .form-field input,.contact-card-grid .form-field select,.contact-card-grid .form-field textarea{width:100%}.contact-card-grid .form-field>span{margin-bottom:2px}.contact-card-grid .form-field input,.contact-card-grid .form-field select{height:var(--input-h-sm);padding:0 var(--space-2)}.contact-card-grid .form-field textarea{padding:var(--space-1) var(--space-2)}.contact-card-actions{margin-top:var(--space-3);padding-top:var(--space-2);border-top:1px solid var(--color-border);display:flex;justify-content:flex-end;align-items:center;gap:var(--space-2)}.contact-card-actions .form-hint{margin-right:auto;font-size:var(--text-small);color:var(--color-text-dim)}.lead-pipeline{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-3) var(--space-4);margin:0}.lead-pipeline>legend{padding:0 var(--space-2);font-size:var(--text-caption);text-transform:uppercase;letter-spacing:var(--tracking-wider);font-weight:var(--font-semibold);color:var(--color-accent-dark)}.contacts-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-3) var(--space-4)}.contacts-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-2)}.contacts-section-head h3{margin:0;font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--color-text);text-transform:uppercase;letter-spacing:var(--tracking-wider)}.contacts-section-actions{display:inline-flex;align-items:center;gap:var(--space-2)}@media (max-width: 900px){.contact-card-grid>.form-field{grid-column:span 6!important}}.page-sub{margin:2px 0 0;font-size:var(--text-body);color:var(--color-text-dim)}.kpi-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-3);margin-bottom:var(--space-4)}.kpi-tile{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-4)}.kpi-value{font-size:var(--text-page);font-weight:var(--font-bold);color:var(--color-text);font-variant-numeric:tabular-nums}.kpi-label{margin-top:2px;font-size:var(--text-small);color:var(--color-text-dim)}.kpi-trend{margin-top:var(--space-1);font-size:var(--text-caption);color:var(--color-text-faint)}.kpi-warn{border-top:3px solid var(--color-warn)}.kpi-good{border-top:3px solid var(--color-good)}.kpi-bad{border-top:3px solid var(--color-bad)}.chip-group{display:inline-flex;gap:2px;background:var(--color-surface-sunken);border-radius:var(--radius-md);padding:2px}.chip{display:inline-flex;align-items:center;gap:var(--space-1);border:0;background:transparent;cursor:pointer;height:var(--button-h-sm);padding:0 var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-body);color:var(--color-text-dim)}.chip:hover{color:var(--color-text)}.chip-active{background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-sm)}.chip-count{font-family:var(--font-mono);font-size:var(--text-caption);color:var(--color-text-faint);font-variant-numeric:tabular-nums}.th-statusbar,.td-statusbar{width:6px;padding:0!important}.th-num{text-align:right}.ticket-status-bar{display:block;width:4px;min-height:38px;height:100%;border-radius:2px}.ticket-status-bar-open{background:var(--color-warn)}.ticket-status-bar-in_progress{background:var(--color-accent)}.ticket-status-bar-waiting{background:var(--color-text-faint)}.ticket-status-bar-closed{background:var(--color-inactive)}.ticket-title-cell{display:inline-flex;align-items:center;gap:var(--space-2)}.ticket-title{color:var(--color-text)}.ticket-title-closed{color:var(--color-text-dim);text-decoration:line-through}.ticket-assignee{display:inline-flex;align-items:center;gap:var(--space-2)}.ticket-assignee-name{font-size:var(--text-body);color:var(--color-text)}.ticket-extra-pill{font-family:var(--font-mono);font-size:var(--text-caption);border:var(--border-width) solid var(--color-border);background:var(--color-surface-sunken);color:var(--color-text-dim);border-radius:var(--radius-pill);padding:0 6px;cursor:help}.ticket-avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-pill);background:var(--color-accent);color:#fff;font-weight:var(--font-semibold);flex:0 0 auto}.back-link{font-family:var(--font-mono);font-size:var(--text-small);color:var(--color-text-dim);text-decoration:none}.back-link:hover{color:var(--color-accent)}.ticket-detail-title{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-1)}.ticket-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:var(--space-6);align-items:start}.ticket-main{display:flex;flex-direction:column;gap:var(--space-4)}.ticket-sidebar{display:flex;flex-direction:column;gap:var(--space-3)}.card{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--card-pad)}.ticket-sidebar .card{padding:var(--space-4)}.card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.card-label{font-family:var(--font-mono);font-size:var(--text-caption);text-transform:uppercase;letter-spacing:var(--tracking-wider);color:var(--color-text-faint);font-weight:var(--font-semibold);display:block;margin-bottom:var(--space-2)}.card-head .card-label{margin-bottom:0}.btn-link{border:0;background:transparent;color:var(--color-accent);cursor:pointer;font-size:var(--text-body)}.btn-link:hover{color:var(--color-accent-dark);text-decoration:underline}.ticket-textarea{width:100%;resize:vertical;font-family:var(--font-sans);font-size:var(--text-base);line-height:1.5;min-height:80px;border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3)}.ticket-body-text{white-space:pre-wrap;font-family:var(--font-sans);font-size:var(--text-base);line-height:1.55;color:var(--color-text);margin:0}.ticket-notes{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.ticket-note{border-top:var(--border-width) solid var(--color-border);padding-top:var(--space-3)}.ticket-note:first-child{border-top:0;padding-top:0}.ticket-note-head{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-1)}.ticket-note-author{font-size:var(--text-body);font-weight:var(--font-medium);color:var(--color-text)}.side-select{width:100%;height:var(--input-h-sm);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);padding:0 var(--space-2);background:var(--color-surface);font-size:var(--text-body)}.side-select:hover{border-color:var(--color-border-strong)}.ticket-side-value{font-size:var(--text-body);color:var(--color-accent);text-decoration:none}.ticket-side-meta{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-1);font-size:var(--text-body)}.collab-picker{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.collab-chip{display:inline-flex;align-items:center;gap:var(--space-1);border-radius:var(--radius-pill);background:var(--color-surface-sunken);border:var(--border-width) solid var(--color-border);padding:2px var(--space-2) 2px 2px;font-size:var(--text-small)}.collab-chip-x{border:0;background:transparent;cursor:pointer;color:var(--color-text-faint);font-size:14px;line-height:1}.collab-chip-x:hover{color:var(--color-bad)}.collab-add-btn{border:1px dashed var(--color-border-strong);background:transparent;cursor:pointer;border-radius:var(--radius-pill);padding:2px var(--space-3);font-size:var(--text-small);color:var(--color-text-dim)}.collab-add-select{height:var(--input-h-sm);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);padding:0 var(--space-2)}.site-combo{position:relative}.site-combo input{width:100%}.site-combo-list{position:absolute;z-index:20;top:calc(100% + 2px);left:0;right:0;max-height:260px;overflow-y:auto;list-style:none;margin:0;padding:var(--space-1);background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md)}.site-combo-list li{display:flex;flex-direction:column;gap:1px;cursor:pointer;padding:var(--space-2);border-radius:var(--radius-sm)}.site-combo-list li:hover,.site-combo-list li.site-combo-active{background:var(--color-surface-hover)}.site-combo-empty{padding:var(--space-3);text-align:center}.active-section{background:var(--color-bad-bg);border:var(--border-width) solid var(--color-bad-border);border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-5)}.active-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.active-title{font-family:var(--font-mono);font-size:var(--text-caption);font-weight:var(--font-bold);text-transform:uppercase;letter-spacing:var(--tracking-wider);color:var(--color-bad)}.active-list{display:flex;flex-direction:column;gap:var(--space-2)}.active-row,.day-row{display:flex;align-items:center;gap:var(--space-2);width:100%;text-align:left;background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);cursor:pointer}.active-row:hover,.day-row:hover{background:var(--color-surface-hover)}.active-row-title,.day-row-title{font-size:var(--text-body);color:var(--color-text);font-weight:var(--font-medium)}.active-row-sub{flex:1 1 auto}.active-row-money,.day-row-money{margin-left:auto;color:var(--color-text);font-variant-numeric:tabular-nums}.active-more{padding:var(--space-2)}.timeline{display:flex;flex-direction:column;gap:var(--space-4)}.day-block{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.day-today{border-color:var(--color-accent);border-top:3px solid var(--color-accent)}.day-weekend{background:var(--color-surface-sunken)}.day-head{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-4);border-bottom:var(--border-width) solid var(--color-border)}.day-today .day-head{background:var(--color-accent-soft)}.day-label{font-family:var(--font-mono);font-size:var(--text-caption);font-weight:var(--font-bold);text-transform:uppercase;letter-spacing:var(--tracking-wider);color:var(--color-text-dim)}.day-today .day-label{color:var(--color-accent-dark)}.day-empty{padding:var(--space-3) var(--space-4)}.day-items{display:flex;flex-direction:column}.day-row{border:0;border-top:var(--border-width) solid var(--color-border);border-radius:0}.day-items .day-row:first-child{border-top:0}.day-row-renewal{border-left:3px solid var(--color-warn)}.day-row-ticket{border-left:3px solid var(--color-accent)}.day-tag{font-size:var(--text-caption);text-transform:uppercase;letter-spacing:var(--tracking-wider);color:var(--color-text-faint);flex:0 0 auto;min-width:96px}@media (max-width: 900px){.kpi-strip{grid-template-columns:repeat(2,1fr)}.ticket-detail-grid{grid-template-columns:1fr}}.renewals-tabs{display:flex;flex-wrap:wrap;gap:2px;background:var(--color-surface-sunken);border-radius:var(--radius-md);padding:3px;margin-bottom:var(--space-3)}.renewals-tab{display:inline-flex;align-items:center;gap:var(--space-1);border:0;background:transparent;cursor:pointer;height:var(--button-h-sm);padding:0 var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-body);color:var(--color-text-dim)}.renewals-tab:hover{color:var(--color-text)}.renewals-tab-active{background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-sm)}.renewals-tab-count{font-family:var(--font-mono);font-size:var(--text-caption);color:var(--color-text-faint);font-variant-numeric:tabular-nums}.tier-bar{display:block;width:4px;min-height:40px;height:100%;border-radius:2px}.tier-bar-past-due{background:var(--color-bad)}.tier-bar-urgent{background:var(--color-warn)}.tier-bar-soon{background:var(--color-accent)}.tier-bar-upcoming{background:var(--color-inactive)}.tier-bar-current{background:var(--color-good)}.tier-text-past-due{color:var(--color-bad)}.tier-text-urgent{color:var(--color-warn)}.tier-text-soon{color:var(--color-accent)}.tier-text-upcoming{color:var(--color-text-dim)}.tier-text-current{color:var(--color-good)}.renewals-modules{display:inline-flex;flex-wrap:wrap;gap:3px;max-width:360px;align-items:center}.renewals-more{font-family:var(--font-mono);font-size:var(--text-caption);background:var(--color-surface-sunken);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);padding:0 6px;color:var(--color-text-dim);cursor:help}.renewals-amount{display:flex;flex-direction:column;align-items:flex-end;line-height:1.25}.renewals-amount>span:first-child{font-weight:var(--font-medium)}.renewals-annual{font-size:var(--text-caption);color:var(--color-text-faint)}.renewals-actions{white-space:nowrap}.renewals-actions .btn-sm{margin-left:var(--space-1)}.bulk-bar{position:sticky;bottom:var(--space-4);margin-top:var(--space-4);display:inline-flex;align-items:center;gap:var(--space-3);background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-left:3px solid var(--color-accent);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--space-2) var(--space-4)}.site-ticket-row{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-4)}.site-manager-dd{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.site-ticket-inline{flex:0 0 auto}.ticket-preselected-site{height:var(--input-h-md);display:flex;align-items:center;padding:0 var(--space-3);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-sunken);color:var(--color-text)}.package-selector{display:inline-flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;background:var(--color-accent-soft);border:var(--border-width) solid var(--color-accent);border-radius:var(--radius-md);padding:var(--space-1) var(--space-3)}.package-label{font-family:var(--font-mono);font-size:var(--text-caption);text-transform:uppercase;letter-spacing:var(--tracking-wider);font-weight:var(--font-bold);color:var(--color-accent-dark)}.package-select{height:var(--input-h-sm);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);padding:0 var(--space-2);font-size:var(--text-body);font-weight:var(--font-medium)}.package-hint{font-size:var(--text-small);color:var(--color-text-dim)}.package-msg{font-size:var(--text-small);color:var(--color-good);font-weight:var(--font-medium)}.package-error{font-size:var(--text-small);color:var(--color-bad)}.toast-host{position:fixed;top:var(--space-4);right:var(--space-4);z-index:var(--z-toast);display:flex;flex-direction:column;gap:var(--space-2);width:min(380px,calc(100vw - 32px));pointer-events:none}.toast{pointer-events:auto;display:flex;align-items:flex-start;gap:var(--space-3);background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-left:4px solid var(--color-inactive);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:var(--space-3) var(--space-4);animation:toast-in .16s ease-out}.toast-success{border-left-color:var(--color-good)}.toast-error{border-left-color:var(--color-bad)}.toast-info{border-left-color:var(--color-accent)}.toast-content{flex:1 1 auto;min-width:0}.toast-title{font-size:var(--text-body);font-weight:var(--font-semibold);color:var(--color-text)}.toast-success .toast-title{color:var(--color-good)}.toast-error .toast-title{color:var(--color-bad)}.toast-body{margin-top:2px;font-size:var(--text-small);color:var(--color-text-dim);line-height:1.45;word-break:break-word}.toast-close{flex:0 0 auto;border:0;background:transparent;cursor:pointer;color:var(--color-text-faint);font-size:16px;line-height:1;padding:0}.toast-close:hover{color:var(--color-text)}@keyframes toast-in{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}.send-success-state{margin-top:var(--space-4);background:var(--color-good-bg);border:var(--border-width) solid var(--color-good-border);border-radius:var(--radius-md);padding:var(--space-4)}.send-success-head{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3)}.send-success-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--radius-pill);background:var(--color-good);color:#fff;font-size:14px;font-weight:var(--font-bold);flex:0 0 auto}.send-success-title{font-size:var(--text-large);font-weight:var(--font-semibold);color:var(--color-good)}.send-success-tag{margin-left:auto;font-family:var(--font-mono);font-size:var(--text-caption);text-transform:uppercase;letter-spacing:var(--tracking-wider);color:var(--color-warn);background:var(--color-warn-bg);border:var(--border-width) solid var(--color-warn-border);border-radius:var(--radius-sm);padding:1px 6px}.send-success-row{display:flex;gap:var(--space-3);padding:var(--space-1) 0;font-size:var(--text-body)}.send-success-label{flex:0 0 70px;font-family:var(--font-mono);font-size:var(--text-caption);text-transform:uppercase;letter-spacing:var(--tracking-wider);color:var(--color-text-dim);padding-top:2px}.send-success-recipients{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:2px}.send-success-state .form-actions{margin-top:var(--space-4)}.send-error-state{margin-top:var(--space-4);background:var(--color-bad-bg);border:var(--border-width) solid var(--color-bad-border);border-radius:var(--radius-md);padding:var(--space-4)}.send-error-head{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2)}.send-error-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--radius-pill);background:var(--color-bad);color:#fff;font-size:13px;font-weight:var(--font-bold);flex:0 0 auto}.send-error-title{font-size:var(--text-large);font-weight:var(--font-semibold);color:var(--color-bad)}.send-error-tag{margin-left:auto;font-family:var(--font-mono);font-size:var(--text-caption);text-transform:uppercase;letter-spacing:var(--tracking-wider);color:var(--color-bad);background:var(--color-surface);border:var(--border-width) solid var(--color-bad-border);border-radius:var(--radius-sm);padding:1px 6px}.send-error-reason{margin:0;font-size:var(--text-body);color:var(--color-text);line-height:1.45;word-break:break-word}
