/* Hangar Legalite · UI Pro v4
   Visual-only layer. Routes, permissions, forms and application behavior stay unchanged. */

:root{
  --pro-wine:#a3262d;
  --pro-wine-strong:#811d23;
  --pro-wine-soft:#f7e9e9;
  --pro-ink:#24191b;
  --pro-ink-soft:#4d4042;
  --pro-muted:#776b6d;
  --pro-canvas:#f5f2f1;
  --pro-canvas-deep:#eee9e7;
  --pro-surface:rgba(255,255,255,.96);
  --pro-line:#e8dfdd;
  --pro-line-strong:#d8cbc8;
  --pro-success:#267153;
  --pro-warning:#a55d12;
  --pro-danger:#a3262d;
  --pro-radius-sm:10px;
  --pro-radius:16px;
  --pro-radius-lg:22px;
  --pro-shadow-xs:0 1px 2px rgba(44,29,31,.04);
  --pro-shadow-sm:0 8px 24px rgba(44,29,31,.06);
  --pro-shadow-md:0 18px 48px rgba(44,29,31,.09);
  --pro-shadow-lg:0 28px 72px rgba(35,20,23,.14);
  --sidebar-w:276px;
}

/* Foundation */
.app-authenticated{
  background:
    radial-gradient(circle at 82% 0,rgba(163,38,45,.055),transparent 28rem),
    linear-gradient(180deg,#faf8f7 0,var(--pro-canvas) 38%,#f8f6f5 100%);
  color:var(--pro-ink);
  font-family:Inter,"Segoe UI Variable","Segoe UI",ui-sans-serif,system-ui,sans-serif;
  font-feature-settings:"kern" 1,"ss01" 1;
}
.app-authenticated ::selection{background:rgba(163,38,45,.18);color:var(--pro-ink)}
.app-authenticated :focus-visible{outline:3px solid rgba(163,38,45,.22);outline-offset:3px}

/* Sidebar */
.app-authenticated .app-shell{grid-template-columns:var(--sidebar-w) minmax(0,1fr)}
.app-authenticated .app-sidebar{
  width:var(--sidebar-w);
  background:
    radial-gradient(circle at 22% -8%,rgba(190,63,70,.25),transparent 20rem),
    linear-gradient(165deg,#1b1113 0,#27191b 54%,#302124 100%);
  border-right:1px solid rgba(255,255,255,.08);
  box-shadow:18px 0 52px rgba(34,20,23,.17);
}
.app-authenticated .app-sidebar:after{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:3px;
  background:linear-gradient(90deg,#d8898d,var(--pro-wine),transparent 82%);
  pointer-events:none;
}
.app-authenticated .hangar-brand{padding:24px 20px 18px;border-color:rgba(255,255,255,.08)}
.app-authenticated .hangar-brand-link{gap:13px}
.app-authenticated .hangar-mark{
  width:44px;
  height:44px;
  border-radius:13px;
  border:1px solid rgba(255,255,255,.7);
  box-shadow:0 8px 24px rgba(0,0,0,.25),0 0 0 5px rgba(255,255,255,.045);
}
.app-authenticated .hangar-wordmark strong{font-size:25px;font-weight:760;letter-spacing:-.045em}
.app-authenticated .hangar-wordmark small{font-size:10px;letter-spacing:.09em;color:#d7cbcd;opacity:.78}
.app-authenticated .hangar-version{
  width:max-content;
  margin:12px 0 0 57px;
  padding:4px 8px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:999px;
  color:rgba(255,255,255,.48);
  background:rgba(255,255,255,.035);
  font-size:9px;
  letter-spacing:.04em;
}
.app-authenticated .app-nav{padding:14px 12px 24px;scrollbar-color:rgba(255,255,255,.17) transparent}
.app-authenticated .nav-group{gap:4px;margin:8px 0 19px}
.app-authenticated .nav-label{
  display:flex;
  align-items:center;
  gap:10px;
  padding:0 12px 7px;
  color:rgba(255,255,255,.42);
  font-size:9px;
  letter-spacing:.17em;
}
.app-authenticated .nav-label:after{content:"";height:1px;flex:1;background:linear-gradient(90deg,rgba(255,255,255,.13),transparent)}
.app-authenticated .app-nav a{
  position:relative;
  display:grid;
  grid-template-columns:32px minmax(0,1fr) auto;
  align-items:center;
  justify-content:initial;
  min-height:43px;
  padding:5px 10px 5px 7px;
  border:1px solid transparent;
  border-radius:12px;
  color:rgba(255,255,255,.73);
  font-size:12.5px;
  font-weight:610;
  letter-spacing:-.005em;
  transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease;
}
.app-authenticated .app-nav a:before{
  content:attr(data-icon);
  display:grid;
  place-items:center;
  width:26px;
  height:26px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:8px;
  background:rgba(255,255,255,.035);
  color:rgba(255,255,255,.56);
  font:700 13px/1 "Segoe UI Symbol","Segoe UI",sans-serif;
  transition:inherit;
}
.app-authenticated .app-nav a:hover{
  background:rgba(255,255,255,.07);
  border-color:rgba(255,255,255,.06);
  color:#fff;
  transform:translateX(2px);
}
.app-authenticated .app-nav a:hover:before{background:rgba(255,255,255,.08);color:#fff}
.app-authenticated .app-nav a.active{
  background:linear-gradient(135deg,rgba(178,48,55,.96),rgba(133,29,35,.96));
  border-color:rgba(255,255,255,.11);
  color:#fff;
  box-shadow:0 10px 24px rgba(97,12,19,.33),inset 0 1px 0 rgba(255,255,255,.11);
  transform:none;
}
.app-authenticated .app-nav a.active:before{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.16);color:#fff}
.app-authenticated .app-nav a.active:after{
  content:"";
  position:absolute;
  right:-1px;
  width:3px;
  height:20px;
  border-radius:3px 0 0 3px;
  background:#f2b8bb;
  box-shadow:0 0 14px rgba(242,184,187,.65);
}
.app-authenticated .nav-badge{
  min-width:21px;
  height:21px;
  border:1px solid rgba(255,255,255,.4)!important;
  background:#fff!important;
  color:var(--pro-wine)!important;
  box-shadow:0 4px 10px rgba(0,0,0,.12);
}
.app-authenticated .sidebar-footer{padding:14px 18px 17px;border-color:rgba(255,255,255,.08);background:rgba(0,0,0,.08)}
.app-authenticated .sidebar-footer img{height:48px;border-radius:12px;padding:6px 10px;box-shadow:0 8px 25px rgba(0,0,0,.18)}

/* Top bar */
.app-authenticated .app-content{grid-column:2}
.app-authenticated .app-topbar{
  height:76px!important;
  min-height:76px!important;
  padding:0 32px;
  background:rgba(255,255,255,.86);
  border-bottom:1px solid rgba(218,206,204,.8);
  box-shadow:0 5px 22px rgba(48,31,34,.035);
  backdrop-filter:blur(18px) saturate(1.25);
}
.app-authenticated .topbar-workspace{display:flex;align-items:center;gap:10px}
.app-authenticated .workspace-signal{width:9px;height:9px;border-radius:50%;background:var(--pro-wine);box-shadow:0 0 0 5px var(--pro-wine-soft)}
.app-authenticated .topbar-workspace>div{display:grid;gap:1px;line-height:1.1}
.app-authenticated .topbar-workspace small{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:#918587;font-weight:800}
.app-authenticated .topbar-workspace strong{font-size:13px;color:var(--pro-ink);font-weight:720}
.app-authenticated .user-menu{gap:10px}
.app-authenticated .user-menu form{margin:0}
.app-authenticated .user-avatar{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:12px;
  background:linear-gradient(145deg,#f8e9e9,#f0d8d9);
  border:1px solid #e8cbcd;
  color:var(--pro-wine-strong);
  font-size:13px;
  font-weight:850;
  box-shadow:var(--pro-shadow-xs);
}
.app-authenticated .user-identity{padding:0 5px 0 1px}
.app-authenticated .user-identity strong{font-size:12.5px;font-weight:750;color:var(--pro-ink)}
.app-authenticated .user-identity small{font-size:9.5px;color:var(--pro-muted)}
.app-authenticated .help-button,
.app-authenticated .topbar-link,
.app-authenticated .link-button{
  height:36px;
  min-width:36px;
  display:inline-grid;
  place-items:center;
  border-radius:10px!important;
  background:#fff!important;
  border:1px solid var(--pro-line)!important;
  color:var(--pro-ink)!important;
  box-shadow:var(--pro-shadow-xs)!important;
}
.app-authenticated .help-button:hover,
.app-authenticated .topbar-link:hover,
.app-authenticated .link-button:hover{background:var(--pro-wine-soft)!important;border-color:#dfbfc1!important;color:var(--pro-wine-strong)!important;transform:translateY(-1px)}
.app-authenticated .menu-toggle{
  min-height:38px;
  padding:7px 10px!important;
  border:1px solid var(--pro-line)!important;
  border-radius:10px!important;
  background:#fff!important;
  color:var(--pro-ink)!important;
  box-shadow:var(--pro-shadow-xs)!important;
}

/* Main canvas and typography */
.app-authenticated .app-main{max-width:1540px!important;padding:34px 38px 64px!important}
.app-authenticated h1{font-size:clamp(30px,3vw,42px);line-height:1.05;font-weight:790;letter-spacing:-.045em}
.app-authenticated h2{font-size:clamp(20px,2vw,27px);line-height:1.15;font-weight:760;letter-spacing:-.035em}
.app-authenticated h3{font-weight:740;letter-spacing:-.02em}
.app-authenticated .muted{color:var(--pro-muted)!important;line-height:1.55}
.app-authenticated .eyebrow{font-size:10px!important;letter-spacing:.16em!important;color:var(--pro-wine)!important}
.app-authenticated .page-head:not(.dashboard-hero){margin-bottom:24px;padding:4px 2px 20px;border-bottom:1px solid var(--pro-line)}

/* Surfaces */
.app-authenticated .panel,
.app-authenticated .card,
.app-authenticated .question,
.app-authenticated .profile-hero,
.app-authenticated .person-card,
.app-authenticated .scenario-card,
.app-authenticated .workforce-line-card{
  border:1px solid rgba(224,213,211,.92)!important;
  border-radius:var(--pro-radius)!important;
  background:var(--pro-surface)!important;
  box-shadow:var(--pro-shadow-sm)!important;
}
.app-authenticated .panel{padding:24px;margin:20px 0}
.app-authenticated .section-head{gap:24px;align-items:flex-start}
.app-authenticated .section-head h2{margin-bottom:7px}
.app-authenticated .section-head p{margin:0}
.app-authenticated .person-card,
.app-authenticated .scenario-card{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.app-authenticated .person-card:hover,
.app-authenticated .scenario-card:hover{transform:translateY(-2px);box-shadow:var(--pro-shadow-md)!important;border-color:#d6bfbd!important}

/* Actions and fields */
.app-authenticated button,
.app-authenticated .button{
  min-height:40px;
  padding:10px 16px!important;
  border-radius:11px!important;
  background:linear-gradient(135deg,var(--pro-wine),var(--pro-wine-strong))!important;
  border:1px solid var(--pro-wine-strong)!important;
  color:#fff!important;
  font-size:12.5px;
  font-weight:760;
  box-shadow:0 8px 18px rgba(129,29,35,.16)!important;
  transition:transform .16s ease,box-shadow .16s ease,filter .16s ease;
}
.app-authenticated button:hover,
.app-authenticated .button:hover{filter:brightness(1.04);transform:translateY(-1px);box-shadow:0 11px 24px rgba(129,29,35,.23)!important}
.app-authenticated button.secondary,
.app-authenticated .button.secondary{
  background:#fff!important;
  border-color:var(--pro-line-strong)!important;
  color:var(--pro-ink)!important;
  box-shadow:var(--pro-shadow-xs)!important;
}
.app-authenticated button.secondary:hover,
.app-authenticated .button.secondary:hover{background:#fbf7f6!important;border-color:#cdb9b6!important;color:var(--pro-wine-strong)!important}
.app-authenticated .button.compact,
.app-authenticated button.compact{min-height:32px;padding:6px 10px!important;border-radius:9px!important;font-size:11px!important}
.app-authenticated input:not([type=radio]):not([type=checkbox]),
.app-authenticated select,
.app-authenticated textarea,
.app-authenticated .comment{
  min-height:43px;
  padding:10px 13px;
  border:1px solid var(--pro-line-strong)!important;
  border-radius:11px!important;
  background:rgba(255,255,255,.96)!important;
  color:var(--pro-ink)!important;
  box-shadow:inset 0 1px 2px rgba(44,29,31,.025);
  transition:border-color .16s ease,box-shadow .16s ease,background .16s ease;
}
.app-authenticated textarea{min-height:96px}
.app-authenticated input:focus,
.app-authenticated select:focus,
.app-authenticated textarea:focus{border-color:#b85055!important;background:#fff!important;box-shadow:0 0 0 4px rgba(163,38,45,.10)!important}
.app-authenticated .form-grid label,
.app-authenticated .filters label{color:var(--pro-ink-soft);font-size:12px;font-weight:720}

/* Tables and data density */
.app-authenticated table{border-collapse:separate;border-spacing:0;color:var(--pro-ink)}
.app-authenticated th{
  padding:12px 14px;
  background:#f8f5f4;
  border-bottom:1px solid var(--pro-line)!important;
  color:#76686a!important;
  font-size:10px;
  font-weight:820;
  letter-spacing:.075em;
}
.app-authenticated td{padding:14px;border-bottom:1px solid #eee8e6!important;font-size:13px;line-height:1.45}
.app-authenticated tr:last-child td{border-bottom:0!important}
.app-authenticated tbody tr{transition:background .14s ease}
.app-authenticated tbody tr:hover{background:#fcf9f8}
.app-authenticated td a:not(.button){font-weight:680;text-decoration:none;color:var(--pro-wine-strong)}
.app-authenticated td a:not(.button):hover{text-decoration:underline}

/* Status and feedback */
.app-authenticated .badge{
  padding:5px 9px;
  border:1px solid #e6d9d7!important;
  border-radius:999px;
  background:#f7f2f1!important;
  color:var(--pro-ink-soft)!important;
  font-size:10.5px;
  font-weight:760;
}
.app-authenticated .badge.completed,
.app-authenticated .completed{background:#e8f4ee!important;border-color:#cce6d9!important;color:#236147!important}
.app-authenticated .badge.in_progress,
.app-authenticated .in_progress{background:#fff4dd!important;border-color:#f1dbac!important;color:#8b551a!important}
.app-authenticated .alert{border-radius:13px;padding:13px 15px;box-shadow:var(--pro-shadow-xs)}
.app-authenticated .empty,
.app-authenticated .empty-state{border:1px dashed #d9cbc8;border-radius:13px;background:#fbf8f7;color:var(--pro-muted)}

/* Dashboard */
.app-authenticated .dashboard-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:190px;
  margin:0 0 22px;
  padding:34px 36px;
  align-items:flex-end;
  border:1px solid rgba(255,255,255,.08);
  border-radius:var(--pro-radius-lg);
  background:
    radial-gradient(circle at 79% 15%,rgba(210,112,118,.32),transparent 14rem),
    linear-gradient(125deg,#241719 0,#3b2427 55%,#6e242a 100%);
  box-shadow:var(--pro-shadow-lg);
}
.app-authenticated .dashboard-hero:before,
.app-authenticated .dashboard-hero:after{
  content:"";
  position:absolute;
  z-index:-1;
  border:1px solid rgba(255,255,255,.08);
  border-radius:50%;
}
.app-authenticated .dashboard-hero:before{width:330px;height:330px;right:-100px;top:-180px;box-shadow:0 0 0 55px rgba(255,255,255,.018)}
.app-authenticated .dashboard-hero:after{width:160px;height:160px;right:23%;bottom:-110px;box-shadow:0 0 0 38px rgba(255,255,255,.015)}
.app-authenticated .dashboard-hero h1{margin:7px 0 12px;color:#fff;font-size:clamp(38px,4vw,56px)}
.app-authenticated .dashboard-hero .eyebrow{color:#e7b7ba!important}
.app-authenticated .dashboard-hero .muted{max-width:640px;margin:0;color:rgba(255,255,255,.72)!important;font-size:15px}
.app-authenticated .dashboard-hero .period-picker{position:relative;z-index:1;min-width:250px}
.app-authenticated .dashboard-hero .period-picker label{color:rgba(255,255,255,.66);font-size:9px;letter-spacing:.12em}
.app-authenticated .dashboard-hero .period-picker select{border-color:rgba(255,255,255,.23)!important;background:rgba(255,255,255,.94)!important;box-shadow:0 12px 30px rgba(15,4,6,.2)}
.app-authenticated .dashboard-kpis{grid-template-columns:repeat(auto-fit,minmax(218px,1fr));gap:14px;margin:0 0 24px}
.app-authenticated .dashboard-kpis .kpi-card{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:152px;
  padding:22px 22px 20px;
  border:1px solid var(--pro-line)!important;
  border-radius:var(--pro-radius)!important;
  background:linear-gradient(155deg,#fff,#fcfaf9)!important;
  box-shadow:var(--pro-shadow-sm)!important;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.app-authenticated .dashboard-kpis .kpi-card:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(180deg,#bf555b,var(--pro-wine-strong))}
.app-authenticated .dashboard-kpis .kpi-card:after{content:"";position:absolute;z-index:-1;width:100px;height:100px;right:-48px;top:-52px;border-radius:50%;background:rgba(163,38,45,.045);box-shadow:0 0 0 20px rgba(163,38,45,.018)}
.app-authenticated .dashboard-kpis .kpi-card:hover{transform:translateY(-3px);box-shadow:var(--pro-shadow-md)!important;border-color:#dac3c1!important}
.app-authenticated .dashboard-kpis .kpi-card>span{font-size:10px;font-weight:820;letter-spacing:.085em;color:#76686a}
.app-authenticated .dashboard-kpis .kpi-card>strong{margin:8px 0 4px;font-size:40px;line-height:1;color:var(--pro-ink)}
.app-authenticated .dashboard-kpis .kpi-card>small{margin-top:auto;color:#998d8f;line-height:1.4}
.app-authenticated .action-panel{
  position:relative;
  overflow:hidden;
  padding:26px 28px;
  border-color:#dfcecc!important;
  background:linear-gradient(110deg,#fff 0,#fff 68%,#faf0ef 100%)!important;
}
.app-authenticated .action-panel:after{content:"";position:absolute;right:-45px;top:-80px;width:190px;height:190px;border:1px solid rgba(163,38,45,.08);border-radius:50%;pointer-events:none}
.app-authenticated .action-panel-side{position:relative;z-index:1}
.app-authenticated .progress-ring{
  position:relative;
  width:70px;
  height:70px;
  border:0;
  background:conic-gradient(var(--pro-wine) var(--progress,0%),#ece6e5 0);
  box-shadow:inset 0 0 0 1px rgba(163,38,45,.08);
}
.app-authenticated .progress-ring:before{content:"";position:absolute;inset:7px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(44,29,31,.08)}
.app-authenticated .progress-ring strong{position:relative;z-index:1;font-size:13px;color:var(--pro-ink)}
.app-authenticated .dashboard-grid{gap:18px}
.app-authenticated .dashboard-grid>.panel{min-width:0;margin:0 0 18px}
.app-authenticated .trend-row{padding:8px 0;border-bottom:1px solid #f0eae8}
.app-authenticated .trend-row:last-child{border-bottom:0}
.app-authenticated .bar-track{height:8px;background:#eee8e7;box-shadow:inset 0 1px 2px rgba(44,29,31,.05)}
.app-authenticated .bar-fill{background:linear-gradient(90deg,var(--pro-wine-strong),#c5545a)!important;box-shadow:0 0 12px rgba(163,38,45,.18)}
.app-authenticated .bar-fill.soft{background:linear-gradient(90deg,#7c6a6c,#b69b9e)!important;box-shadow:none}
.app-authenticated .key-card{
  min-height:68px;
  padding:15px 17px;
  border-color:#e6dcda;
  border-radius:13px;
  background:linear-gradient(145deg,#fbf9f8,#f6f2f1);
}
.app-authenticated .key-card strong{color:var(--pro-wine-strong);font-size:23px}
.app-authenticated .status-strip{gap:12px}
.app-authenticated .status-strip>div{
  min-height:86px;
  justify-content:center;
  border:1px solid #e7dddb;
  border-radius:13px;
  background:linear-gradient(150deg,#fbf9f8,#f6f2f1);
}
.app-authenticated .status-strip strong{font-size:28px;color:var(--pro-ink)}

/* Secondary components */
.app-authenticated .avatar{background:linear-gradient(145deg,var(--pro-ink),#5a3a3e)!important;box-shadow:0 7px 18px rgba(36,25,27,.18)}
.app-authenticated .subnav{top:76px;padding:11px 0;background:rgba(245,242,241,.91)!important;backdrop-filter:blur(10px)}
.app-authenticated .subnav a{border-radius:999px;padding:8px 12px;background:#fff;box-shadow:var(--pro-shadow-xs)}
.app-authenticated details{border-color:var(--pro-line)}
.app-authenticated summary{color:var(--pro-ink);font-weight:720}
.app-authenticated .filters{padding:14px;border:1px solid var(--pro-line);border-radius:14px;background:rgba(255,255,255,.72)}
.app-authenticated .calendar-month,
.app-authenticated .org-node,
.app-authenticated .plan-card{border-color:var(--pro-line);box-shadow:var(--pro-shadow-xs)}

/* Scrollbars */
.app-authenticated *{scrollbar-width:thin;scrollbar-color:#c9bab8 transparent}
.app-authenticated *::-webkit-scrollbar{width:9px;height:9px}
.app-authenticated *::-webkit-scrollbar-thumb{background:#c9bab8;border:2px solid transparent;background-clip:padding-box;border-radius:999px}
.app-authenticated .app-nav::-webkit-scrollbar-thumb{background:rgba(255,255,255,.18);border-color:transparent}

/* Responsive behavior */
@media(max-width:1180px){
  .app-authenticated .app-main{padding:28px 26px 56px!important}
  .app-authenticated .dashboard-hero{min-height:170px;padding:28px}
  .app-authenticated .dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:1020px){
  .app-authenticated .app-content{grid-column:auto}
  .app-authenticated .app-topbar{height:70px!important;min-height:70px!important;padding:0 18px}
  .app-authenticated .topbar-workspace{display:none}
  .app-authenticated .topbar-product{display:block}
  .app-authenticated .app-main{padding:24px 20px 48px!important}
  .app-authenticated .subnav{top:70px}
  .app-authenticated .sidebar-scrim{
    min-height:0;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:rgba(22,12,14,.54)!important;
    box-shadow:none!important;
    transform:none;
    filter:none;
  }
}
@media(max-width:760px){
  .app-authenticated .app-topbar{height:64px!important;min-height:64px!important;padding:0 13px}
  .app-authenticated .user-avatar{width:34px;height:34px;border-radius:10px}
  .app-authenticated .help-button{display:none}
  .app-authenticated .app-main{padding:18px 13px 42px!important}
  .app-authenticated .dashboard-hero{min-height:0;display:grid;gap:24px;padding:24px 22px;border-radius:18px}
  .app-authenticated .dashboard-hero h1{font-size:39px}
  .app-authenticated .dashboard-hero .period-picker{width:100%;min-width:0}
  .app-authenticated .dashboard-kpis{grid-template-columns:1fr;gap:11px}
  .app-authenticated .dashboard-kpis .kpi-card{min-height:132px}
  .app-authenticated .action-panel{align-items:stretch;padding:22px;gap:18px}
  .app-authenticated .action-panel-side{align-items:center}
  .app-authenticated .action-panel-side .button{flex:1;text-align:center}
  .app-authenticated .panel{padding:19px;border-radius:14px!important}
  .app-authenticated .section-head{display:grid;gap:12px}
  .app-authenticated .section-head .button{width:100%;text-align:center}
  .app-authenticated .status-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
  .app-authenticated .page-head:not(.dashboard-hero){display:grid}
}
@media(max-width:440px){
  .app-authenticated .user-menu{gap:6px}
  .app-authenticated .user-identity{display:none}
  .app-authenticated .topbar-link{display:none}
  .app-authenticated .action-panel-side{display:grid;grid-template-columns:auto 1fr;width:100%}
  .app-authenticated .status-strip{grid-template-columns:1fr 1fr}
}

@media(prefers-reduced-motion:reduce){
  .app-authenticated *,
  .app-authenticated *:before,
  .app-authenticated *:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}

@media print{
  .app-authenticated .app-main{padding:0!important;background:#fff!important}
  .app-authenticated .panel,
  .app-authenticated .card{box-shadow:none!important}
}

/* Certificado laboral - selector de sueldo */
.app-authenticated .certificate-salary-choice{
  grid-column:1 / -1;
  min-width:0;
  margin:2px 0 4px;
  padding:0;
  border:0!important;
}
.app-authenticated .certificate-salary-choice>legend{
  margin:0 0 10px;
  padding:0;
  color:var(--pro-ink);
  font-size:13px;
  font-weight:800;
}
.app-authenticated .certificate-salary-options{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  max-width:880px;
}
.app-authenticated .form-grid .certificate-salary-option{
  position:relative;
  display:grid!important;
  grid-template-columns:46px minmax(0,1fr) 24px;
  align-items:center;
  gap:14px!important;
  min-height:104px;
  margin:0;
  padding:17px 18px!important;
  border:1px solid #dfd2d0;
  border-radius:16px;
  background:linear-gradient(145deg,#fff 0%,#fcfaf9 100%);
  box-shadow:0 5px 16px rgba(48,30,32,.055);
  cursor:pointer;
  color:var(--pro-ink)!important;
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease;
}
.app-authenticated .form-grid .certificate-salary-option:hover{
  transform:translateY(-2px);
  border-color:#c89396;
  box-shadow:0 10px 24px rgba(74,34,38,.10);
}
.app-authenticated .certificate-salary-option:has(input:checked){
  border-color:#a3262d;
  background:linear-gradient(145deg,#fff 0%,#fff5f4 100%);
  box-shadow:0 0 0 3px rgba(163,38,45,.09),0 12px 28px rgba(74,34,38,.10);
}
.app-authenticated .certificate-salary-option input[type=radio]{
  position:absolute;
  width:1px;
  height:1px;
  opacity:0;
  pointer-events:none;
}
.app-authenticated .certificate-salary-icon{
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  border-radius:13px;
  background:#f5eded;
  color:#8e292f;
  font-size:19px;
  font-weight:850;
}
.app-authenticated .certificate-salary-option:has(input:checked) .certificate-salary-icon{
  background:#8f242a;
  color:#fff;
}
.app-authenticated .certificate-salary-copy{
  display:block;
  min-width:0;
}
.app-authenticated .certificate-salary-copy strong{
  display:block;
  margin:0 0 5px;
  color:#382b2d;
  font-size:14px;
  font-weight:820;
}
.app-authenticated .certificate-salary-copy small{
  display:block;
  color:#827477;
  font-size:11.5px;
  font-weight:520;
  line-height:1.45;
}
.app-authenticated .certificate-salary-check{
  position:relative;
  width:22px;
  height:22px;
  border:2px solid #cdbfbd;
  border-radius:50%;
  background:#fff;
}
.app-authenticated .certificate-salary-option:has(input:checked) .certificate-salary-check{
  border-color:#8f242a;
  background:#8f242a;
}
.app-authenticated .certificate-salary-option:has(input:checked) .certificate-salary-check:after{
  content:"";
  position:absolute;
  left:6px;
  top:3px;
  width:5px;
  height:9px;
  border:solid #fff;
  border-width:0 2px 2px 0;
  transform:rotate(45deg);
}
.app-authenticated .certificate-salary-help{
  display:block;
  margin-top:9px;
  color:#8a7b7d;
  font-size:11px;
}
@media(max-width:760px){
  .app-authenticated .certificate-salary-options{grid-template-columns:1fr}
  .app-authenticated .form-grid .certificate-salary-option{min-height:92px}
}


/* Stable sidebar: fixed frame, independent scrolling and no layout movement on hover. */
@media (min-width:1021px){
  .app-authenticated .app-sidebar{height:100dvh;min-height:0;overflow:hidden}
  .app-authenticated .hangar-brand,.app-authenticated .sidebar-footer{flex:none}
  .app-authenticated .app-nav{
    flex:1 1 auto;
    min-height:0;
    overflow-y:auto;
    overflow-x:hidden;
    overscroll-behavior:contain;
    scrollbar-gutter:stable;
  }
  .app-authenticated .app-nav a:hover{transform:none}
}
