*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--sidebar-width:220px;--header-height:48px;--color-bg:#f2f2f7;--color-surface:#fff;--color-surface-2:#f2f2f7;--color-surface-3:#e5e5ea;--color-surface-tint:#f8fafc;--color-sidebar:#1e293b;--color-sidebar-text:#cbd5e1;--color-sidebar-active:#fff;--color-primary:#1e293b;--color-primary-hover:#0f172a;--color-primary-tint:#1e293b0a;--color-accent:#2563eb;--color-on-primary:#fff;--color-text:#1e293b;--color-text-muted:#64748b;--color-text-subtle:#8e8e93;--color-border:#e5e5ea;--color-success:#34c759;--color-warning:#ff9500;--color-error:#ff3b30;--color-focus-ring:#1e293b1f;--color-success-bg:#dcfce7;--color-success-fg:#166534;--color-warning-bg:#fef3c7;--color-warning-fg:#92400e;--color-info-bg:#dbeafe;--color-info-fg:#1e40af;--color-danger-bg:#fef2f2;--color-danger-fg:#991b1b;--space-xs:4px;--space-sm:8px;--space-md:12px;--space-lg:16px;--space-xl:24px;--space-2xl:32px;--radius-xs:4px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-pill:999px;--radius:var(--radius-md);--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:ui-monospace, "SFMono-Regular", Menlo, monospace;--font-size-caption:12px;--font-size-footnote:13px;--font-size-body:15px;--font-size-callout:16px;--font-size-headline:17px;--font-size-title-3:20px;--font-size-title-2:22px;--font-size-title-1:28px;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--line-height-tight:1.25;--line-height-normal:1.4;--line-height-relaxed:1.55;--shadow-sm:0 1px 2px #0000000a;--shadow-md:0 4px 12px #0000000f;--shadow-lg:0 6px 16px #0f172a1f}body{font-family:var(--font-sans);font-size:var(--font-size-body);color:var(--color-text);background:var(--color-bg)}.app-layout{height:100vh;display:flex}.app-main{flex-direction:column;flex:1;display:flex;overflow:hidden}.app-content{padding:var(--space-xl);flex:1;overflow-y:auto}.sidebar{width:var(--sidebar-width);background:var(--color-sidebar);color:var(--color-sidebar-text);flex-direction:column;flex-shrink:0;display:flex}.sidebar-brand{padding:var(--space-lg) var(--space-xl);font-size:var(--font-size-headline);color:var(--color-sidebar-active);border-bottom:1px solid #ffffff1a;font-weight:700}.sidebar-nav{padding:var(--space-sm) 0;flex:1;list-style:none;overflow-y:auto}.sidebar-nav li a{padding:var(--space-sm) var(--space-xl);color:var(--color-sidebar-text);font-size:var(--font-size-footnote);text-decoration:none;transition:background .15s,color .15s;display:block}.sidebar-nav li a:hover{color:var(--color-sidebar-active);background:#ffffff14}.sidebar-nav li a.active{color:var(--color-sidebar-active);background:#ffffff1f;font-weight:600}.header{height:var(--header-height);background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:0 var(--space-xl);align-items:center;display:flex}.header-spacer{flex:1}.header-user{align-items:center;gap:var(--space-md);font-size:var(--font-size-footnote);color:var(--color-text-muted);display:flex}.header-logout{border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-xs) var(--space-md);font-size:var(--font-size-caption);cursor:pointer;color:var(--color-text-muted);background:0 0}.header-logout:hover{background:var(--color-bg)}.page{max-width:1200px}.page-header{align-items:baseline;gap:var(--space-md);margin-bottom:var(--space-xl);display:flex}.page-header h1{font-size:var(--font-size-title-2);font-weight:600}.page-count{font-size:var(--font-size-footnote);color:var(--color-text-muted)}.page-loading,.page-error{text-align:center;color:var(--color-text-muted);padding:40px}.page-error{color:var(--color-error)}.table-search{align-items:center;gap:var(--space-md);margin-bottom:var(--space-md);display:flex}.table-search-input{padding:7px var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius);font-size:var(--font-size-footnote);outline:none;width:260px;transition:border-color .15s}.table-search-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.table-search-count{font-size:var(--font-size-caption);color:var(--color-text-muted)}.table-filter-select{padding:7px var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius);font-size:var(--font-size-footnote);background:var(--color-surface);outline:none;transition:border-color .15s}.table-filter-select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.pdf-viewer{margin-top:var(--space-xl)}.pdf-viewer iframe{border:1px solid var(--color-border);border-radius:var(--radius);width:100%;height:800px}.picker-overlay{z-index:100;background:#0000004d;justify-content:flex-end;display:flex;position:fixed;inset:0}.picker-panel{background:var(--color-surface);flex-direction:column;width:420px;max-width:90vw;height:100vh;display:flex;box-shadow:-4px 0 16px #0000001f}.picker-header{padding:var(--space-lg) var(--space-xl);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.picker-header h3{font-size:var(--font-size-callout);margin:0;font-weight:600}.picker-close{font-size:var(--font-size-title-2);cursor:pointer;color:var(--color-text-muted);padding:0 var(--space-xs);background:0 0;border:none}.picker-close:hover{color:var(--color-text)}.picker-search{padding:var(--space-md) var(--space-xl) 0}.picker-nav{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-xl);font-size:var(--font-size-caption);display:flex}.picker-path{color:var(--color-text-muted);font-size:var(--font-size-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.picker-body{padding:var(--space-md) var(--space-xl) var(--space-xl);flex:1;overflow-y:auto}.picker-list{margin:0;padding:0;list-style:none}.picker-item{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:10px 0;display:flex}.picker-item:last-child{border-bottom:none}.picker-item-name{font-size:var(--font-size-body);font-weight:500}.picker-item-detail{font-size:var(--font-size-caption);color:var(--color-text-muted)}.picker-link-current{padding:10px var(--space-md);background:var(--color-info-bg);border-radius:var(--radius);margin-bottom:var(--space-md);font-size:var(--font-size-footnote)}.folder-summary{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-md) var(--space-lg);margin-bottom:var(--space-md);justify-content:space-between;align-items:center;display:flex}.folder-summary-info{align-items:center;gap:10px;display:flex}.folder-summary-icon{font-size:var(--font-size-title-3)}.folder-summary-name{font-size:var(--font-size-body);font-weight:600;display:block}.folder-summary-count{font-size:var(--font-size-caption);color:var(--color-text-muted);display:block}.drop-zone{border:2px dashed var(--color-border);border-radius:var(--radius);padding:var(--space-xl);text-align:center;margin-bottom:var(--space-lg);cursor:pointer;transition:border-color .15s,background .15s}.drop-zone:hover,.drop-zone-active{border-color:var(--color-primary);background:var(--color-primary-tint)}.drop-zone-icon{font-size:var(--font-size-title-1);margin-bottom:var(--space-xs);display:block}.drop-zone-text{font-size:var(--font-size-body);color:var(--color-text);margin-bottom:2px;font-weight:500}.drop-zone-subtext{font-size:var(--font-size-caption);color:var(--color-text-muted)}.drop-zone-browse{color:var(--color-primary);cursor:pointer;font-size:var(--font-size-caption);background:0 0;border:none;padding:0;text-decoration:underline}.drop-zone-browse:hover{color:var(--color-primary-hover)}.pending-files{margin-bottom:var(--space-lg)}.pending-files-header{margin-bottom:var(--space-sm);justify-content:space-between;align-items:center;display:flex}.pending-files-header h3{font-size:var(--font-size-body);font-weight:600}.pagination{margin-top:var(--space-md);font-size:var(--font-size-footnote);justify-content:space-between;align-items:center;display:flex}.pagination-info{color:var(--color-text-muted)}.pagination-buttons{align-items:center;gap:var(--space-sm);display:flex}.pagination-page{color:var(--color-text-muted);text-align:center;min-width:100px}.data-table{border-collapse:collapse;background:var(--color-surface);border-radius:var(--radius);width:100%;box-shadow:var(--shadow-sm);overflow:hidden}.data-table th{text-align:left;padding:10px var(--space-lg);font-size:var(--font-size-caption);text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);background:var(--color-bg);border-bottom:1px solid var(--color-border);font-weight:600}.data-table th.sortable-th{cursor:pointer;-webkit-user-select:none;user-select:none}.data-table th.sortable-th:hover{color:var(--color-text)}.sort-indicator{font-size:var(--font-size-caption);opacity:.7}.data-table td{padding:10px var(--space-lg);border-bottom:1px solid var(--color-border);font-size:var(--font-size-footnote)}.data-table tbody tr:hover{background:var(--color-surface-tint)}.data-table .empty-state{text-align:center;color:var(--color-text-muted);padding:var(--space-2xl)}.login-container{background:var(--color-bg);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card{background:var(--color-surface);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);width:100%;max-width:380px;padding:40px}.login-card h1{text-align:center;margin-bottom:var(--space-xl);font-size:var(--font-size-title-1)}.login-error{background:var(--color-danger-bg);color:var(--color-error);border-radius:var(--radius);font-size:var(--font-size-footnote);margin-bottom:var(--space-lg);padding:10px 14px}.form-group{margin-bottom:var(--space-lg)}.form-group label{font-size:var(--font-size-footnote);color:var(--color-text);margin-bottom:6px;font-weight:500;display:block}.form-group input{width:100%;padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius);font-size:var(--font-size-body);outline:none;transition:border-color .15s}.form-group input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}button[type=submit]{background:var(--color-primary);width:100%;color:var(--color-on-primary);border-radius:var(--radius);font-size:var(--font-size-body);cursor:pointer;border:none;padding:10px;font-weight:500;transition:background .15s}button[type=submit]:hover{background:var(--color-primary-hover)}button[type=submit]:disabled{opacity:.6;cursor:not-allowed}.btn{padding:7px var(--space-lg);border-radius:var(--radius);font-size:var(--font-size-footnote);cursor:pointer;border:1px solid #0000;align-items:center;gap:6px;font-weight:500;transition:background .15s,border-color .15s;display:inline-flex}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover)}.btn-secondary{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-bg)}.btn-danger{background:var(--color-surface);color:var(--color-error);border-color:var(--color-error)}.btn-danger:hover:not(:disabled){background:var(--color-danger-bg)}.page-header-spacer{flex:1}.page-header .btn+.btn{margin-left:var(--space-sm)}.data-table .clickable-row{cursor:pointer}.data-table .clickable-row:hover{background:var(--color-info-bg)}.detail-card{background:var(--color-surface);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:var(--space-xl)}.detail-fields{grid-template-columns:1fr;gap:0;display:grid}.detail-row{border-bottom:1px solid var(--color-border);padding:10px 0;display:flex}.detail-row:last-child{border-bottom:none}.detail-row dt{width:180px;font-size:var(--font-size-footnote);color:var(--color-text-muted);flex-shrink:0;font-weight:500}.detail-row dd{font-size:var(--font-size-body)}.text-muted{color:var(--color-text-muted)}.form-card{background:var(--color-surface);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:var(--space-xl);max-width:600px}.form-card .form-group{margin-bottom:var(--space-xl)}.form-value{padding:var(--space-sm) 0;font-size:var(--font-size-body);font-weight:600}.form-group textarea{width:100%;padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius);font-size:var(--font-size-body);resize:vertical;outline:none;font-family:inherit;transition:border-color .15s}.form-group textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.form-group select{width:100%;padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius);font-size:var(--font-size-body);background:var(--color-surface);outline:none;transition:border-color .15s}.form-group select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.form-group .required{color:var(--color-error);margin-left:2px}.form-group.has-error input,.form-group.has-error select{border-color:var(--color-error)}.field-error{font-size:var(--font-size-caption);color:var(--color-error);margin-top:var(--space-xs);display:block}.form-actions{gap:var(--space-sm);margin-top:var(--space-xl);justify-content:flex-end;display:flex}.form-actions button[type=submit]{width:auto}.form-error{background:var(--color-danger-bg);color:var(--color-error);border-radius:var(--radius);font-size:var(--font-size-footnote);margin-bottom:var(--space-lg);padding:10px 14px}.form-checkbox{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-xl);display:flex}.form-checkbox input[type=checkbox]{width:16px;height:16px}.form-checkbox label{font-size:var(--font-size-body);cursor:pointer;font-weight:500}.line-items-section{margin-top:var(--space-xl)}.line-items-heading{font-size:var(--font-size-body);margin-bottom:var(--space-md);color:var(--color-text);font-weight:600}.status-badge{padding:2px var(--space-sm);border-radius:var(--radius-pill);font-size:var(--font-size-caption);text-transform:uppercase;letter-spacing:.3px;font-weight:600;display:inline-block}.status-badge.draft{background:var(--color-warning-bg);color:var(--color-warning-fg)}.status-badge.active,.status-badge.finalized{background:var(--color-success-bg);color:var(--color-success-fg)}.status-badge.pending-review{background:var(--color-warning-bg);color:var(--color-warning-fg)}.status-badge.ready{background:var(--color-info-bg);color:var(--color-info-fg)}.status-badge.billed,.status-badge.approved{background:var(--color-success-bg);color:var(--color-success-fg)}.status-badge.declined{background:var(--color-danger-bg,#fde8e8);color:var(--color-danger-fg,#9b1c1c)}.status-badge.in-review{background:var(--color-info-bg);color:var(--color-info-fg)}.li-cards-section{margin-top:var(--space-xl)}.li-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-lg);margin-bottom:var(--space-md)}.li-card-header{margin-bottom:var(--space-md);justify-content:space-between;align-items:center;display:flex}.li-card-num{font-size:var(--font-size-caption);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.li-card-row{gap:var(--space-md);margin-bottom:10px;display:flex}.li-card-row:last-child{margin-bottom:0}.li-card-field{flex:1;min-width:0}.li-card-field-wide{flex:1}.li-card-field-half{flex:2}.li-card-field label{font-size:var(--font-size-caption);text-transform:uppercase;letter-spacing:.3px;color:var(--color-text-muted);margin-bottom:var(--space-xs);font-weight:600;display:block}.li-card-checkbox-label{cursor:pointer;padding-top:var(--space-xs);align-items:center;gap:6px;font-size:var(--font-size-footnote)!important;text-transform:none!important;letter-spacing:0!important;display:flex!important}.li-card-checkbox-label input[type=checkbox]{width:16px;height:16px}.inline-line-items{margin-top:var(--space-xl)}.inline-li-header{margin-bottom:var(--space-md);justify-content:space-between;align-items:center;display:flex}.inline-li-header .line-items-heading{margin-bottom:0}.btn-sm{padding:var(--space-xs) 10px;font-size:var(--font-size-caption)}.inline-li-table-wrap{overflow-x:auto}.inline-li-table td{padding:var(--space-xs) 6px;vertical-align:middle}.inline-li-table th{padding:var(--space-sm) 6px}.inline-li-input{width:100%;padding:5px var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-xs);font-size:var(--font-size-footnote);background:var(--color-surface);outline:none;min-width:60px}.inline-li-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-focus-ring)}.inline-li-computed{padding:5px var(--space-sm);font-size:var(--font-size-footnote);color:var(--color-text);font-weight:500;display:block}.inline-li-remove{color:var(--color-text-muted);font-size:var(--font-size-headline);cursor:pointer;border-radius:var(--radius-xs);background:0 0;border:none;padding:2px 6px;line-height:1}.inline-li-remove:hover{background:var(--color-danger-bg);color:var(--color-error)}.form-page-wide{max-width:1200px}.form-page-wide .form-card{max-width:none}.form-header-grid{gap:0 var(--space-xl);grid-template-columns:1fr 1fr;display:grid}.form-header-grid .form-group{margin-bottom:var(--space-lg)}.form-header-grid .form-group.full-width{grid-column:1/-1}.complete-bar{align-items:center;gap:var(--space-md);margin-top:var(--space-xl);padding-top:var(--space-xl);border-top:1px solid var(--color-border);display:flex}.btn-success{background:var(--color-success);color:var(--color-on-primary);border-color:var(--color-success)}.btn-success:hover:not(:disabled){opacity:.92}.li-attachment,.li-att-info{align-items:center;gap:var(--space-xs);display:inline-flex}.li-att-link{font-size:var(--font-size-caption);color:var(--color-primary);text-overflow:ellipsis;white-space:nowrap;max-width:120px;text-decoration:none;display:inline-block;overflow:hidden}.li-att-link:hover{text-decoration:underline}.breadcrumb{font-size:var(--font-size-footnote);margin-bottom:var(--space-md)}.breadcrumb-link{color:var(--color-primary);text-decoration:none}.breadcrumb-link:hover{text-decoration:underline}.breadcrumb-sep{color:var(--color-text-muted);margin:0 6px}.breadcrumb-current{color:var(--color-text-muted)}.toast-container{top:var(--space-lg);right:var(--space-lg);z-index:1000;gap:var(--space-sm);flex-direction:column;max-width:380px;display:flex;position:fixed}.toast{padding:var(--space-md) var(--space-lg);border-radius:var(--radius);font-size:var(--font-size-footnote);box-shadow:var(--shadow-md);cursor:pointer;animation:.2s ease-out toast-in}@keyframes toast-in{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.toast-success{background:var(--color-success-bg);color:var(--color-success-fg);border-left:3px solid var(--color-success)}.toast-error{background:var(--color-danger-bg);color:var(--color-danger-fg);border-left:3px solid var(--color-error)}.toast-info{background:var(--color-info-bg);color:var(--color-info-fg);border-left:3px solid var(--color-accent)}.contacts-section{margin-top:var(--space-xl)}.scout-tray{--scout-width:420px;background:var(--color-surface);border-left:1px solid var(--color-border);flex-shrink:0;width:0;transition:width .22s cubic-bezier(.22,1,.36,1);overflow:hidden}.scout-tray-open{width:var(--scout-width)}.scout-tray-inner{width:var(--scout-width);background:var(--color-surface);flex-direction:column;height:100%;display:flex}.scout-tray-header{border-bottom:1px solid var(--color-border);flex-shrink:0;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.scout-tray-header-actions{align-items:center;gap:6px;display:flex}.scout-tray-new{border:1px solid var(--color-border);border-radius:var(--radius);font:inherit;font-size:var(--font-size-caption);color:var(--color-text-muted);cursor:pointer;background:0 0;padding:2px 10px}.scout-tray-new:hover{background:var(--color-bg);color:var(--color-text)}.scout-history{position:relative}.scout-history-toggle{border:1px solid var(--color-border);border-radius:var(--radius);font:inherit;font-size:var(--font-size-caption);color:var(--color-text-muted);cursor:pointer;background:0 0;padding:2px 10px}.scout-history-toggle:hover{background:var(--color-bg);color:var(--color-text)}.scout-history-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);width:260px;max-height:360px;box-shadow:var(--shadow-lg);padding:var(--space-xs);z-index:50;position:absolute;top:calc(100% + 4px);right:0;overflow-y:auto}.scout-history-new{text-align:left;width:100%;padding:var(--space-sm) 10px;font:inherit;font-size:var(--font-size-footnote);color:var(--color-text);cursor:pointer;border-radius:var(--radius-xs);background:0 0;border:none;display:block}.scout-history-new:hover:not(:disabled){background:var(--color-bg)}.scout-history-new:disabled{color:var(--color-text-muted);cursor:not-allowed}.scout-history-sep{border-top:1px solid var(--color-border);margin:var(--space-xs) 0}.scout-history-label{font-size:var(--font-size-caption);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;padding:var(--space-xs) 10px}.scout-history-list{margin:0;padding:0;list-style:none}.scout-history-item{text-align:left;width:100%;font:inherit;cursor:pointer;border-radius:var(--radius-xs);background:0 0;border:none;padding:6px 10px;display:block}.scout-history-item:hover{background:var(--color-bg)}.scout-history-title{font-size:var(--font-size-footnote);color:var(--color-text);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.35;display:-webkit-box;overflow:hidden}.scout-history-meta{font-size:var(--font-size-caption);color:var(--color-text-muted);margin-top:2px}.scout-tray-title{font-size:var(--font-size-body);letter-spacing:.01em;margin:0;font-weight:600}.scout-tray-close{font-size:var(--font-size-title-2);color:var(--color-text-muted);cursor:pointer;padding:0 var(--space-xs);border-radius:var(--radius-xs);background:0 0;border:none;line-height:1}.scout-tray-close:hover{background:var(--color-bg);color:var(--color-text)}.scout-tray-body{padding:var(--space-md) 14px;flex-direction:column;flex:1;gap:10px;display:flex;overflow-y:auto}.scout-tray-form{gap:var(--space-sm);padding:10px var(--space-md);border-top:1px solid var(--color-border);background:var(--color-surface);flex-direction:column;flex-shrink:0;display:flex}.scout-tray-form-actions{justify-content:flex-end;gap:6px;display:flex}.scout-tray-form-actions button{width:auto}.header-scout{border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-xs) var(--space-md);font:inherit;font-size:var(--font-size-footnote);color:var(--color-text);cursor:pointer;margin-right:var(--space-md);background:0 0;transition:background .15s,color .15s,border-color .15s}.header-scout:hover{background:var(--color-bg)}.header-scout.is-open{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.scout-empty{color:var(--color-text-muted);padding:var(--space-md) 0;font-style:italic;font-size:var(--font-size-footnote)}.scout-thinking{color:var(--color-text-muted);font-size:var(--font-size-footnote);padding:10px var(--space-xs);align-items:center;gap:10px;display:flex}.scout-thinking-dots{gap:var(--space-xs);display:inline-flex}.scout-thinking-dots>span{background:var(--color-primary);opacity:.25;border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite scout-dot-pulse}.scout-thinking-dots>span:nth-child(2){animation-delay:.18s}.scout-thinking-dots>span:nth-child(3){animation-delay:.36s}.scout-thinking-label{font-style:italic}@keyframes scout-dot-pulse{0%,80%,to{opacity:.25;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.scout-user-row{justify-content:flex-end;margin-top:6px;display:flex}.scout-user-bubble{background:var(--color-primary);max-width:86%;color:var(--color-on-primary);padding:var(--space-sm) var(--space-md);font-size:var(--font-size-footnote);white-space:pre-wrap;word-wrap:break-word;border-radius:14px 14px 2px;line-height:1.45}.scout-agent-block,.scout-lane{gap:var(--space-sm);flex-direction:column;display:flex}.scout-lane-sub{margin-left:var(--space-lg);padding-left:var(--space-md);border-left:2px solid var(--color-border)}.scout-lane-header{font-size:var(--font-size-caption);color:var(--color-text-muted);text-transform:lowercase;letter-spacing:.02em;margin-bottom:2px}.scout-lane-agent{font-family:var(--font-mono);color:var(--color-text)}.scout-turn{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius);padding:10px var(--space-md)}.scout-turn-live{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-focus-ring)}.scout-turn-header{font-size:var(--font-size-caption);color:var(--color-text-muted);margin-bottom:var(--space-sm);justify-content:space-between;align-items:center;display:flex}.scout-turn-number{font-weight:600}.scout-turn-model{font-family:var(--font-mono)}.scout-turn-text{margin-top:var(--space-sm);line-height:1.55;font-size:var(--font-size-footnote)}.scout-turn-text>:first-child{margin-top:0}.scout-turn-text>:last-child{margin-bottom:0}.scout-turn-text p{margin:6px 0}.scout-turn-text h1,.scout-turn-text h2,.scout-turn-text h3,.scout-turn-text h4{margin:10px 0 var(--space-xs);font-weight:600;line-height:1.3}.scout-turn-text h1{font-size:var(--font-size-callout)}.scout-turn-text h2{font-size:var(--font-size-body)}.scout-turn-text h3,.scout-turn-text h4{font-size:var(--font-size-footnote)}.scout-turn-text strong{font-weight:600}.scout-turn-text em{font-style:italic}.scout-turn-text ul,.scout-turn-text ol{padding-left:var(--space-xl);margin:6px 0}.scout-turn-text li,.scout-turn-text li>p{margin:2px 0}.scout-turn-text code{font-family:var(--font-mono);font-size:var(--font-size-caption);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-xs);padding:1px 5px}.scout-turn-text pre{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-sm) 10px;margin:var(--space-sm) 0;font-size:var(--font-size-caption);line-height:1.45;overflow-x:auto}.scout-turn-text pre code{font-size:inherit;background:0 0;border:none;padding:0}.scout-turn-text blockquote{margin:var(--space-sm) 0;padding:0 var(--space-md);color:var(--color-text-muted);border-left:3px solid var(--color-border)}.scout-turn-text a{color:var(--color-primary);text-underline-offset:2px;text-decoration:underline;text-decoration-thickness:1px}.scout-turn-text a:hover{color:var(--color-primary-hover)}.scout-turn-text hr{border:0;border-top:1px solid var(--color-border);margin:10px 0}.scout-turn-text table{border-collapse:collapse;width:100%;margin:var(--space-sm) 0;font-size:var(--font-size-footnote)}.scout-turn-text th,.scout-turn-text td{border:1px solid var(--color-border);padding:var(--space-xs) var(--space-sm);text-align:left;vertical-align:top}.scout-turn-text th{background:var(--color-bg);font-weight:600}.scout-turn-text tr:nth-child(2n) td{background:var(--color-surface-tint)}.scout-approval{margin:var(--space-sm) 0;border:1px solid var(--color-border);border-left:4px solid var(--color-warning);border-radius:var(--radius);background:var(--color-warning-bg)}.scout-approval-approved{border-left-color:var(--color-success);background:var(--color-success-bg)}.scout-approval-rejected{border-left-color:var(--color-error);background:var(--color-danger-bg)}.scout-approval-timed_out{border-left-color:var(--color-text-subtle);background:var(--color-surface-tint);opacity:.85}.scout-approval-header{justify-content:space-between;align-items:baseline;gap:var(--space-sm);padding:var(--space-sm) var(--space-md) var(--space-xs);font-size:var(--font-size-caption);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);display:flex}.scout-approval-approved .scout-approval-status{color:var(--color-success);font-weight:600}.scout-approval-pending .scout-approval-status{color:var(--color-warning);font-weight:600}.scout-approval-rejected .scout-approval-status{color:var(--color-error);font-weight:600}.scout-approval-timed_out .scout-approval-status{color:var(--color-text-subtle)}.scout-approval-tool{font-family:var(--font-mono);text-transform:none;letter-spacing:0;font-size:var(--font-size-caption)}.scout-approval-summary{padding:0 var(--space-md) var(--space-sm);font-size:var(--font-size-footnote);color:var(--color-text);font-weight:600}.scout-approval-fields{padding:0 var(--space-md) var(--space-sm);gap:var(--space-xs) 10px;font-size:var(--font-size-footnote);grid-template-columns:110px 1fr;margin:0;display:grid}.scout-approval-field{display:contents}.scout-approval-fields dt{color:var(--color-text-muted);font-size:var(--font-size-caption);text-transform:uppercase;letter-spacing:.04em;padding-top:2px}.scout-approval-fields dd{word-break:break-word;font-family:var(--font-mono);font-size:var(--font-size-caption);margin:0}.scout-approval-empty{padding:var(--space-xs) var(--space-md) var(--space-sm);color:var(--color-text-muted);font-style:italic;font-size:var(--font-size-caption)}.scout-approval-form{padding:var(--space-xs) var(--space-md) var(--space-sm);gap:var(--space-sm);flex-direction:column;display:flex}.scout-approval-form-row{font-size:var(--font-size-footnote);flex-direction:column;gap:3px;display:flex}.scout-approval-form-label{font-size:var(--font-size-caption);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em}.scout-approval-form-label-changed:after{content:" · edited";color:var(--color-warning);font-weight:600}.scout-approval-form-row input[type=text],.scout-approval-form-row input[type=number],.scout-approval-form-textarea{border:1px solid var(--color-border);border-radius:var(--radius-xs);width:100%;font-family:var(--font-mono);font-size:var(--font-size-caption);background:var(--color-surface);color:var(--color-text);resize:vertical;padding:6px 10px}.scout-approval-form-row input[type=checkbox]{width:auto;margin-right:6px}.scout-approval-form-help{font-size:var(--font-size-caption);color:var(--color-text-muted)}.scout-approval-actions{padding:0 var(--space-md) 10px;align-items:center;gap:6px;display:flex}.scout-approval-actions-spacer{flex:1}.scout-approval-actions button{width:auto}.scout-approval-error{padding:6px var(--space-md);color:var(--color-error);font-size:var(--font-size-caption)}.scout-approval-diff-note{padding:0 var(--space-md) 10px;font-size:var(--font-size-caption);color:var(--color-text-muted);font-style:italic}.scout-record{margin:var(--space-sm) 0 2px;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);overflow:hidden}.scout-record-header{align-items:baseline;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--color-bg);border-bottom:1px solid var(--color-border);flex-wrap:wrap;display:flex}a.scout-record-header-link{color:inherit;cursor:pointer;text-decoration:none;transition:background .15s}a.scout-record-header-link:hover{background:var(--color-info-bg)}a.scout-record-header-link:hover .scout-record-name{text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}.scout-record-entity{font-size:var(--font-size-caption);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);font-weight:600}.scout-record-number{font-family:var(--font-mono);font-size:var(--font-size-footnote);color:var(--color-primary);font-weight:600}.scout-record-name{font-size:var(--font-size-footnote);color:var(--color-text);font-weight:600}.scout-record-fields{padding:var(--space-sm) var(--space-md);gap:var(--space-xs) var(--space-md);font-size:var(--font-size-footnote);grid-template-columns:88px 1fr;margin:0;display:grid}.scout-record-fields dt{color:var(--color-text-muted);font-size:var(--font-size-caption);text-transform:uppercase;letter-spacing:.04em;padding-top:2px}.scout-record-fields dd{word-break:break-word;min-width:0;margin:0}.scout-record-fields code{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-xs);font-family:var(--font-mono);font-size:var(--font-size-caption);padding:1px 5px}.scout-record-pill{padding:2px var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-bg);font-size:var(--font-size-caption);align-items:baseline;gap:6px;display:inline-flex}.scout-record-pill-entity{font-size:var(--font-size-caption);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted)}.scout-record-pill-number{font-family:var(--font-mono);color:var(--color-primary);font-weight:600}.scout-record-pill-name{color:var(--color-text)}.scout-record-copyable{cursor:pointer;transition:background .15s;position:relative}.scout-record-copyable:hover,.scout-record-copyable:focus{background:var(--color-info-bg);outline:none}.scout-record-copied{font-size:var(--font-size-caption);color:var(--color-text-muted);opacity:0;white-space:nowrap;margin-left:6px;padding:0 6px;transition:opacity .2s;position:absolute;top:-2px;right:-2px;transform:translate(100%)}.scout-record-copyable:hover .scout-record-copied,.scout-record-copyable:focus .scout-record-copied{opacity:1}.scout-turn-waiting{color:var(--color-text-muted);padding:var(--space-xs) 0;font-style:italic}.scout-tool-calls{gap:var(--space-xs);margin:0 0 var(--space-sm) 0;flex-direction:column;padding:0;list-style:none;display:flex}.scout-tool-call{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface-tint)}.scout-tool-call-ok{border-left:3px solid var(--color-success)}.scout-tool-call-error{border-left:3px solid var(--color-error)}.scout-tool-call-pending{border-left:3px solid var(--color-primary)}.scout-tool-call-toggle{align-items:center;gap:var(--space-sm);width:100%;font:inherit;text-align:left;cursor:pointer;color:var(--color-text);background:0 0;border:none;padding:6px 10px;display:flex}.scout-tool-call-toggle:hover{background:var(--color-info-bg)}.scout-tool-call-status{width:14px;font-family:var(--font-mono);color:var(--color-text-muted)}.scout-tool-call-ok .scout-tool-call-status{color:var(--color-success)}.scout-tool-call-error .scout-tool-call-status{color:var(--color-error)}.scout-tool-call-pending .scout-tool-call-status{color:var(--color-primary)}.scout-tool-call-name{font-family:var(--font-mono);font-size:var(--font-size-footnote);flex:1}.scout-tool-call-chevron{color:var(--color-text-muted);font-size:var(--font-size-caption)}.scout-tool-call-detail{padding:0 10px 10px var(--space-2xl);font-size:var(--font-size-caption)}.scout-tool-call-section+.scout-tool-call-section{margin-top:var(--space-sm)}.scout-tool-call-label{font-size:var(--font-size-caption);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px}.scout-tool-call-detail pre{padding:var(--space-sm) 10px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xs);white-space:pre-wrap;word-break:break-word;font-family:var(--font-mono);font-size:var(--font-size-caption);max-height:320px;margin:0;line-height:1.45;overflow-y:auto}.scout-error{background:var(--color-danger-bg);border:1px solid var(--color-error);border-left:3px solid var(--color-error);color:var(--color-danger-fg);border-radius:var(--radius);font-size:var(--font-size-footnote);padding:10px 14px}.scout-cancelled{color:var(--color-text-muted);padding:var(--space-xs) 0;font-style:italic}.scout-usage{color:var(--color-text-muted);font-size:var(--font-size-caption);font-family:var(--font-mono);padding:var(--space-xs) 0}.scout-prompt{width:100%;padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius);font-family:inherit;font-size:var(--font-size-body);background:var(--color-surface);color:var(--color-text);resize:none;min-height:36px;max-height:200px;line-height:1.45;overflow-y:auto}.scout-prompt:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-focus-ring);outline:none}.scout-prompt:disabled{background:var(--color-surface-3);color:var(--color-text-muted)}.cl-filters{gap:var(--space-md);padding:var(--space-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);margin-bottom:var(--space-md);flex-wrap:wrap;align-items:flex-end;display:flex}.cl-filter-group{flex-direction:column;flex:1;gap:4px;min-width:160px;display:flex}.cl-filter-group label{font-size:var(--font-size-caption);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.cl-filter-group input,.cl-filter-group select{padding:8px var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-footnote);background:var(--color-bg);color:var(--color-text)}.cl-filter-actions{align-items:flex-end;display:flex}.cl-bulk-actions{justify-content:space-between;align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--space-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);margin-bottom:var(--space-sm);display:flex}.cl-bulk-left,.cl-bulk-right{align-items:center;gap:var(--space-sm);display:flex}.cl-selected-count{color:var(--color-text-muted);font-size:var(--font-size-footnote)}.cl-results-summary{font-size:var(--font-size-footnote);color:var(--color-text-muted);margin-bottom:var(--space-sm)}.cl-pagination{margin-top:var(--space-md);justify-content:space-between;align-items:center;display:flex}.cl-pagination-info{font-size:var(--font-size-footnote);color:var(--color-text-muted)}.cl-pagination-controls{flex-wrap:wrap;gap:4px;display:flex}.cl-empty-state{text-align:center;padding:var(--space-2xl);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius)}.cl-empty-state h3{margin:0 0 var(--space-sm)}.cl-empty-state p{color:var(--color-text-muted);margin:0 0 var(--space-md)}.cl-empty-actions{gap:var(--space-sm);justify-content:center;display:flex}.cl-edit-source{gap:var(--space-lg);padding:var(--space-sm) var(--space-md);background:var(--color-surface-tint);border:1px solid var(--color-border);border-radius:var(--radius);font-size:var(--font-size-footnote);color:var(--color-text-muted);margin-bottom:var(--space-md);display:flex}.cl-edit-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-md) var(--space-lg);margin-bottom:var(--space-md)}.cl-edit-section h3{margin:0 0 var(--space-md);font-size:var(--font-size-body);align-items:center;gap:var(--space-sm);display:flex}.cl-section-header{margin-bottom:var(--space-md);justify-content:space-between;align-items:center;display:flex}.cl-section-header h3{margin:0}.cl-section-badge{font-size:var(--font-size-caption);color:var(--color-text-muted);background:var(--color-surface-tint);text-transform:uppercase;letter-spacing:.5px;border-radius:999px;padding:2px 8px;font-weight:500}.cl-readonly-grid{gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid}.cl-readonly-item{flex-direction:column;gap:4px;display:flex}.cl-readonly-item label{font-size:var(--font-size-caption);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.cl-readonly-item span{font-size:var(--font-size-footnote);color:var(--color-text)}.cl-readonly-highlight span{color:var(--color-primary);font-weight:600}.cl-readonly-notes{margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--color-border)}.cl-readonly-notes label{font-size:var(--font-size-caption);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px;font-weight:600;display:block}.cl-readonly-notes p{font-size:var(--font-size-footnote);color:var(--color-text);margin:0}.cl-form-row{gap:var(--space-md);margin-bottom:var(--space-md);flex-wrap:wrap;display:flex}.cl-form-row:last-child{margin-bottom:0}.cl-field{flex-direction:column;flex:1;gap:4px;min-width:180px;display:flex}.cl-field-sm{flex:0 0 140px;min-width:110px}.cl-field-xs{flex:0 0 80px;align-items:flex-start;min-width:70px}.cl-field-full{flex:100%}.cl-field label{font-size:var(--font-size-caption);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.cl-field input,.cl-field select{padding:8px var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-footnote);background:var(--color-bg);color:var(--color-text)}.cl-field input.cl-calculated{background:var(--color-surface-tint);color:var(--color-text-muted);font-weight:500}.cl-field input[type=checkbox]{width:18px;height:18px;margin-top:6px}.cl-hint{font-size:var(--font-size-caption);color:var(--color-text-muted);margin:0}.required{color:var(--color-danger,#dc2626)}.cl-hours-summary{background:var(--color-surface-tint)}.cl-hours-grid{gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid}.cl-hours-item{flex-direction:column;gap:4px;display:flex}.cl-hours-label{font-size:var(--font-size-caption);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.cl-hours-value{font-size:var(--font-size-body);color:var(--color-text);font-weight:600}.cl-hours-value.cl-hours-ok{color:var(--color-success,#16a34a)}.cl-hours-value.cl-hours-over{color:var(--color-danger,#dc2626)}.cl-hours-warning{margin-top:var(--space-md);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);font-size:var(--font-size-footnote)}.cl-hours-success{color:var(--color-success,#16a34a);background:#16a34a1a}.cl-hours-info{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border)}.cl-hours-warn{color:#b45309;background:#d977061a}.cl-hours-error{color:var(--color-danger,#dc2626);background:#dc26261a}.cl-line-item-card{border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-md);margin-bottom:var(--space-sm);background:var(--color-bg)}.cl-line-item-header{margin-bottom:var(--space-sm);justify-content:space-between;align-items:center;display:flex}.cl-line-item-number{color:var(--color-text-muted);font-weight:600}.cl-empty{color:var(--color-text-muted);padding:var(--space-md);text-align:center;font-style:italic}.cl-line-items-total{justify-content:flex-end;gap:var(--space-xl);padding:var(--space-md);margin-top:var(--space-sm);border-top:1px solid var(--color-border);font-size:var(--font-size-body);display:flex}.cl-form-actions{padding:var(--space-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);justify-content:space-between;align-items:center;display:flex}.cl-save-status{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);margin-bottom:var(--space-md);font-size:var(--font-size-footnote)}.cl-save-status-success{color:var(--color-success,#16a34a);background:#16a34a1a}.cl-save-status-error{color:var(--color-danger,#dc2626);background:#dc26261a}
