:root{
  --bg:#f5f6f8; --panel:#ffffff; --ink:#0f172a; --ink-2:#475569; --ink-3:#94a3b8;
  --line:#e2e8f0; --accent:#4f46e5; --accent-soft:#eef2ff;
  --green:#16a34a; --green-soft:#dcfce7; --amber:#d97706; --amber-soft:#fef3c7;
  --red:#dc2626; --red-soft:#fee2e2; --grey:#64748b; --grey-soft:#f1f5f9;
  --radius:12px; --shadow:0 1px 2px rgba(15,23,42,.06),0 8px 24px rgba(15,23,42,.06);
}
*{box-sizing:border-box}
[hidden]{display:none !important}
html,body{height:100%}
body{
  margin:0;background:var(--bg);color:var(--ink);
  font:14px/1.5 "Inter","Segoe UI",system-ui,-apple-system,sans-serif;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3{margin:0}
code{background:var(--grey-soft);padding:1px 5px;border-radius:4px;font-size:12px}
.mono{font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}

/* ---------- Topbar ---------- */
.topbar{
  height:60px;display:flex;align-items:center;justify-content:space-between;
  padding:0 20px;background:var(--panel);border-bottom:1px solid var(--line);
  position:sticky;top:0;z-index:900;
}
.brand{display:flex;align-items:center;gap:12px}
.brand-mark{
  width:34px;height:34px;border-radius:9px;background:var(--accent);color:#fff;
  display:grid;place-items:center;font-weight:700;letter-spacing:.5px;font-size:13px;
}
.brand strong{display:block;font-size:15px;letter-spacing:-.2px}
.brand-sub{color:var(--ink-3);font-size:12px}
.topbar-actions{display:flex;align-items:center;gap:8px}

/* ---------- Layout ---------- */
.layout{display:grid;grid-template-columns:320px 1fr;gap:16px;padding:16px;align-items:start}
.sidebar{display:flex;flex-direction:column;gap:12px;position:sticky;top:76px;max-height:calc(100vh - 92px);overflow:auto;padding-right:2px}
.main{display:flex;flex-direction:column;gap:16px;min-width:0}
.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}
.card-title{font-size:13px;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--ink-2);margin-bottom:12px}
.section-title{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-3);margin:18px 0 8px}
.hint{color:var(--ink-3);font-size:12px}

/* ---------- Formulare ---------- */
.field{display:block;margin-bottom:10px}
.field>span{display:block;font-size:12px;font-weight:500;color:var(--ink-2);margin-bottom:4px}
.field input,.field select{
  width:100%;padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;
  font:inherit;color:var(--ink);outline:none;transition:border-color .15s,box-shadow .15s;
}
.field input:focus,.field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.field input[type=range]{padding:0}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.cap{font-style:normal;color:var(--green);font-size:11px;font-weight:600}

