:root{
  --app-bg:#f4f8fc;
  --app-surface:#ffffff;
  --app-text:#10213f;
  --app-muted:#66738c;
  --app-line:#dce6f2;
  --app-navy:#0b1d3a;
  --app-teal:#00b49a;
  --app-teal-dark:#008f7c;
  --app-red:#ca3343;
  --app-amber:#b7791f;
  --app-green:#027a48;
}
body.app-body{
  min-height:100vh;
  background:radial-gradient(circle at 8% 8%,rgba(0,180,154,.13),transparent 28%),radial-gradient(circle at 88% 18%,rgba(11,29,58,.10),transparent 28%),var(--app-bg);
}
.app-shell{min-height:100vh;display:flex;flex-direction:column}.app-topbar{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.9);backdrop-filter:blur(18px);border-bottom:1px solid rgba(220,230,242,.9)}.app-topbar-inner{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:20px}.app-brand{display:flex;align-items:center;gap:12px;font-weight:950;color:var(--app-navy)}.app-brand img{width:156px}.app-top-actions{display:flex;align-items:center;gap:12px}.app-user{display:flex;align-items:center;gap:10px;color:var(--app-navy);font-weight:900}.app-user .avatar{margin:0;background:linear-gradient(135deg,var(--app-navy),#173a68)}.app-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:24px;align-items:start;padding:28px 0 58px}.app-sidebar{position:sticky;top:96px;background:rgba(255,255,255,.88);border:1px solid rgba(220,230,242,.95);border-radius:24px;box-shadow:var(--shadow2);padding:16px}.app-nav{display:grid;gap:8px}.app-nav a{display:flex;align-items:center;gap:12px;padding:13px 14px;border-radius:16px;color:#31435d;font-weight:900}.app-nav a:hover,.app-nav a.active{background:rgba(0,180,154,.12);color:#007b6b}.app-nav .nav-ico{display:grid;place-items:center;width:32px;height:32px;border-radius:12px;background:#edf5fb;color:var(--app-navy);font-weight:950}.app-nav a.active .nav-ico{background:var(--app-teal);color:#fff}.app-sidebar-card{margin-top:16px;padding:16px;border-radius:18px;background:linear-gradient(135deg,#0b1d3a,#143b6a);color:#fff}.app-sidebar-card strong{display:block;margin-bottom:6px}.app-sidebar-card p{margin:0;color:rgba(255,255,255,.76);font-size:14px}.app-main{min-width:0}.app-page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px}.app-page-head h1{font-size:clamp(32px,4vw,52px);letter-spacing:-.055em;line-height:1;margin:0 0 10px}.app-page-head p{margin:0;color:var(--app-muted);font-weight:700;max-width:720px}.app-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}.span-12{grid-column:span 12}.span-8{grid-column:span 8}.span-7{grid-column:span 7}.span-6{grid-column:span 6}.span-5{grid-column:span 5}.span-4{grid-column:span 4}.span-3{grid-column:span 3}.app-card{background:rgba(255,255,255,.93);border:1px solid rgba(220,230,242,.95);border-radius:24px;box-shadow:var(--shadow2);padding:22px}.app-card.compact{padding:18px}.app-card h2,.app-card h3{margin:0 0 10px;color:var(--app-navy);letter-spacing:-.025em}.app-card p{color:#40516b}.kpi{display:flex;align-items:center;justify-content:space-between;gap:12px}.kpi strong{font-size:36px;line-height:1;color:var(--app-navy)}.kpi span{display:block;color:var(--app-muted);font-weight:900;font-size:13px}.kpi .icon-bubble{width:48px;height:48px;margin:0;font-size:20px}.pill{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:0 12px;border-radius:999px;font-size:13px;font-weight:950;background:#edf5fb;color:#31435d}.pill.teal{background:rgba(0,180,154,.12);color:#007b6b}.pill.amber{background:#fff7ed;color:#9a5b13}.pill.red{background:#fff1f2;color:#be123c}.pill.green{background:#ecfdf3;color:#027a48}.cards-list{display:grid;gap:14px}.shift-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:flex-start;background:#fff;border:1px solid rgba(220,230,242,.95);border-radius:22px;padding:20px;box-shadow:0 10px 28px rgba(11,29,58,.06)}.shift-card h3{font-size:20px;margin:0 0 8px}.shift-meta{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.shift-desc{margin:8px 0 0;color:#42516a}.shift-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.match-ring{display:grid;place-items:center;width:78px;height:78px;border-radius:50%;background:conic-gradient(var(--app-teal) calc(var(--pct,72) * 1%),#e6edf5 0);box-shadow:inset 0 0 0 9px #fff;color:var(--app-navy);font-weight:950}.empty{padding:26px;border:1px dashed #cbd8e8;border-radius:22px;background:#f8fbfe;color:#53637b}.form-panel{background:#fff;border:1px solid rgba(220,230,242,.95);border-radius:24px;box-shadow:var(--shadow2);padding:24px}.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-row + .form-row{margin-top:16px}.field{display:grid;gap:8px}.field span,.field label{font-weight:950;color:var(--app-navy)}.field input,.field select,.field textarea{width:100%;border:1px solid var(--app-line);border-radius:14px;background:#fff;padding:13px 14px;color:var(--app-text);outline:0}.field textarea{min-height:110px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:rgba(0,180,154,.8);box-shadow:0 0 0 4px rgba(0,180,154,.12)}.check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.check-chip{position:relative}.check-chip input{position:absolute;opacity:0;pointer-events:none}.check-chip span{display:flex;align-items:center;justify-content:center;min-height:44px;border-radius:14px;border:1px solid var(--app-line);background:#fff;color:#31435d;font-weight:900;text-align:center;padding:8px 10px}.check-chip input:checked + span{border-color:rgba(0,180,154,.7);background:rgba(0,180,154,.12);color:#007b6b}.form-actions-app{display:flex;align-items:center;gap:12px;margin-top:18px;flex-wrap:wrap}.notice{padding:14px 16px;border-radius:18px;background:#f8fbfe;border:1px solid var(--app-line);color:#40516b;font-weight:700}.timeline{display:grid;gap:10px}.timeline-item{display:grid;grid-template-columns:32px 1fr;gap:12px;align-items:start}.timeline-dot{width:32px;height:32px;border-radius:50%;background:rgba(0,180,154,.12);color:#007b6b;display:grid;place-items:center;font-weight:950}.timeline-item strong{color:var(--app-navy)}.table-like{display:grid;gap:10px}.table-row{display:grid;grid-template-columns:1.3fr .8fr .8fr auto;gap:12px;align-items:center;padding:14px;border:1px solid var(--app-line);border-radius:16px;background:#fff}.toast{position:fixed;right:18px;bottom:18px;z-index:100;max-width:420px;padding:16px 18px;border-radius:18px;background:#0b1d3a;color:#fff;box-shadow:var(--shadow);font-weight:800;opacity:0;transform:translateY(10px);pointer-events:none;transition:.22s}.toast.show{opacity:1;transform:translateY(0)}.login-shell{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.login-hero{position:relative;overflow:hidden;padding:46px min(6vw,78px);background:linear-gradient(145deg,#07162d,#0b1d3a 60%,#0d315c);color:#fff}.login-hero:before{content:"";position:absolute;right:-220px;top:-220px;width:520px;height:520px;border-radius:50%;background:rgba(0,180,154,.18)}.login-hero .app-brand img{filter:brightness(0) invert(1);width:172px}.login-hero-content{position:relative;z-index:1;margin-top:88px;max-width:620px}.login-hero h1{color:#fff;font-size:clamp(42px,6vw,72px);line-height:.96;margin:20px 0}.login-hero p{font-size:20px;color:rgba(255,255,255,.78)}.login-points{display:grid;gap:12px;margin-top:34px}.login-point{display:flex;align-items:center;gap:12px;font-weight:900}.login-point span{display:grid;place-items:center;width:34px;height:34px;border-radius:12px;background:rgba(0,180,154,.18);color:#60ffdf}.login-panel-wrap{display:grid;place-items:center;padding:44px 28px}.login-panel{width:min(520px,100%);background:#fff;border:1px solid rgba(220,230,242,.95);border-radius:28px;box-shadow:var(--shadow);padding:28px}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;background:#edf5fb;border-radius:16px;padding:6px;margin-bottom:20px}.auth-tabs button{border:0;border-radius:12px;min-height:44px;background:transparent;color:#31435d;font-weight:950;cursor:pointer}.auth-tabs button.active{background:#fff;color:#007b6b;box-shadow:0 8px 18px rgba(11,29,58,.08)}.auth-form{display:none}.auth-form.active{display:block}.auth-form h2{font-size:30px;margin-bottom:8px}.auth-form p{color:var(--app-muted);font-weight:700}.login-note{margin-top:18px;font-size:14px;color:#66738c}.mobile-app-menu{display:none}.mobile-app-menu button{width:100%;border:1px solid var(--app-line);background:#fff;border-radius:14px;padding:12px 14px;text-align:left;font-weight:950;color:var(--app-navy)}
@media(max-width:980px){.app-layout{grid-template-columns:1fr}.app-sidebar{position:static}.app-nav{grid-template-columns:repeat(5,minmax(0,1fr))}.app-nav a{justify-content:center;flex-direction:column;text-align:center;font-size:12px}.span-8,.span-7,.span-6,.span-5,.span-4,.span-3{grid-column:span 12}.login-shell{grid-template-columns:1fr}.login-hero{min-height:auto}.login-hero-content{margin-top:50px}.login-panel-wrap{padding:30px 20px}.check-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.app-topbar-inner{min-height:68px}.app-brand img{width:138px}.app-user-name{display:none}.app-layout{padding:18px 0 42px}.app-sidebar{display:none}.mobile-app-menu{display:block;margin-bottom:16px}.app-nav.open{display:grid}.app-page-head{display:block}.app-page-head .btn{margin-top:14px;width:100%}.app-card{padding:18px;border-radius:20px}.app-grid{gap:14px}.form-row{grid-template-columns:1fr}.shift-card{grid-template-columns:1fr}.shift-actions{justify-content:flex-start}.table-row{grid-template-columns:1fr}.login-hero{padding:28px 22px}.login-hero h1{font-size:42px}.login-hero-content{margin-top:36px}.login-panel{padding:22px;border-radius:22px}.check-grid{grid-template-columns:1fr}.app-top-actions .btn-ghost{display:none}}
@media(max-width:720px){.app-sidebar.mobile-open{display:block;grid-column:1 / -1;margin-bottom:14px}.app-sidebar.mobile-open .app-nav{grid-template-columns:1fr}.app-sidebar.mobile-open .app-nav a{flex-direction:row;justify-content:flex-start;font-size:15px;text-align:left}}

/* Operationspanel */
.admin-layout .app-sidebar-card{background:linear-gradient(135deg,#0b1d3a,#007b6b)}
.admin-actions{display:grid;gap:10px;min-width:300px;max-width:380px}
.inline-form{display:grid;gap:8px;background:#f8fbfe;border:1px solid var(--app-line);border-radius:18px;padding:12px;min-width:290px}
.inline-form select,.inline-form input{width:100%;border:1px solid var(--app-line);border-radius:12px;padding:10px 12px;background:#fff;color:var(--app-text);font-weight:800}
.admin-status-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;justify-content:flex-end}
.admin-mini-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.admin-table{display:grid;gap:10px}.admin-row{display:grid;grid-template-columns:1.4fr .7fr 1.4fr .45fr;gap:14px;align-items:center;padding:15px;border:1px solid var(--app-line);border-radius:18px;background:#fff}.admin-row strong{display:block;color:var(--app-navy);font-size:16px}.admin-row span:not(.pill){display:block;color:var(--app-muted);font-weight:800;font-size:13px;margin-top:4px}.admin-list{display:grid;gap:12px}.mini-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px;border:1px solid var(--app-line);border-radius:18px;background:#fff}.mini-row strong{display:block;color:var(--app-navy)}.mini-row span{display:block;color:var(--app-muted);font-weight:800;font-size:13px;margin-top:4px}.admin-lead-note{margin:0 0 10px 0}.form-panel.span-12{grid-column:span 12}.form-panel h2{margin-top:0;color:var(--app-navy)}
@media(max-width:980px){.admin-actions{min-width:0;max-width:none}.admin-row{grid-template-columns:1fr}.admin-status-actions{justify-content:flex-start}.inline-form{min-width:0}.admin-shift-card{grid-template-columns:1fr}}

/* Tillsatt v5: uppdrag, tidrapportering och ändringsflöde */
.data-table-wrap{width:100%;overflow:auto;border:1px solid var(--app-line);border-radius:18px;background:#fff}
.data-table{width:100%;border-collapse:separate;border-spacing:0;min-width:980px;font-size:14px}
.data-table th{position:sticky;top:0;background:#f8fbfe;color:var(--app-navy);text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.04em;padding:13px 14px;border-bottom:1px solid var(--app-line);z-index:1}
.data-table td{padding:13px 14px;border-bottom:1px solid #eef3f8;vertical-align:top;color:#273852;font-weight:750}
.data-table tr:last-child td{border-bottom:0}
.data-table tbody tr:hover{background:#fbfdff}
.row-actions{display:flex;flex-wrap:wrap;gap:8px;min-width:220px}
.export-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.muted-small{display:inline-block;color:var(--app-muted);font-size:12px;font-weight:800;margin-top:3px}
[data-period-card] .app-page-head{margin-bottom:14px}
@media(max-width:720px){.data-table{min-width:860px}.export-actions{justify-content:flex-start;margin-top:14px}.row-actions{min-width:180px}}


/* v5 uppdrag, summeringar och ändringsflöden */
.metric-strip{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.metric-strip span{display:inline-flex;align-items:center;gap:8px;background:#f8fbfe;border:1px solid var(--app-line);border-radius:14px;padding:10px 12px;color:#40516b;font-weight:800}
.metric-strip strong{color:var(--app-navy)}
.metric-list{display:grid;gap:10px}
.metric-list div{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--app-line);border-radius:14px;background:#f8fbfe;padding:12px 14px}
.metric-list span{color:var(--app-muted);font-weight:900}
.metric-list strong{color:var(--app-navy)}
.detail-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;align-items:start}
@media(max-width:900px){.detail-grid{grid-template-columns:1fr}.metric-strip span{width:100%;justify-content:space-between}}
.notice-card{border:1px solid var(--app-line);background:#f8fbfe;border-radius:18px;padding:16px;margin-top:12px}
.timeline-list{display:grid;gap:10px;margin-top:12px}
.timeline-item{border:1px solid var(--app-line);background:#fff;border-radius:14px;padding:12px 14px}
.timeline-item strong{display:block;color:var(--app-navy);margin-bottom:4px}


/* v5 detaljvyer, ändringskort och uppdragslayout */
.details-box{margin-top:16px;border:1px solid var(--app-line);border-radius:18px;background:#fff;padding:14px}
.details-box>summary{cursor:pointer;font-weight:950;color:var(--app-navy);list-style:none}
.details-box>summary::-webkit-details-marker{display:none}
.details-box>summary:after{content:"Visa";float:right;font-size:12px;color:var(--app-muted);font-weight:900}
.details-box[open]>summary:after{content:"Dölj"}
.details-box .app-grid{margin-top:14px}
.span-full{grid-column:1 / -1}
.change-card{margin-top:12px}
.admin-shift-card{grid-template-columns:minmax(0,1fr) minmax(320px,auto)}
.admin-shift-card.details-box{grid-column:1 / -1}
@media(max-width:980px){.admin-shift-card{grid-template-columns:1fr}}

/* v6 operational refinements */
.danger-zone{border-color:#fecdd3;background:linear-gradient(180deg,#fff,#fff7f8)}
.danger-zone h2{color:#9f1239}.danger-zone p{color:#7f1d1d}.danger-zone .btn{border-color:#fecdd3}
.rating-select{min-width:120px}.rating-row .inline-form{margin-top:12px}
.inline-form{display:grid;grid-template-columns:150px minmax(180px,1fr) auto;gap:10px;align-items:end}
.compact-form{box-shadow:none;border-radius:18px;padding:16px;margin-top:14px}.compact-form + .compact-form{margin-top:14px}
.quick-time-card{padding:22px}.quick-time-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px;color:var(--app-navy)}
.quick-time-head span{color:var(--app-muted);font-weight:850}.deviation-list{display:grid;gap:12px;margin-top:16px}.section-title{margin:24px 0 12px;color:var(--app-navy)}
.progress-bar{height:10px;border-radius:999px;background:#e6edf5;overflow:hidden}.progress-bar span{display:block;height:100%;background:var(--app-teal);border-radius:999px}
.metric-list{display:grid;gap:10px}.metric-list>div{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--app-line);border-radius:14px;background:#f8fbfe;padding:11px 12px}.metric-list span{color:var(--app-muted);font-weight:850}.metric-list strong{color:var(--app-navy)}
.admin-mini-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.admin-lead-note{margin:8px 0 0;color:#53637b;font-size:14px}.mini-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:14px;border:1px solid var(--app-line);border-radius:16px;background:#fff}.mini-row strong{color:var(--app-navy)}.mini-row span{display:block;color:var(--app-muted);font-weight:800;margin-top:4px}
.row-actions{display:flex;flex-wrap:wrap;gap:8px}.export-actions{display:flex;gap:8px;flex-wrap:wrap}.muted-small{font-size:12px;color:var(--app-muted);font-weight:800}
@media(max-width:800px){.inline-form{grid-template-columns:1fr}.quick-time-head{display:block}.mini-row{display:block}.mini-row .btn{margin-top:12px}}

/* v9 premium role UI, search, filters and stronger status design */
.app-body{background:radial-gradient(circle at 12% 4%,rgba(0,180,154,.12),transparent 30%),radial-gradient(circle at 92% 10%,rgba(11,29,58,.12),transparent 30%),#f5f8fb}
.app-role-admin{--role:#0b1d3a;--role-soft:rgba(11,29,58,.08);--role-accent:#00b49a}
.app-role-customer{--role:#007b6b;--role-soft:rgba(0,180,154,.10);--role-accent:#0b1d3a}
.app-role-candidate{--role:#173a68;--role-soft:rgba(23,58,104,.10);--role-accent:#00b49a}
.app-topbar{background:rgba(255,255,255,.94)!important;box-shadow:0 12px 32px rgba(11,29,58,.06);backdrop-filter:blur(18px)}
.app-topbar-inner{min-height:82px;gap:24px}.app-topbar-brandgroup{display:flex;align-items:center;gap:18px}.app-brand img{width:150px}.app-context{display:flex;flex-direction:column;gap:2px;padding:12px 16px;border:1px solid rgba(220,230,242,.95);border-radius:18px;background:var(--role-soft);color:var(--role)}.app-context-kicker{font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#66738c}.app-context strong{font-size:16px;line-height:1.1;font-weight:900}.app-context-admin{background:rgba(11,29,58,.06)}.app-context-customer{background:rgba(0,180,154,.10)}.app-context-candidate{background:rgba(23,58,104,.08)}
.app-user{padding:6px 12px 6px 8px;border:1px solid rgba(220,230,242,.95);background:#fff;border-radius:999px}.app-user-name{font-size:15px;font-weight:800}.app-top-actions{gap:10px}.app-top-actions .btn{border-radius:14px}.app-sidebar{background:rgba(255,255,255,.88);border:1px solid rgba(220,230,242,.95);box-shadow:0 22px 48px rgba(11,29,58,.08)}.app-nav a{font-size:15px;font-weight:760}.app-nav a.active{background:linear-gradient(135deg,var(--role-soft),rgba(255,255,255,.6));box-shadow:inset 0 0 0 1px rgba(0,180,154,.10);color:var(--role)}.app-nav .nav-ico{width:38px;height:38px;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}.app-nav a.active .nav-ico{background:var(--role);color:#fff}.app-sidebar-card{background:linear-gradient(150deg,var(--role),#0f6e80)!important;border-radius:22px;padding:18px}
.premium-head{align-items:flex-end;gap:24px;margin-bottom:18px}.premium-head .eyebrow,.dashboard-hero .eyebrow{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;background:rgba(15,23,42,.06);color:#55657d;font-size:11px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;margin-bottom:10px}.page-head-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.app-page-head h1{font-size:clamp(34px,4vw,52px);letter-spacing:-.045em}.app-page-head p{font-size:15px;font-weight:650;color:#5f7089}.app-card,.form-panel,.shift-card,.mini-row{box-shadow:0 18px 42px rgba(15,23,42,.06);border-color:rgba(220,230,242,.95)}.app-card h2,.form-panel h2,.shift-card h3{font-size:22px;font-weight:900;letter-spacing:-.03em}.shift-card h3{font-size:24px}.app-card p,.shift-desc,.mini-row span,.admin-row span:not(.pill){font-weight:620;color:#40516b}.kpi strong{font-size:32px}.kpi span{font-size:12px;letter-spacing:.04em;text-transform:uppercase;font-weight:900}.pill{font-size:12px;letter-spacing:.01em;font-weight:900}.pill.green{background:#eafaf1;color:#047857}.pill.amber{background:#fff5df;color:#975a16}.pill.red{background:#fff1f2;color:#be123c}.pill.teal{background:rgba(0,180,154,.12);color:#007b6b}
.dashboard-hero{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;padding:26px 28px;margin:0 0 18px;border:1px solid rgba(220,230,242,.95);border-radius:28px;background:linear-gradient(135deg,rgba(255,255,255,.97),rgba(242,248,252,.98));box-shadow:0 20px 45px rgba(11,29,58,.08)}.dashboard-hero h2{margin:0 0 8px;color:var(--app-navy);font-size:clamp(26px,3vw,36px);letter-spacing:-.04em}.dashboard-hero p{margin:0;max-width:720px;color:#51627b;font-weight:700}.hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;min-width:min(100%,430px)}.hero-stats>div{padding:14px 16px;border-radius:20px;background:#fff;border:1px solid rgba(220,230,242,.95);box-shadow:0 12px 28px rgba(11,29,58,.06)}.hero-stats span{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#75859a;font-weight:900}.hero-stats strong{display:block;margin-top:6px;font-size:24px;line-height:1.1;color:var(--app-navy)}.admin-hero{background:linear-gradient(135deg,#fff,rgba(11,29,58,.055))}.customer-hero{background:linear-gradient(135deg,#fff,rgba(0,180,154,.08))}.candidate-hero{background:linear-gradient(135deg,#fff,rgba(23,58,104,.08))}
.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.section-head h2{margin:0}.table-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 16px}.table-summary>div{padding:16px 18px;border-radius:20px;background:#fff;border:1px solid rgba(220,230,242,.95);box-shadow:0 10px 24px rgba(11,29,58,.05)}.table-summary span{display:block;color:#6f8198;font-size:12px;text-transform:uppercase;letter-spacing:.05em;font-weight:900}.table-summary strong{display:block;margin-top:6px;font-size:26px;color:var(--app-navy)}
.filter-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 16px;padding:14px;border:1px solid rgba(220,230,242,.95);border-radius:20px;background:rgba(255,255,255,.88);box-shadow:0 12px 26px rgba(11,29,58,.04)}.filter-bar input,.filter-bar select{height:44px;border:1px solid var(--app-line);border-radius:14px;background:#fff;color:var(--app-text);padding:0 14px;font-weight:700;min-width:260px;outline:0}.filter-bar input:focus,.filter-bar select:focus{border-color:rgba(0,180,154,.8);box-shadow:0 0 0 4px rgba(0,180,154,.12)}
.data-table-wrap{border-radius:20px;box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 10px 28px rgba(11,29,58,.04)}.data-table th{background:#f4f8fc;font-size:11px;letter-spacing:.08em}.data-table td{font-weight:700}.data-table tbody tr:nth-child(even){background:#fbfdff}.row-actions .btn{border-radius:12px}.export-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.notice{border-radius:16px;background:linear-gradient(180deg,#fbfdff,#f5f9fd)}
.candidate-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.candidate-card{display:grid;gap:14px;padding:20px;border:1px solid rgba(220,230,242,.95);border-radius:22px;background:#fff;box-shadow:0 14px 34px rgba(11,29,58,.06)}.candidate-card-top{display:flex;align-items:center;gap:14px}.candidate-card-top h3{margin:0 0 4px;color:var(--app-navy);font-size:20px}.candidate-card-top p{margin:0;color:#62728a;font-weight:700}.candidate-avatar{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:linear-gradient(135deg,#0b1d3a,#0f6e80);color:#fff;font-weight:950}.candidate-meta,.candidate-tags,.candidate-actions{display:flex;flex-wrap:wrap;gap:8px}.candidate-tags span{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border-radius:999px;background:#f5f8fc;color:#46566e;font-size:12px;font-weight:850}.candidate-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.candidate-stats>div{padding:12px 14px;border-radius:16px;background:#f8fbfe;border:1px solid #e8eef5}.candidate-stats span{display:block;color:#72839a;font-size:12px;font-weight:900}.candidate-stats strong{display:block;margin-top:5px;color:var(--app-navy);font-size:15px;line-height:1.3;word-break:break-word}
.quick-time-card .app-page-head h2,[data-period-card] .app-page-head h2{font-size:24px}@media(max-width:980px){.app-topbar-inner{align-items:flex-start}.app-topbar-brandgroup{width:100%;justify-content:space-between}.app-context{display:none}.dashboard-hero{display:grid;align-items:start}.hero-stats{min-width:0}.filter-bar input,.filter-bar select{min-width:200px}}@media(max-width:720px){.premium-head{display:block}.dashboard-hero{padding:20px}.hero-stats,.table-summary,.candidate-stats{grid-template-columns:1fr}.page-head-actions{justify-content:flex-start;margin-top:14px}.filter-bar{display:grid}.filter-bar input,.filter-bar select{width:100%;min-width:0}.app-user-name{display:none}}


/* drift */
.legal-check{display:flex;align-items:flex-start;gap:10px;margin:16px 0;padding:12px 14px;border:1px solid var(--app-line);border-radius:16px;background:#f8fbfe;color:#3f526b;font-weight:700;line-height:1.35}
.legal-check input{margin-top:3px;accent-color:var(--app-teal)}
.status-badge{display:inline-flex;align-items:center;gap:8px;border-radius:999px;background:rgba(0,180,154,.12);color:#007b6b;font-weight:900;padding:6px 10px;font-size:12px}
.admin-list .mini-row + .mini-row{margin-top:8px}
.status-flow{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.status-flow span{display:inline-flex;padding:6px 10px;border-radius:999px;background:#eef5fb;color:#485a72;font-weight:800;font-size:12px}
.form-panel .legal-check{margin-top:8px}
@media(max-width:720px){.legal-check{font-size:14px}.hero-stats{grid-template-columns:1fr}}


/* v11 form and layout hardening */
:root{
  --form-font-weight: 520;
}
.form-panel,
.app-card,
.shift-card,
.mini-row,
.data-table-wrap {
  overflow: hidden;
}
.form-row{
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}
.field,
.field input,
.field select,
.field textarea,
.form-row,
.form-panel,
.inline-form,
.inline-form input,
.inline-form select {
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}
.field span,
.field label,
.legal-check span,
.check-chip span {
  font-weight: 650 !important;
}
.field input,
.field select,
.field textarea,
.inline-form input,
.inline-form select,
.data-table td,
.mini-row span,
.shift-desc,
.app-page-head p,
.notice {
  font-weight: var(--form-font-weight) !important;
}
.field input,
.field select {
  height: 48px;
}
.field input[type="date"],
.field input[type="datetime-local"]{
  min-width: 0;
  width: 100%;
  font-size: 15px;
  letter-spacing: 0;
}
.form-panel .form-row + .form-row{
  margin-top: 14px;
}
.form-panel h2,
.app-card h2,
.shift-card h3{
  font-weight: 820 !important;
}
.app-page-head h1{
  font-weight: 850 !important;
}
.app-main{
  overflow-x: hidden;
}
.app-layout{
  grid-template-columns: minmax(220px,260px) minmax(0,1fr);
}
.app-card.span-5,
.form-panel.span-5,
.app-card.span-6,
.form-panel.span-6,
.app-card.span-7,
.form-panel.span-7,
.app-card.span-8,
.form-panel.span-8 {
  min-width: 0;
}
.legal-check{
  display:flex;
  align-items:center;
  gap:10px;
  border:1px solid var(--app-line);
  border-radius:14px;
  padding:12px 14px;
  background:#fff;
}
.legal-check input{
  width:18px;
  height:18px;
}
select{
  text-overflow: ellipsis;
}
button[disabled]{
  opacity:.55;
  cursor:not-allowed;
}
.admin-role-note,
.admin-lead-note{
  font-weight: 520 !important;
}
@media(max-width:1100px){
  .form-row{grid-template-columns:1fr !important;}
}
@media(max-width:720px){
  .form-panel,.app-card{overflow:visible;}
  .app-layout{grid-template-columns:1fr;}
}

.form-panel.span-5 .form-row,
.app-card.span-5 .form-row,
.form-panel.span-4 .form-row,
.app-card.span-4 .form-row {
  grid-template-columns: 1fr !important;
}

/* v12 full system polish, mobile login and overflow fixes */
@media(max-width:720px){
  .login-shell{display:block;min-height:100vh;background:var(--app-bg)}
  .login-hero{display:none!important}
  .login-panel-wrap{min-height:100vh;display:flex;align-items:flex-start;padding:18px 14px 32px}
  .login-panel{width:100%;margin-top:0;border-radius:22px;padding:18px}
  .auth-tabs{grid-template-columns:1fr;gap:6px}
  .auth-form h2{font-size:26px;line-height:1.05}
  .app-topbar-inner{flex-wrap:wrap;align-items:center;gap:10px;padding:10px 0}
  .app-topbar-brandgroup{width:100%;justify-content:space-between}
  .app-context{display:flex!important;padding:8px 12px;border-radius:14px}
  .app-context strong{font-size:14px}
  .app-context-kicker{font-size:10px}
  .app-top-actions{width:100%;overflow-x:auto;gap:8px;padding-bottom:2px}
  .app-top-actions .btn{white-space:nowrap;min-height:38px;padding:0 12px}
}
.admin-shift-card{grid-template-columns:minmax(0,1fr) minmax(280px,430px)!important;align-items:stretch;overflow:hidden}
.admin-shift-card .shift-main{min-width:0}
.admin-actions{display:grid;gap:12px;align-content:start;min-width:0;max-width:100%}
.admin-actions .full-width{width:100%;justify-content:center}
.assign-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:10px;padding:12px;border:1px solid var(--app-line);border-radius:18px;background:#f8fbfe;max-width:100%;overflow:hidden}
.assign-form select,.assign-form input{min-width:0;width:100%;height:46px;border:1px solid var(--app-line);border-radius:14px;padding:0 12px;font-weight:520;box-sizing:border-box;background:#fff;color:var(--app-text)}
.assign-form button{min-width:96px;white-space:nowrap}
.admin-edit-card{padding:16px;border:1px solid var(--app-line);border-radius:20px;background:#fff;box-shadow:0 10px 24px rgba(11,29,58,.05);margin-bottom:12px;overflow:hidden}
.row-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.nav-ico{font-family:Arial, sans-serif;font-size:15px!important}
@media(max-width:980px){
  .admin-shift-card{grid-template-columns:1fr!important}
  .assign-form{grid-template-columns:1fr}
  .assign-form button{width:100%}
}
@media(max-width:720px){
  .admin-edit-card{padding:14px;border-radius:18px}
  .mini-row{display:grid!important;gap:12px}
  .row-actions{justify-content:flex-start}
}


/* v13 candidate onboarding */
.risk-list{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:14px;
}
.risk-list span{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:0 10px;
  border-radius:999px;
  background:#fff7ed;
  color:#9a5b13;
  border:1px solid #fed7aa;
  font-size:12px;
  font-weight:750;
}
.onboarding-checks{
  display:grid;
  gap:10px;
}
.mini-row.compact{
  padding:12px 14px;
}
.compact-form{
  margin-top:14px;
}
.candidate-status-xl{
  display:inline-flex;
  align-items:center;
  min-height:46px;
  padding:0 16px;
  border-radius:999px;
  background:rgba(0,180,154,.12);
  color:#007b6b;
  font-weight:850;
  margin:8px 0 14px;
}
.details-box{
  margin-top:14px;
  border:1px solid var(--app-line);
  border-radius:16px;
  padding:14px 16px;
  background:#f8fbfe;
}
.details-box p{
  margin:6px 0 0;
}
.app-role-candidate .app-sidebar-card{
  background:linear-gradient(135deg,#0b1d3a,#0f6e80);
}
@media(max-width:720px){
  .risk-list span{width:100%;justify-content:center}
}


/* v14 driftmognad */
.contract-preview{
  margin-top:12px;
  padding:16px;
  border:1px solid var(--app-line);
  border-radius:16px;
  background:#fff;
  font-size:14px;
  line-height:1.55;
  max-height:360px;
  overflow:auto;
}
.contract-preview h1{
  font-size:22px;
  margin:0 0 12px;
}
.warning-text{
  color:#9a5b13!important;
  font-weight:750!important;
}
.inline-form{
  flex-wrap:wrap;
  align-items:flex-end;
}
.inline-form select,
.inline-form input{
  min-width:180px;
}
.operator-queue-grid .mini-row{
  min-height:72px;
}
details summary{
  cursor:pointer;
  font-weight:800;
  color:var(--app-navy);
  margin-top:8px;
}


/* v15 scale to 500 employees */
.toolbar{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:center;
  margin:0 0 18px;
  padding:14px;
  border:1px solid var(--app-line);
  border-radius:20px;
  background:#fff;
  box-shadow:0 10px 24px rgba(11,29,58,.04);
}
.toolbar .search-input{
  flex:1 1 280px;
}
.toolbar select{
  flex:0 1 260px;
}
.pager{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:12px;
  margin-top:16px;
  padding:12px 14px;
  border:1px solid var(--app-line);
  border-radius:18px;
  background:#fff;
}
.pager span{
  margin-right:auto;
  color:var(--app-muted);
  font-weight:700;
}
.scalable-list{
  content-visibility:auto;
  contain-intrinsic-size:800px;
}
.candidate-grid.scalable-list{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(300px,1fr));
  gap:14px;
}
.contract-preview{
  overflow-wrap:anywhere;
}
@media(max-width:720px){
  .toolbar,.pager{
    align-items:stretch;
  }
  .toolbar > *, .pager > *{
    width:100%;
  }
  .pager{
    justify-content:stretch;
  }
  .pager span{
    margin-right:0;
  }
}


/* v23 candidate assignment layout and documents */
.candidate-assignment-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
  padding:20px;
  border:1px solid var(--app-line);
  border-radius:22px;
  background:#fff;
  box-shadow:0 14px 34px rgba(11,29,58,.06);
  overflow:hidden;
}
.candidate-assignment-main{
  min-width:0;
  display:grid;
  gap:12px;
}
.candidate-assignment-title{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.candidate-assignment-title h3{
  margin:0 0 4px;
  font-size:24px;
  line-height:1.1;
  color:var(--app-navy);
  word-break:break-word;
}
.candidate-assignment-title p{
  margin:0;
  color:var(--app-muted);
  font-weight:650;
}
.candidate-assignment-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.candidate-assignment-meta .pill{
  white-space:normal;
  max-width:100%;
}
.candidate-assignment-actions{
  display:flex;
  align-items:flex-start;
  justify-content:flex-end;
  gap:10px;
  flex-wrap:wrap;
  min-width:220px;
}
.details-box.compact{
  padding:12px 14px;
  margin-top:0;
}
input[type="file"]{
  width:100%;
  padding:12px;
  border:1px dashed var(--app-line);
  border-radius:14px;
  background:#f8fbfe;
}
@media(max-width:900px){
  .candidate-assignment-card{
    grid-template-columns:1fr;
  }
  .candidate-assignment-actions{
    justify-content:flex-start;
    min-width:0;
  }
}


/* v24 editable operations and candidate overview */
.overview-assignment-list{
  display:grid;
  gap:12px;
}
.overview-assignment-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px;
  align-items:center;
  padding:16px;
  border:1px solid var(--app-line);
  border-radius:18px;
  background:#fff;
  box-shadow:0 10px 24px rgba(11,29,58,.05);
}
.overview-assignment-title{min-width:0}
.overview-assignment-title h3{
  margin:0 0 4px;
  color:var(--app-navy);
  font-size:20px;
  line-height:1.15;
  word-break:break-word;
}
.overview-assignment-title p{
  margin:0;
  color:var(--app-muted);
  font-weight:650;
}
.overview-assignment-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:10px;
}
.overview-assignment-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.candidate-assignment-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
  padding:20px;
  border:1px solid var(--app-line);
  border-radius:22px;
  background:#fff;
  box-shadow:0 14px 34px rgba(11,29,58,.06);
  overflow:hidden;
}
.candidate-assignment-main{
  min-width:0;
  display:grid;
  gap:12px;
}
.candidate-assignment-title{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.candidate-assignment-title h3{
  margin:0 0 4px;
  font-size:24px;
  line-height:1.1;
  color:var(--app-navy);
  word-break:break-word;
}
.candidate-assignment-title p{
  margin:0;
  color:var(--app-muted);
  font-weight:650;
}
.candidate-assignment-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.candidate-assignment-meta .pill{white-space:normal;max-width:100%}
.candidate-assignment-actions{
  display:flex;
  align-items:flex-start;
  justify-content:flex-end;
  gap:10px;
  flex-wrap:wrap;
  min-width:220px;
}
.editable-card{
  border:1px solid var(--app-line);
  border-radius:18px;
  background:#fff;
  padding:16px;
  margin-bottom:12px;
  box-shadow:0 8px 20px rgba(11,29,58,.04);
}
.editable-card-head{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
  margin-bottom:12px;
}
.editable-card-head strong{
  display:block;
  color:var(--app-navy);
  font-size:17px;
}
.editable-card-head span{
  color:var(--app-muted);
  font-weight:650;
}
.details-box.compact{padding:12px 14px;margin-top:0}
input[type="file"]{
  width:100%;
  padding:12px;
  border:1px dashed var(--app-line);
  border-radius:14px;
  background:#f8fbfe;
}
@media(max-width:900px){
  .overview-assignment-row,
  .candidate-assignment-card{grid-template-columns:1fr}
  .overview-assignment-actions,
  .candidate-assignment-actions{justify-content:flex-start;min-width:0}
}


/* v25 queues, interest cards and scale polish */
.candidate-interest-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
  padding:20px;
  border:1px solid var(--app-line);
  border-radius:22px;
  background:#fff;
  box-shadow:0 14px 34px rgba(11,29,58,.06);
}
.candidate-interest-main{min-width:0;display:grid;gap:10px}
.candidate-tags{display:flex;flex-wrap:wrap;gap:8px}
.candidate-tags span{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 10px;
  border-radius:999px;
  background:#f5f8fc;
  color:#46566e;
  font-size:12px;
  font-weight:850;
}
@media(max-width:900px){
  .candidate-interest-card{grid-template-columns:1fr}
}

/* v30 loading and payroll UX */
.app-loading-overlay{
  position:fixed;
  inset:0;
  z-index:9999;
  display:none;
  place-items:center;
  background:rgba(11,29,58,.16);
  backdrop-filter:blur(2px);
}
.app-loading-overlay.show{display:grid}
.app-loading-card{
  display:flex;
  align-items:center;
  gap:14px;
  min-width:260px;
  max-width:90vw;
  padding:18px 20px;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.8);
  background:#fff;
  box-shadow:0 20px 60px rgba(11,29,58,.22);
  color:var(--app-navy,#0B1D3A);
}
.app-loading-card strong{display:block;font-size:16px}
.app-loading-card span{display:block;color:var(--app-muted,#60708a);font-size:13px;font-weight:700}
.hourglass{
  width:28px;
  height:28px;
  border:3px solid currentColor;
  border-top-color:transparent;
  border-bottom-color:transparent;
  border-radius:50%;
  animation:tillsatt-spin .85s linear infinite;
  flex:0 0 auto;
}
@keyframes tillsatt-spin{to{transform:rotate(360deg)}}
body.is-busy .btn,body.is-busy button{cursor:progress}
.payroll-status-list{display:grid;gap:8px;margin-top:12px}
.payroll-status-list span{display:block;padding:9px 11px;border-radius:12px;background:#f8fbfe;border:1px solid var(--app-line,#dce5ef);font-weight:750;color:var(--app-navy,#0B1D3A)}
.payroll-status-list .red{background:#fff5f5;border-color:#ffd6d6;color:#a32020}
.payroll-status-list .amber{background:#fff9e8;border-color:#ffe3a3;color:#8a5a00}
.payroll-status-list .green{background:#effaf3;border-color:#c8efd5;color:#176a35}
.payroll-lines{display:grid;gap:8px}
.payroll-line{padding:12px;border:1px solid var(--app-line,#dce5ef);border-radius:14px;background:#fff;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}
.payroll-line span{display:block;color:var(--app-muted,#60708a);font-size:12px;font-weight:750;margin-top:3px}
@media(max-width:700px){.payroll-line{grid-template-columns:1fr}.app-loading-card{min-width:0}}

/* v31 payroll/admin structure */
.economy-menu{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin:0 0 18px}.economy-menu a{display:flex;flex-direction:column;gap:6px;padding:16px;border:1px solid rgba(11,29,58,.12);border-radius:18px;background:#fff;color:inherit;text-decoration:none;box-shadow:0 10px 30px rgba(11,29,58,.06)}.economy-menu a:hover{transform:translateY(-1px);box-shadow:0 14px 34px rgba(11,29,58,.1)}.economy-menu strong{font-size:17px}.economy-menu span{color:#60708a;font-size:13px}.candidate-detail-shell{display:grid;grid-template-columns:220px minmax(0,1fr);gap:18px;align-items:start}.candidate-detail-menu{position:sticky;top:88px;display:flex;flex-direction:column;gap:8px;padding:12px;border:1px solid rgba(11,29,58,.12);border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(11,29,58,.06)}.candidate-detail-menu a{padding:10px 12px;border-radius:12px;text-decoration:none;color:#0B1D3A;font-weight:700}.candidate-detail-menu a.active,.candidate-detail-menu a:hover{background:#eef5ff}.candidate-detail-content{min-width:0}.masked-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0 16px}.masked-summary div{border:1px solid rgba(11,29,58,.1);border-radius:12px;padding:10px;background:#f8fbff}.masked-summary span{display:block;color:#60708a;font-size:12px}.masked-summary strong{font-size:13px;word-break:break-word}.payroll-status-list.compact{margin:10px 0}.data-table td,.data-table th{vertical-align:top}.nav-group-label{margin:16px 10px 6px;color:#60708a;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}@media(max-width:900px){.candidate-detail-shell{grid-template-columns:1fr}.candidate-detail-menu{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.masked-summary{grid-template-columns:1fr}}

/* v31 payroll UX */
.nav-group-label{margin:16px 10px 6px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#7b8aa0}.v31-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 18px}.v31-tabs a{padding:9px 12px;border:1px solid var(--border,#dbe4ee);border-radius:999px;background:#fff;color:#34445f;text-decoration:none;font-weight:700}.v31-tabs a.active{background:#0b1d3a;color:#fff;border-color:#0b1d3a}.v31-tab-body{display:grid;gap:16px}.masked-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin:12px 0 16px}.masked-grid>div{border:1px solid var(--border,#dbe4ee);border-radius:14px;background:#f8fbff;padding:12px}.masked-grid span{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#6e7d91}.masked-grid strong{display:block;margin-top:4px;color:#0b1d3a}.issue-list{margin:10px 0 16px;padding:12px 12px 12px 28px;border-radius:12px;background:#fff5f4;border:1px solid #ffd3ce;color:#8a1f11}.v31-section-note{padding:12px;border:1px solid #dbe4ee;border-radius:14px;background:#f8fbff}.data-table-wrap{overflow:auto}.data-table td,.data-table th{white-space:nowrap}.row-actions{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.empty.compact{padding:10px}

/* v32 huvudmeny och skalning */
.app-topbar-v32 .app-topbar-inner{
  min-height:72px;
  gap:14px;
  align-items:center;
}
.app-topbar-v32 .app-brand img{width:144px}
.app-topbar-v32 .app-context{padding:10px 14px;border-radius:16px;white-space:nowrap}
.app-header-nav{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  min-width:0;
  flex:1 1 auto;
}
.app-header-nav > a,
.app-menu-group > button,
.app-user-menu-button{
  min-height:44px;
  display:inline-flex;
  align-items:center;
  gap:9px;
  border:1px solid rgba(220,230,242,.95);
  border-radius:14px;
  background:#fff;
  color:var(--app-navy);
  padding:0 14px;
  font-weight:850;
  text-decoration:none;
  cursor:pointer;
  box-shadow:0 8px 20px rgba(11,29,58,.04);
  white-space:nowrap;
}
.app-header-nav > a:hover,
.app-menu-group > button:hover,
.app-user-menu-button:hover,
.app-header-nav > a.active,
.app-menu-group.active > button{
  border-color:rgba(0,180,154,.24);
  background:linear-gradient(135deg,var(--role-soft),#fff);
  color:var(--role);
}
.app-menu-group{position:relative;display:inline-flex;align-items:center;min-width:0}
.app-menu-group > button:after{content:"⌄";font-size:12px;line-height:1;color:#64748b}
.app-menu-dropdown{
  position:absolute;
  top:calc(100% + 10px);
  left:0;
  z-index:80;
  width:max-content;
  min-width:230px;
  max-width:min(340px,calc(100vw - 28px));
  display:none;
  flex-direction:column;
  gap:4px;
  padding:10px;
  border:1px solid rgba(220,230,242,.98);
  border-radius:18px;
  background:rgba(255,255,255,.98);
  box-shadow:0 24px 60px rgba(11,29,58,.16);
}
.app-menu-dropdown.align-right{left:auto;right:0}
.app-menu-group:hover .app-menu-dropdown,
.app-menu-group:focus-within .app-menu-dropdown,
.app-menu-group.open .app-menu-dropdown{display:flex}
.app-menu-dropdown a,
.app-menu-dropdown button{
  display:flex;
  align-items:center;
  width:100%;
  min-height:40px;
  border:0;
  border-radius:12px;
  background:transparent;
  color:#24324a;
  padding:9px 10px;
  font-size:14px;
  font-weight:750;
  text-decoration:none;
  text-align:left;
  cursor:pointer;
}
.app-menu-dropdown a:hover,
.app-menu-dropdown button:hover,
.app-menu-dropdown a.active{background:#f0f7fb;color:var(--role)}
.app-user-menu-button{padding:5px 12px 5px 6px;border-radius:999px;max-width:220px}
.app-user-menu-button .avatar{margin:0;flex:0 0 auto;background:linear-gradient(135deg,var(--app-navy),#173a68)}
.app-user-menu-button span:last-child{overflow:hidden;text-overflow:ellipsis;max-width:150px}
.app-menu-toggle{
  display:none;
  min-height:42px;
  border:1px solid rgba(220,230,242,.95);
  border-radius:14px;
  background:#fff;
  color:var(--app-navy);
  padding:0 14px;
  font-weight:900;
  cursor:pointer;
}
.app-menu-toggle:before{content:"☰";margin-right:8px}
.app-layout-topnav{
  display:block;
  padding-top:28px;
}
.app-layout-topnav .app-main{width:100%;max-width:none}
.app-layout-topnav .mobile-app-menu{display:none!important}
.app-subnav,
.candidate-detail-menu{
  position:sticky;
  top:82px;
  z-index:35;
  display:flex;
  flex-direction:row;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 18px;
  padding:8px;
  border:1px solid rgba(220,230,242,.95);
  border-radius:18px;
  background:rgba(255,255,255,.92);
  box-shadow:0 12px 28px rgba(11,29,58,.06);
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}
.app-subnav a,
.candidate-detail-menu a{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:0 12px;
  border-radius:12px;
  color:#334155;
  font-weight:800;
  text-decoration:none;
  white-space:nowrap;
}
.app-subnav a:hover,
.app-subnav a.active,
.candidate-detail-menu a:hover,
.candidate-detail-menu a.active{background:var(--role-soft);color:var(--role)}
.candidate-detail-shell{display:block!important}
.candidate-detail-content{min-width:0;width:100%}
.economy-menu{display:none}
.economy-subnav{margin-top:-4px;margin-bottom:18px}
@media(max-width:1180px){
  .app-topbar-v32 .app-context{display:none}
  .app-header-nav > a,
  .app-menu-group > button,
  .app-user-menu-button{padding-left:12px;padding-right:12px;font-size:14px}
  .app-topbar-v32 .app-brand img{width:132px}
}
@media(max-width:920px){
  .app-topbar-v32 .app-topbar-inner{min-height:66px;position:relative;flex-wrap:wrap}
  .app-menu-toggle{display:inline-flex;align-items:center;margin-left:auto}
  .app-header-nav{
    display:none;
    flex-basis:100%;
    width:100%;
    padding:10px 0 4px;
    justify-content:stretch;
    align-items:stretch;
    flex-direction:column;
    gap:8px;
  }
  .app-header-nav.is-open{display:flex}
  .app-header-nav > a,
  .app-menu-group,
  .app-menu-group > button,
  .app-user-menu-button{width:100%;justify-content:space-between}
  .app-menu-group{display:flex;flex-direction:column;align-items:stretch}
  .app-menu-dropdown,
  .app-menu-dropdown.align-right{
    position:static;
    width:100%;
    min-width:0;
    max-width:none;
    margin-top:6px;
    box-shadow:none;
    border-radius:14px;
    background:#f8fbfe;
  }
  .app-menu-group:hover .app-menu-dropdown{display:none}
  .app-menu-group.open .app-menu-dropdown,
  .app-menu-group:focus-within .app-menu-dropdown{display:flex}
  .app-user-menu-button span:last-child{max-width:none}
  .app-layout-topnav{padding-top:18px}
  .app-subnav,.candidate-detail-menu{top:66px;flex-wrap:nowrap;border-radius:16px}
}
@media(max-width:560px){
  .app-topbar-v32 .app-brand img{width:126px}
  .app-menu-toggle span{display:inline}
  .app-header-nav{max-height:calc(100vh - 76px);overflow:auto;padding-bottom:12px}
  .app-page-head h1{font-size:clamp(30px,10vw,42px)}
  .app-subnav,.candidate-detail-menu{margin-left:-4px;margin-right:-4px;padding:6px;top:65px}
  .app-subnav a,.candidate-detail-menu a{min-height:36px;font-size:14px;padding:0 10px}
}


/* v32 head navigation and scalable menus */
body.app-v32-nav{--topbar-h:76px}
.app-topbar-v32{z-index:100;background:rgba(255,255,255,.94);box-shadow:0 10px 28px rgba(11,29,58,.06)}
.app-topbar-v32 .app-topbar-inner{min-height:76px;gap:14px;align-items:center}.app-topbar-v32 .app-brand img{width:142px}.app-topbar-v32 .app-context{padding:9px 13px;border-radius:16px;min-width:0}.app-topbar-v32 .app-context strong{font-size:15px}.app-layout-v32{display:block;padding-top:24px}.app-main-v32{width:100%;min-width:0}.app-head-menu{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:1;min-width:0}.app-menu-group{position:relative}.app-menu-group>summary{list-style:none;display:flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;border:1px solid rgba(220,230,242,.95);border-radius:16px;background:#fff;color:var(--app-navy);font-weight:900;cursor:pointer;white-space:nowrap;box-shadow:0 8px 20px rgba(11,29,58,.04)}.app-menu-group>summary::-webkit-details-marker{display:none}.app-menu-group>summary:after{content:"⌄";font-size:12px;color:#6b7b91}.app-menu-group[open]>summary,.app-menu-group>summary:hover{background:#f6fbff;border-color:#cfddec}.app-menu-group-muted>summary{background:#f8fafc;color:#334155}.app-menu-panel{position:absolute;top:calc(100% + 9px);left:0;z-index:110;display:grid;gap:4px;min-width:220px;padding:10px;border:1px solid rgba(220,230,242,.95);border-radius:18px;background:rgba(255,255,255,.98);box-shadow:0 24px 58px rgba(11,29,58,.16)}.app-menu-group:nth-last-child(-n+2) .app-menu-panel{left:auto;right:0}.app-menu-panel.wide{grid-template-columns:repeat(2,minmax(180px,1fr));min-width:420px}.app-menu-panel a,.app-account-panel a{display:flex;align-items:center;min-height:38px;padding:9px 11px;border-radius:12px;color:#22334f;text-decoration:none;font-weight:820}.app-menu-panel a:hover,.app-menu-panel a.active,.app-account-panel a:hover,.app-account-panel a.active{background:rgba(0,180,154,.11);color:#007b6b}.app-menu-toggle{display:none;align-items:center;gap:8px;height:44px;border:1px solid rgba(220,230,242,.95);border-radius:15px;background:#fff;color:var(--app-navy);font-weight:900;padding:0 14px}.app-account-menu{position:relative;flex:0 0 auto}.app-account-menu>summary{list-style:none;display:flex;align-items:center;gap:10px;min-height:46px;border:1px solid rgba(220,230,242,.95);border-radius:999px;background:#fff;padding:5px 10px 5px 6px;cursor:pointer;color:var(--app-navy);font-weight:900}.app-account-menu>summary::-webkit-details-marker{display:none}.app-account-panel{position:absolute;right:0;top:calc(100% + 9px);z-index:120;display:grid;gap:6px;min-width:210px;padding:10px;border:1px solid rgba(220,230,242,.95);border-radius:18px;background:#fff;box-shadow:0 24px 58px rgba(11,29,58,.16)}.app-account-panel .btn{width:100%;justify-content:center}.v32-subnav{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px;padding:10px;border:1px solid rgba(220,230,242,.95);border-radius:20px;background:rgba(255,255,255,.86);box-shadow:0 12px 30px rgba(11,29,58,.06)}.v32-subnav a{display:inline-flex;align-items:center;min-height:38px;padding:0 13px;border-radius:999px;color:#31435d;text-decoration:none;font-weight:850}.v32-subnav a:hover,.v32-subnav a.active{background:var(--app-navy);color:#fff}.candidate-detail-shell.v32{display:block}.candidate-detail-shell.v32 .candidate-detail-content{min-width:0}.app-v32-nav .mobile-app-menu,.app-v32-nav .app-sidebar{display:none!important}.app-v32-nav .app-page-head{margin-top:4px}
@media(min-width:981px){.app-menu-group:not([open]):hover .app-menu-panel{display:grid}.app-menu-group:not([open]) .app-menu-panel{display:none}.app-account-menu:not([open]) .app-account-panel{display:none}}
@media(max-width:1180px){.app-topbar-v32 .app-context{display:none}.app-topbar-v32 .app-brand img{width:132px}.app-menu-group>summary{padding:0 11px}.app-menu-panel.wide{grid-template-columns:1fr;min-width:260px}}
@media(max-width:980px){body.app-v32-nav{--topbar-h:64px}.app-topbar-v32 .app-topbar-inner{min-height:64px;flex-wrap:wrap;align-items:center}.app-topbar-v32 .app-brand img{width:128px}.app-menu-toggle{display:inline-flex}.app-head-menu{display:none;position:absolute;left:12px;right:12px;top:calc(100% + 8px);z-index:110;max-height:calc(100vh - 88px);overflow:auto;padding:12px;border:1px solid rgba(220,230,242,.95);border-radius:22px;background:rgba(255,255,255,.98);box-shadow:0 24px 64px rgba(11,29,58,.2)}.app-head-menu.mobile-open{display:grid;gap:10px}.app-head-menu .app-menu-group{width:100%}.app-head-menu .app-menu-group>summary{width:100%;justify-content:space-between;border-radius:16px;background:#f8fbfe}.app-head-menu .app-menu-panel{position:static;box-shadow:none;border:0;border-radius:14px;background:#fff;min-width:0;padding:8px 0 0}.app-head-menu .app-menu-panel.wide{display:grid;grid-template-columns:1fr;min-width:0}.app-account-menu{margin-left:auto}.app-user-name{display:none}.app-layout-v32{padding-top:18px}.v32-subnav{flex-wrap:nowrap;overflow-x:auto;scroll-snap-type:x proximity;padding:8px}.v32-subnav a{white-space:nowrap;scroll-snap-align:start}}
@media(max-width:560px){.app-topbar-v32 .app-topbar-inner{gap:8px}.app-topbar-v32 .app-brand img{width:116px}.app-menu-toggle{height:40px;padding:0 11px}.app-account-menu>summary{min-height:40px;padding:4px}.app-account-panel{right:0;min-width:180px}.app-page-head h1{font-size:clamp(28px,12vw,42px)}.dashboard-hero{border-radius:22px}.app-card,.form-panel{border-radius:20px;padding:18px}}

/* v32 final: header based navigation for admin, candidate and customer */
:root{--v32-topbar:76px}
.app-topnav-body .app-topbar-v32{position:sticky;top:0;z-index:120;background:rgba(255,255,255,.96);backdrop-filter:blur(18px);box-shadow:0 10px 30px rgba(11,29,58,.07)}
.app-topnav-body .app-topbar-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.app-topnav-body .app-topbar-brandgroup{display:flex;align-items:center;gap:14px;flex:0 0 auto;min-width:0}
.app-topnav-body .app-brand img{width:140px;max-width:38vw}
.app-topnav-body .app-context{padding:9px 13px;border-radius:16px}
.app-topnav-body .app-context strong{font-size:15px}
.app-head-nav{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:1 1 auto;min-width:0}
.app-nav-group{position:relative;flex:0 0 auto}
.app-nav-group>summary{list-style:none;display:flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;border:1px solid rgba(220,230,242,.95);border-radius:16px;background:#fff;color:var(--app-navy);font-weight:920;cursor:pointer;white-space:nowrap;box-shadow:0 8px 20px rgba(11,29,58,.04);user-select:none}
.app-nav-group>summary::-webkit-details-marker{display:none}
.app-nav-group>summary:after{content:"⌄";font-size:13px;color:#6e7d91;line-height:1}
.app-nav-group[open]>summary,.app-nav-group.active>summary,.app-nav-group:has(a.active)>summary,.app-nav-group>summary:hover{background:#f5fbff;border-color:#cdddec;color:#0b1d3a}
.app-nav-menu{position:absolute;top:calc(100% + 9px);left:0;z-index:140;display:grid;gap:4px;min-width:226px;padding:10px;border:1px solid rgba(220,230,242,.95);border-radius:18px;background:rgba(255,255,255,.98);box-shadow:0 24px 58px rgba(11,29,58,.16)}
.app-nav-group:not([open]) .app-nav-menu{display:none}
.app-nav-group:hover .app-nav-menu{display:grid}
.app-nav-menu-right{left:auto;right:0}
.app-nav-menu a,.app-menu-button{display:flex;align-items:center;width:100%;min-height:38px;padding:9px 11px;border:0;border-radius:12px;background:transparent;color:#22334f;text-align:left;text-decoration:none;font:inherit;font-weight:820;cursor:pointer}
.app-nav-menu a:hover,.app-nav-menu a.active,.app-menu-button:hover{background:rgba(0,180,154,.11);color:#007b6b}
.app-account-menu{display:flex;align-items:center;flex:0 0 auto;min-width:0}
.app-user-menu>summary{border-radius:999px;min-height:46px;padding:5px 12px 5px 6px}
.app-user-menu .avatar{margin:0;width:36px;height:36px;font-size:14px}
.app-menu-toggle{display:none;align-items:center;gap:7px;height:44px;padding:0 13px;border:1px solid rgba(220,230,242,.95);border-radius:15px;background:#fff;color:var(--app-navy);font-weight:920;cursor:pointer;box-shadow:0 8px 20px rgba(11,29,58,.04)}
.app-menu-toggle span{display:block;width:16px;height:2px;border-radius:99px;background:currentColor}.app-menu-toggle strong{font-size:14px}.app-menu-toggle[aria-expanded="true"]{background:#0b1d3a;color:#fff}
.app-layout-topnav{display:block!important;padding:24px 0 58px!important}.app-layout-topnav .app-main{width:100%;min-width:0}.app-topnav-body .mobile-app-menu,.app-topnav-body .app-sidebar{display:none!important}
.app-subnav,.candidate-detail-menu{position:sticky;top:82px;z-index:35;display:flex;flex-direction:row!important;flex-wrap:wrap;gap:8px;margin:0 0 18px;padding:8px;border:1px solid rgba(220,230,242,.95);border-radius:18px;background:rgba(255,255,255,.94);box-shadow:0 12px 28px rgba(11,29,58,.06);overflow-x:auto;-webkit-overflow-scrolling:touch}.app-subnav a,.candidate-detail-menu a{display:inline-flex;align-items:center;min-height:38px;padding:0 12px;border-radius:12px;color:#334155;font-weight:850;text-decoration:none;white-space:nowrap}.app-subnav a:hover,.app-subnav a.active,.candidate-detail-menu a:hover,.candidate-detail-menu a.active{background:var(--role-soft);color:var(--role)}
.candidate-detail-shell{display:block!important}.candidate-detail-content{min-width:0;width:100%}.candidate-detail-menu{top:82px}
@media(max-width:1240px){.app-topnav-body .app-context{display:none}.app-topnav-body .app-brand img{width:130px}.app-nav-group>summary{padding:0 11px}.app-head-nav{gap:6px}}
@media(max-width:980px){:root{--v32-topbar:66px}.app-topnav-body .app-topbar-inner{min-height:66px;position:relative;flex-wrap:wrap}.app-menu-toggle{display:inline-flex;margin-left:auto}.app-account-menu{margin-left:0}.app-user-name{display:none}.app-head-nav{display:none;position:absolute;left:12px;right:12px;top:calc(100% + 8px);z-index:150;max-height:calc(100vh - 88px);overflow:auto;padding:12px;border:1px solid rgba(220,230,242,.95);border-radius:22px;background:rgba(255,255,255,.99);box-shadow:0 24px 64px rgba(11,29,58,.20)}.app-head-nav.mobile-open{display:grid;gap:10px}.app-head-nav .app-nav-group{width:100%}.app-head-nav .app-nav-group>summary{width:100%;justify-content:space-between;border-radius:16px;background:#f8fbfe}.app-head-nav .app-nav-menu{position:static;box-shadow:none;border:0;border-radius:14px;background:#fff;min-width:0;padding:8px 0 0}.app-head-nav .app-nav-group:not([open]) .app-nav-menu{display:none}.app-head-nav .app-nav-group[open] .app-nav-menu{display:grid}.app-head-nav .app-nav-group:hover .app-nav-menu{display:none}.app-head-nav .app-nav-group[open]:hover .app-nav-menu{display:grid}.app-layout-topnav{padding-top:18px!important}.app-subnav,.candidate-detail-menu{top:66px;flex-wrap:nowrap!important;border-radius:16px}}
@media(max-width:560px){.app-topnav-body .app-topbar-inner{gap:8px}.app-topnav-body .app-brand img{width:116px}.app-menu-toggle{height:40px;padding:0 10px}.app-menu-toggle strong{display:none}.app-user-menu>summary{min-height:40px;padding:4px}.app-user-menu .avatar{width:32px;height:32px}.app-nav-menu-right{right:0;left:auto;min-width:188px}.app-page-head h1{font-size:clamp(28px,12vw,42px)}.dashboard-hero{border-radius:22px}.app-card,.form-panel{border-radius:20px;padding:18px}.app-subnav,.candidate-detail-menu{margin-left:-4px;margin-right:-4px;padding:6px}.app-subnav a,.candidate-detail-menu a{min-height:36px;font-size:14px;padding:0 10px}}


/* v32 header navigation and scalable menus */
.app-has-header-nav .app-layout-headnav{grid-template-columns:minmax(0,1fr);padding-top:22px}
.app-has-header-nav .app-main{width:100%;min-width:0}
.v32-topbar{z-index:90}
.v32-topbar-inner{min-height:74px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:center}
.app-context-compact{padding:8px 12px;border-radius:16px;min-width:auto}
.app-context-compact strong{font-size:15px}.app-context-compact .app-context-kicker{font-size:10px}
.app-header-nav{display:flex;align-items:center;justify-content:center;gap:8px;min-width:0}
.nav-menu-group{position:relative;display:flex;align-items:center}
.nav-menu-group>button{appearance:none;border:1px solid rgba(220,230,242,.95);background:#fff;color:var(--app-navy);border-radius:999px;min-height:42px;padding:0 15px;font-weight:900;cursor:pointer;box-shadow:0 8px 20px rgba(11,29,58,.04)}
.nav-menu-group>button:after{content:"▾";font-size:10px;margin-left:8px;color:#64748b}
.nav-menu-group:hover>button,.nav-menu-group.open>button,.nav-menu-group:has(a.active)>button{border-color:rgba(0,180,154,.34);background:rgba(0,180,154,.10);color:#007b6b}
.nav-menu-panel{position:absolute;left:0;top:calc(100% + 10px);z-index:95;display:none;min-width:230px;padding:8px;border:1px solid rgba(220,230,242,.95);border-radius:18px;background:rgba(255,255,255,.98);box-shadow:0 24px 60px rgba(11,29,58,.16)}
.nav-menu-group:hover .nav-menu-panel,.nav-menu-group.open .nav-menu-panel{display:grid;gap:4px}
.nav-menu-panel a{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:40px;padding:9px 12px;border-radius:12px;color:#273858;text-decoration:none;font-weight:800;white-space:nowrap}
.nav-menu-panel a:hover,.nav-menu-panel a.active{background:#eef7ff;color:#007b6b}
.app-mobile-nav-toggle{display:none;border:1px solid rgba(220,230,242,.95);background:#fff;border-radius:999px;padding:10px 14px;color:var(--app-navy);font-weight:950;box-shadow:0 8px 20px rgba(11,29,58,.05);cursor:pointer}
.app-user-menu{position:relative}.app-user-menu-button{border:1px solid rgba(220,230,242,.95);background:#fff;cursor:pointer}.app-user-menu-button:after{content:"▾";font-size:10px;color:#64748b;margin-left:2px}.app-user-panel{position:absolute;right:0;top:calc(100% + 10px);display:none;min-width:190px;padding:8px;border:1px solid rgba(220,230,242,.95);border-radius:18px;background:#fff;box-shadow:0 24px 60px rgba(11,29,58,.16);z-index:96}.app-user-menu:hover .app-user-panel,.app-user-menu.open .app-user-panel{display:grid;gap:4px}.app-user-panel a,.app-user-panel button{display:block;width:100%;border:0;background:transparent;text-align:left;padding:10px 12px;border-radius:12px;color:#273858;font-weight:850;text-decoration:none;cursor:pointer}.app-user-panel a:hover,.app-user-panel button:hover{background:#eef7ff;color:#007b6b}
.candidate-detail-subnav{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:-4px 0 18px;padding:8px;border:1px solid rgba(220,230,242,.95);border-radius:18px;background:rgba(255,255,255,.92);box-shadow:0 10px 28px rgba(11,29,58,.05)}
.candidate-detail-subnav a{padding:9px 12px;border-radius:12px;text-decoration:none;color:#31435d;font-weight:850}.candidate-detail-subnav a:hover,.candidate-detail-subnav a.active{background:rgba(0,180,154,.12);color:#007b6b}.candidate-detail-content-full{min-width:0}
@media(max-width:1180px){.v32-topbar-inner{grid-template-columns:auto auto auto}.app-header-nav{grid-column:1 / -1;justify-content:flex-start;overflow-x:auto;padding-bottom:6px}.nav-menu-panel{position:fixed;top:auto;left:auto}.app-context-compact{display:none}}
@media(max-width:760px){.v32-topbar-inner{display:grid;grid-template-columns:1fr auto auto;gap:8px;padding:10px 0}.app-brand img{width:126px}.app-mobile-nav-toggle{display:inline-flex;align-items:center;justify-content:center}.app-header-nav{display:none;grid-column:1 / -1;overflow:visible;padding:8px 0 0}.app-header-nav.open{display:grid;gap:8px}.nav-menu-group{display:block}.nav-menu-group>button{width:100%;justify-content:space-between;text-align:left;border-radius:14px;min-height:46px}.nav-menu-panel{position:static;display:none;margin-top:6px;box-shadow:none;min-width:0;border-radius:14px;background:#f8fbfe}.nav-menu-group.open .nav-menu-panel{display:grid}.nav-menu-group:hover .nav-menu-panel{display:none}.nav-menu-group.open:hover .nav-menu-panel{display:grid}.app-user-name{display:none}.app-user{padding:6px}.app-user-panel{right:0}.app-has-header-nav .app-layout-headnav{padding-top:16px}.candidate-detail-subnav{overflow-x:auto;flex-wrap:nowrap;padding:7px}.candidate-detail-subnav a{white-space:nowrap}.premium-head .page-head-actions{width:100%}}
@media(max-width:420px){.v32-topbar-inner{grid-template-columns:1fr auto}.app-user-menu{grid-column:2}.app-mobile-nav-toggle{grid-column:1 / -1;width:100%}.app-header-nav{grid-column:1 / -1}.app-brand img{width:118px}}


/* v32 stable override: header menus for all application roles */
.app-has-header-nav .app-layout-headnav{display:block!important;grid-template-columns:minmax(0,1fr)!important;padding:22px 0 58px!important}
.app-has-header-nav .app-sidebar,.app-has-header-nav .mobile-app-menu{display:none!important}
.app-has-header-nav .app-main{width:100%;min-width:0;overflow-x:hidden}.v32-topbar{position:sticky;top:0;z-index:200;background:rgba(255,255,255,.96);backdrop-filter:blur(18px);box-shadow:0 10px 30px rgba(11,29,58,.07)}.v32-topbar-inner{min-height:72px;display:grid!important;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px}.v32-topbar .app-topbar-brandgroup{min-width:0}.v32-topbar .app-brand img{width:138px;max-width:36vw}.app-context-compact{padding:9px 13px;border-radius:16px}.app-context-compact strong{font-size:15px}.app-header-nav{display:flex;align-items:center;justify-content:center;gap:8px;min-width:0}.nav-menu-group{position:relative;display:flex;align-items:center;min-width:0}.nav-menu-group>button{appearance:none;display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 15px;border:1px solid rgba(220,230,242,.95);border-radius:999px;background:#fff;color:var(--app-navy);font-weight:900;cursor:pointer;box-shadow:0 8px 20px rgba(11,29,58,.04);white-space:nowrap}.nav-menu-group>button:after{content:"▾";font-size:10px;margin-left:8px;color:#64748b}.nav-menu-group:hover>button,.nav-menu-group.open>button,.nav-menu-group:has(a.active)>button{border-color:rgba(0,180,154,.34);background:rgba(0,180,154,.10);color:#007b6b}.nav-menu-panel{position:absolute;left:0;top:calc(100% + 10px);z-index:220;display:none;min-width:230px;padding:8px;border:1px solid rgba(220,230,242,.95);border-radius:18px;background:rgba(255,255,255,.98);box-shadow:0 24px 60px rgba(11,29,58,.16)}.nav-menu-group:hover .nav-menu-panel,.nav-menu-group.open .nav-menu-panel{display:grid;gap:4px}.nav-menu-group:last-child .nav-menu-panel{left:auto;right:0}.nav-menu-panel a{display:flex;align-items:center;min-height:40px;padding:9px 12px;border-radius:12px;color:#273858;text-decoration:none;font-weight:800;white-space:nowrap}.nav-menu-panel a:hover,.nav-menu-panel a.active{background:#eef7ff;color:#007b6b}.app-mobile-nav-toggle{display:none;border:1px solid rgba(220,230,242,.95);background:#fff;border-radius:999px;padding:10px 14px;color:var(--app-navy);font-weight:950;box-shadow:0 8px 20px rgba(11,29,58,.05);cursor:pointer}.app-mobile-nav-toggle[aria-expanded="true"]{background:var(--app-navy);color:#fff}.app-user-menu{position:relative;justify-self:end}.app-user-menu-button{display:inline-flex;align-items:center;gap:10px;border:1px solid rgba(220,230,242,.95);background:#fff;border-radius:999px;padding:5px 12px 5px 6px;max-width:220px;cursor:pointer;color:var(--app-navy);font-weight:900}.app-user-menu-button:after{content:"▾";font-size:10px;color:#64748b}.app-user-menu-button .avatar{margin:0;flex:0 0 auto}.app-user-panel{position:absolute;right:0;top:calc(100% + 10px);display:none;min-width:190px;padding:8px;border:1px solid rgba(220,230,242,.95);border-radius:18px;background:#fff;box-shadow:0 24px 60px rgba(11,29,58,.16);z-index:230}.app-user-menu:hover .app-user-panel,.app-user-menu.open .app-user-panel{display:grid;gap:4px}.app-user-panel a,.app-user-panel button{display:block;width:100%;border:0;background:transparent;text-align:left;padding:10px 12px;border-radius:12px;color:#273858;font-weight:850;text-decoration:none;cursor:pointer}.app-user-panel a:hover,.app-user-panel button:hover{background:#eef7ff;color:#007b6b}.candidate-detail-shell,.candidate-detail-shell.v32{display:block!important}.candidate-detail-menu,.candidate-detail-subnav,.v32-subnav{position:sticky;top:80px;z-index:60;display:flex!important;flex-direction:row!important;gap:8px;flex-wrap:wrap;margin:0 0 18px;padding:8px;border:1px solid rgba(220,230,242,.95);border-radius:18px;background:rgba(255,255,255,.94);box-shadow:0 12px 28px rgba(11,29,58,.06);overflow-x:auto;-webkit-overflow-scrolling:touch}.candidate-detail-menu a,.candidate-detail-subnav a,.v32-subnav a{display:inline-flex;align-items:center;min-height:38px;padding:0 12px;border-radius:12px;color:#334155;font-weight:850;text-decoration:none;white-space:nowrap}.candidate-detail-menu a:hover,.candidate-detail-menu a.active,.candidate-detail-subnav a:hover,.candidate-detail-subnav a.active,.v32-subnav a:hover,.v32-subnav a.active{background:rgba(0,180,154,.12);color:#007b6b}.candidate-detail-content,.candidate-detail-content-full{min-width:0;width:100%}
@media(max-width:1180px){.v32-topbar-inner{grid-template-columns:auto auto auto}.app-header-nav{grid-column:1 / -1;justify-content:flex-start;overflow-x:auto;padding-bottom:6px}.nav-menu-panel{position:fixed;top:auto;left:auto}.app-context-compact{display:none}}
@media(max-width:760px){.v32-topbar-inner{display:grid!important;grid-template-columns:1fr auto auto;gap:8px;padding:10px 0;min-height:64px}.v32-topbar .app-brand img{width:126px}.app-mobile-nav-toggle{display:inline-flex;align-items:center;justify-content:center}.app-header-nav{display:none;grid-column:1 / -1;overflow:visible;padding:8px 0 0}.app-header-nav.open,.app-header-nav.is-open,.app-header-nav.mobile-open{display:grid;gap:8px}.nav-menu-group{display:block}.nav-menu-group>button{width:100%;justify-content:space-between;text-align:left;border-radius:14px;min-height:46px}.nav-menu-panel{position:static;display:none;margin-top:6px;box-shadow:none;min-width:0;border-radius:14px;background:#f8fbfe}.nav-menu-group.open .nav-menu-panel{display:grid}.nav-menu-group:hover .nav-menu-panel{display:none}.nav-menu-group.open:hover .nav-menu-panel{display:grid}.app-user-name{display:none}.app-user-menu-button{padding:6px}.app-user-panel{right:0}.app-has-header-nav .app-layout-headnav{padding-top:16px!important}.candidate-detail-menu,.candidate-detail-subnav,.v32-subnav{top:65px;overflow-x:auto;flex-wrap:nowrap!important;padding:7px}.candidate-detail-menu a,.candidate-detail-subnav a,.v32-subnav a{white-space:nowrap}}
@media(max-width:420px){.v32-topbar-inner{grid-template-columns:1fr auto}.app-user-menu{grid-column:2}.app-mobile-nav-toggle{grid-column:1 / -1;width:100%}.app-header-nav{grid-column:1 / -1}.v32-topbar .app-brand img{width:118px}.app-page-head h1{font-size:clamp(28px,12vw,42px)}}


/* v32 consolidated header navigation. This block intentionally overrides earlier v32 experiments. */
.app-topnav-body .app-topbar-v32{position:sticky;top:0;z-index:150;background:rgba(255,255,255,.96);backdrop-filter:blur(18px);box-shadow:0 10px 30px rgba(11,29,58,.07)}
.app-topnav-body .app-topbar-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:12px;position:relative}
.app-topnav-body .app-topbar-brandgroup{display:flex;align-items:center;gap:14px;flex:0 0 auto;min-width:0}
.app-topnav-body .app-brand img{width:140px;max-width:38vw}.app-topnav-body .app-context{padding:9px 13px;border-radius:16px}.app-topnav-body .app-context strong{font-size:15px}
.app-topnav-body .app-head-nav{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:1 1 auto;min-width:0}
.app-topnav-body .app-nav-group{position:relative;flex:0 0 auto}.app-topnav-body .app-nav-group>summary{list-style:none;display:flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;border:1px solid rgba(220,230,242,.95);border-radius:16px;background:#fff;color:var(--app-navy);font-weight:920;cursor:pointer;white-space:nowrap;box-shadow:0 8px 20px rgba(11,29,58,.04);user-select:none}.app-topnav-body .app-nav-group>summary::-webkit-details-marker{display:none}.app-topnav-body .app-nav-group>summary:after{content:"⌄";font-size:13px;color:#6e7d91;line-height:1}.app-topnav-body .app-nav-group[open]>summary,.app-topnav-body .app-nav-group:has(a.active)>summary,.app-topnav-body .app-nav-group>summary:hover{background:#f5fbff;border-color:#cdddec;color:#0b1d3a}.app-topnav-body .app-nav-menu{position:absolute;top:calc(100% + 9px);left:0;z-index:170;display:grid;gap:4px;min-width:226px;padding:10px;border:1px solid rgba(220,230,242,.95);border-radius:18px;background:rgba(255,255,255,.98);box-shadow:0 24px 58px rgba(11,29,58,.16)}.app-topnav-body .app-nav-menu-right{left:auto;right:0}.app-topnav-body .app-nav-menu a,.app-topnav-body .app-menu-button{display:flex;align-items:center;width:100%;min-height:38px;padding:9px 11px;border:0;border-radius:12px;background:transparent;color:#22334f;text-align:left;text-decoration:none;font:inherit;font-weight:820;cursor:pointer}.app-topnav-body .app-nav-menu a:hover,.app-topnav-body .app-nav-menu a.active,.app-topnav-body .app-menu-button:hover{background:rgba(0,180,154,.11);color:#007b6b}.app-topnav-body .app-account-menu{margin-left:0}.app-topnav-body .app-user-menu>summary{border-radius:999px;min-height:46px;padding:5px 12px 5px 6px}.app-topnav-body .app-user-menu .avatar{margin:0;width:36px;height:36px;font-size:14px}.app-topnav-body .app-menu-toggle{display:none;align-items:center;gap:7px;height:44px;padding:0 13px;border:1px solid rgba(220,230,242,.95);border-radius:15px;background:#fff;color:var(--app-navy);font-weight:920;cursor:pointer;box-shadow:0 8px 20px rgba(11,29,58,.04)}.app-topnav-body .app-menu-toggle span{display:block;width:16px;height:2px;border-radius:99px;background:currentColor;box-shadow:0 5px 0 currentColor,0 -5px 0 currentColor}.app-topnav-body .app-menu-toggle[aria-expanded="true"]{background:#0b1d3a;color:#fff}.app-topnav-body .app-layout-topnav{display:block!important;padding:24px 0 58px!important}.app-topnav-body .app-layout-topnav .app-main{width:100%;min-width:0}.app-topnav-body .mobile-app-menu,.app-topnav-body .app-sidebar{display:none!important}.app-topnav-body .app-page-head{margin-top:4px}.app-topnav-body .candidate-detail-shell{display:block!important}.app-topnav-body .candidate-detail-menu{position:sticky;top:82px;z-index:45;display:flex!important;flex-direction:row!important;flex-wrap:wrap;gap:8px;margin:0 0 18px;padding:8px;border:1px solid rgba(220,230,242,.95);border-radius:18px;background:rgba(255,255,255,.94);box-shadow:0 12px 28px rgba(11,29,58,.06);overflow-x:auto;-webkit-overflow-scrolling:touch}.app-topnav-body .candidate-detail-menu a{display:inline-flex;align-items:center;min-height:38px;padding:0 12px;border-radius:12px;color:#334155;font-weight:850;text-decoration:none;white-space:nowrap}.app-topnav-body .candidate-detail-menu a:hover,.app-topnav-body .candidate-detail-menu a.active{background:var(--role-soft);color:var(--role)}.app-topnav-body .candidate-detail-content{min-width:0;width:100%}
@media(max-width:1240px){.app-topnav-body .app-context{display:none}.app-topnav-body .app-brand img{width:130px}.app-topnav-body .app-nav-group>summary{padding:0 11px}.app-topnav-body .app-head-nav{gap:6px}}
@media(max-width:980px){.app-topnav-body .app-topbar-inner{min-height:66px;flex-wrap:wrap}.app-topnav-body .app-menu-toggle{display:inline-flex;margin-left:auto}.app-topnav-body .app-user-name{display:none}.app-topnav-body .app-head-nav{display:none;position:absolute;left:12px;right:12px;top:calc(100% + 8px);z-index:180;max-height:calc(100vh - 88px);overflow:auto;padding:12px;border:1px solid rgba(220,230,242,.95);border-radius:22px;background:rgba(255,255,255,.99);box-shadow:0 24px 64px rgba(11,29,58,.20)}.app-topnav-body .app-head-nav.mobile-open,.app-topnav-body .app-head-nav.is-open{display:grid;gap:10px}.app-topnav-body .app-head-nav .app-nav-group{width:100%}.app-topnav-body .app-head-nav .app-nav-group>summary{width:100%;justify-content:space-between;border-radius:16px;background:#f8fbfe}.app-topnav-body .app-head-nav .app-nav-menu{position:static;box-shadow:none;border:0;border-radius:14px;background:#fff;min-width:0;padding:8px 0 0}.app-topnav-body .app-layout-topnav{padding-top:18px!important}.app-topnav-body .candidate-detail-menu{top:66px;flex-wrap:nowrap!important;border-radius:16px}}
@media(max-width:560px){.app-topnav-body .app-topbar-inner{gap:8px}.app-topnav-body .app-brand img{width:116px}.app-topnav-body .app-menu-toggle{height:40px;padding:0 10px}.app-topnav-body .app-menu-toggle strong{display:none}.app-topnav-body .app-user-menu>summary{min-height:40px;padding:4px}.app-topnav-body .app-user-menu .avatar{width:32px;height:32px}.app-topnav-body .app-page-head h1{font-size:clamp(28px,12vw,42px)}.app-topnav-body .app-card,.app-topnav-body .form-panel{border-radius:20px;padding:18px}.app-topnav-body .candidate-detail-menu{margin-left:-4px;margin-right:-4px;padding:6px}.app-topnav-body .candidate-detail-menu a{min-height:36px;font-size:14px;padding:0 10px}}

/* v32 cleanup: keep only header navigation visible in app shells */
.app-topnav-body .app-context{display:none!important}
.app-topnav-body .app-menu-toggle:before{content:none!important}
.app-topnav-body .economy-menu{display:grid!important}
.app-topnav-body .app-head-nav a.active{background:rgba(0,180,154,.11);color:#007b6b}
.app-topnav-body .app-head-nav .app-nav-group:has(a.active)>summary{background:rgba(0,180,154,.10);border-color:rgba(0,180,154,.34);color:#007b6b}
.app-topnav-body .app-user-menu .app-nav-menu button.app-menu-button{font-family:inherit}
@media(max-width:980px){.app-topnav-body .app-head-nav .app-nav-group[open]>.app-nav-menu{display:grid}.app-topnav-body .app-head-nav .app-nav-group:not([open])>.app-nav-menu{display:none}}

/* v32 final override: current header menus, mobile behavior and compact submenus */
.app-topbar-v32{
  position:sticky;
  top:0;
  z-index:220;
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(220,230,242,.95);
  box-shadow:0 10px 28px rgba(11,29,58,.06);
}
.app-topbar-v32 .app-topbar-inner{
  display:flex!important;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  min-height:72px;
}
.app-topbar-v32 .app-topbar-brandgroup{display:flex;align-items:center;gap:12px;min-width:0;flex:0 0 auto}
.app-topbar-v32 .app-brand img{width:138px;max-width:34vw}
.app-topbar-v32 .app-context{padding:9px 13px;border-radius:16px;white-space:nowrap}
.app-topbar-v32 .app-context strong{font-size:15px}
.app-header-nav{
  display:flex!important;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex:1 1 auto;
  min-width:0;
}
.app-header-nav>a,
.app-menu-group>button,
.app-user-menu-button{
  appearance:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:42px;
  padding:0 14px;
  border:1px solid rgba(220,230,242,.95);
  border-radius:999px;
  background:#fff;
  color:var(--app-navy);
  font-weight:900;
  text-decoration:none;
  white-space:nowrap;
  box-shadow:0 8px 20px rgba(11,29,58,.04);
  cursor:pointer;
}
.app-menu-group{position:relative;display:inline-flex;align-items:center;min-width:0}
.app-menu-group>button:after{content:"▾";font-size:10px;color:#64748b;margin-left:2px}
.app-header-nav>a:hover,
.app-header-nav>a.active,
.app-menu-group:hover>button,
.app-menu-group.open>button,
.app-menu-group:focus-within>button,
.app-menu-group:has(a.active)>button{
  border-color:rgba(0,180,154,.32);
  background:rgba(0,180,154,.10);
  color:#007b6b;
}
.app-menu-dropdown{
  position:absolute;
  left:0;
  top:calc(100% + 10px);
  z-index:240;
  display:none;
  flex-direction:column;
  gap:4px;
  min-width:230px;
  max-width:min(360px,calc(100vw - 24px));
  padding:9px;
  border:1px solid rgba(220,230,242,.95);
  border-radius:18px;
  background:rgba(255,255,255,.98);
  box-shadow:0 24px 60px rgba(11,29,58,.16);
}
.app-menu-dropdown.align-right,
.app-menu-group:nth-last-child(-n+2)>.app-menu-dropdown{left:auto;right:0}
.app-menu-group.open>.app-menu-dropdown,
.app-menu-group:hover>.app-menu-dropdown,
.app-menu-group:focus-within>.app-menu-dropdown{display:flex}
.app-menu-dropdown a,
.app-menu-dropdown button{
  display:flex;
  align-items:center;
  width:100%;
  min-height:40px;
  padding:9px 11px;
  border:0;
  border-radius:12px;
  background:transparent;
  color:#273858;
  font-size:14px;
  font-weight:820;
  text-decoration:none;
  text-align:left;
  cursor:pointer;
}
.app-menu-dropdown a:hover,
.app-menu-dropdown a.active,
.app-menu-dropdown button:hover{background:#eef7ff;color:#007b6b}
.app-user-menu-button{padding:5px 12px 5px 6px;max-width:220px}
.app-user-menu-button .avatar{margin:0;flex:0 0 auto;background:linear-gradient(135deg,var(--app-navy),#173a68)}
.app-user-menu-button span:last-child{overflow:hidden;text-overflow:ellipsis;max-width:150px}
.app-menu-toggle{
  display:none;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:0 14px;
  border:1px solid rgba(220,230,242,.95);
  border-radius:999px;
  background:#fff;
  color:var(--app-navy);
  font-weight:950;
  box-shadow:0 8px 20px rgba(11,29,58,.04);
  cursor:pointer;
}
.app-menu-toggle:before{content:"☰";margin-right:8px}
.app-layout-topnav{display:block!important;padding:28px 0 58px!important}
.app-layout-topnav .app-main{width:100%;min-width:0;max-width:none;overflow-x:hidden}
.app-layout-topnav .mobile-app-menu,.app-layout-topnav .app-sidebar{display:none!important}
.economy-menu{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin:0 0 18px}
.candidate-detail-shell,.candidate-detail-shell.v32{display:block!important}
.candidate-detail-menu,.candidate-detail-subnav,.v32-subnav{
  position:sticky;
  top:80px;
  z-index:80;
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 18px;
  padding:8px;
  border:1px solid rgba(220,230,242,.95);
  border-radius:18px;
  background:rgba(255,255,255,.94);
  box-shadow:0 12px 28px rgba(11,29,58,.06);
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}
.candidate-detail-menu a,.candidate-detail-subnav a,.v32-subnav a{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:0 12px;
  border-radius:12px;
  color:#334155;
  font-weight:850;
  text-decoration:none;
  white-space:nowrap;
}
.candidate-detail-menu a:hover,.candidate-detail-menu a.active,
.candidate-detail-subnav a:hover,.candidate-detail-subnav a.active,
.v32-subnav a:hover,.v32-subnav a.active{background:rgba(0,180,154,.12);color:#007b6b}
.candidate-detail-content,.candidate-detail-content-full{min-width:0;width:100%}
@media(max-width:1180px){
  .app-topbar-v32 .app-context{display:none}
  .app-topbar-v32 .app-brand img{width:128px}
  .app-header-nav>a,.app-menu-group>button,.app-user-menu-button{padding-left:11px;padding-right:11px;font-size:14px}
}
@media(max-width:920px){
  .app-topbar-v32 .app-topbar-inner{min-height:64px;flex-wrap:wrap;align-items:center;position:relative}
  .app-menu-toggle{display:inline-flex;margin-left:auto}
  .app-header-nav{
    display:none!important;
    flex-basis:100%;
    width:100%;
    max-height:calc(100vh - 84px);
    overflow:auto;
    flex-direction:column;
    align-items:stretch;
    justify-content:flex-start;
    gap:8px;
    padding:10px 0 4px;
  }
  .app-header-nav.is-open,.app-header-nav.open,.app-header-nav.mobile-open{display:flex!important}
  .app-header-nav>a,.app-menu-group,.app-menu-group>button,.app-user-menu-button{width:100%;justify-content:space-between}
  .app-menu-group{display:flex;flex-direction:column;align-items:stretch}
  .app-menu-dropdown,.app-menu-dropdown.align-right,.app-menu-group:nth-last-child(-n+2)>.app-menu-dropdown{
    position:static;
    left:auto;
    right:auto;
    min-width:0;
    max-width:none;
    width:100%;
    margin-top:6px;
    border-radius:14px;
    background:#f8fbfe;
    box-shadow:none;
  }
  .app-menu-group:hover>.app-menu-dropdown{display:none}
  .app-menu-group.open>.app-menu-dropdown,.app-menu-group:focus-within>.app-menu-dropdown{display:flex}
  .app-user-menu-button span:last-child{max-width:none}
  .app-layout-topnav{padding-top:18px!important}
  .candidate-detail-menu,.candidate-detail-subnav,.v32-subnav{top:65px;flex-wrap:nowrap!important;padding:7px}
}
@media(max-width:560px){
  .app-topbar-v32 .app-brand img{width:116px}
  .app-menu-toggle{min-height:40px;padding:0 12px}
  .app-page-head h1{font-size:clamp(28px,12vw,42px)}
  .app-card,.form-panel{border-radius:20px;padding:18px}
  .candidate-detail-menu a,.candidate-detail-subnav a,.v32-subnav a{min-height:36px;font-size:14px;padding:0 10px}
}

/* v33: compact header search, context menus and mobile polish */
.app-v33-nav .app-topbar-v32{z-index:220}
.app-v33-nav .app-topbar-inner{gap:10px;min-height:70px}
.app-header-search{position:relative;flex:1 1 260px;max-width:420px;min-width:220px}
.app-header-search input{width:100%;height:44px;border:1px solid rgba(220,230,242,.95);border-radius:999px;background:#fff;padding:0 16px 0 18px;color:#0b1d3a;font-weight:800;box-shadow:0 8px 20px rgba(11,29,58,.04)}
.app-header-search input:focus{outline:none;border-color:rgba(0,180,154,.45);box-shadow:0 0 0 4px rgba(0,180,154,.10)}
.global-search-panel{position:absolute;left:0;right:0;top:calc(100% + 8px);z-index:260;display:grid;gap:4px;padding:10px;border:1px solid rgba(220,230,242,.95);border-radius:18px;background:rgba(255,255,255,.98);box-shadow:0 24px 58px rgba(11,29,58,.18)}
.global-search-panel[hidden]{display:none!important}
.global-search-panel a{display:grid;grid-template-columns:auto 1fr;gap:2px 10px;padding:9px 11px;border-radius:13px;text-decoration:none;color:#22334f}
.global-search-panel a:hover{background:rgba(0,180,154,.10);color:#007b6b}
.global-search-panel a span{grid-row:1/3;align-self:center;font-size:11px;font-weight:950;text-transform:uppercase;letter-spacing:.08em;color:#64748b}
.global-search-panel a strong{font-size:14px;line-height:1.1}.global-search-panel a small{color:#667085;font-weight:700}.global-search-empty{padding:12px;color:#667085;font-weight:800}
.app-context-subnav{position:sticky;top:70px;z-index:160;background:rgba(246,251,255,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(220,230,242,.72);box-shadow:0 10px 22px rgba(11,29,58,.04)}
.app-context-subnav[hidden]{display:none!important}.context-subnav-inner{display:flex;align-items:center;gap:14px;min-height:54px;overflow:hidden}.context-subnav-inner>strong{flex:0 0 auto;color:#0b1d3a;font-weight:950}.context-pillbar{display:flex;align-items:center;gap:7px;overflow-x:auto;-webkit-overflow-scrolling:touch;padding:7px 0;scrollbar-width:thin}.context-pillbar a{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border:1px solid rgba(220,230,242,.95);border-radius:999px;background:#fff;color:#334155;text-decoration:none;font-weight:880;white-space:nowrap}.context-pillbar a:hover,.context-pillbar a.active{background:var(--app-navy);border-color:var(--app-navy);color:#fff}.app-v33-nav .candidate-detail-subnav{display:none!important}.app-v33-nav .candidate-detail-content{margin-top:0}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1240px){.app-header-search{max-width:320px;min-width:180px}.app-header-search input{height:42px}}
@media(max-width:980px){.app-v33-nav .app-topbar-inner{min-height:64px}.app-header-search{order:4;flex:1 1 100%;max-width:none;min-width:0}.app-header-search input{height:42px}.global-search-panel{position:fixed;left:12px;right:12px;top:74px;max-height:calc(100vh - 96px);overflow:auto}.app-context-subnav{top:64px}.context-subnav-inner{display:block;min-height:auto;padding-top:8px;padding-bottom:8px}.context-subnav-inner>strong{display:block;margin-bottom:6px}.context-pillbar{padding:0 0 4px}.app-topnav-body .app-head-nav{top:calc(100% + 58px)}}
@media(max-width:560px){.app-header-search input{font-size:14px}.context-pillbar a{min-height:32px;padding:0 10px;font-size:13px}.global-search-panel a{grid-template-columns:1fr}.global-search-panel a span{grid-row:auto}}

/* v37 final header stability: no overlap, no hidden mobile menu, compact app-grade navigation */
.app-v37-nav .app-topbar-v32{z-index:340;background:rgba(255,255,255,.98)}
.app-v37-nav .app-topbar-v32 .app-topbar-inner{position:relative;min-height:74px;gap:12px}
.app-v37-nav .app-head-nav{min-width:0}
.app-v37-nav .app-nav-group>summary{font-size:15px;min-height:44px;padding:0 13px}
.app-role-admin.app-v37-nav .app-topbar-v32 .app-topbar-inner{display:grid!important;grid-template-columns:auto minmax(230px,360px) minmax(0,1fr) auto;align-items:center;column-gap:12px;row-gap:8px}
.app-role-admin.app-v37-nav .app-topbar-brandgroup{grid-column:1;min-width:0}
.app-role-admin.app-v37-nav .app-header-search{grid-column:2;position:relative;z-index:1;min-width:0;max-width:none;width:100%;flex:0 1 auto}
.app-role-admin.app-v37-nav .app-head-nav{grid-column:3;justify-self:end;display:flex!important;flex:0 1 auto;justify-content:flex-end;gap:7px;overflow:visible;white-space:nowrap}
.app-role-admin.app-v37-nav .app-account-menu{grid-column:4;justify-self:end;z-index:2}
.app-role-admin.app-v37-nav .app-menu-toggle{grid-column:3;justify-self:end}
.app-v37-nav .app-nav-menu{z-index:380}.app-v37-nav .global-search-panel{z-index:390}
@media(max-width:1540px){.app-role-admin.app-v37-nav .app-topbar-v32 .app-topbar-inner{grid-template-columns:auto minmax(200px,290px) minmax(0,1fr) auto}.app-v37-nav .app-nav-group>summary{font-size:14px;padding:0 10px}.app-role-admin.app-v37-nav .app-head-nav{gap:5px}.app-role-admin.app-v37-nav .app-user-name{max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}
@media(max-width:1280px){.app-role-admin.app-v37-nav .app-topbar-v32 .app-topbar-inner{grid-template-columns:auto 1fr auto;min-height:72px}.app-role-admin.app-v37-nav .app-header-search{grid-column:1 / -1;grid-row:2;order:5}.app-role-admin.app-v37-nav .app-head-nav{grid-column:2;grid-row:1}.app-role-admin.app-v37-nav .app-account-menu{grid-column:3;grid-row:1}.app-role-admin.app-v37-nav .app-header-search input{height:42px}.app-role-admin.app-v37-nav .global-search-panel{position:absolute;top:calc(100% + 8px)}}
@media(max-width:980px){.app-v37-nav .app-topbar-v32 .app-topbar-inner,.app-role-admin.app-v37-nav .app-topbar-v32 .app-topbar-inner{display:grid!important;grid-template-columns:auto 1fr auto;align-items:center;min-height:66px;gap:8px}.app-v37-nav .app-topbar-brandgroup,.app-role-admin.app-v37-nav .app-topbar-brandgroup{grid-column:1;grid-row:1}.app-v37-nav .app-menu-toggle,.app-role-admin.app-v37-nav .app-menu-toggle{display:inline-flex!important;grid-column:2;grid-row:1;justify-self:end;margin-left:0}.app-v37-nav .app-account-menu,.app-role-admin.app-v37-nav .app-account-menu{grid-column:3;grid-row:1;justify-self:end}.app-v37-nav .app-head-nav,.app-role-admin.app-v37-nav .app-head-nav{display:none!important;position:absolute;left:12px;right:12px;top:calc(100% + 8px)!important;z-index:370;max-height:calc(100vh - 88px);overflow:auto;padding:12px;border:1px solid rgba(220,230,242,.95);border-radius:22px;background:rgba(255,255,255,.99);box-shadow:0 24px 64px rgba(11,29,58,.20);white-space:normal}.app-v37-nav .app-head-nav.mobile-open,.app-v37-nav .app-head-nav.is-open,.app-role-admin.app-v37-nav .app-head-nav.mobile-open,.app-role-admin.app-v37-nav .app-head-nav.is-open{display:grid!important;gap:10px}.app-v37-nav .app-head-nav .app-nav-group{width:100%}.app-v37-nav .app-head-nav .app-nav-group>summary{width:100%;justify-content:space-between;border-radius:16px;background:#f8fbfe;font-size:15px}.app-v37-nav .app-head-nav .app-nav-menu{position:static;box-shadow:none;border:0;border-radius:14px;background:#fff;min-width:0;padding:8px 0 0}.app-role-admin.app-v37-nav .app-header-search{grid-column:1 / -1;grid-row:2;min-width:0;max-width:none}.app-role-admin.app-v37-nav .global-search-panel{position:fixed;left:12px;right:12px;top:120px;max-height:calc(100vh - 140px);overflow:auto}.app-v37-nav .app-context-subnav{top:66px}}
@media(max-width:560px){.app-v37-nav .app-brand img{width:112px}.app-v37-nav .app-menu-toggle{height:38px;padding:0 10px}.app-v37-nav .app-user-menu>summary{min-height:38px;padding:4px}.app-v37-nav .app-user-menu .avatar{width:32px;height:32px}.app-role-admin.app-v37-nav .app-header-search input{height:40px;font-size:14px}.app-v37-nav .app-head-nav{left:10px;right:10px}.app-role-admin.app-v37-nav .global-search-panel{top:112px}}

/* v37.1 final header stability overrides */
.app-role-admin.app-v37-nav .app-topbar-v32 .app-topbar-inner{
  display:grid!important;
  grid-template-columns:minmax(168px,230px) minmax(180px,320px) minmax(620px,1fr) minmax(178px,max-content)!important;
  align-items:center!important;
  gap:10px!important;
  overflow:visible!important;
}
.app-role-admin.app-v37-nav .app-topbar-brandgroup{grid-column:1!important;min-width:0!important;overflow:hidden!important}
.app-role-admin.app-v37-nav .app-header-search{grid-column:2!important;min-width:0!important;max-width:none!important;width:100%!important;z-index:1!important}
.app-role-admin.app-v37-nav .app-head-nav{grid-column:3!important;min-width:0!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:6px!important;z-index:2!important;overflow:visible!important;white-space:nowrap!important}
.app-role-admin.app-v37-nav .app-account-menu{grid-column:4!important;z-index:3!important;justify-self:end!important}
.app-role-admin.app-v37-nav .app-nav-group>summary{font-size:14px!important;padding:0 10px!important}
.app-role-admin.app-v37-nav .app-header-search input{min-width:0!important;text-overflow:ellipsis!important}
@media(max-width:1640px){
  .app-role-admin.app-v37-nav .app-topbar-v32 .app-topbar-inner{grid-template-columns:minmax(160px,210px) minmax(160px,260px) minmax(560px,1fr) minmax(150px,max-content)!important}
  .app-role-admin.app-v37-nav .app-context-admin{display:none!important}
  .app-role-admin.app-v37-nav .app-brand img{width:132px!important}
  .app-role-admin.app-v37-nav .app-nav-group>summary{font-size:13px!important;padding:0 9px!important}
  .app-role-admin.app-v37-nav .app-user-name{max-width:116px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
}
@media(max-width:1460px){
  .app-role-admin.app-v37-nav .app-topbar-v32 .app-topbar-inner{grid-template-columns:auto 1fr auto!important;grid-template-rows:auto auto!important}
  .app-role-admin.app-v37-nav .app-topbar-brandgroup{grid-column:1!important;grid-row:1!important}
  .app-role-admin.app-v37-nav .app-head-nav{grid-column:2!important;grid-row:1!important;justify-self:end!important}
  .app-role-admin.app-v37-nav .app-account-menu{grid-column:3!important;grid-row:1!important}
  .app-role-admin.app-v37-nav .app-header-search{grid-column:1 / -1!important;grid-row:2!important;width:100%!important;max-width:none!important}
}
@media(max-width:980px){
  .app-role-admin.app-v37-nav .app-topbar-v32 .app-topbar-inner{grid-template-columns:auto 1fr auto!important;grid-template-rows:auto auto!important;min-height:66px!important}
  .app-role-admin.app-v37-nav .app-menu-toggle{display:inline-flex!important;grid-column:2!important;grid-row:1!important;justify-self:end!important}
  .app-role-admin.app-v37-nav .app-head-nav{display:none!important;grid-column:auto!important;grid-row:auto!important;position:absolute!important;left:12px!important;right:12px!important;top:calc(100% + 8px)!important;z-index:430!important;max-height:calc(100vh - 88px)!important;overflow:auto!important;white-space:normal!important}
  .app-role-admin.app-v37-nav .app-head-nav.mobile-open,.app-role-admin.app-v37-nav .app-head-nav.is-open{display:grid!important}
  .app-role-admin.app-v37-nav .app-account-menu{grid-column:3!important;grid-row:1!important}
  .app-role-admin.app-v37-nav .app-header-search{grid-column:1 / -1!important;grid-row:2!important}
}

/* v38 stable header: two-row admin header, no search/menu overlap, mobile overlay */
.app-v38-nav .app-topbar-v32{z-index:500;background:rgba(255,255,255,.985)!important;border-bottom:1px solid rgba(220,230,242,.9)}
.app-role-admin.app-v38-nav .app-topbar-v32 .app-topbar-inner{display:grid!important;grid-template-columns:minmax(154px,220px) minmax(0,1fr) max-content!important;grid-template-areas:"brand nav account" "search search search"!important;gap:8px 12px!important;align-items:center!important;min-height:92px!important;overflow:visible!important;padding-top:8px!important;padding-bottom:8px!important}
.app-role-admin.app-v38-nav .app-topbar-brandgroup{grid-area:brand!important;min-width:0!important;overflow:hidden!important}.app-role-admin.app-v38-nav .app-brand img{width:136px!important;max-width:34vw!important}
.app-role-admin.app-v38-nav .app-head-nav{grid-area:nav!important;display:flex!important;justify-content:flex-end!important;align-items:center!important;gap:7px!important;min-width:0!important;overflow:visible!important;white-space:nowrap!important;z-index:502!important}
.app-role-admin.app-v38-nav .app-account-menu{grid-area:account!important;justify-self:end!important;z-index:505!important}.app-role-admin.app-v38-nav .app-header-search{grid-area:search!important;min-width:0!important;max-width:760px!important;width:100%!important;z-index:501!important}.app-role-admin.app-v38-nav .app-header-search input{height:42px!important;max-width:760px!important}.app-role-admin.app-v38-nav .app-context-admin{display:none!important}.app-role-admin.app-v38-nav .app-nav-group>summary{font-size:14px!important;padding:0 11px!important;min-height:42px!important}.app-v38-nav .app-nav-menu{z-index:540!important}.app-v38-nav .global-search-panel{z-index:545!important}
@media(max-width:1180px){.app-role-admin.app-v38-nav .app-topbar-v32 .app-topbar-inner{grid-template-columns:minmax(128px,190px) 1fr max-content!important}.app-role-admin.app-v38-nav .app-nav-group>summary{font-size:13px!important;padding:0 9px!important}.app-role-admin.app-v38-nav .app-user-name{max-width:112px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}}
@media(max-width:980px){.app-v38-nav .app-topbar-v32 .app-topbar-inner,.app-role-admin.app-v38-nav .app-topbar-v32 .app-topbar-inner{display:grid!important;grid-template-columns:auto 1fr auto!important;grid-template-areas:"brand menu account" "search search search"!important;gap:8px!important;min-height:74px!important}.app-v38-nav .app-topbar-brandgroup,.app-role-admin.app-v38-nav .app-topbar-brandgroup{grid-area:brand!important}.app-v38-nav .app-menu-toggle,.app-role-admin.app-v38-nav .app-menu-toggle{grid-area:menu!important;display:inline-flex!important;justify-self:end!important;margin-left:0!important}.app-v38-nav .app-account-menu,.app-role-admin.app-v38-nav .app-account-menu{grid-area:account!important}.app-role-admin.app-v38-nav .app-header-search{grid-area:search!important;max-width:none!important}.app-v38-nav .app-head-nav,.app-role-admin.app-v38-nav .app-head-nav{display:none!important;position:fixed!important;left:12px!important;right:12px!important;top:76px!important;z-index:560!important;max-height:calc(100vh - 92px)!important;overflow:auto!important;padding:14px!important;border:1px solid rgba(220,230,242,.95)!important;border-radius:22px!important;background:rgba(255,255,255,.99)!important;box-shadow:0 24px 72px rgba(11,29,58,.25)!important;white-space:normal!important}.app-v38-nav .app-head-nav.mobile-open,.app-v38-nav .app-head-nav.is-open,.app-role-admin.app-v38-nav .app-head-nav.mobile-open,.app-role-admin.app-v38-nav .app-head-nav.is-open{display:grid!important;gap:10px!important}.app-v38-nav .app-head-nav .app-nav-group{width:100%!important}.app-v38-nav .app-head-nav .app-nav-group>summary{width:100%!important;justify-content:space-between!important;border-radius:16px!important;background:#f8fbfe!important}.app-v38-nav .app-head-nav .app-nav-menu{position:static!important;box-shadow:none!important;border:0!important;border-radius:14px!important;background:#fff!important;min-width:0!important;padding:8px 0 0!important}.app-v38-nav .global-search-panel,.app-role-admin.app-v38-nav .global-search-panel{position:fixed!important;left:12px!important;right:12px!important;top:126px!important;max-height:calc(100vh - 146px)!important;overflow:auto!important}.app-v38-nav .app-context-subnav{top:74px!important}}
@media(max-width:560px){.app-v38-nav .app-brand img{width:112px!important}.app-v38-nav .app-menu-toggle{height:38px!important;padding:0 10px!important}.app-v38-nav .app-user-name{display:none!important}.app-role-admin.app-v38-nav .app-header-search input{height:40px!important;font-size:14px!important}.app-v38-nav .app-head-nav{left:10px!important;right:10px!important;top:70px!important}.app-v38-nav .global-search-panel{top:118px!important}.app-v38-nav .app-page-head h1{font-size:clamp(28px,12vw,42px)!important}}


/* v43 production equipment overview */
.equipment-overview{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin:12px 0 18px;
}
.equipment-stat{
  border:1px solid var(--app-line);
  border-radius:16px;
  padding:14px;
  background:#fff;
  box-shadow:0 8px 22px rgba(11,29,58,.04);
}
.equipment-stat span{
  display:block;
  color:var(--app-muted);
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.equipment-stat strong{
  display:block;
  margin-top:5px;
  color:var(--app-navy);
  font-size:26px;
}
.equipment-list{
  display:grid;
  gap:10px;
}
.equipment-detail-card,
.equipment-new-card{
  border:1px solid var(--app-line);
  border-radius:18px;
  background:#fff;
  margin-bottom:10px;
  overflow:hidden;
  box-shadow:0 8px 20px rgba(11,29,58,.04);
}
.equipment-detail-card summary,
.equipment-new-card summary{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  cursor:pointer;
  padding:14px 16px;
  list-style:none;
}
.equipment-detail-card summary::-webkit-details-marker,
.equipment-new-card summary::-webkit-details-marker{
  display:none;
}
.equipment-summary-main{
  min-width:0;
}
.equipment-summary-main strong,
.equipment-new-card summary strong{
  display:block;
  color:var(--app-navy);
  font-size:16px;
}
.equipment-summary-main span,
.equipment-new-card summary span{
  display:block;
  color:var(--app-muted);
  font-size:13px;
  font-weight:650;
  margin-top:3px;
}
.equipment-edit-form,
.equipment-new-card form{
  border-top:1px solid var(--app-line);
  padding:16px;
  background:#fbfdff;
}
.equipment-return-inline{
  border-top:1px solid var(--app-line);
  padding:12px 16px 16px;
  background:#fff;
}
@media(max-width:850px){
  .equipment-overview{grid-template-columns:repeat(2,minmax(0,1fr))}
  .equipment-detail-card summary,
  .equipment-new-card summary{grid-template-columns:1fr}
}

.notice.red{background:#fff1f2;border-color:#fecdd3;color:#9f1239}
.status-notice{margin-bottom:18px}.status-notice .section-head{align-items:flex-start}.status-notice p{margin:4px 0 0;color:#40516b}
.global-search-group{display:grid;gap:4px}.global-search-group>strong{padding:8px 10px 2px;color:#64748b;font-size:11px;font-weight:950;text-transform:uppercase;letter-spacing:.08em}
.audit-details{margin-top:8px}.audit-details pre,.details-box pre{white-space:pre-wrap;overflow:auto;margin:10px 0 0;font-size:12px;color:#334155}
.check-list{display:grid;gap:10px}.sectioned-form h2{margin:20px 0 12px}.sectioned-form h2:first-child{margin-top:0}.sticky-actions{position:sticky;bottom:12px;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);padding-top:12px}
