:root{--color-primary:#0f766e;--color-primary-hover:#115e59;--color-success:#16705f;--color-success-hover:#115447;--color-danger:#b42318;--color-danger-hover:#912018;--color-warning:#b7791f;--color-secondary:#526568;--color-secondary-hover:#3e5053;--color-ink:#102a2b;--color-ink-soft:#294548;--color-teal-soft:#e3f3f0;--color-bg-canvas:#f2f7f6;--color-text:#172f31;--color-text-muted:#617275;--color-text-light:#879798;--color-bg-light:#eef4f3;--color-bg-white:#fff;--color-border:#d5e2df;--color-border-light:#e4ecea;--color-border-input:#b8cbc7;--color-alert-error-bg:#fff1f0;--color-alert-error-text:#912018;--color-alert-error-border:#f3c5c0;--color-alert-success-bg:#edf8f4;--color-alert-success-text:#115447;--color-alert-success-border:#b9e1d5;--color-alert-warning-bg:#fff8e8;--color-alert-warning-text:#8a5a13;--color-alert-warning-border:#efd79b;--spacing-xs:.25rem;--spacing-sm:.5rem;--spacing-md:.75rem;--spacing-lg:1rem;--spacing-xl:1.5rem;--spacing-2xl:2rem;--radius-sm:8px;--radius-md:12px;--radius-pill:999px;--shadow-sm:0 1px 2px #102a2b0f;--shadow-md:0 10px 24px #102a2b14}.btn{padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-sm);cursor:pointer;border:none;font-size:1rem;font-weight:400;text-decoration:none;transition:background-color .2s;display:inline-block}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-sm{padding:var(--spacing-xs) var(--spacing-md);font-size:.875rem}.btn-lg{padding:var(--spacing-md) var(--spacing-xl);font-size:1rem;font-weight:700}.btn-full{width:100%}.btn-primary{background-color:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-hover)}.btn-success{background-color:var(--color-success);color:#fff}.btn-success:hover:not(:disabled){background-color:var(--color-success-hover)}.btn-danger{background-color:var(--color-danger);color:#fff}.btn-danger:hover:not(:disabled){background-color:var(--color-danger-hover)}.btn-secondary{background-color:var(--color-secondary);color:#fff}.form-group{margin-bottom:var(--spacing-lg)}.form-label{margin-bottom:var(--spacing-sm);font-weight:400;display:block}.form-label-bold{font-weight:700}.watchlist-age{color:var(--color-text-muted);white-space:nowrap;font-size:.85rem}.watchlist-age--stale{color:var(--color-danger);white-space:normal;font-weight:600}.watchlist-age__icon{margin-right:.25em}.watchlist-age--count:before{content:"· "}.form-input{width:100%;padding:var(--spacing-sm);border:1px solid var(--color-border-input);border-radius:var(--radius-sm);font-size:1rem}.form-input-lg{padding:var(--spacing-md)}.form-input:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 2px #007bff40}.form-select{width:100%;padding:var(--spacing-sm);border:1px solid var(--color-border-input);border-radius:var(--radius-sm);background-color:#fff;font-size:1rem}.form-grid{gap:var(--spacing-lg);grid-template-columns:1fr 1fr;display:grid}.table{border-collapse:collapse;width:100%}.table th,.table td{padding:var(--spacing-md);text-align:left}.table th{font-weight:700}.table tbody tr{border-bottom:1px solid var(--color-border)}.table tbody tr:hover{background-color:var(--color-bg-light)}.table-cell-right{text-align:right}.alert{padding:var(--spacing-lg);border-radius:var(--radius-sm);margin-bottom:var(--spacing-lg)}.alert-error{background-color:var(--color-alert-error-bg);color:var(--color-alert-error-text);border:1px solid var(--color-alert-error-border)}.alert-success{background-color:var(--color-alert-success-bg);color:var(--color-alert-success-text);border:1px solid var(--color-alert-success-border)}.alert-warning{background-color:var(--color-alert-warning-bg);color:var(--color-alert-warning-text);border:1px solid var(--color-alert-warning-border)}.card{padding:var(--spacing-xl);border:1px solid var(--color-border);border-radius:var(--radius-sm);background-color:var(--color-bg-white)}.card-clickable{cursor:pointer;transition:background-color .2s}.card-clickable:hover{background-color:var(--color-bg-light)}.card-selected{border-color:var(--color-primary);background-color:#e7f3ff}.card-warning{background-color:var(--color-alert-warning-bg)}.card-muted{background-color:var(--color-bg-light)}.card-header{margin-bottom:var(--spacing-sm);justify-content:space-between;align-items:start;display:flex}.card-grid{gap:var(--spacing-lg);display:grid}.badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:.85rem;display:inline-block}.badge-lg{padding:var(--spacing-sm) var(--spacing-lg);font-weight:700}.badge-primary{background-color:var(--color-primary);color:#fff}.badge-success{background-color:var(--color-success);color:#fff}.badge-danger{background-color:var(--color-danger);color:#fff}.badge-warning{background-color:var(--color-warning);color:#333}.badge-secondary{background-color:var(--color-secondary);color:#fff}.badge-muted{color:var(--color-text);background-color:#e9ecef}.flex{display:flex}.flex-col{flex-direction:column}.flex-between{justify-content:space-between;align-items:center;display:flex}.flex-center{justify-content:center;align-items:center;display:flex}.flex-gap-sm{gap:var(--spacing-sm)}.flex-gap-md{gap:var(--spacing-lg)}.flex-gap-lg{gap:var(--spacing-2xl)}.flex-1{flex:1}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.transfer-preview{border-left:4px solid var(--color-primary)}.transfer-preview h2{margin:0;font-size:1.15rem}.transfer-issues{max-height:10rem;padding-left:1.25rem;overflow:auto}.mb-0{margin-bottom:0}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-lg)}.mb-lg{margin-bottom:var(--spacing-2xl)}.mr-sm{margin-right:var(--spacing-sm)}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-lg)}.text-muted{color:var(--color-text-muted)}.text-sm{font-size:.9rem}.text-xs{font-size:.85rem}.text-bold{font-weight:700}.text-success{color:var(--color-success)}.text-danger{color:var(--color-danger)}.text-right{text-align:right}.text-center{text-align:center}.text-mono{word-break:break-all;font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.modal-overlay{z-index:1000;background-color:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{padding:var(--spacing-2xl);border-radius:var(--radius-md);background-color:#fff;max-width:600px;max-height:80vh;position:relative;overflow:auto}.modal-close{top:var(--spacing-lg);right:var(--spacing-lg);position:absolute}.tabs{gap:var(--spacing-lg);border-bottom:1px solid var(--color-border);margin-bottom:var(--spacing-2xl);display:flex}.tab-btn{padding:var(--spacing-md) var(--spacing-xl);cursor:pointer;color:var(--color-primary);background-color:#0000;border:none;border-bottom:2px solid #0000}.tab-btn-active{background-color:var(--color-primary);color:#fff;border-bottom-color:var(--color-primary)}.nav-header{padding:var(--spacing-lg);border-bottom:1px solid var(--color-border-light);background-color:var(--color-bg-light)}.nav-container{gap:var(--spacing-2xl);align-items:center;display:flex}.nav-links{gap:var(--spacing-sm) var(--spacing-2xl);flex-wrap:wrap;align-items:center;display:flex}.nav-brand{align-items:center;gap:var(--spacing-sm);font-size:1.2rem;font-weight:700;text-decoration:none;display:flex}.nav-brand__logo{width:2rem;height:2rem}.nav-link{color:var(--color-text);text-decoration:none}.nav-link:hover{color:var(--color-primary)}.page-container{flex-direction:column;min-height:100vh;display:flex}.page-main{padding:var(--spacing-2xl);flex:1;width:100%;max-width:1200px;margin:0 auto}.page-footer{padding:var(--spacing-lg);border-top:1px solid var(--color-border-light);text-align:center;background-color:var(--color-bg-light)}.page-header{margin-bottom:var(--spacing-2xl);justify-content:space-between;align-items:center;display:flex}.error-boundary{min-height:100vh;padding:var(--spacing-2xl);background-color:var(--color-bg-light);justify-content:center;align-items:center;display:flex}.error-boundary-content{text-align:center;max-width:600px;padding:var(--spacing-2xl);border-radius:var(--radius-md);box-shadow:var(--shadow-md);background-color:#fff}.error-boundary-content h1{color:var(--color-danger);margin-bottom:var(--spacing-lg)}.error-boundary-content p{color:var(--color-text-muted);margin-bottom:var(--spacing-lg)}.error-details{text-align:left;margin-bottom:var(--spacing-lg)}.error-details summary{cursor:pointer;color:var(--color-text-muted);margin-bottom:var(--spacing-sm)}.error-message,.error-stack{background-color:var(--color-bg-light);padding:var(--spacing-lg);border-radius:var(--radius-sm);text-align:left;margin-top:var(--spacing-sm);font-size:.875rem;overflow:auto}.error-actions{gap:var(--spacing-lg);justify-content:center;display:flex}.stat-card{padding:var(--spacing-xl);background-color:var(--color-bg-light);border-radius:var(--radius-sm)}.stat-label{color:var(--color-text-muted);margin-bottom:var(--spacing-sm);font-size:.9rem}.stat-value{font-size:2rem;font-weight:700}.page-loading{padding:var(--spacing-xl);text-align:center;color:var(--color-text-muted)}html{background:var(--color-bg-canvas)}body{background:var(--color-bg-canvas);color:var(--color-text);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}a,button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #0f766e47}.page-main h1,.page-main h2,.page-main h3,.page-main h4{color:var(--color-ink);letter-spacing:-.025em;line-height:1.15}.page-main h1{margin:0 0 .5rem;font-size:clamp(1.8rem,4vw,2.35rem)}.page-main h2{margin:2rem 0 .75rem;font-size:clamp(1.25rem,3vw,1.55rem)}.page-main h3{margin:0 0 1rem;font-size:1.1rem}.btn{border-radius:var(--radius-sm);letter-spacing:-.005em;min-height:42px;padding:.6rem .95rem;font-weight:650;transition:background-color .15s,border-color .15s,box-shadow .15s,transform .15s}.btn:not(:disabled):active{transform:translateY(1px)}.btn-primary{box-shadow:0 2px 5px #0f766e33}.btn-secondary{background-color:var(--color-ink-soft)}.btn-secondary:hover:not(:disabled){background-color:var(--color-ink)}.btn-sm{min-height:38px}.form-label{color:var(--color-ink-soft);letter-spacing:.025em;font-size:.78rem;font-weight:700;line-height:1.3}.form-input,.form-select{border:1px solid var(--color-border-input);border-radius:var(--radius-sm);background:var(--color-bg-white);min-height:44px;color:var(--color-text);padding:.65rem .75rem;transition:border-color .15s,box-shadow .15s}.form-input:focus,.form-select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #0f766e29}.form-grid{align-items:end}.card{border-color:var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.card-muted{background:#ffffffb8}.alert{border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);border-left-width:3px}.error-surface{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.error-surface__copy{min-width:0}.error-surface__copy strong{color:var(--color-ink);margin-bottom:.25rem;display:block}.error-surface__copy p{margin:0}.error-surface__details{color:var(--color-text-muted);margin-top:.65rem;font-size:.78rem}.error-surface__details summary{cursor:pointer;font-weight:650}.error-surface__details code{border-radius:var(--radius-sm);overflow-wrap:anywhere;background:#102a2b0f;max-width:58rem;margin-top:.4rem;padding:.55rem .65rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.72rem;display:block}.badge{border-radius:var(--radius-pill);letter-spacing:.02em;font-size:.73rem;font-weight:700}.badge-warning{color:#7a4b00;background:#fff8e8;border:1px solid #e4c77f}.flex-gap-sm,.flex-gap-md,.flex-gap-lg{flex-wrap:wrap;align-items:center;display:flex}.page-container{background:var(--color-bg-canvas)}.nav-header{z-index:20;background:var(--color-ink);border-bottom:1px solid #ffffff1f;padding:0;position:sticky;top:0;box-shadow:0 2px 12px #102a2b1f}.nav-container{width:min(1240px,100%);min-height:68px;margin:0 auto;padding:.65rem 1.5rem}.nav-links{flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:1rem;width:100%;min-width:0;display:flex}.nav-brand{color:#fff;letter-spacing:-.015em;flex:none;font-size:1rem;font-weight:750}.nav-brand:hover{color:#fff}.nav-brand__logo{filter:saturate(.9);width:2.15rem;height:2.15rem}.nav-brand__name{white-space:nowrap}.nav-workspace{justify-content:flex-end;align-items:center;gap:.25rem;min-width:0;display:flex}.nav-link{border-radius:var(--radius-sm);color:#ffffffb8;white-space:nowrap;border:1px solid #0000;align-items:center;min-height:42px;padding:.5rem .75rem;font-size:.82rem;font-weight:650;transition:background-color .15s,color .15s;display:inline-flex}.nav-link:hover{color:#fff;background:#ffffff1a}.nav-link--active{color:#b9f2e9;background:#2bb6a833;border-color:#70dacc38}.page-main{width:min(1240px,100%);min-width:0;max-width:none;padding:clamp(1.25rem,3vw,2.5rem) clamp(1rem,3vw,2.5rem) 3rem}.page-footer{border-top-color:var(--color-border);background:var(--color-ink);color:#ffffffa8;padding:1.25rem 1rem}.page-footer small{letter-spacing:.01em;font-size:.75rem}.page-footer__source{color:inherit;text-underline-offset:.2em;text-decoration:underline}.page-footer__source:hover,.page-footer__source:focus-visible{color:#fff}.page-header{gap:1rem}.table{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-white);box-shadow:var(--shadow-sm);overflow:hidden}.table-scroll{border-radius:var(--radius-md);-webkit-overflow-scrolling:touch;max-width:100%;overflow-x:auto}.table-scroll:focus-visible{outline-offset:3px;outline:3px solid #0f766e47}.table th{background:var(--color-bg-light);color:var(--color-text-muted);letter-spacing:.045em;text-transform:uppercase;font-size:.72rem}.table thead tr{border-bottom:1px solid var(--color-border)}.table tbody tr:last-child{border-bottom:0}.table tbody tr:hover{background:var(--color-teal-soft)}@media (max-width:760px){.nav-container{padding:.55rem .75rem}.nav-links{flex-wrap:wrap;align-items:stretch;gap:.3rem .5rem}.nav-brand{width:100%;min-height:34px}.nav-brand__logo{width:1.9rem;height:1.9rem}.nav-brand__name{text-overflow:ellipsis;max-width:7.4rem;overflow:hidden}.nav-workspace{flex:none;justify-content:space-between;gap:.1rem;width:100%;overflow:visible}.nav-link{flex:auto;justify-content:center;min-height:40px;padding:.45rem .5rem;font-size:.76rem}.form-grid{grid-template-columns:1fr;gap:.9rem}.page-header,.flex-between{flex-wrap:wrap;align-items:flex-start;gap:.75rem}.table{min-width:760px}}@media (max-width:480px){.nav-container{min-height:62px}.nav-brand__name{max-width:5.6rem;font-size:.88rem}.nav-link{padding-inline:.5rem;font-size:.72rem}.page-main{padding:1.15rem .85rem 2rem}.card{padding:1.1rem}.error-surface{flex-direction:column;align-items:stretch}.error-surface .btn,.customers-header-actions{width:100%}.customers-header-actions .btn{flex:30%}}