.btn{
  border:1px solid transparent;border-radius:8px;padding:9px 14px;font:inherit;font-weight:500;
  cursor:pointer;background:var(--grey-soft);color:var(--ink);transition:.15s;white-space:nowrap;
}
.btn:hover{filter:brightness(.97)}
.btn:disabled{opacity:.5;cursor:not-allowed}
.btn-primary{background:var(--accent);color:#fff}
.btn-ghost{background:#fff;border-color:var(--line);color:var(--ink-2)}
.btn-danger{background:var(--red-soft);color:var(--red)}
.btn-block{width:100%;margin-top:6px}
.btn-sm{padding:5px 10px;font-size:12px}

/* ---------- Fortschritt ---------- */
.progress-head{display:flex;justify-content:space-between;font-size:12px;color:var(--ink-2);margin-bottom:6px}
.progress{height:6px;border-radius:99px;background:var(--grey-soft);overflow:hidden}
.progress-bar{height:100%;width:0;background:var(--accent);transition:width .3s}
.progress-bar.indet{width:35%;animation:slide 1.4s ease-in-out infinite}
@keyframes slide{0%{margin-left:-35%}100%{margin-left:100%}}
.log{list-style:none;margin:10px 0 0;padding:0;max-height:140px;overflow:auto;font-size:12px;color:var(--ink-3)}
.log li{padding:2px 0;border-top:1px solid var(--line)}
.log li:first-child{border-top:0;color:var(--ink-2)}

/* ---------- KPI ---------- */
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;text-align:center}
.kpi{background:var(--grey-soft);border-radius:9px;padding:9px 4px}
.kpi span{display:block;font-size:18px;font-weight:650;letter-spacing:-.5px}
.kpi small{color:var(--ink-3);font-size:10px}

/* ---------- Karte ---------- */
.map-wrap{padding:0;overflow:hidden;position:relative}
#map{height:46vh;min-height:320px;width:100%;background:var(--grey-soft);z-index:1}
.map-legend{
  position:absolute;right:12px;bottom:12px;z-index:500;background:rgba(255,255,255,.94);
  border:1px solid var(--line);border-radius:9px;padding:8px 10px;display:flex;flex-direction:column;gap:4px;font-size:11px;color:var(--ink-2);
}
.dot{width:9px;height:9px;border-radius:50%;display:inline-block;margin-right:6px;vertical-align:-1px}
.dot-green{background:var(--green)}.dot-grey{background:var(--grey)}.dot-red{background:var(--red)}

/* ---------- Tabelle ---------- */
.list-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}
.list-head .card-title{margin:0}
.table-scroll{max-height:44vh;overflow:auto;border-radius:9px;border:1px solid var(--line)}
.table{width:100%;border-collapse:collapse;font-size:13px}
.table th{
  position:sticky;top:0;background:var(--grey-soft);text-align:left;padding:9px 12px;
  font-size:11px;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-2);
  border-bottom:1px solid var(--line);cursor:pointer;white-space:nowrap;z-index:2;
}
.table th:hover{color:var(--accent)}
.table td{padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:middle}
.table tbody tr{cursor:pointer}
.table tbody tr:hover{background:var(--accent-soft)}
.table tbody tr.active{background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--accent)}
.cell-name{font-weight:550}
.cell-sub{display:block;color:var(--ink-3);font-size:11px}
.empty{padding:26px;text-align:center;color:var(--ink-3)}

/* ---------- Badges ---------- */
.pill{display:inline-flex;align-items:center;gap:5px;border-radius:99px;padding:3px 9px;font-size:11px;font-weight:600;white-space:nowrap}
.pill-muted{background:var(--grey-soft);color:var(--ink-2)}
.pill-green{background:var(--green-soft);color:var(--green)}
.pill-amber{background:var(--amber-soft);color:var(--amber)}
.pill-red{background:var(--red-soft);color:var(--red)}
.pill-accent{background:var(--accent-soft);color:var(--accent)}
.score{font-weight:700;font-variant-numeric:tabular-nums}
.status-select{border:1px solid var(--line);border-radius:7px;padding:4px 6px;font:inherit;font-size:12px;background:#fff}

/* ---------- Detail-Flyout ---------- */
.overlay{position:fixed;inset:0;background:rgba(15,23,42,.35);z-index:1000;animation:fade .15s}
@keyframes fade{from{opacity:0}to{opacity:1}}
.detail{
  position:fixed;top:0;right:0;height:100vh;width:min(560px,100vw);background:var(--panel);
  border-left:1px solid var(--line);box-shadow:-12px 0 40px rgba(15,23,42,.14);
  z-index:1001;overflow:auto;animation:slidein .2s ease-out;
}
@keyframes slidein{from{transform:translateX(24px);opacity:.4}to{transform:none;opacity:1}}
.detail-head{padding:18px 20px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--panel);z-index:3}
.detail-head h2{font-size:18px;letter-spacing:-.3px;padding-right:36px}
.detail-close{position:absolute;top:16px;right:16px;border:0;background:var(--grey-soft);border-radius:8px;width:28px;height:28px;cursor:pointer;font-size:15px;color:var(--ink-2)}
.detail-body{padding:18px 20px 40px;display:flex;flex-direction:column;gap:18px}
.meta-grid{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;font-size:13px}
.meta-grid dt{color:var(--ink-3);font-size:12px}
.meta-grid dd{margin:0}
.block{border:1px solid var(--line);border-radius:10px;padding:14px}
.block h3{font-size:12px;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-2);margin-bottom:10px}
.score-row{display:flex;align-items:center;gap:14px}
.score-big{font-size:34px;font-weight:700;letter-spacing:-1px;line-height:1}
.score-bar{flex:1;height:8px;border-radius:99px;background:var(--grey-soft);overflow:hidden}
.score-bar i{display:block;height:100%;border-radius:99px}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.chip{background:var(--grey-soft);border-radius:7px;padding:4px 8px;font-size:11px;color:var(--ink-2)}
.pitch{background:var(--accent-soft);border:1px solid #c7d2fe;border-radius:10px;padding:14px}
.pitch p{margin:0 0 10px;font-size:14px;line-height:1.6}
.list-plain{margin:0;padding-left:18px;font-size:13px;color:var(--ink-2)}
.list-plain li{margin-bottom:4px}
.weak{border:1px solid var(--line);border-left-width:4px;border-radius:9px;padding:12px;margin-bottom:10px}
.weak.sev-Hoch{border-left-color:var(--red)}
.weak.sev-Mittel{border-left-color:var(--amber)}
.weak.sev-Niedrig{border-left-color:var(--grey)}
.weak-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:8px}
.weak-head h4{font-size:14px;margin:0}
.weak dl{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;margin:0;font-size:12.5px}
.weak dt{color:var(--ink-3);white-space:nowrap}
.weak dd{margin:0;color:var(--ink-2)}
a{color:var(--accent)}

