:root{--bg:#f6f1ea;--surface:#fffdf9;--surface-2:#f1e9de;--border:#e4d8c8;--text:#2c2621;--text-muted:#6f6356;--primary:#b4502c;--primary-hover:#9a4325;--primary-soft:#f3ddd2;--accent:#d9a441;--danger:#b23b3b;--ok:#4c8a5a;--success-soft:#dff0e2;--success-ink:#2f6b41;--warning-soft:#fbeacd;--warning-line:#f0d49c;--warning-strong:#c98a1b;--warning-ink:#8a5a12;--danger-soft:#f6d9d9;--danger-ink:#9a2f2f;--danger-line:#e07070;--fs-xs:.75rem;--fs-sm:.8125rem;--fs-md:.875rem;--fs-base:.9375rem;--fs-lg:1.25rem;--fs-xl:1.6rem;--fs-2xl:1.9rem;--radius:12px;--radius-sm:8px;--shadow:0 1px 2px #2c26210f, 0 8px 24px #2c26210f;--font:"Segoe UI", system-ui, -apple-system, sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0}h1{font-size:var(--fs-xl);margin:0 0 .25rem}h3{margin:0 0 .5rem}.muted{color:var(--text-muted)}.btn{font:inherit;border-radius:var(--radius-sm);cursor:pointer;border:1px solid #0000;padding:.55rem 1rem;transition:background .15s,border-color .15s,opacity .15s}.btn:disabled{opacity:.6;cursor:default}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-ghost{color:var(--text-muted);border-color:var(--border);background:0 0}.btn-ghost:hover{background:var(--surface-2);color:var(--text)}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}input:focus,select:focus,textarea:focus{outline:2px solid var(--primary-soft);outline-offset:0;border-color:var(--primary)}.auth-screen,.splash{place-items:center;min-height:100%;padding:2rem;display:grid}.splash{text-align:center;gap:1rem}.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:380px;box-shadow:var(--shadow);flex-direction:column;gap:1rem;padding:2rem;display:flex}.auth-brand{align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.auth-brand h1{font-size:var(--fs-lg);margin:0}.auth-brand p{font-size:var(--fs-md);margin:0}.auth-logo{background:var(--primary);color:#fff;border-radius:10px;place-items:center;width:40px;height:40px;font-size:1.1rem;font-weight:700;display:grid}.auth-logo.lg{width:56px;height:56px;font-size:1.5rem}.form-error{color:var(--danger);font-size:var(--fs-md);margin:0}.field{font-size:var(--fs-md);flex-direction:column;gap:.35rem;display:flex}.field input{font:inherit;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);padding:.55rem .7rem}.shell{grid-template-rows:minmax(0,1fr);grid-template-columns:240px minmax(0,1fr);height:100%;display:grid}.sidebar{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;gap:1.5rem;padding:1.25rem .9rem;display:flex}.sidebar-brand{align-items:center;gap:.6rem;padding:0 .4rem;font-weight:600;display:flex}.nav{flex-direction:column;gap:.15rem;display:flex}.nav-item{border-radius:var(--radius-sm);color:var(--text-muted);font-size:var(--fs-base);justify-content:space-between;align-items:center;padding:.55rem .7rem;text-decoration:none;display:flex}.nav-item:hover{background:var(--surface-2);color:var(--text)}.nav-item.active{background:var(--primary-soft);color:var(--primary-hover);font-weight:600}.nav-item.disabled{opacity:.6;cursor:default}.badge{font-size:var(--fs-xs);background:var(--surface-2);border:1px solid var(--border);color:var(--text-muted);border-radius:999px;padding:.1rem .45rem}.main{flex-direction:column;min-width:0;min-height:0;display:flex}.topbar{border-bottom:1px solid var(--border);background:var(--surface);justify-content:space-between;align-items:center;padding:.9rem 1.5rem;display:flex}.topbar-user{font-size:var(--fs-base);align-items:center;gap:1rem;display:flex}.content{flex:1;min-height:0;padding:1.75rem;overflow:auto}.page{max-width:1440px}.card-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-top:1.5rem;display:grid}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.25rem}.card-muted{opacity:.7}.card.placeholder{box-shadow:none;border-style:dashed;margin-top:1.5rem}.toolbar{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;display:flex}.table{border-collapse:collapse;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:100%;overflow:hidden}.table th,.table td{text-align:left;border-bottom:1px solid var(--border);font-size:var(--fs-base);vertical-align:middle;padding:.75rem 1rem}.table th{background:var(--surface-2);color:var(--text-muted);font-weight:600;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.03em}.table tr:last-child td{border-bottom:none}.small{font-size:var(--fs-sm)}.status-badge{font-size:var(--fs-xs);border-radius:999px;padding:.15rem .55rem;font-weight:600;display:inline-block}.status-active,.status-client{background:var(--success-soft);color:var(--success-ink)}.status-suspended,.status-prospect{background:var(--warning-soft);color:var(--warning-ink)}.status-revoked{background:var(--danger-soft);color:var(--danger-ink)}.status-expired{background:var(--surface-2);color:var(--text-muted)}.key-chip{white-space:nowrap;font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:var(--fs-sm);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;color:var(--text);padding:.25rem .5rem}.key-chip:hover{border-color:var(--primary)}.row-actions{white-space:nowrap;justify-content:flex-end;gap:.4rem;display:flex}.btn-sm{font-size:var(--fs-sm);padding:.3rem .6rem}.btn-danger{color:var(--danger);border-color:var(--border);background:0 0}.btn-danger:hover:not(:disabled){background:var(--danger-soft);border-color:var(--danger)}.modal-overlay{z-index:50;background:#2c262166;place-items:center;padding:1.5rem;display:grid;position:fixed;inset:0}.modal{background:var(--surface);border-radius:var(--radius);width:100%;max-width:520px;box-shadow:var(--shadow);flex-direction:column;gap:.85rem;max-height:90vh;padding:1.5rem;display:flex;overflow:auto}.modal h2{font-size:var(--fs-lg);margin:0}.form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.form-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.form-actions{justify-content:flex-end;gap:.6rem;margin-top:.5rem;display:flex}.field select,.field textarea{font:inherit;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);padding:.55rem .7rem}.field textarea{resize:vertical}.field input,.field select,.field textarea{width:100%;min-width:0}.crm{flex-direction:column;height:100%;display:flex}.crm-layout{flex:1;grid-template-columns:340px 1fr;gap:1rem;min-height:0;display:grid}.crm-list{flex-direction:column;min-height:0;padding:0;display:flex;overflow:hidden}.crm-search{border-bottom:1px solid var(--border);flex-direction:column;gap:.6rem;padding:.85rem;display:flex}.crm-search input{font:inherit;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);padding:.5rem .7rem}.crm-filters{gap:.3rem;display:flex}.crm-filter{font:inherit;font-size:var(--fs-xs);border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:999px;flex:1;padding:.3rem .4rem}.crm-filter.active{background:var(--primary-soft);color:var(--primary-hover);border-color:var(--primary-soft);font-weight:600}.crm-items{flex:1;min-height:0;overflow:auto}.crm-empty{font-size:var(--fs-md);padding:1rem}.contact-item{border:none;border-bottom:1px solid var(--border);width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border-left:3px solid #0000;align-items:center;gap:.7rem;padding:.7rem .85rem;display:flex}.contact-item:hover{background:var(--surface-2)}.contact-item:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.contact-item.active{background:var(--primary-soft);border-left-color:var(--primary)}.contact-item-main{flex:1;min-width:0}.contact-item-name{font-weight:600;font-size:var(--fs-base);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.contact-item-sub{font-size:var(--fs-sm);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.avatar{background:var(--primary-soft);width:38px;height:38px;color:var(--primary-hover);font-weight:700;font-size:var(--fs-md);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.avatar.lg{width:56px;height:56px;font-size:1.2rem}.avatar.archived{background:var(--surface-2);color:var(--text-muted)}.crm-detail{min-height:0;padding:0;overflow:auto}.empty-detail{text-align:center;height:100%;color:var(--text-muted);place-items:center;padding:2rem;display:grid}.empty-detail p{margin:.15rem 0}.detail-header{border-bottom:1px solid var(--border);align-items:flex-start;gap:1rem;padding:1.25rem;display:flex}.detail-identity{flex:1;min-width:0}.detail-identity h2{font-size:var(--fs-lg);margin:0}.detail-role{color:var(--text-muted);font-size:var(--fs-base);flex-wrap:wrap;align-items:center;gap:.15rem;margin:.15rem 0 .6rem;display:flex}.detail-actions{flex-wrap:wrap;gap:.4rem;display:flex}.detail-contacts{border-bottom:1px solid var(--border);font-size:var(--fs-base);flex-wrap:wrap;gap:.6rem 1.5rem;padding:1rem 1.25rem;display:flex}.detail-contacts a{color:var(--primary);text-decoration:none}.detail-contacts a:hover{text-decoration:underline}.detail-field-label{color:var(--text-muted);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.03em;margin-bottom:.15rem;display:block}.chip{background:var(--surface-2);border:1px solid var(--border);font-size:var(--fs-sm);color:var(--text);border-radius:999px;align-items:center;gap:.3rem;padding:.1rem .6rem;display:inline-flex}.detail-section{padding:1.25rem}.detail-section h3{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);margin-bottom:.75rem}.detail-notes{white-space:pre-wrap;font-size:var(--fs-base);line-height:1.5}.composer{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);flex-direction:column;gap:.6rem;margin-bottom:1.25rem;padding:.75rem;display:flex}.composer-row{grid-template-columns:130px 200px 1fr;gap:.5rem;display:grid}.composer select,.composer input,.composer textarea{font:inherit;font-size:var(--fs-md);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);padding:.45rem .6rem}.composer textarea{resize:vertical}.composer-actions{justify-content:flex-end;display:flex}.timeline{flex-direction:column;display:flex}.timeline-item{gap:.75rem;display:flex}.timeline-icon{background:var(--surface-2);border:1px solid var(--border);width:34px;height:34px;font-size:var(--fs-base);border-radius:50%;flex-shrink:0;place-items:center;margin-top:.4rem;display:grid}.timeline-body{border-bottom:1px solid var(--border);flex:1;min-width:0;padding:.5rem 0 .75rem}.timeline-item:last-child .timeline-body{border-bottom:none}.timeline-head{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.timeline-head strong{font-size:var(--fs-base)}.timeline-body p{font-size:var(--fs-base);white-space:pre-wrap;margin:.25rem 0 .4rem;line-height:1.5}.timeline-meta{align-items:center;gap:.6rem;display:flex}.link-danger{color:var(--danger);cursor:pointer;font:inherit;font-size:var(--fs-sm);background:0 0;border:none;padding:0}.link-danger:hover{text-decoration:underline}.crm-listmeta{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:.45rem .85rem;display:flex}.crm-listmeta select{font:inherit;font-size:var(--fs-xs);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-muted);cursor:pointer;padding:.2rem .4rem}.dropzone{border:2px dashed var(--border);border-radius:var(--radius-sm);text-align:center;color:var(--text-muted);font-size:var(--fs-base);cursor:pointer;margin-bottom:.85rem;padding:1.4rem 1rem;transition:border-color .15s,background .15s,color .15s}.dropzone strong{color:var(--text)}.dropzone:hover{border-color:var(--primary);background:var(--surface-2)}.dropzone:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.dropzone.over{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-hover)}.dropzone.over strong{color:var(--primary-hover)}.dropzone.busy{opacity:.7;cursor:default}.org-status-select{font:inherit;font-size:var(--fs-xs);border:1px solid var(--border);background:var(--surface-2);color:var(--text);cursor:pointer;border-radius:999px;margin-top:.15rem;padding:.15rem .4rem}.file-list{flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.file-item{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);align-items:center;gap:.75rem;padding:.45rem .65rem;display:flex}.file-name{text-align:left;min-width:0;font:inherit;font-size:var(--fs-md);color:var(--primary);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:none;flex:1;padding:0;overflow:hidden}.file-name:hover{text-decoration:underline}.modal-sm{max-width:420px}.modal-subtitle{font-size:var(--fs-md);margin:-.5rem 0 0}.confirm-message{font-size:var(--fs-base);line-height:1.55}.form-hint{font-size:var(--fs-sm);color:var(--warning-ink);margin:-.4rem 0 0}.btn-danger-solid{background:var(--danger);color:#fff}.btn-danger-solid:hover:not(:disabled){background:var(--danger-ink)}.mono{font-family:ui-monospace,Cascadia Code,Consolas,monospace}.toasts{z-index:60;pointer-events:none;flex-direction:column;align-items:flex-end;gap:.5rem;display:flex;position:fixed;bottom:1.25rem;right:1.25rem}.toast{border-radius:var(--radius-sm);border-left:4px solid var(--ok);background:var(--text);color:#fff;max-width:380px;box-shadow:var(--shadow);font-size:var(--fs-md);padding:.65rem 1rem;line-height:1.4;animation:.18s ease-out toast-in}.toast-error{border-left-color:var(--danger-line)}.toast-info{border-left-color:var(--accent)}@keyframes toast-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.alert{border-radius:var(--radius-sm);font-size:var(--fs-base);border:1px solid;margin-bottom:1rem;padding:.7rem 1rem}.alert-warning{background:var(--warning-soft);border-color:var(--warning-line);color:var(--warning-ink)}.org-cell{flex-direction:column;align-items:flex-start;gap:.15rem;display:flex}.table tr.row-expanded td{border-bottom-color:#0000}.seats-toggle{white-space:nowrap;font:inherit;font-size:var(--fs-md);border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:999px;align-items:center;gap:.35rem;padding:.2rem .55rem;font-weight:600;display:inline-flex}.seats-toggle:hover{border-color:var(--primary)}.seats-toggle.full{background:var(--warning-soft);border-color:var(--warning-line);color:var(--warning-ink)}.expiry-hint{color:var(--text-muted)}.expiry-hint.warning{color:var(--warning-ink);font-weight:600}.expiry-hint.danger{color:var(--danger)}.table .subrow td{background:var(--surface-2);padding:.75rem 1rem .9rem}.activations-empty{margin:0}.activation-list{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.activation-item{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);grid-template-columns:minmax(180px,1.4fr) 80px 1fr 1fr auto auto;align-items:center;gap:.75rem;padding:.5rem .75rem;display:grid}.activation-name{flex-direction:column;min-width:0;display:flex}.activation-name strong{font-size:var(--fs-base);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.activation-stale{color:var(--warning-ink);font-weight:600}.card-title{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);margin:0 0 .85rem;font-weight:600}.card-head{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.85rem;display:flex}.card-head .card-title{margin:0}.page a,.org-link{color:var(--primary);text-decoration:none}.page a:hover{text-decoration:underline}.org-link{font-weight:600}.chip-link{text-decoration:none}.chip-link:hover{border-color:var(--primary);color:var(--primary-hover)}.back-link{font-size:var(--fs-md);margin-bottom:.75rem;display:inline-block}.title-row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.title-row h1{margin:0}.toolbar-actions{flex-shrink:0;gap:.5rem;display:flex}.avatar.sm{width:32px;height:32px;font-size:var(--fs-xs)}.seat-meter{background:var(--primary-soft);appearance:none;border:none;border-radius:999px;width:100%;height:6px;margin-top:.35rem;display:block;overflow:hidden}.seat-meter::-webkit-progress-bar{background:var(--primary-soft);border-radius:999px}.seat-meter::-webkit-progress-value{background:var(--primary);border-radius:999px}.seat-meter::-moz-progress-bar{background:var(--primary);border-radius:999px}.seat-meter.full{background:var(--warning-soft)}.seat-meter.full::-webkit-progress-bar{background:var(--warning-soft)}.seat-meter.full::-webkit-progress-value{background:var(--warning-strong)}.seat-meter.full::-moz-progress-bar{background:var(--warning-strong)}.stat-row{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-bottom:1rem;display:grid}.stat-tile{background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);color:var(--text);flex-direction:column;gap:.2rem;padding:1rem 1.15rem;text-decoration:none;transition:border-color .15s;display:flex}.page a.stat-tile:hover{border-color:var(--primary);text-decoration:none}.stat-tile.stat-warning{border-left-color:var(--warning-strong)}.stat-label{font-size:var(--fs-md);color:var(--text-muted)}.stat-value{font-size:var(--fs-2xl);color:var(--text);font-weight:600;line-height:1.2}.stat-detail{font-size:var(--fs-sm);color:var(--text-muted)}.stat-warning .stat-detail{color:var(--warning-ink);font-weight:600}.dash-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:1rem;display:grid}.dash-stack{flex-direction:column;gap:1rem;display:flex}.dash-list{margin:0;padding:0;list-style:none}.dash-list li{border-bottom:1px solid var(--border);font-size:var(--fs-base);grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.5rem 0;display:grid}.dash-list li:last-child{border-bottom:none}.dash-list li>*{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.dash-when{text-align:right;color:var(--text-muted)}.dash-when.warning{color:var(--warning-ink);font-weight:600}.dash-when.danger{color:var(--danger);font-weight:600}.dash-interaction{align-items:center;gap:.45rem;display:flex}.org-pipeline{grid-template-columns:repeat(3,1fr);gap:.75rem;display:grid}.org-pipeline-item{flex-direction:column;align-items:flex-start;gap:.3rem;display:flex}.org-pipeline-count{font-size:var(--fs-xl);font-weight:600;line-height:1.1}.audit-list{margin:0;padding:0;list-style:none}.audit-list li{border-bottom:1px solid var(--border);padding:.5rem 0}.audit-list li:last-child{border-bottom:none}.audit-text{font-size:var(--fs-md);line-height:1.4}.org-layout{grid-template-columns:minmax(0,2fr) minmax(280px,1fr);align-items:start;gap:1rem;display:grid}.org-column{flex-direction:column;gap:1rem;min-width:0;display:flex}.license-cards{flex-direction:column;gap:1rem;display:flex}.license-card{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);flex-direction:column;gap:.75rem;padding:.9rem;display:flex}.license-card-head{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.license-card-head .row-actions{margin-left:auto}.license-facts{font-size:var(--fs-base);grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.license-notes{white-space:pre-wrap;margin:0}.person-list{margin:0;padding:0;list-style:none}.page a.person-row{border-radius:var(--radius-sm);color:var(--text);align-items:center;gap:.65rem;padding:.45rem .35rem;display:flex}.page a.person-row:hover{background:var(--surface-2);text-decoration:none}.person-text{flex-direction:column;min-width:0;display:flex}.person-text strong{font-size:var(--fs-base)}.person-text .small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.icon{flex-shrink:0}.nav-label{align-items:center;gap:.6rem;display:inline-flex}.nav-item .icon{opacity:.8}.nav-item.active .icon{opacity:1}.timeline-icon,.dash-interaction .icon{color:var(--text-muted)}@media (width<=1100px){.dash-grid,.org-layout{grid-template-columns:minmax(0,1fr)}.activation-item{grid-template-columns:minmax(0,1fr) auto}}@media (width<=800px){.shell{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.sidebar{border-right:none;border-bottom:1px solid var(--border);flex-direction:row;align-items:center;gap:1rem;padding:.6rem .9rem;overflow-x:auto}.sidebar-brand,.nav-item.disabled,.topbar-user .muted{display:none}.nav{flex-direction:row}.nav-item{white-space:nowrap}.topbar{padding:.6rem 1rem}.content{padding:1rem}.toolbar{flex-direction:column}.table{display:block;overflow-x:auto}.crm{height:auto}.crm-layout,.composer-row,.form-grid,.form-grid-2,.license-facts,.dash-list li{grid-template-columns:minmax(0,1fr)}.crm-list{max-height:45vh}.dash-when{text-align:left}}
