@import"https://fonts.googleapis.com/css2?family=DM+Serif+Display&family=Inter:wght@400;500;600;700&display=swap";:root,[data-theme=dark]{--bg:#0e0e10;--bg2:#131316;--card:#18181c;--hover:#202026;--text:#ede9e4;--secondary:#b3aea6;--muted:#7a746b;--border:#232228;--border-hover:#38363e;--accent:#c9843a;--accent-hover:#e09548;--accent-dim:rgba(201,132,58,.12);--accent-glow:rgba(201,132,58,.25);--success:#4ade80;--danger:#f87171;--warning:#fbbf24;--sidebar:linear-gradient(180deg,#18161a,#131316 40%,#0e0e10)}[data-theme=light]{--bg:#f2efeb;--bg2:#e8e4df;--card:#faf8f6;--hover:#dedad4;--text:#1a1714;--secondary:#514c45;--muted:#766f66;--border:#d6d1cb;--border-hover:#b8b3ac;--accent:#b8711f;--accent-hover:#9f5f10;--accent-dim:rgba(184,113,31,.1);--accent-glow:rgba(184,113,31,.2);--sidebar:linear-gradient(180deg,#e0dbd4,#e8e4df)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;background:var(--bg);color:var(--text);font:14px/1.5 Inter,system-ui,sans-serif}.btn{display:inline-flex;gap:6px;align-items:center;justify-content:center;border-radius:8px;border:1px solid var(--border);padding:7px 12px;font:500 13px Inter;cursor:pointer;background:var(--bg2);color:var(--secondary);transition:background .12s,color .12s,border-color .12s}.btn:hover{background:var(--hover);color:var(--text);border-color:var(--border-hover)}.btn:active{opacity:.85}.btn-primary{color:#fff;background:var(--accent);border-color:var(--accent)}.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);box-shadow:0 0 0 3px var(--accent-glow)}.btn-danger{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 30%,transparent);background:color-mix(in srgb,var(--danger) 8%,transparent)}.btn-danger:hover{background:color-mix(in srgb,var(--danger) 16%,transparent)}.form-label{display:grid;gap:5px;color:var(--secondary);font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.06em}.form-input{width:100%;padding:9px 10px;background:var(--bg);border:1px solid var(--border);border-radius:8px;color:var(--text);font:13px Inter}.form-input:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.login-page{min-height:100%;display:grid;place-items:center;padding:24px}.login-card{width:min(420px,100%);padding:32px;background:var(--card);border:1px solid var(--border);border-radius:12px;box-shadow:0 20px 60px #0008}.brand{display:flex;align-items:center;gap:10px}.brand strong{display:block;font-size:13px}.brand small{display:block;color:var(--accent);font-size:10px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.login-card h1{font:32px "DM Serif Display";margin:28px 0 4px}.login-card>p{color:var(--secondary);margin:0}.login-card form{display:grid;gap:16px;margin-top:26px}.error{color:var(--danger)!important}.app-shell{display:flex;height:100%;overflow:hidden}.sidebar{position:relative;display:flex;flex-direction:column;width:224px;min-width:224px;background:var(--sidebar);border-right:1px solid var(--border);transition:.2s}.sidebar.collapsed{width:56px;min-width:56px}.sidebar .brand{height:60px;padding:14px;border-bottom:1px solid var(--border);overflow:hidden;white-space:nowrap}.sidebar nav{padding:8px 0;overflow:auto}.nav-item{display:flex;align-items:center;gap:10px;margin:1px 8px;padding:9px 12px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--secondary);font-size:13px;font-weight:500;text-decoration:none;white-space:nowrap;cursor:pointer}.nav-item:hover{background:var(--hover);color:var(--text)}.nav-item.active{color:var(--accent);background:var(--accent-dim);border-color:color-mix(in srgb,var(--accent) 25%,transparent)}.sidebar.collapsed .brand{justify-content:center;padding:14px}.sidebar.collapsed .brand-text,.sidebar.collapsed .nav-item span{display:none}.sidebar.collapsed .nav-item{justify-content:center;padding:9px 0}.nav-separator{display:block;height:1px;background:var(--border);margin:8px 14px}.collapse{position:absolute;right:-10px;top:18px;width:20px;height:20px;border-radius:50%;border:1px solid var(--border);background:var(--card);color:var(--muted);cursor:pointer;display:grid;place-items:center}.workspace{min-width:0;display:flex;flex:1;flex-direction:column}.workspace header{height:52px;display:flex;align-items:center;justify-content:space-between;padding:0 24px;border-bottom:1px solid var(--border);background:var(--bg2)}.global-search{display:flex;align-items:center;gap:8px;width:min(400px,55vw);padding:7px 10px;background:var(--card);border:1px solid var(--border);border-radius:6px;color:var(--muted)}.global-search input,.table-toolbar input{width:100%;border:0;outline:0;background:transparent;color:var(--text);font:13px Inter}.header-tools{display:flex;align-items:center;gap:10px}.icon-button{display:grid;place-items:center;width:30px;height:30px;border:0;border-radius:6px;background:transparent;color:var(--secondary);cursor:pointer}.icon-button:hover{background:var(--hover);color:var(--text)}.user-chip{display:flex;align-items:center;gap:7px;color:var(--secondary);font-size:13px}.user-chip b{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:var(--accent-dim);color:var(--accent);font-size:10px}.content{overflow:auto;padding:24px}.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:22px}.page-heading h1{margin:0;font:26px "DM Serif Display";letter-spacing:-.01em}.page-heading p{margin:3px 0 0;color:var(--secondary);font-size:13px}.stat-card,.card{background:var(--card);border:1px solid var(--border);border-radius:12px;box-shadow:0 1px 3px #0004}.stat-card{padding:16px;border-top:2px solid transparent}.stat-card.accent{border-top-color:var(--accent)}.stat-card strong{display:block;font:28px "DM Serif Display"}.stat-card span{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.card{padding:16px}.card h2{font-size:14px;margin:0 0 14px}.badge{display:inline-flex;align-items:center;border:1px solid transparent;border-radius:100px;padding:2px 8px;font-size:11px;font-weight:500}.badge--accent{color:var(--accent);background:var(--accent-dim);border-color:color-mix(in srgb,var(--accent) 30%,transparent)}.badge--success{color:var(--success);background:#4ade801a}.badge--danger{color:var(--danger);background:#f871711a}.badge--warning{color:var(--warning);background:#fbbf241a}.badge--neutral{color:var(--secondary);background:var(--hover);border-color:var(--border)}.table-toolbar{display:flex;align-items:center;gap:8px;margin-bottom:12px;padding:7px 10px;background:var(--bg);border:1px solid var(--border);border-radius:8px;color:var(--muted)}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:620px}th{text-align:left;padding:9px 10px;border-bottom:1px solid var(--border);font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}td{padding:11px 10px;border-bottom:1px solid var(--border);color:var(--secondary)}tbody tr:hover{background:var(--hover)}td:first-child{color:var(--text)}.mono{font-family:ui-monospace,monospace;font-size:12px}.empty{color:var(--muted);text-align:center;padding:28px}@media(max-width:760px){.sidebar{width:56px;min-width:56px}.sidebar .brand-text,.sidebar .nav-item span{display:none}.sidebar .brand{justify-content:center;padding:14px}.sidebar .nav-item{justify-content:center;padding:9px 0}.content{padding:16px}.stat-grid{grid-template-columns:1fr}.user-chip{display:none}.global-search{width:60vw}.page-heading{align-items:center}}.dashboard-grid{display:grid;grid-template-columns:2fr 1fr;gap:16px}.muted{color:var(--secondary);padding:7px 0;border-bottom:1px solid var(--border)}.pipeline{display:grid;grid-template-columns:repeat(4,minmax(210px,1fr));gap:14px;overflow:auto}.pipeline-col{background:var(--bg2);border:1px solid var(--border);border-radius:10px;padding:12px;min-height:360px;transition:background .15s}.pipeline-col h2{margin:0 0 12px;font-size:12px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}.pipeline-card{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:11px;margin-bottom:9px;-webkit-user-select:none;user-select:none}.pipeline-card b,.pipeline-card span,.pipeline-card small{display:block}.pipeline-card span{font-size:13px;margin-top:4px}.pipeline-card small{color:var(--muted);margin-top:4px}@media(max-width:900px){.dashboard-grid{grid-template-columns:1fr}}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:flex-start;justify-content:center;padding:40px 20px;z-index:100;overflow-y:auto}.modal{background:var(--card);border:1px solid var(--border);border-radius:12px;width:100%;max-width:640px;box-shadow:0 24px 60px #0008;margin:auto}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}.modal-header h2{margin:0;font-size:16px;font-family:inherit}.modal-body{padding:20px;max-height:calc(90vh - 130px);overflow-y:auto}.modal-footer{display:flex;gap:8px;justify-content:flex-end;padding:14px 20px;border-top:1px solid var(--border)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px}.form-grid .full{grid-column:1/-1}.form-check{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--secondary);cursor:pointer}.form-check input[type=checkbox]{width:15px;height:15px;cursor:pointer;accent-color:var(--accent)}textarea.form-input{resize:vertical;min-height:80px}.form-section{border:0;border-top:1px solid var(--border);padding:16px 0;margin:0}.form-section legend{padding:0 8px 0 0;font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin-bottom:0}.tab-btn{padding:8px 14px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);font:500 13px Inter;cursor:pointer;margin-bottom:-1px}.tab-btn:hover{color:var(--text)}.tab-btn.active{color:var(--accent);border-bottom-color:var(--accent)}.timeline{display:flex;flex-direction:column;gap:0;padding-left:16px}.timeline-item{position:relative;padding:0 0 16px 24px}.timeline-item:before{content:"";position:absolute;left:0;top:6px;bottom:-4px;width:1px;background:var(--border)}.timeline-item:last-child:before{display:none}.timeline-dot{position:absolute;left:-4px;top:6px;width:9px;height:9px;border-radius:50%;background:var(--accent);border:2px solid var(--card)}.timeline-content{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:10px 12px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:var(--border);border:1px solid var(--border);border-radius:10px;overflow:hidden}.calendar-weekday{background:var(--bg2);padding:8px;font-size:11px;font-weight:600;color:var(--muted);text-align:center;text-transform:uppercase;letter-spacing:.06em}.calendar-cell{background:var(--card);min-height:90px;padding:6px;position:relative}.calendar-cell.empty-cell{background:var(--bg)}.calendar-cell.today .calendar-day-num{background:var(--accent);color:#fff;border-radius:50%;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center}.calendar-day-num{font-size:12px;font-weight:500;margin-bottom:4px;display:inline-block;width:22px;height:22px;line-height:22px;text-align:center}.calendar-events{display:flex;flex-direction:column;gap:2px}.calendar-event{font-size:10px;padding:2px 5px;border-radius:4px;background:var(--bg2);border-left:3px solid;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text);cursor:default}.stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:18px}.contacts-split{display:grid;grid-template-columns:340px 1fr;gap:0;background:var(--card);border:1px solid var(--border);border-radius:10px;overflow:hidden;min-height:600px}.contacts-list{border-right:1px solid var(--border);overflow-y:auto;display:flex;flex-direction:column}.contacts-detail{overflow:hidden;display:flex;flex-direction:column}.contact-card{padding:12px 16px;border-bottom:1px solid var(--border);cursor:pointer;transition:background .12s}.contact-card:hover{background:var(--bg2)}.contact-card.active{background:#c9843a14;border-left:3px solid var(--accent)}@media(max-width:800px){.contacts-split{grid-template-columns:1fr}.contacts-detail{display:none}}