/* ---------- Modal ---------- */
.modal{position:fixed;inset:0;background:rgba(15,23,42,.4);z-index:1100;display:grid;place-items:center;padding:20px}
.modal-box{width:min(560px,100%);max-height:88vh;overflow:auto;position:relative;padding-bottom:0}
.modal-close{position:absolute;top:14px;right:14px;border:0;background:var(--grey-soft);border-radius:8px;width:28px;height:28px;cursor:pointer;font-size:15px;color:var(--ink-2);z-index:4}
.modal-actions{
  display:flex;justify-content:flex-end;gap:8px;margin-top:18px;
  position:sticky;bottom:0;background:var(--panel);
  padding:12px 0;border-top:1px solid var(--line);
}

@media (max-width:1080px){
  .layout{grid-template-columns:1fr}
  .sidebar{position:static;max-height:none}
  #map{height:38vh}
}

/* Google-Maps-Attribution gemaess Vorgaben: unveraenderter Text, Roboto/Sans-Serif */
.gmp-attribution{font-family:Roboto,Sans-Serif;font-style:normal;font-weight:400;letter-spacing:normal;white-space:nowrap}

/* Ergebnis der Gemini-Diagnose */
.test-result{margin-top:10px;border:1px solid var(--line);border-radius:9px;padding:10px;font-size:12.5px;background:var(--grey-soft)}
.test-result ul{margin:0;padding-left:16px}
.test-result li{margin-bottom:4px}
.test-ok{color:var(--green);font-weight:600}
.test-fail{color:var(--red);font-weight:600}
.test-models{margin-top:8px;color:var(--ink-3);font-size:11px;word-break:break-word}

