:root{color-scheme:light;--ink: #111315;--muted: #666158;--paper: #f5f1e8;--panel: #fffaf0;--line: #d8d1c4;--line-strong: #171717;--blue: #1f5f8b;--yellow: #f5c242;--green: #2f8d62;--red: #b23b3b;--orange: #b46b1f;--shadow: 5px 5px 0 rgba(17, 19, 21, .95);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{min-height:100%;background:var(--paper)}body{min-height:100vh;margin:0;color:var(--ink);background:linear-gradient(135deg,rgba(31,95,139,.14),transparent 42%),linear-gradient(180deg,#eef6fb 0 34%,var(--paper) 34% 100%)}button,input,select,textarea{font:inherit}button{cursor:pointer}.center-screen,.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.center-screen{gap:16px;align-content:center}.brand{display:inline-flex;align-items:center;gap:12px;color:#312d27;font-size:13px;font-weight:950;letter-spacing:.12em;text-transform:uppercase}.brand.large{font-size:16px}.mark{width:42px;aspect-ratio:1;border:3px solid var(--ink);border-radius:8px;display:grid;place-items:center;background:var(--yellow);box-shadow:4px 4px 0 var(--ink);font-weight:1000}.login-shell{grid-template-columns:minmax(0,680px) minmax(300px,420px);align-items:center;gap:clamp(28px,5vw,80px)}.login-hero h1{max-width:720px;margin:48px 0 18px;font-size:clamp(46px,7vw,94px);line-height:.9;letter-spacing:0}.login-hero p{max-width:620px;color:#363534;font-size:clamp(18px,2vw,25px);line-height:1.28;font-weight:720}.login-points{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.login-points span{display:inline-flex;align-items:center;gap:8px;padding:10px 12px;border:2px solid var(--line-strong);border-radius:8px;background:var(--panel);font-weight:900}.login-card,.panel,.metric-card{border:3px solid var(--line-strong);border-radius:8px;background:#fffaf0eb;box-shadow:var(--shadow)}.login-card{width:100%;display:grid;gap:16px;padding:28px}.login-card h2{margin:0;font-size:36px}label{display:grid;gap:7px;color:#57524c;font-size:13px;font-weight:950;letter-spacing:.04em;text-transform:uppercase}input,select,textarea{width:100%;min-height:44px;border:2px solid var(--line);border-radius:8px;background:#fffdf7;color:var(--ink);padding:11px 12px;font-size:16px;font-weight:750;letter-spacing:0;text-transform:none}textarea{resize:vertical;line-height:1.35}input:focus,select:focus,textarea:focus,button:focus-visible{outline:3px solid rgba(31,95,139,.28);outline-offset:2px}.primary-button,.ghost-button,.small-button,.icon-button{border:2px solid var(--line-strong);border-radius:8px;font-weight:950;transition:transform .16s ease,box-shadow .16s ease,opacity .16s ease}.primary-button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:12px 16px;background:var(--yellow);color:var(--ink);box-shadow:3px 3px 0 var(--ink)}.ghost-button,.small-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:9px 12px;background:#fffdf7;color:var(--ink)}.small-button{min-height:34px;padding:6px 10px;font-size:13px}.icon-button{width:42px;aspect-ratio:1;display:grid;place-items:center;background:#fffdf7;color:var(--ink)}.primary-button:hover,.ghost-button:hover,.small-button:hover,.icon-button:hover{transform:translate(-1px,-1px)}button:disabled{cursor:not-allowed;opacity:.55;transform:none}.demo-users{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.demo-users button{min-height:38px;border:2px solid var(--line);border-radius:8px;background:#fff;font-weight:850}.primary-demo-users button{min-height:64px;display:grid;gap:3px;align-content:center;padding:11px 12px;text-align:left}.primary-demo-users button strong{color:var(--ink);font-size:18px;line-height:1.1}.primary-demo-users button span{color:var(--muted);font-size:13px;line-height:1.2}.app-shell{min-height:100vh;display:grid;grid-template-columns:280px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:24px;padding:26px 18px;border-right:3px solid var(--line-strong);background:#fffaf0f2}.nav-list{display:grid;gap:8px}.nav-item{min-height:46px;display:flex;align-items:center;gap:10px;border:2px solid transparent;border-radius:8px;background:transparent;color:#3c3935;padding:10px 12px;font-weight:900;text-align:left}.nav-item.active,.nav-item:hover{border-color:var(--line-strong);background:#dceef8}.session-card{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border:2px solid var(--line);border-radius:8px;background:#fff}.session-card div{display:grid;gap:2px}.session-card strong{font-size:14px}.session-card span{color:var(--muted);font-size:12px;font-weight:850}.workspace{min-width:0;padding:clamp(18px,3.2vw,42px)}.topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.topbar h1{margin:0;font-size:clamp(38px,5vw,68px);line-height:.92}.micro{margin:0 0 8px;color:var(--blue);font-size:13px;font-weight:1000;letter-spacing:.14em;text-transform:uppercase}.topbar-actions{display:flex;align-items:center;gap:10px}.menu-button{display:none}.page-grid,.stack{display:grid;gap:18px}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.metric-card{min-height:132px;display:grid;align-content:space-between;gap:8px;padding:18px}.metric-card svg{color:var(--blue)}.metric-card strong{font-size:42px;line-height:1}.metric-card span{color:var(--muted);font-weight:950;text-transform:uppercase;letter-spacing:.06em}.metric-card.warning svg{color:var(--orange)}.metric-card.success svg{color:var(--green)}.content-grid{display:grid;gap:18px}.content-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.content-grid.split{grid-template-columns:minmax(0,1.6fr) minmax(320px,.8fr);align-items:start}.panel{min-width:0;padding:clamp(16px,2vw,22px)}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.panel h2{margin:0;font-size:clamp(25px,2.4vw,36px);line-height:1}.panel p{margin:8px 0 0;color:var(--muted);font-size:15px;line-height:1.35;font-weight:750}.notice{display:flex;align-items:center;gap:9px;margin-bottom:18px;padding:12px 14px;border:2px solid var(--line-strong);border-radius:8px;background:#fff;font-weight:900}.notice.success{background:#dff4e8}.notice.warning{background:#fff4c9}.notice.danger{background:#ffe0da}.signal,.soft-row,.task-row,.document-row,.detail-card{border:2px solid var(--line);border-radius:8px;background:#fffdf7}.signal{display:grid;gap:4px;margin-bottom:10px;padding:12px}.signal strong,.soft-row strong,.task-row strong,.detail-card strong{font-size:15px}.signal span,.soft-row span,.task-row span,.detail-card span{color:var(--muted);font-size:14px;font-weight:750}.signal.warning{border-color:#d6ad42}.signal.danger{border-color:#c96654}.signal.success{border-color:#6aac7d}.search-box{position:relative;margin-bottom:12px;text-transform:none;letter-spacing:0}.search-box svg{position:absolute;left:13px;top:50%;color:var(--muted);transform:translateY(-50%)}.search-box input{padding-left:40px}.table-wrap{overflow-x:auto;border:2px solid var(--line);border-radius:8px}table{width:100%;border-collapse:collapse;min-width:720px;background:#fffdf7}th,td{padding:13px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{color:#5f574f;font-size:12px;font-weight:1000;letter-spacing:.08em;text-transform:uppercase;background:#f8f1e4}td{color:#2f2d2a;font-size:14px;font-weight:750}tr:last-child td{border-bottom:0}.status-pill{display:inline-flex;align-items:center;min-height:27px;padding:4px 9px;border:2px solid var(--line);border-radius:999px;color:#403c37;background:#f7f1e6;font-size:12px;font-weight:1000;white-space:nowrap}.status-pill.success{border-color:#8bbd9a;background:#e2f5e8}.status-pill.warning{border-color:#d6ad42;background:#fff3bf}.status-pill.danger{border-color:#d36d5c;background:#ffe0da}.stack-form,.list-stack,.task-list,.document-list{display:grid;gap:12px}.list-stack.small{margin-top:14px;gap:8px}.soft-row,.task-row,.document-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px;color:inherit;text-decoration:none}.task-row div,.soft-row{min-width:0}.task-row div,.soft-row{display:grid;gap:4px}.document-row{justify-content:flex-start}.document-row div{display:grid;gap:3px}.file-input{min-height:58px;display:flex;align-items:center;justify-content:center;gap:10px;border:2px dashed var(--line-strong);border-radius:8px;background:#fffdf7;text-align:center}.match-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.match-card{display:grid;grid-template-columns:86px minmax(0,1fr);gap:14px;padding:16px;border:3px solid var(--line-strong);border-radius:8px;background:#fffdf7}.match-score{width:72px;aspect-ratio:1;display:grid;place-items:center;border:3px solid var(--line-strong);border-radius:8px;background:#dceef8;box-shadow:3px 3px 0 var(--ink);font-size:22px;font-weight:1000}.match-card h3{margin:0 0 4px;font-size:23px}.match-card p{margin:0 0 6px}.reason-list{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}.reason-list span{padding:6px 8px;border-radius:999px;background:#f3eadb;color:#4c4740;font-size:12px;font-weight:900}.match-actions{grid-column:1 / -1;display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end}.stat-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}.stat-strip span{display:grid;gap:3px;padding:12px;border:2px solid var(--line);border-radius:8px;background:#fffdf7;font-size:28px;font-weight:1000}.stat-strip small{color:var(--muted);font-size:11px;font-weight:1000;letter-spacing:.08em;text-transform:uppercase}.admin-forms{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.admin-forms form{display:grid;gap:10px;padding:12px;border:2px solid var(--line);border-radius:8px;background:#fffdf7}.admin-forms h3{margin:0;font-size:18px}.empty-state{color:var(--muted);padding:18px;text-align:center;font-weight:850}.guidance{display:grid;gap:10px;padding:16px;border:2px solid var(--line);border-radius:8px;background:#fffdf7}.guidance h3{margin:0;font-size:24px}.guidance p{margin:0}.detail-card{display:grid;gap:5px;padding:13px}.detail-card p{margin:0}.scrim{display:none}.global-search{position:relative;min-width:min(360px,38vw);display:flex;align-items:center;gap:8px;padding:9px 12px;border:2px solid var(--line);border-radius:8px;background:#fffdf7}.global-search input{width:100%;border:0;outline:0;background:transparent;font-weight:850}.global-search-results{position:absolute;z-index:30;top:calc(100% + 8px);right:0;width:min(420px,82vw);display:grid;gap:6px;padding:8px;border:2px solid var(--line-strong);border-radius:8px;background:var(--panel);box-shadow:var(--shadow)}.global-search-results button{display:grid;gap:2px;padding:10px;border:1px solid var(--line);border-radius:6px;background:#fffdf7;text-align:left}.dossier-shell{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px;align-items:start}.dossier-main{display:grid;gap:14px}.dossier-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) auto minmax(180px,220px);gap:10px;align-items:end}.segmented{display:inline-flex;border:2px solid var(--line-strong);border-radius:8px;overflow:hidden;background:var(--panel)}.segmented button{display:grid;place-items:center;min-width:44px;min-height:42px;border:0;border-right:1px solid var(--line);background:transparent}.segmented button:last-child{border-right:0}.segmented button.active{background:var(--yellow)}.filter-panel,.step-plan{position:sticky;top:18px;display:grid;gap:12px;padding:16px;border:2px solid var(--line-strong);border-radius:8px;background:var(--panel);box-shadow:var(--shadow)}.filter-heading,.info-card-title,.activity-meta,.activity-head,.detail-header,.dossier-card-head,.badge-row,.role-badge,.versions a,.step-row,.file-input,.checkbox-line{display:flex;align-items:center}.filter-heading{gap:8px;font-size:18px}.inline-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px}.checkbox-line{gap:9px;color:var(--muted);font-weight:850}.checkbox-line input,.dossier-row input{width:18px;height:18px}.dossier-list{display:grid;gap:8px}.dossier-row{width:100%;display:grid;grid-template-columns:auto auto minmax(0,1fr) auto minmax(180px,auto) auto;gap:12px;align-items:center;padding:12px;border:2px solid var(--line);border-radius:8px;background:#fffdf7;text-align:left}.dossier-row:hover,.dossier-card:hover{border-color:var(--line-strong)}.dossier-row-main{min-width:0;display:grid;gap:2px}.dossier-row-main span,.muted-small{color:var(--muted);font-size:13px;font-weight:750}.avatar{width:42px;aspect-ratio:1;display:grid;place-items:center;border:2px solid var(--line-strong);border-radius:8px;background:var(--yellow);font-weight:1000}.badge-row{gap:6px;flex-wrap:wrap}.mini-badge,.role-badge{padding:5px 8px;border:1px solid var(--line);border-radius:999px;background:#fffdf7;color:var(--muted);font-size:12px;font-weight:950;white-space:nowrap}.mini-badge.warning{background:#fff2c2;color:#6d4b00}.mini-badge.danger{background:#ffe0da;color:#8a1f1f}.dossier-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.dossier-card{display:grid;gap:10px;min-height:190px;padding:16px;border:2px solid var(--line);border-radius:8px;background:var(--panel);text-align:left}.dossier-card h3{margin:0;font-size:24px}.dossier-card p{margin:0;color:var(--muted);font-weight:800}.dossier-card-head,.detail-header{justify-content:space-between;gap:12px}.dossier-status.risico,.status-pill.risico,.status-pill.afgewezen{background:#ffe0da;color:#8a1f1f}.status-pill.ingeleverd{background:#e9f4ff;color:var(--blue)}.status-pill.niet_gestart{background:#ede8dc;color:var(--muted)}.dossier-detail{display:grid;gap:14px}.detail-header{padding:14px;border:2px solid var(--line-strong);border-radius:8px;background:var(--panel)}.detail-header h2{margin:0;font-size:clamp(28px,5vw,46px)}.tabs{display:flex;gap:8px;flex-wrap:wrap}.tabs button{padding:10px 14px;border:2px solid var(--line);border-radius:8px;background:var(--panel);font-weight:950}.tabs button.active{border-color:var(--line-strong);background:var(--yellow)}.dossier-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:16px;align-items:start}.detail-main{display:grid;gap:14px}.cover-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.info-card,.activity-card{display:grid;gap:12px;padding:16px;border:2px solid var(--line);border-radius:8px;background:#fffdf7}.info-card-title{gap:8px}.info-card-title h3,.step-plan h3,.activity-column h3{margin:0}.info-line{display:grid;grid-template-columns:minmax(120px,.5fr) minmax(0,1fr);gap:10px;padding-top:8px;border-top:1px solid var(--line)}.info-line span{color:var(--muted);font-weight:800}.status-form,.submission-form,.assessment-panel{display:grid;gap:10px;padding-top:10px;border-top:1px solid var(--line)}.activity-board{display:grid;gap:14px}.activity-column{display:grid;gap:10px}.activity-column h3{display:flex;justify-content:space-between;align-items:center;font-size:22px}.activity-head{justify-content:space-between;gap:12px}.activity-head h4{margin:5px 0 0;font-size:22px}.detail-header.compact{padding:0;border:0;background:transparent;box-shadow:none}.detail-header.compact h3{margin:0;font-size:22px}.detail-card,.stage-summary,.cv-preview{display:grid;gap:10px;padding:14px;border:2px solid var(--line);border-radius:8px;background:#fffdf7}.vacancy-list,.checkbox-grid{display:grid;gap:10px}.checkbox-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.inline-actions,.match-actions.compact,.monitor-actions{display:flex;gap:8px;align-items:end;flex-wrap:wrap}.secondary-details{margin-top:14px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--paper)}.secondary-details summary{cursor:pointer;font-weight:950}.tool-frame-wrap{min-height:560px;overflow:hidden;border:2px solid var(--line-strong);border-radius:8px;background:#fff}.tool-frame{width:100%;height:560px;border:0}.tool-link{justify-self:start}.ai-help-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:center;padding:18px;border:2px solid var(--line-strong);border-radius:8px;background:#fffdf7}.ai-help-card h3,.ai-help-card p{margin:0}.ai-help-card p{margin-top:4px;color:var(--muted);font-weight:750}.cv-preview h2,.cv-preview h3,.cv-preview p{margin:0}.cv-preview h2{font-size:34px}.cv-preview h3{padding-top:8px;border-top:1px solid var(--line);font-size:18px}.activity-card p{margin:0;color:var(--muted);font-weight:800}.activity-meta{gap:8px;flex-wrap:wrap;color:var(--muted);font-size:13px;font-weight:850}.versions{display:grid;gap:6px}.versions a,.link-row{color:inherit;text-decoration:none}.versions a{justify-content:space-between;gap:8px;padding:9px;border:1px solid var(--line);border-radius:8px;background:var(--paper)}.file-input{gap:8px;padding:10px;border:2px dashed var(--line);border-radius:8px;color:var(--muted);font-weight:900}.file-input input{display:none}.primary-button.small,.ghost-button.small{min-height:38px;padding:8px 12px}.step-plan{box-shadow:none}.step-phase{display:grid;gap:8px}.step-row{gap:9px;color:var(--muted);font-weight:850}.step-row svg.done{color:var(--green)}@media (max-width: 1100px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;inset:0 auto 0 0;z-index:20;width:min(320px,88vw);transform:translate(-110%);transition:transform .2s ease}.sidebar.is-open{transform:translate(0)}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;display:block;border:0;background:#1113155c}.menu-button{display:grid}.content-grid.split,.content-grid.two,.dossier-shell,.dossier-detail-grid{grid-template-columns:1fr}.filter-panel,.step-plan{position:static;box-shadow:none}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 760px){.login-shell{grid-template-columns:1fr;place-items:start stretch}.login-hero h1{margin-top:34px}.workspace{padding:16px 12px 30px}.topbar{align-items:center}.topbar-actions{display:none}.metric-grid,.match-grid,.stat-strip,.admin-forms{grid-template-columns:1fr}.panel,.login-card,.metric-card{box-shadow:3px 3px #111315f2}.panel-head,.soft-row,.task-row,.match-actions{grid-template-columns:1fr;flex-direction:column;align-items:stretch}.match-card,.demo-users,.ai-help-card,.dossier-toolbar,.dossier-row,.cover-grid,.info-line{grid-template-columns:1fr}.dossier-row{align-items:start}.inline-fields{grid-template-columns:1fr}}@media print{body{background:#fff}.sidebar,.topbar,.tabs,.cv-tool>.panel:first-child,.notice{display:none!important}.app-shell,.workspace,.content-grid.split,.page-grid{display:block;padding:0}.panel,.cv-preview{border:0;box-shadow:none;background:#fff}}
/* StageKlik Talland visual refresh, inspired by the provided React mockup. */
:root {
  --ink: #0f172a;
  --muted: #64748b;
  --paper: #f8fafc;
  --panel: #ffffff;
  --line: #e2e8f0;
  --line-strong: #cbd5e1;
  --blue: #4f46e5;
  --yellow: #4f46e5;
  --green: #059669;
  --red: #dc2626;
  --orange: #d97706;
  --shadow: 0 1px 2px rgba(15, 23, 42, .05);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif;
}

html,
body {
  background: #f8fafc;
}

body {
  color: var(--ink);
  background: #f8fafc;
}

.app-shell {
  grid-template-columns: 256px minmax(0, 1fr);
  background: #f8fafc;
}

.sidebar {
  gap: 26px;
  padding: 24px 16px;
  border-right: 1px solid #e2e8f0;
  background: #fff;
}

.brand {
  gap: 10px;
  color: #0f172a;
  font-size: 20px;
  font-weight: 850;
  letter-spacing: 0;
  text-transform: none;
}

.brand:after {
  content: "";
}

.brand .mark,
.mark {
  width: 34px;
  border: 0;
  border-radius: 8px;
  background: #4f46e5;
  color: #fff;
  box-shadow: none;
  font-size: 20px;
}

.nav-list {
  gap: 6px;
}

.nav-item {
  min-height: 46px;
  gap: 12px;
  border: 0;
  border-radius: 8px;
  color: #64748b;
  padding: 11px 14px;
  font-weight: 750;
}

.nav-item svg {
  color: #94a3b8;
}

.nav-item.active,
.nav-item:hover {
  border: 0;
  background: #eef2ff;
  color: #4338ca;
}

.nav-item.active svg,
.nav-item:hover svg {
  color: #4f46e5;
}

.session-card {
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  background: #fff;
}

.workspace {
  max-width: 1280px;
  margin: 0 auto;
  padding: 28px clamp(18px, 3vw, 36px) 42px;
}

.topbar {
  align-items: center;
  margin-bottom: 26px;
}

.topbar h1 {
  font-size: clamp(28px, 3vw, 40px);
  line-height: 1.08;
  letter-spacing: 0;
}

.micro {
  color: #4f46e5;
  font-size: 12px;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.login-card,
.panel,
.metric-card,
.detail-card,
.stage-summary,
.cv-preview,
.info-card,
.activity-card,
.guidance,
.signal,
.soft-row,
.task-row,
.document-row,
.filter-panel,
.step-plan,
.match-card,
.dossier-card,
.detail-header,
.ai-help-card,
.admin-forms form {
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .05);
}

.panel,
.metric-card {
  padding: 22px;
}

.panel-head {
  margin-bottom: 18px;
}

.panel h2 {
  color: #0f172a;
  font-size: clamp(20px, 2vw, 26px);
  line-height: 1.15;
}

.panel p {
  color: #64748b;
  font-weight: 500;
}

.metric-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.metric-card {
  min-height: 126px;
}

.metric-card svg {
  color: #4f46e5;
}

.metric-card strong {
  color: #0f172a;
  font-size: 36px;
}

.metric-card span {
  color: #64748b;
  font-size: 12px;
  font-weight: 750;
  letter-spacing: .02em;
}

.content-grid,
.page-grid,
.stack {
  gap: 20px;
}

.content-grid.split {
  grid-template-columns: minmax(0, 1.7fr) minmax(320px, .85fr);
}

input,
select,
textarea,
.global-search {
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #fff;
  color: #0f172a;
  font-weight: 550;
}

label {
  color: #64748b;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .02em;
}

input:focus,
select:focus,
textarea:focus,
button:focus-visible {
  outline: 3px solid rgba(79, 70, 229, .18);
}

.primary-button {
  min-height: 44px;
  border: 0;
  border-radius: 8px;
  background: #4f46e5;
  color: #fff;
  box-shadow: none;
  font-weight: 750;
}

.primary-button:hover {
  background: #4338ca;
  transform: none;
}

.ghost-button,
.small-button,
.icon-button,
.tabs button,
.segmented {
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #fff;
  color: #334155;
  box-shadow: none;
  font-weight: 700;
}

.ghost-button:hover,
.small-button:hover,
.icon-button:hover {
  background: #f8fafc;
  color: #4f46e5;
  transform: none;
}

.tabs button.active,
.segmented button.active {
  border-color: #c7d2fe;
  background: #eef2ff;
  color: #4338ca;
}

.table-wrap {
  border: 1px solid #e2e8f0;
  border-radius: 8px;
}

table {
  background: #fff;
}

th {
  background: #f8fafc;
  color: #64748b;
  font-weight: 850;
}

td {
  color: #334155;
  font-weight: 550;
}

th,
td {
  border-bottom: 1px solid #e2e8f0;
}

.status-pill,
.mini-badge,
.role-badge {
  border: 1px solid #e2e8f0;
  background: #f8fafc;
  color: #475569;
  font-weight: 750;
}

.status-pill.success,
.signal.success {
  border-color: #bbf7d0;
  background: #f0fdf4;
  color: #047857;
}

.status-pill.warning,
.signal.warning,
.mini-badge.warning {
  border-color: #fde68a;
  background: #fffbeb;
  color: #b45309;
}

.status-pill.danger,
.signal.danger,
.mini-badge.danger {
  border-color: #fecaca;
  background: #fef2f2;
  color: #b91c1c;
}

.match-score,
.avatar {
  border: 0;
  border-radius: 8px;
  background: #eef2ff;
  color: #4f46e5;
  box-shadow: none;
}

.match-card h3,
.dossier-card h3,
.detail-header h2,
.activity-head h4 {
  color: #0f172a;
  letter-spacing: 0;
}

.soft-row:hover,
.task-row:hover,
.document-row:hover,
.detail-card:hover,
.dossier-card:hover,
.dossier-row:hover {
  border-color: #c7d2fe;
  box-shadow: 0 8px 20px rgba(15, 23, 42, .07);
}

.login-shell {
  background: #f8fafc;
}

.login-hero h1 {
  color: #0f172a;
  font-size: clamp(42px, 6vw, 74px);
  line-height: .98;
}

.login-hero p {
  color: #475569;
  font-weight: 550;
}

.login-points span,
.demo-users button {
  border: 1px solid #e2e8f0;
  background: #fff;
  box-shadow: none;
}

.notice {
  border: 1px solid #c7d2fe;
  background: #eef2ff;
  color: #3730a3;
}

@media (max-width: 1100px) {
  .app-shell {
    grid-template-columns: 1fr;
  }

  .sidebar {
    border-right: 1px solid #e2e8f0;
    box-shadow: 0 20px 45px rgba(15, 23, 42, .18);
  }

  .metric-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .workspace {
    padding: 16px 12px 28px;
  }

  .metric-grid,
  .content-grid.split,
  .content-grid.two {
    grid-template-columns: 1fr;
  }

  .panel,
  .login-card,
  .metric-card {
    box-shadow: 0 1px 2px rgba(15, 23, 42, .05);
  }
}

/* End StageKlik Talland visual refresh */

/* StageKlik homepage cleanup */
.brand {
  gap: 12px;
}
.mark {
  position: relative;
  color: transparent !important;
  overflow: hidden;
}
.mark::before {
  content: "";
  width: 18px;
  height: 10px;
  border-left: 3px solid #fff;
  border-bottom: 3px solid #fff;
  transform: rotate(-45deg) translate(1px, -1px);
}
.brand span:last-child {
  color: #0f172a;
  font-size: 24px;
  font-weight: 850;
  letter-spacing: -0.01em;
}
.login-hero h1 {
  max-width: 640px;
  margin: 40px 0 16px;
  font-size: clamp(34px, 4.8vw, 56px) !important;
  line-height: 1.04 !important;
  letter-spacing: 0 !important;
}
.login-hero p {
  max-width: 620px;
  color: #475569;
  font-size: clamp(17px, 1.55vw, 21px);
  line-height: 1.45;
  font-weight: 550;
}
.login-points {
  display: none !important;
}
.login-shell {
  grid-template-columns: minmax(0, 620px) minmax(320px, 420px);
}
@media (max-width: 760px) {
  .brand span:last-child {
    font-size: 21px;
  }
  .login-hero h1 {
    margin-top: 30px;
  }
}
/* End StageKlik homepage cleanup */

/* StageKlik homepage alignment fix */
.login-shell {
  width: min(1180px, calc(100vw - 64px));
  min-height: 100vh;
  margin: 0 auto;
  padding: 56px 0;
  grid-template-columns: minmax(0, 1fr) 460px !important;
  justify-content: center;
  align-items: center;
  gap: clamp(64px, 7vw, 112px);
}
.login-hero {
  align-self: center;
  max-width: 650px;
}
.login-hero .brand {
  margin-bottom: clamp(44px, 8vh, 76px);
  transform: translateX(4px);
}
.login-hero .brand .mark {
  display: none !important;
}
.login-hero .brand span:last-child {
  font-size: 28px;
  line-height: 1;
  font-weight: 900;
}
.login-hero h1 {
  max-width: 670px;
  margin: 0 0 24px !important;
  font-size: clamp(42px, 4.2vw, 64px) !important;
  line-height: 1.06 !important;
}
.login-hero p {
  max-width: 600px;
  font-size: clamp(18px, 1.45vw, 24px);
  line-height: 1.42;
}
.login-card {
  align-self: center;
  width: 100%;
  max-width: 460px;
  padding: 36px;
}
.login-card > svg:first-child {
  display: none !important;
}
.login-card h2 {
  margin-top: 0;
}
@media (max-width: 980px) {
  .login-shell {
    width: min(720px, calc(100vw - 32px));
    grid-template-columns: 1fr !important;
    gap: 28px;
    padding: 32px 0;
    align-items: start;
  }
  .login-hero .brand {
    margin-bottom: 34px;
  }
  .login-card {
    max-width: none;
  }
}
@media (max-width: 760px) {
  .login-shell {
    width: calc(100vw - 24px);
    padding: 22px 0 28px;
  }
  .login-hero .brand span:last-child {
    font-size: 24px;
  }
  .login-hero h1 {
    font-size: clamp(34px, 12vw, 46px) !important;
  }
  .login-card {
    padding: 24px;
  }
}
/* End StageKlik homepage alignment fix */

/* StageKlik standard login form */
.primary-demo-users {
  display: none !important;
}
.secondary-details {
  display: grid !important;
  gap: 14px;
  margin-top: 0;
  padding: 0;
  border: 0;
  background: transparent;
}
.secondary-details summary {
  display: none !important;
}
.secondary-details label {
  display: grid;
  gap: 7px;
}
.secondary-details input {
  min-height: 54px;
}
.login-card h2 {
  margin-bottom: 10px;
}
.login-card .notice,
.login-card .notice.danger {
  border-color: #fecaca;
  background: #fef2f2;
  color: #991b1b;
}
/* End StageKlik standard login form */

/* StageKlik visible login fields */
.login-card .secondary-details {
  display: grid !important;
}
.login-card .secondary-details:not([open]) {
  display: grid !important;
}
.login-card .secondary-details > label,
.login-card .secondary-details > button {
  display: grid;
}
.login-card .secondary-details > button {
  display: inline-flex;
  width: fit-content;
  min-width: 156px;
}
/* End StageKlik visible login fields */
