@import url('/assets/css/cabinet-shell-v5.css');

:root { --cab-soft-red:#fff1f2; --cab-soft-green:#ecf9f4; --cab-shadow:0 16px 44px rgba(33,38,48,.065); }
.cab-user > span { background:#f0f1f3; color:var(--cab-ink); }
.cab-rail { padding:28px 18px 18px; }
.cab-rail__eyebrow { margin:0 10px 20px; }
.cab-nav { gap:2px; }
.cab-nav > a, .cab-nav summary, .cab-nav__locked { min-height:45px; margin:0; padding:10px 12px; border:0; border-radius:8px; }
.cab-nav > a:first-child { border-top:0; }
.cab-nav > a:hover, .cab-nav summary:hover { background:#f7f7f8; }
.cab-nav > a.is-active { padding-left:18px; background:var(--cab-soft-red); }
.cab-nav > a.is-active::before { top:10px; bottom:10px; left:0; border-radius:0 3px 3px 0; }
.cab-nav details > div { padding:4px 0 8px 20px; border:0; }
.cab-nav details > div a { min-height:38px; padding:7px 10px; border-radius:7px; }
.cab-nav details > div a:hover { background:#f7f7f8; }
.cab-nav hr { height:18px; margin:8px 10px 0; border:0; border-top:1px solid var(--cab-line); }
.cab-nav__group-end { margin-bottom:0!important; }
.cab-personal-dashboard { background:#fff; }
.cab-personal-hero { grid-template-columns:minmax(360px,.8fr) minmax(580px,1.2fr); min-height:400px; padding:52px clamp(44px,4.5vw,82px); gap:clamp(54px,6vw,110px); border-bottom:0; background:#fff; }
.cab-personal-hero h1 { font-size:clamp(46px,4.2vw,60px); line-height:.94; }
.cab-personal-index { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; overflow:visible; border-radius:0; background:transparent; color:var(--cab-ink); }
.cab-personal-index a { display:flex; min-height:172px; padding:24px; align-items:flex-start; flex-direction:column; gap:0; border:1px solid var(--cab-line); border-radius:12px; background:#fff; color:var(--cab-ink); transition:transform var(--cab-fast) var(--cab-ease),border-color var(--cab-fast) var(--cab-ease),box-shadow var(--cab-fast) var(--cab-ease); }
.cab-personal-index a:last-child { border-bottom:1px solid var(--cab-line); }
.cab-personal-index a:hover { background:#fff; border-color:#c8cbd0; box-shadow:var(--cab-shadow); transform:translateY(-2px); }
.cab-personal-index span { font-size:15px; }
.cab-personal-index strong { margin-top:24px; font-size:38px; }
.cab-personal-index small { margin-top:8px; color:var(--cab-muted); }
.cab-personal-index i { margin-top:auto; align-self:flex-end; color:var(--cab-ink); }
.cab-company-entry { grid-template-columns:minmax(0,1fr) minmax(520px,.9fr); padding:64px clamp(44px,4.5vw,82px) 76px; gap:clamp(56px,6vw,116px); background:#fff; }
.cab-company-entry__copy { padding:10px 0; }
.cab-company-entry h2 { font-size:clamp(36px,3vw,46px); line-height:1.02; }
.cab-company-route { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; padding:0; border-radius:0; background:transparent; color:var(--cab-ink); }
.cab-company-route li { display:flex; min-height:112px; padding:22px; align-items:flex-start; flex-direction:column; gap:16px; border:1px solid var(--cab-line); border-radius:12px; background:#fff; }
.cab-company-route li:last-child { border-bottom:1px solid var(--cab-line); }
.cab-company-route strong { font-size:15px; font-weight:600; }
.cab-page-status, .cab-onboarding > div, .cab-steps { box-shadow:none; }
.cab-page-head,.cab-onboarding { border-bottom:0; background:#fff; }
.cab-page-head { padding-bottom:30px; }
.cab-onboarding { padding-top:20px; }
.cab-company-dashboard { min-height:calc(100vh - 82px); padding:48px clamp(44px,4.5vw,82px) 76px; background:#fff; }
.company-dashboard-head { display:grid; grid-template-columns:minmax(360px,.8fr) minmax(600px,1.2fr); gap:clamp(56px,6vw,110px); align-items:end; }
.company-dashboard-head nav { display:flex; margin-bottom:28px; gap:10px; color:var(--cab-muted); font:650 13px/1.25 'Iosevka Charon Mono',monospace; }
.company-dashboard-head nav a { color:var(--cab-ink); text-decoration:none; }
.company-dashboard-head div > p { margin:0 0 9px; color:var(--cab-brand); font:650 13px/1.25 'Iosevka Charon Mono',monospace; letter-spacing:.06em; text-transform:uppercase; }
.company-dashboard-head h1 { margin:0; color:var(--cab-ink); font-size:clamp(44px,4vw,58px); font-weight:560; line-height:.96; letter-spacing:-.05em; }
.company-dashboard-head div > span { display:block; margin-top:18px; font-size:17px; }
.company-dashboard-meta { display:grid; grid-template-columns:1.2fr .8fr .8fr; overflow:hidden; border:1px solid var(--cab-line); border-radius:13px; background:#fff; }
.company-dashboard-meta > div { min-height:112px; padding:22px; border-right:1px solid var(--cab-line); }
.company-dashboard-meta > div:last-child { border-right:0; }
.company-dashboard-meta small { display:block; color:var(--cab-muted); font-size:15px; }
.company-dashboard-meta strong { display:flex; margin-top:11px; align-items:center; gap:8px; color:var(--cab-ink); font-size:19px; }
.company-dashboard-meta strong i { width:8px; height:8px; border-radius:50%; background:var(--cab-success); }
.company-dashboard-meta a { display:inline-block; margin-top:8px; color:var(--cab-copy); font-size:15px; }
.company-dashboard-body { margin-top:34px; }
.company-kpis { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.company-kpis a { position:relative; display:flex; min-height:168px; padding:24px; flex-direction:column; border:1px solid var(--cab-line); border-radius:12px; background:#fff; color:var(--cab-ink); text-decoration:none; transition:transform var(--cab-fast) var(--cab-ease),box-shadow var(--cab-fast) var(--cab-ease); }
.company-kpis a:hover { box-shadow:var(--cab-shadow); transform:translateY(-2px); }
.company-kpis span { color:var(--cab-copy); font-size:15px; }
.company-kpis strong { margin-top:18px; font-size:34px; font-weight:580; line-height:1; }
.company-kpis small { margin-top:12px; color:var(--cab-muted); font-size:15px; } .company-kpis small b { color:var(--cab-success); }
.company-kpis > a > i { position:absolute; right:22px; bottom:20px; font-style:normal; }
.company-dashboard-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:12px; }
.company-panel { min-height:300px; padding:28px; border:1px solid var(--cab-line); border-radius:12px; background:#fff; }
.company-panel__head { display:flex; align-items:flex-start; justify-content:space-between; gap:24px; }
.company-panel__head p { margin:0 0 7px; color:var(--cab-muted); font-size:15px; }
.company-panel__head h2 { margin:0; color:var(--cab-ink); font-size:27px; font-weight:580; letter-spacing:-.025em; }
.company-panel__head > strong { color:var(--cab-brand); font-size:32px; font-weight:580; }
.company-panel__head > a,.company-panel > a { color:var(--cab-ink); font-size:15px; font-weight:650; }
.company-profile-progress__bar { height:8px; margin:34px 0 22px; overflow:hidden; border-radius:99px; background:#eceef0; } .company-profile-progress__bar i { display:block; width:92%; height:100%; border-radius:inherit; background:var(--cab-brand); }
.company-profile-progress > p,.company-reviews > p { max-width:560px; margin:0 0 26px; font-size:16px; line-height:1.5; }
.company-activity { margin:26px 0 0; padding:0; list-style:none; } .company-activity li { display:flex; padding:14px 0; align-items:flex-start; gap:13px; border-top:1px solid var(--cab-line); } .company-activity li > i { width:8px; height:8px; margin-top:7px; border-radius:50%; background:var(--cab-brand); } .company-activity div { display:grid; } .company-activity strong { color:var(--cab-ink); font-size:15px; } .company-activity span { margin-top:3px; color:var(--cab-muted); font-size:15px; }
.company-reviews > div { display:grid; grid-template-columns:20px minmax(0,1fr) 28px; margin:10px 0; align-items:center; gap:10px; } .company-reviews div > span,.company-reviews div > em { font-size:15px; font-style:normal; } .company-reviews div > i { height:6px; overflow:hidden; border-radius:99px; background:#eceef0; } .company-reviews div > i b { display:block; width:var(--score); height:100%; background:var(--cab-brand); }
.company-actions > a { display:flex; min-height:56px; padding:12px 0; align-items:center; justify-content:space-between; border-bottom:1px solid var(--cab-line); text-decoration:none; } .company-actions > a:last-child { border-bottom:0; }
.company-reviews,.company-actions { display:none; }
@media (max-width:1280px) { .cab-personal-hero { grid-template-columns:minmax(320px,.75fr) minmax(500px,1.25fr); padding-inline:44px; } .cab-personal-index a { padding:20px; } .cab-company-entry { grid-template-columns:1fr minmax(450px,.9fr); padding-inline:44px; } }
@media (max-width:1100px) { .cab-personal-hero,.cab-company-entry,.company-dashboard-head { grid-template-columns:1fr; } .cab-personal-index { max-width:760px; } .company-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (prefers-reduced-motion:reduce) { .cab-personal-index a { transform:none!important; } }

/* Compact, sequential layout for first-time users. */
.cab-personal-hero { min-height:310px; padding-block:32px; gap:clamp(36px,4vw,68px); }
.cab-personal-hero__intro > nav { margin-bottom:20px; }
.cab-personal-hero__intro > p { margin-bottom:8px; }
.cab-personal-hero h1 { font-size:clamp(40px,3.5vw,52px); line-height:.96; }
.cab-personal-date { margin-top:18px; font-size:16px; }
.cab-personal-index a { min-height:132px; padding:20px; }
.cab-personal-index strong { margin-top:16px; font-size:32px; }
.cab-company-entry { padding-block:38px 48px; gap:clamp(36px,4vw,68px); }
.cab-company-entry h2 { font-size:clamp(32px,2.5vw,40px); line-height:1.04; }
.cab-company-entry__copy > span { margin-top:16px; font-size:16px; }
.cab-company-entry__copy > div { margin-top:22px; }
.cab-company-route li { min-height:90px; padding:18px; gap:11px; }
.cab-personal-hero { grid-template-columns:minmax(360px,.75fr) minmax(560px,1.25fr); min-height:250px; padding-block:28px; }
.cab-personal-hero h1 { font-size:clamp(32px,2.8vw,40px); letter-spacing:-.04em; }
.cab-personal-index a { min-height:110px; padding:17px 18px; }
.cab-personal-index strong { margin-top:10px; font-size:28px; }
.cab-personal-index small { margin-top:5px; }
.cab-company-entry { display:block; padding-block:48px 36px; border-top:1px solid var(--cab-line); }
.cab-company-entry__copy { max-width:820px; padding:0; }
.cab-company-entry h2 { font-size:28px; letter-spacing:-.03em; }
.cab-company-entry__copy > span { margin-top:18px; }
.cab-company-entry__copy > div { margin-top:18px; }
.cab-company-route { display:none; }

/* Moderation is one continuous surface; avoid floating or clipped panels. */
.cab-page-head,
.cab-onboarding { background:#fff; }
.cab-page-head {
  min-height:0;
  padding-top:30px;
  padding-bottom:22px;
  align-items:start;
}
.cab-page-head__primary > nav { margin-bottom:28px; }
.cab-onboarding { padding-top:14px; }
.cab-page-status,
.cab-onboarding > div,
.cab-steps { box-shadow:none; }

/* Company navigation stays as simple as the personal menu. */
.cab-shell-page[data-account-mode="company"] .cab-nav > a:not(.is-active),
.cab-shell-page[data-account-mode="company"] .cab-nav__locked { margin-inline:2px; }
.cab-shell-page[data-account-mode="company"] .cab-plan {
  display:block;
  width:100%;
  padding:14px;
  border:1px solid var(--cab-line);
  border-radius:10px;
  background:#fff;
  color:var(--cab-ink);
  font:inherit;
  text-align:left;
  cursor:pointer;
}
.cab-shell-page[data-account-mode="company"] .cab-plan strong { font-size:24px; }
.cab-shell-page[data-account-mode="company"] .cab-plan:hover { border-color:#aeb3bb; box-shadow:var(--cab-shadow); }
.cab-shell-page[data-account-mode="company"] .cab-plan:focus-visible { outline:3px solid var(--cab-focus); outline-offset:2px; }
.cab-plan__row { display:flex; align-items:baseline; justify-content:space-between; gap:12px; }
.cab-plan__row > span { color:var(--cab-muted); font-size:15px; }
.cab-shell-page[data-plan="pro"] .cab-plan { border-color:var(--cab-brand); }
.cab-shell-page[data-plan="pro"] .cab-plan strong { color:var(--cab-brand); }
.cab-rail-actions { border-top:0; }
.cab-rail-actions .cab-add-company { margin:0 0 10px; border:1px solid var(--cab-brand); border-radius:8px; background:var(--cab-brand); color:#fff; font-weight:700; }
.cab-rail-actions .cab-add-company:hover { border-color:#d80f19; background:#d80f19; color:#fff; box-shadow:var(--cab-shadow); }
.cab-rail-actions .cab-add-company:focus-visible { outline:3px solid var(--cab-focus); outline-offset:2px; }
.cab-shell-page[data-account-mode="company"] #cab-main:has(.cab-onboarding:not([hidden])) {
  min-height:calc(100vh - 82px);
  background:#fff;
}
.cab-page-head { position:relative; grid-template-columns:1fr; min-height:260px; align-items:center; }
.cab-page-head__primary { padding-top:42px; }
.cab-page-head__primary > nav {
  position:absolute;
  top:30px;
  left:clamp(44px,4.5vw,82px);
  margin:0;
}
.cab-personal-hero { position:relative; min-height:300px; padding-top:62px; align-items:center; }
.cab-personal-hero__intro > nav {
  position:absolute;
  top:28px;
  left:clamp(44px,4.5vw,82px);
  margin:0;
}
.cab-mode-switch { display:grid; width:380px; grid-template-columns:repeat(2,minmax(0,1fr)); }
.cab-mode-switch button { width:100%; padding-inline:12px; white-space:nowrap; }
.cab-personal-dashboard,
.cab-personal-hero,
.cab-company-entry,
.cab-company-dashboard,
.cab-page-head,
.cab-onboarding,
.cab-shell-page #cab-main { background:#fff; }
.cab-company-entry__copy > span { margin-top:18px; }
.cab-company-entry__copy > div { margin-top:18px; }
.cab-steps li { min-height:150px; padding:22px; }
.cab-steps small { overflow-wrap:normal; }
.cab-shell-page[data-account-mode="company"] .cab-plan { box-shadow:none; }
@media (max-width:980px) {
  .cab-page-head { min-height:0; align-items:start; }
  .cab-page-head__primary { padding-top:0; }
  .cab-page-head__primary > nav,
  .cab-personal-hero__intro > nav { position:static; margin-bottom:24px; }
  .cab-personal-hero { min-height:0; padding-top:32px; align-items:start; }
}