/* Verlauf gespeicherter Recherchen */
.runs{list-style:none;margin:0;padding:0;max-height:230px;overflow:auto}
.runs li{display:flex;align-items:center;gap:8px;padding:8px;border-radius:8px;cursor:pointer;border:1px solid transparent}
.runs li:hover{background:var(--accent-soft);border-color:#c7d2fe}
.runs li.active{background:var(--accent-soft);border-color:var(--accent)}
.runs .run-main{flex:1;min-width:0}
.runs .run-title{font-weight:550;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.runs .run-sub{color:var(--ink-3);font-size:11px}
.runs .run-del{border:0;background:transparent;color:var(--ink-3);cursor:pointer;font-size:15px;padding:2px 5px;border-radius:6px}
.runs .run-del:hover{background:var(--red-soft);color:var(--red)}
.runs .empty-hint{color:var(--ink-3);font-size:12px;padding:6px 2px}

/* ========================================================================== */
/* LeadScout 2.0 · gemeinsamer Team-Workspace                                 */
/* ========================================================================== */
:root{
  --bg:#f3f6fa;--panel:#fff;--ink:#15233b;--ink-2:#526078;--ink-3:#8995a9;
  --line:#dde4ed;--line-strong:#cbd5e1;--accent:#176b87;--accent-strong:#0f526c;
  --accent-soft:#e8f4f7;--navy:#10273b;--blue:#2d7ff9;--violet:#7656d8;
  --green:#168968;--green-soft:#e2f5ee;--amber:#c47a1b;--amber-soft:#fff1d7;
  --red:#c94b57;--red-soft:#feecef;--grey:#6b778c;--grey-soft:#f0f3f7;
  --radius:16px;--shadow:0 1px 2px rgba(16,39,59,.03),0 12px 34px rgba(34,55,82,.07);
}
body{background:linear-gradient(180deg,#f7f9fc 0,#f2f5f9 280px);color:var(--ink);letter-spacing:-.005em}
.topbar{
  height:72px;padding:0 28px;border-bottom:1px solid rgba(205,216,228,.9);
  box-shadow:0 4px 24px rgba(25,45,70,.04);background:rgba(255,255,255,.95);backdrop-filter:blur(14px)
}
.brand-button{border:0;background:transparent;padding:0;cursor:pointer;color:inherit;text-align:left}
.brand-mark{width:40px;height:40px;border-radius:13px;background:linear-gradient(145deg,#0f526c,#1f829d);box-shadow:0 8px 18px rgba(23,107,135,.23);position:relative}
.brand-mark:after{content:"";position:absolute;inset:6px;border:1px solid rgba(255,255,255,.25);border-radius:9px}
.brand-mark span{position:relative;z-index:1}
.brand-copy{display:block}.brand strong{font-size:16px}.brand-sub{text-transform:uppercase;letter-spacing:.13em;font-size:9px;font-weight:700;color:var(--accent)}
.main-nav{position:absolute;left:50%;transform:translateX(-50%);display:flex;align-items:center;padding:4px;background:#f0f4f7;border:1px solid #e4eaf0;border-radius:12px}
.nav-item{border:0;background:transparent;color:var(--ink-2);padding:8px 15px;border-radius:9px;font:inherit;font-size:13px;font-weight:650;cursor:pointer}
.nav-item.active{background:#fff;color:var(--accent-strong);box-shadow:0 2px 8px rgba(25,45,70,.09)}
.topbar-actions{gap:9px}.icon-btn{width:38px;height:38px;border:1px solid var(--line);background:#fff;border-radius:11px;color:var(--ink-2);font-size:19px;cursor:pointer;transform:rotate(180deg)}
.user-chip{border:0;background:transparent;display:flex;align-items:center;gap:9px;padding:3px 7px 3px 3px;border-radius:12px;cursor:pointer;text-align:left;color:inherit}
.user-chip:hover{background:var(--grey-soft)}
.user-avatar{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:var(--navy);color:#fff;font-size:11px;font-weight:750;letter-spacing:.06em}
.user-copy{display:flex;flex-direction:column;line-height:1.2}.user-copy strong{font-size:12px;max-width:110px;overflow:hidden;text-overflow:ellipsis}.user-copy small{font-size:10px;color:var(--ink-3);margin-top:3px}
.view-shell{width:min(1540px,100%);margin:0 auto;padding:34px 28px 46px}
body[data-view="dashboard"] .research-only{display:none!important}
.eyebrow{display:block;color:var(--accent);font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;margin-bottom:7px}
.dashboard-hero,.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:26px}
.dashboard-hero h1,.page-heading h1{font-size:32px;line-height:1.15;letter-spacing:-.035em;color:var(--navy)}
.dashboard-hero p,.page-heading p{margin:8px 0 0;color:var(--ink-2);font-size:14px}
.btn{border-radius:10px;font-weight:650}.btn-primary{background:linear-gradient(135deg,var(--accent),var(--accent-strong));box-shadow:0 7px 16px rgba(23,107,135,.18)}
.btn-primary:hover{filter:none;transform:translateY(-1px);box-shadow:0 9px 20px rgba(23,107,135,.23)}
.btn-ghost{background:#fff;border-color:var(--line);box-shadow:0 1px 2px rgba(16,39,59,.03)}
.btn-lg{padding:11px 18px}
.card{border-color:rgba(216,225,235,.95);box-shadow:var(--shadow);padding:18px}
.dashboard-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:16px}
.metric-card{position:relative;display:flex;align-items:flex-start;gap:15px;min-height:138px;padding:20px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}
.metric-card:after{content:"";position:absolute;width:115px;height:115px;border-radius:50%;right:-45px;bottom:-62px;background:currentColor;opacity:.055}
.metric-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:currentColor;color:inherit;font-size:17px;box-shadow:inset 0 0 0 30px rgba(255,255,255,.84)}
.metric-card div{display:flex;flex-direction:column}.metric-card small{text-transform:uppercase;letter-spacing:.08em;font-weight:750;font-size:9px;color:var(--ink-3)}
.metric-card strong{font-size:32px;line-height:1;margin:9px 0 8px;color:var(--navy);font-variant-numeric:tabular-nums;letter-spacing:-.04em}.metric-card div span{font-size:11px;color:var(--ink-3)}
.metric-blue{color:var(--blue)}.metric-violet{color:var(--violet)}.metric-amber{color:var(--amber)}.metric-green{color:var(--green)}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.75fr);gap:16px;margin-bottom:16px}
.dashboard-panel{min-height:330px}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.panel-head .eyebrow{margin-bottom:3px}.panel-head h2{font-size:17px;letter-spacing:-.02em}.text-btn{border:0;background:transparent;color:var(--accent);font:inherit;font-size:12px;font-weight:700;cursor:pointer}
.dashboard-runs{display:flex;flex-direction:column}.dash-run{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 4px;border-bottom:1px solid var(--line);cursor:pointer}
.dash-run:last-child{border-bottom:0}.dash-run:hover .dash-run-title{color:var(--accent)}
.dash-run-icon{width:38px;height:38px;border-radius:11px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font-weight:800;font-size:12px}
.dash-run-copy{min-width:0}.dash-run-title{font-weight:700;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dash-run-meta{font-size:11px;color:var(--ink-3);margin-top:3px}.dash-run-total{text-align:right}.dash-run-total strong{display:block;font-size:16px}.dash-run-total small{color:var(--ink-3);font-size:9px;text-transform:uppercase;letter-spacing:.08em}
.team-count{font-size:11px;font-weight:700;color:var(--accent);background:var(--accent-soft);padding:5px 9px;border-radius:99px}
.activity-list{list-style:none;margin:0;padding:4px 0 0;max-height:270px;overflow:auto}.activity-list li{position:relative;padding:12px 4px 12px 34px;border-bottom:1px solid var(--line)}.activity-list li:last-child{border-bottom:0}
.activity-list li:before{content:"";position:absolute;left:7px;top:17px;width:9px;height:9px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 5px var(--accent-soft)}
.activity-message{font-size:12px;color:var(--ink-2)}.activity-message strong{color:var(--ink)}.activity-time{font-size:10px;color:var(--ink-3);margin-top:3px}
.pipeline-panel{padding:20px}.pipeline-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:16px}.pipeline-item{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;background:var(--grey-soft);border:1px solid transparent;border-radius:12px;padding:12px}.pipeline-item span{font-size:12px;color:var(--ink-2)}.pipeline-item strong{font-size:17px}.status-dot{width:8px;height:8px;border-radius:50%}.status-open{background:#94a3b8}.status-contacted{background:#2d7ff9}.status-offer{background:#c47a1b}.status-won{background:#168968}.status-lost{background:#c94b57}
.research-view{padding-top:28px}.research-view .page-heading{margin-bottom:18px}.research-view .page-heading h1{font-size:27px}.layout{grid-template-columns:330px minmax(0,1fr);gap:18px;padding:0}.sidebar{top:92px;gap:14px}.main{gap:18px}.form-title{font-size:19px;margin:0 0 17px;letter-spacing:-.025em}.card-title{color:var(--ink-2);font-size:10px;font-weight:800;letter-spacing:.1em}.field>span{font-weight:650}.field input,.field select{padding:10px 11px;border-radius:10px;border-color:var(--line);background:#fbfcfe}.field input:focus,.field select:focus{background:#fff}.kpi{background:#f5f7fa;border:1px solid #edf0f4}.map-wrap,.list-wrap{border-radius:17px}.map-wrap{padding:0}.table-scroll{border-color:var(--line);border-radius:11px}.table th{background:#f6f8fa}.table tbody tr:hover{background:#f1f8fa}.table tbody tr.active{background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--accent)}
.progress{height:8px}.progress-bar{background:linear-gradient(90deg,var(--accent),#39a0b8);animation:none}.progress-bar.indet{animation:slide 1.4s ease-in-out infinite}.progress-bar.complete{width:100%!important;background:linear-gradient(90deg,#168968,#42b88e);animation:none!important;margin-left:0!important}.progress-bar.failed{background:var(--red);animation:none!important;margin-left:0!important}.progress-bar.stopped{background:var(--amber);animation:none!important;margin-left:0!important}
.runs li{padding:10px 9px}.runs .run-title{font-weight:700}.runs .run-sub{margin-top:2px}.runs .run-owner{display:block;color:var(--accent);font-size:10px;margin-top:2px}
.modal{background:rgba(10,27,43,.52);backdrop-filter:blur(4px)}.modal-box{border-radius:18px}.modal-wide{width:min(980px,100%);padding:24px}.modal-compact{width:min(460px,100%);padding:24px}.modal-title{font-size:24px;margin-bottom:8px;letter-spacing:-.03em}.user-create-form{display:grid;grid-template-columns:1.2fr 1fr 1.25fr .9fr auto;gap:10px;align-items:end;margin:22px 0 12px;padding:15px;background:var(--grey-soft);border-radius:13px}.user-create-form .field{margin:0}.user-table-wrap{border:1px solid var(--line);border-radius:12px;overflow:auto;margin-top:18px}.user-table{width:100%;border-collapse:collapse;font-size:12px}.user-table th{text-align:left;background:#f5f7fa;color:var(--ink-3);font-size:9px;text-transform:uppercase;letter-spacing:.09em;padding:10px 12px}.user-table td{padding:12px;border-top:1px solid var(--line);vertical-align:middle}.user-identity strong{display:block}.user-identity small{color:var(--ink-3)}.user-actions{display:flex;justify-content:flex-end;gap:6px}.status-active{color:var(--green)}.status-disabled{color:var(--red)}.form-message{padding:9px 11px;border-radius:9px;background:var(--accent-soft);color:var(--accent-strong);font-size:12px}.form-message.error{background:var(--red-soft);color:var(--red)}
.empty-hint{color:var(--ink-3);font-size:12px;padding:18px 4px}

/* ---------- Login ---------- */
.auth-body{min-height:100%;background:#eef3f7}.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(420px,1.05fr) minmax(440px,.95fr)}
.auth-story{position:relative;overflow:hidden;background:radial-gradient(circle at 70% 20%,rgba(70,172,190,.24),transparent 35%),linear-gradient(145deg,#0d2639,#123d54 70%,#176b87);color:#fff;padding:42px 7vw;display:flex;flex-direction:column;justify-content:space-between}
.auth-story:after{content:"";position:absolute;width:460px;height:460px;border:1px solid rgba(255,255,255,.08);border-radius:50%;right:-170px;bottom:-220px;box-shadow:0 0 0 60px rgba(255,255,255,.025),0 0 0 120px rgba(255,255,255,.02)}
.auth-brand{display:flex;align-items:center;gap:12px;font-size:17px;position:relative;z-index:1}.auth-brand .brand-mark{background:rgba(255,255,255,.14);box-shadow:none}.auth-story-copy{position:relative;z-index:1;max-width:650px}.eyebrow-light{color:#80d4df}.auth-story-copy h1{font-size:clamp(38px,4.7vw,68px);line-height:1.02;letter-spacing:-.055em;max-width:720px}.auth-story-copy p{font-size:16px;line-height:1.7;color:rgba(255,255,255,.7);max-width:570px;margin:22px 0 0}.auth-feature-row{display:flex;flex-wrap:wrap;gap:22px;position:relative;z-index:1;font-size:11px;color:rgba(255,255,255,.75)}.auth-feature-row span{display:flex;align-items:center;gap:7px}.auth-feature-row i{width:6px;height:6px;border-radius:50%;background:#69c8d5}
.auth-form-side{display:grid;place-items:center;padding:40px;background:linear-gradient(145deg,#f7f9fc,#edf2f6)}.auth-card{width:min(420px,100%);background:#fff;border:1px solid var(--line);border-radius:22px;padding:38px;box-shadow:0 24px 70px rgba(21,35,59,.11)}.auth-card h2{font-size:28px;letter-spacing:-.035em;margin-bottom:8px}.auth-card>p{color:var(--ink-2);margin:0 0 28px}.auth-field{margin-bottom:15px}.auth-field input{padding:12px}.auth-help{display:block;text-align:center;color:var(--ink-3);margin-top:17px}

@media (max-width:1180px){
  .main-nav{position:static;transform:none}.dashboard-kpis{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.user-create-form{grid-template-columns:1fr 1fr}.user-create-form .btn{align-self:end}.layout{grid-template-columns:310px minmax(0,1fr)}
}
@media (max-width:820px){
  .topbar{height:auto;min-height:68px;padding:10px 14px;flex-wrap:wrap}.main-nav{order:3;width:100%;justify-content:center;margin-top:4px}.topbar-actions>.btn,.user-copy{display:none}.view-shell{padding:24px 14px 36px}.dashboard-hero,.page-heading{align-items:flex-start;flex-direction:column}.dashboard-hero h1,.page-heading h1{font-size:27px}.dashboard-kpis{grid-template-columns:1fr}.pipeline-grid{grid-template-columns:1fr 1fr}.layout{grid-template-columns:1fr}.sidebar{position:static;max-height:none}.auth-shell{grid-template-columns:1fr}.auth-story{display:none}.auth-form-side{padding:20px}.auth-card{padding:28px 22px}.user-create-form{grid-template-columns:1fr}.user-table{min-width:720px}
}
