
:root{
  --bg:#f4f6f8;--panel:#ffffff;--text:#152033;--muted:#6b7483;--line:#e5e8ec;
  --nav:#0c111a;--nav2:#151d2a;--gold:#c9a24d;--gold2:#f2d27e;--green:#168b5b;
  --red:#d94a4a;--amber:#d18d12;--blue:#2764ff;--shadow:0 14px 35px rgba(10,20,40,.08);
}
body.dark{--bg:#0f141d;--panel:#171f2b;--text:#edf1f6;--muted:#9aa5b5;--line:#293446;--shadow:none}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text)}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
.hidden{display:none!important}
.login-screen{min-height:100vh;display:grid;grid-template-columns:430px 1fr;background:#080c12}
.login-panel{background:#fff;padding:48px;display:flex;flex-direction:column;justify-content:center}
.login-logo{width:210px;height:125px;object-fit:cover;object-position:center;margin-bottom:15px}
.login-panel h1{margin:0 0 6px;font-size:30px}.login-panel p{margin:0 0 26px;color:#657080}
.login-panel label{display:block;margin:13px 0 7px;font-size:13px;font-weight:700}
.login-panel input,.login-panel select,.modal input,.modal select,.modal textarea{width:100%;padding:12px 13px;border:1px solid #d7dce3;border-radius:10px;background:#fff}
.login-panel small{margin-top:16px;color:#7c8492}
.login-visual{background:linear-gradient(110deg,rgba(0,0,0,.88),rgba(0,0,0,.48));display:flex;align-items:flex-end;padding:70px}
html.palux-login-ready .login-visual{background:linear-gradient(110deg,rgba(0,0,0,.80),rgba(0,0,0,.35)),url("assets/palux-logo-fast.webp") center/cover no-repeat}
.hero-copy{max-width:820px;color:#fff}.eyebrow{color:var(--gold2);letter-spacing:.2em;font-size:12px;font-weight:800}
.hero-copy h2{font-size:46px;line-height:1.1;margin:16px 0 28px}.hero-points{display:flex;flex-wrap:wrap;gap:10px}
.hero-points span{border:1px solid rgba(255,255,255,.3);padding:9px 13px;border-radius:999px;background:rgba(255,255,255,.08)}
.primary-btn{background:linear-gradient(135deg,#b88c32,#e5c46f);border:0;color:#111;padding:12px 18px;border-radius:10px;font-weight:800}
.full{width:100%;margin-top:20px}
.app-shell{min-height:100vh;display:grid;grid-template-columns:265px 1fr}
.sidebar{position:fixed;inset:0 auto 0 0;width:265px;background:linear-gradient(180deg,var(--nav),#080c12);color:#fff;display:flex;flex-direction:column;z-index:20}
.brand{height:96px;display:flex;align-items:center;padding:10px 18px;border-bottom:1px solid rgba(255,255,255,.08)}
.brand img{width:180px;height:75px;object-fit:cover;object-position:center}
.company-switcher{margin:12px 14px;padding:13px;border:1px solid rgba(255,255,255,.09);border-radius:12px;background:rgba(255,255,255,.04);display:flex;justify-content:space-between;align-items:center}
.company-switcher small{display:block;color:#7f8a99;font-size:10px}.company-switcher strong{font-size:13px}.company-switcher button{background:none;border:0;color:#fff}
nav{padding:4px 10px 18px;overflow:auto;flex:1;min-height:0}
.nav-group-title{font-size:10px;color:#707c8e;letter-spacing:.16em;padding:16px 12px 7px}
.nav-item{width:100%;display:flex;gap:11px;align-items:center;background:none;color:#c8d0dc;border:0;padding:10px 12px;border-radius:9px;text-align:left;font-size:13px}
.nav-item:hover,.nav-item.active{background:linear-gradient(90deg,rgba(201,162,77,.24),rgba(201,162,77,.07));color:#fff}
.nav-item.active{box-shadow:inset 3px 0 var(--gold)}
.nav-icon{width:20px;text-align:center}
.sidebar-footer{margin-top:auto;border-top:1px solid rgba(255,255,255,.08);padding:12px;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ghost-btn{background:#151c27;border:1px solid #263143;color:#d6dde7;padding:9px;border-radius:9px}
.main{grid-column:2;min-width:0}
.topbar{height:78px;background:var(--panel);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:15}
.topbar h1{font-size:23px;margin:0}.topbar p{margin:3px 0 0;color:var(--muted);font-size:12px}
.top-actions{display:flex;align-items:center;gap:10px}.icon-btn{width:40px;height:40px;border:1px solid var(--line);background:var(--panel);border-radius:10px;position:relative;color:var(--text)}
.badge{position:absolute;right:-4px;top:-5px;background:var(--red);color:#fff;font-size:9px;padding:2px 5px;border-radius:20px}
.user-chip{display:flex;align-items:center;gap:10px;margin-left:8px}.avatar{width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,#d2aa53,#8b6723);display:grid;place-items:center;font-weight:900;color:#111}
.user-chip small{display:block;color:var(--muted)}
.mobile-menu{display:none}
.content{padding:26px}
.grid{display:grid;gap:16px}.kpi-grid{grid-template-columns:repeat(4,1fr)}.two-col{grid-template-columns:1.45fr 1fr}.three-col{grid-template-columns:repeat(3,1fr)}
.card{background:var(--panel);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:18px}
.kpi{display:flex;justify-content:space-between;align-items:flex-start}.kpi small{color:var(--muted);font-weight:700}.kpi h3{font-size:30px;margin:11px 0 4px}.trend{font-size:11px;color:var(--green)}.kpi-icon{width:42px;height:42px;border-radius:12px;background:rgba(201,162,77,.15);display:grid;place-items:center;font-size:20px}
.card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.card-head h3{margin:0;font-size:16px}.card-head p{margin:4px 0 0;color:var(--muted);font-size:12px}
.secondary-btn,.danger-btn,.success-btn{border:1px solid var(--line);background:var(--panel);color:var(--text);padding:9px 12px;border-radius:9px;font-weight:700;font-size:12px}
.success-btn{background:#e7f7f0;color:#167b54;border-color:#c6e9da}.danger-btn{background:#fff0f0;color:#b63333;border-color:#f2cece}
.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:12px}
table{width:100%;border-collapse:collapse;min-width:760px}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--line);font-size:12px}th{color:var(--muted);background:rgba(120,130,150,.05);font-size:10px;text-transform:uppercase;letter-spacing:.06em}
.status{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:800}
.status.green{background:#e7f7f0;color:#167b54}.status.red{background:#ffeaea;color:#bc3434}.status.amber{background:#fff6df;color:#9c6a00}.status.blue{background:#eaf0ff;color:#315bcc}.status.gray{background:#eef1f5;color:#687385}
.progress{height:8px;background:#eef1f4;border-radius:20px;overflow:hidden}.progress>span{display:block;height:100%;background:linear-gradient(90deg,#bb9139,#f0cf77)}
.chart{height:220px;display:flex;align-items:flex-end;gap:11px;padding:20px 8px 8px;border-left:1px solid var(--line);border-bottom:1px solid var(--line)}
.bar{flex:1;min-width:18px;background:linear-gradient(180deg,#ebcb76,#aa7c28);border-radius:6px 6px 0 0;position:relative}.bar span{position:absolute;bottom:-22px;width:100%;text-align:center;color:var(--muted);font-size:10px}
.activity{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.activity:last-child{border:0}.activity-dot{width:10px;height:10px;border-radius:50%;background:var(--gold);margin-top:5px}.activity p{margin:0;font-size:12px}.activity small{color:var(--muted)}
.toolbar{display:flex;gap:10px;justify-content:space-between;margin-bottom:14px}.toolbar .left,.toolbar .right{display:flex;gap:8px;flex-wrap:wrap}.search{padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:var(--panel);color:var(--text)}
.module-hero{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(120deg,#101725,#1d2838);color:#fff;border-radius:18px;padding:23px;margin-bottom:17px}.module-hero h2{margin:0 0 6px}.module-hero p{margin:0;color:#aeb9c8}.module-hero .hero-stat{font-size:30px;color:var(--gold2);font-weight:900}
.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.quick-card{border:1px solid var(--line);border-radius:14px;padding:16px;background:var(--panel)}.quick-card h4{margin:0 0 6px}.quick-card p{color:var(--muted);font-size:12px;margin:0 0 12px}
.modal{position:fixed;inset:0;background:rgba(0,0,0,.55);display:grid;place-items:center;z-index:100;padding:20px}.modal-card{width:min(620px,100%);max-height:90vh;overflow:auto;background:var(--panel);border-radius:17px;padding:20px}.modal-head{display:flex;justify-content:space-between;align-items:center}.modal-head button{background:none;border:0;font-size:24px;color:var(--text)}.modal form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.modal form label{font-size:11px;font-weight:800;color:var(--muted)}.field{display:flex;flex-direction:column;gap:6px}.field.full{grid-column:1/-1;margin:0}.modal textarea{min-height:95px}.toast{position:fixed;right:25px;bottom:25px;background:#101722;color:#fff;padding:12px 16px;border-radius:10px;opacity:0;transform:translateY(20px);transition:.25s;z-index:200}.toast.show{opacity:1;transform:none}
.ai-box{display:flex;gap:10px}.ai-box input{flex:1;padding:13px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--text)}.ai-answer{margin-top:15px;padding:17px;border-radius:12px;background:rgba(201,162,77,.10);border:1px solid rgba(201,162,77,.25);line-height:1.65}
.metric-line{display:grid;grid-template-columns:150px 1fr 55px;gap:10px;align-items:center;margin:12px 0;font-size:12px}
@media(max-width:1100px){.kpi-grid{grid-template-columns:repeat(2,1fr)}.quick-grid{grid-template-columns:repeat(2,1fr)}.two-col{grid-template-columns:1fr}}
@media(max-width:780px){
  .login-screen{grid-template-columns:1fr}.login-visual{display:none}.login-panel{padding:30px}
  .app-shell{display:block}.sidebar{transform:translateX(-100%);transition:.25s}.sidebar.open{transform:none}.main{grid-column:auto}.mobile-menu{display:block;background:none;border:0;font-size:22px;color:var(--text)}
  .topbar{padding:0 14px}.top-actions .user-chip div:last-child{display:none}.content{padding:15px}.kpi-grid,.three-col,.quick-grid{grid-template-columns:1fr}.module-hero{align-items:flex-start;gap:20px}.modal form{grid-template-columns:1fr}.field.full{grid-column:auto}
}


/* DRIVER APP */
.driver-shell .sidebar{background:linear-gradient(180deg,#111720,#070a0f)}
.driver-home{display:grid;gap:16px}
.driver-welcome{background:linear-gradient(125deg,#101722,#242e3d);color:#fff;border-radius:20px;padding:24px;display:flex;justify-content:space-between;align-items:center}
.driver-welcome h2{font-size:28px;margin:0 0 6px}.driver-welcome p{color:#b7c0cb;margin:0}
.driver-shift{font-size:13px;text-align:right}.driver-shift strong{display:block;font-size:24px;color:var(--gold2)}
.driver-action-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.driver-action{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:18px;text-align:left;color:var(--text);box-shadow:var(--shadow)}
.driver-action .big-icon{font-size:28px;display:block;margin-bottom:12px}.driver-action h4{margin:0 0 5px}.driver-action p{margin:0;color:var(--muted);font-size:12px}
.required-banner{border:1px solid #e4c56f;background:linear-gradient(90deg,rgba(201,162,77,.20),rgba(201,162,77,.06));padding:16px;border-radius:14px;display:flex;justify-content:space-between;align-items:center;gap:16px}
.required-banner strong{display:block;margin-bottom:4px}.required-banner p{margin:0;color:var(--muted);font-size:12px}
.notification-card{display:flex;gap:12px;padding:14px;border-bottom:1px solid var(--line)}.notification-card:last-child{border-bottom:0}
.notification-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:rgba(201,162,77,.15)}
.vehicle-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.vehicle-summary .mini{background:rgba(120,130,150,.06);border:1px solid var(--line);border-radius:12px;padding:14px}
.vehicle-summary small{display:block;color:var(--muted);margin-bottom:5px}
.inspection-stepper{display:flex;gap:8px;margin-bottom:18px;overflow:auto}
.step{white-space:nowrap;padding:8px 12px;border-radius:999px;background:#eef1f5;color:#6e7785;font-size:11px;font-weight:800}
.step.active{background:#171f2b;color:#fff}.step.done{background:#e7f7f0;color:#167b54}
.photo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.photo-slot{border:1px dashed #bcc4cf;border-radius:14px;padding:12px;text-align:center;min-height:155px;background:rgba(120,130,150,.035);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:9px}
.photo-slot.required-missing{border-color:#d94a4a;background:#fff5f5}
.photo-slot img{width:100%;height:92px;object-fit:cover;border-radius:9px}
.photo-slot input{display:none}.photo-slot label{font-size:11px;font-weight:800;color:#8a6b27;cursor:pointer}
.photo-name{font-size:10px;color:var(--muted)}
.checklist-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.check-item{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--line);border-radius:12px;padding:13px}
.check-item select{border:1px solid var(--line);border-radius:8px;padding:7px;background:var(--panel);color:var(--text)}
.damage-box{border:1px solid var(--line);border-radius:14px;padding:16px;margin-top:15px}
.signature-pad{border:1px dashed #aeb7c4;border-radius:12px;height:110px;display:grid;place-items:center;color:var(--muted);background:rgba(120,130,150,.03)}
.schedule-list{display:grid;gap:10px}.schedule-day{display:grid;grid-template-columns:100px 1fr 140px 90px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:13px}
.schedule-day.today{border-color:#c9a24d;background:rgba(201,162,77,.08)}
.route-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:18px}
.route-detail{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.route-detail .mini{border:1px solid var(--line);border-radius:12px;padding:13px}
.driver-nav-badge{margin-left:auto;background:#d94a4a;color:white;border-radius:20px;padding:1px 6px;font-size:9px}
.manager-photo-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.manager-photo-grid img{width:100%;height:76px;object-fit:cover;border-radius:8px;border:1px solid var(--line);cursor:pointer}
.image-viewer-card{max-width:900px}.image-viewer-card img{max-width:100%;max-height:75vh;display:block;margin:auto;border-radius:12px}
.inspection-record{border:1px solid var(--line);border-radius:14px;padding:16px;margin-bottom:12px}
.inspection-record-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:12px}
.locked-route{opacity:.55}
@media(max-width:1000px){.driver-action-grid,.photo-grid{grid-template-columns:repeat(2,1fr)}.vehicle-summary,.route-detail{grid-template-columns:repeat(2,1fr)}.manager-photo-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:650px){.driver-welcome{align-items:flex-start;flex-direction:column}.driver-shift{text-align:left}.driver-action-grid,.photo-grid,.checklist-grid,.vehicle-summary,.route-detail{grid-template-columns:1fr}.schedule-day{grid-template-columns:1fr 1fr;gap:7px}.manager-photo-grid{grid-template-columns:repeat(2,1fr)}}


/* FINAL READABILITY POLISH */
.nav-item{font-size:15px;min-height:43px;padding:11px 13px}
.nav-group-title{font-size:11px;font-weight:800;padding-top:18px}
.topbar h1{font-size:28px}
.topbar p{font-size:13px}
.kpi small{font-size:13px}
.kpi h3{font-size:38px}
.card-head h3{font-size:18px}
th{font-size:11px}
td{font-size:13px}
.quick-card h4{font-size:15px}
.quick-card p{font-size:13px}
.sidebar{width:285px}
.app-shell{grid-template-columns:285px 1fr}
.main{grid-column:2}

/* SMART SCHEDULE */
.schedule-tabs{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap}
.schedule-tab{border:1px solid var(--line);background:var(--panel);color:var(--text);padding:10px 14px;border-radius:10px;font-weight:800}
.schedule-tab.active{background:#171f2b;color:#fff;border-color:#171f2b}
.roster-toolbar{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.roster-row-actions{display:flex;gap:6px;flex-wrap:wrap}
.phone-link{color:#9a742b;font-weight:800;text-decoration:none}
.confirm-pill{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:900}
.confirmed{background:#e7f7f0;color:#167b54}
.waiting{background:#fff6df;color:#9c6a00}
.declined{background:#ffeaea;color:#bc3434}
.calendar-board{display:grid;grid-template-columns:170px repeat(7,minmax(150px,1fr));overflow:auto;border:1px solid var(--line);border-radius:14px}
.calendar-cell{min-height:94px;padding:10px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--panel)}
.calendar-head{font-weight:900;background:rgba(120,130,150,.06);min-height:auto}
.employee-cell{font-weight:800;position:sticky;left:0;z-index:2}
.shift-chip{padding:8px;border-radius:9px;color:#fff;font-size:11px;font-weight:800;margin-bottom:5px}
.shift-blue{background:#2d7194}.shift-green{background:#26815e}.shift-gold{background:#9a742b}.shift-purple{background:#66559c}.shift-red{background:#b44c4c}
.sms-preview{border:1px solid var(--line);border-radius:14px;padding:16px;background:rgba(120,130,150,.04);white-space:pre-line;line-height:1.6}
.text-btn{background:#eaf0ff;color:#315bcc;border:1px solid #ccd9ff;padding:8px 10px;border-radius:8px;font-weight:800;font-size:11px}
.publish-panel{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:16px;border:1px solid rgba(201,162,77,.35);background:rgba(201,162,77,.09);border-radius:14px;margin-bottom:16px}

/* ACKNOWLEDGMENT LOCK */
.app-lock-overlay{position:fixed;inset:0;background:rgba(6,9,14,.88);z-index:90;display:grid;place-items:center;padding:20px}
.lock-card{max-width:620px;width:100%;background:var(--panel);border-radius:20px;padding:28px;box-shadow:0 30px 80px rgba(0,0,0,.35)}
.lock-icon{width:62px;height:62px;border-radius:18px;background:#fff0e4;display:grid;place-items:center;font-size:30px;margin-bottom:16px}
.lock-card h2{font-size:28px;margin:0 0 8px}
.lock-card p{color:var(--muted);line-height:1.6}
.ack-item{border:1px solid var(--line);border-radius:14px;padding:15px;margin:12px 0}
.ack-item h4{margin:0 0 5px}
.ack-meta{display:flex;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:12px}
.ack-modal-card{max-width:700px}
.dark-text{color:#8a6b27}
.ack-content{border-left:4px solid var(--gold);padding:14px 16px;background:rgba(201,162,77,.08);border-radius:0 12px 12px 0;line-height:1.65}
.signature-input{width:100%;padding:13px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--text);font-size:18px;font-family:cursive}
.locked-nav .nav-item:not([data-page="driveracknowledgments"]){opacity:.35;pointer-events:none}
@media(max-width:780px){
  .sidebar{width:285px}.main{grid-column:auto}
  .topbar h1{font-size:22px}
  .calendar-board{grid-template-columns:130px repeat(7,145px)}
}

.schedule-main-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.unassigned-panel{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}
.unassigned-row{display:grid;grid-template-columns:1.1fr 1fr 1fr 1fr 1.4fr auto;gap:12px;align-items:center;border:1px solid #e8cf8a;background:rgba(201,162,77,.08);border-radius:12px;padding:13px;margin-bottom:10px}
.unassigned-row small{display:block;color:var(--muted);font-size:11px;margin-bottom:3px}
@media(max-width:1000px){.unassigned-row{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.publish-panel{align-items:flex-start;flex-direction:column}.schedule-main-actions{width:100%}.schedule-main-actions button{flex:1}.unassigned-row{grid-template-columns:1fr}}

.profile-photo-card{text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}
.profile-photo-wrap{width:170px;height:170px;border-radius:50%;overflow:hidden;border:5px solid rgba(201,162,77,.28);box-shadow:0 15px 35px rgba(0,0,0,.12);margin-bottom:14px}
.profile-photo-wrap img{width:100%;height:100%;object-fit:cover}
.profile-placeholder{width:100%;height:100%;display:grid;place-items:center;background:linear-gradient(135deg,#d5ad58,#8f6824);font-size:48px;font-weight:900;color:#111}
.upload-profile-btn{display:inline-block;margin:8px 0 10px;cursor:pointer}
.upload-profile-btn input{display:none}


/* RESTORED COLORFUL SCHEDULE — SIGNED / UNSIGNED ONLY */
.schedule-legend{
  display:flex;
  gap:24px;
  flex-wrap:wrap;
  align-items:center;
  padding:12px 4px 16px;
  color:var(--text);
  font-size:12px;
  font-weight:800;
}
.schedule-legend span{display:flex;align-items:center;gap:7px}
.legend-dot{width:10px;height:10px;border-radius:50%;display:inline-block}
.confirmed-dot{background:#28a765}
.signed-dot{background:#2f6de0}
.unsigned-dot{background:#ef7f22}
.waiting-dot{background:#e2a327}
.declined-dot{background:#d84040}
.off-dot{background:#c7cbd1}
.shift-ack{
  display:inline-flex;
  align-items:center;
  margin-top:6px;
  padding:3px 6px;
  border-radius:999px;
  font-size:9px;
  font-weight:900;
  background:rgba(255,255,255,.92);
}
.shift-ack.signed{color:#2368d8}
.shift-ack.unsigned{color:#dc6f16}


/* OWNER EMPLOYEE PROFILE */
.employee-name-link{display:flex;align-items:center;gap:10px;border:0;background:none;color:var(--text);padding:0;cursor:pointer;text-align:left}
.employee-name-link:hover strong{text-decoration:underline}
.employee-list-avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#d2aa53,#8b6723);color:#111;font-weight:900;overflow:hidden;flex:0 0 36px}
.employee-list-avatar img{width:100%;height:100%;object-fit:cover}
.profile-back-row{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:16px}
.employee-profile-header{background:linear-gradient(125deg,#111823,#263244);color:#fff;border-radius:20px;padding:24px;display:grid;grid-template-columns:auto 1fr 220px;gap:22px;align-items:center;margin-bottom:16px}
.employee-profile-photo{width:145px;height:145px;border-radius:50%;position:relative;border:5px solid rgba(220,181,95,.55);overflow:visible}
.employee-profile-photo>img,.employee-profile-placeholder{width:100%;height:100%;border-radius:50%;object-fit:cover}
.employee-profile-placeholder{display:grid;place-items:center;background:linear-gradient(135deg,#d9b45f,#8e6826);font-size:42px;font-weight:900;color:#111}
.photo-edit-button{position:absolute;right:0;bottom:5px;width:39px;height:39px;border-radius:50%;background:#fff;color:#111;display:grid;place-items:center;box-shadow:0 6px 18px rgba(0,0,0,.25);cursor:pointer}
.photo-edit-button input{display:none}
.employee-profile-title h2{font-size:32px;margin:7px 0 5px}.employee-profile-title p{margin:0 0 12px;color:#bbc5d2}
.employee-profile-badges{display:flex;gap:8px;flex-wrap:wrap}
.profile-completion small{display:block;color:#aeb9c8;margin-bottom:7px}.profile-completion strong{font-size:30px;color:var(--gold2)}.profile-completion .progress{margin-top:10px;background:rgba(255,255,255,.15)}
.profile-tabs{display:flex;gap:8px;overflow:auto;padding:4px 0 14px}
.profile-tab{white-space:nowrap;padding:10px 14px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--text);font-weight:800}
.profile-tab.active{background:#171f2b;color:#fff;border-color:#171f2b}
.profile-section{display:none}.profile-section.active{display:block}
.profile-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:11px}
.profile-detail{border:1px solid var(--line);border-radius:12px;padding:13px;background:rgba(120,130,150,.035)}
.profile-detail small{display:block;color:var(--muted);font-size:11px;margin-bottom:5px}
.profile-action-btn{width:100%;text-align:left;padding:12px;margin-bottom:9px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--text);font-weight:800}
.profile-action-btn:hover{border-color:#c9a24d;background:rgba(201,162,77,.08)}
@media(max-width:900px){.employee-profile-header{grid-template-columns:auto 1fr}.profile-completion{grid-column:1/-1}.profile-detail-grid{grid-template-columns:1fr}}
@media(max-width:600px){.employee-profile-header{grid-template-columns:1fr;text-align:center}.employee-profile-photo{margin:auto}.employee-profile-badges{justify-content:center}.profile-back-row{align-items:flex-start;flex-direction:column}}


/* SUNDAY-FIRST + EMPLOYEE PROFILE CLICK FIX */
.employee-name-link,
table .secondary-btn{
  position:relative;
  z-index:2;
  pointer-events:auto;
}
.employee-name-link{
  min-width:170px;
}


/* ASSOCIATE TIME CLOCK — NO OTHER DESIGN CHANGES */
.timeclock-status{display:flex;align-items:center;gap:15px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.timeclock-status h2{margin:4px 0}.timeclock-status p{margin:0;color:var(--muted)}
.timeclock-icon{width:58px;height:58px;border-radius:16px;background:rgba(201,162,77,.16);display:grid;place-items:center;font-size:29px}
.timeclock-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:18px}
.clock-action{border:1px solid var(--line);border-radius:14px;padding:18px;background:var(--panel);color:var(--text);display:flex;flex-direction:column;align-items:flex-start;gap:6px;text-align:left}
.clock-action span{font-size:22px}.clock-action strong{font-size:15px}.clock-action small{color:var(--muted)}
.clock-action.clock-in:not(.disabled){border-color:#9fd7bf;background:#eefaf5}
.clock-action.break-start:not(.disabled){border-color:#e6cd87;background:#fff9e9}
.clock-action.break-end:not(.disabled){border-color:#a9c1ef;background:#f1f5ff}
.clock-action.clock-out:not(.disabled){border-color:#efb2b2;background:#fff2f2}
.clock-action.disabled{opacity:.42;cursor:not-allowed}
.work-location-notice{margin-top:16px;border:1px solid rgba(201,162,77,.35);background:rgba(201,162,77,.08);border-radius:12px;padding:14px}
.work-location-notice p{margin:5px 0 0;color:var(--muted);font-size:12px;line-height:1.5}
.time-record-list{border:1px solid var(--line);border-radius:12px;overflow:hidden}
.time-record-row{display:flex;justify-content:space-between;padding:13px;border-bottom:1px solid var(--line)}
.time-record-row:last-child{border-bottom:0}
.driver-action-grid{grid-template-columns:repeat(5,1fr)}
@media(max-width:1200px){.driver-action-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.timeclock-actions,.driver-action-grid{grid-template-columns:1fr}}


/* ASSOCIATE HOME + PERMANENT BOTTOM TIME CLOCK FIX */
.driver-home{padding-bottom:110px}
.associate-home-status-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}
.associate-home-status{background:var(--panel);border:1px solid var(--line);border-radius:15px;padding:16px;box-shadow:var(--shadow)}
.associate-home-status small{display:block;color:var(--muted);font-size:11px;font-weight:800;margin-bottom:7px}
.associate-home-status strong{display:block;font-size:22px;margin-bottom:4px}
.associate-home-status span{font-size:12px;color:var(--muted)}
.associate-main-actions{grid-template-columns:repeat(4,1fr)}
.associate-clock-bar{
  position:fixed;
  left:285px;
  right:0;
  bottom:0;
  min-height:78px;
  z-index:80;
  background:rgba(13,18,27,.97);
  border-top:1px solid rgba(255,255,255,.12);
  box-shadow:0 -12px 30px rgba(0,0,0,.24);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:12px 24px;
  color:#fff;
  backdrop-filter:blur(14px);
}
.associate-clock-summary{display:flex;align-items:center;gap:11px;min-width:150px}
.associate-clock-summary small{display:block;color:#9fa9b7;font-size:10px}
.associate-clock-summary strong{font-size:15px}
.clock-live-dot{width:12px;height:12px;border-radius:50%;background:#4bb77d;box-shadow:0 0 0 5px rgba(75,183,125,.15)}
.associate-clock-buttons{display:grid;grid-template-columns:repeat(4,minmax(110px,1fr));gap:9px;flex:1;max-width:700px}
.associate-clock-buttons button{
  border:1px solid rgba(255,255,255,.15);
  background:#1e2938;
  color:#fff;
  border-radius:10px;
  padding:11px 13px;
  font-weight:800;
}
.associate-clock-buttons button:not(:disabled):hover{background:#c9a24d;color:#111}
.associate-clock-buttons button:disabled{opacity:.35;cursor:not-allowed}
.clock-details-btn{border:1px solid #c9a24d;background:transparent;color:#f2d27e;padding:10px 13px;border-radius:10px;font-weight:800}
body.dark .associate-clock-bar{background:rgba(7,10,15,.98)}
@media(max-width:1100px){
  .associate-home-status-grid,.associate-main-actions{grid-template-columns:repeat(2,1fr)}
  .associate-clock-bar{left:285px;flex-wrap:wrap}
  .associate-clock-buttons{order:3;width:100%;max-width:none}
}
@media(max-width:780px){
  .associate-clock-bar{left:0;padding:10px 12px}
  .associate-clock-summary{min-width:0}
  .clock-details-btn{font-size:11px}
  .associate-clock-buttons{grid-template-columns:repeat(2,1fr)}
  .driver-home{padding-bottom:180px}
}
@media(max-width:560px){
  .associate-home-status-grid,.associate-main-actions{grid-template-columns:1fr}
}


/* COMPANY ADMINISTRATION + ROLE ACCESS */
.company-setup-modal{max-width:760px}
.company-setup-modal form{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.company-brand-card{text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}
.company-logo-upload{width:170px;height:170px;border-radius:24px;border:4px solid rgba(201,162,77,.28);overflow:hidden;margin-bottom:14px}
.company-logo-upload img{width:100%;height:100%;object-fit:contain;background:#fff}
.company-logo-placeholder{width:100%;height:100%;display:grid;place-items:center;background:linear-gradient(135deg,#d7b25e,#8b6522);font-size:40px;font-weight:900;color:#111}
.upload-company-logo{display:inline-block;cursor:pointer}.upload-company-logo input{display:none}
.subscription-card{position:relative}.subscription-card.selected-plan{border-color:#c9a24d;box-shadow:0 0 0 2px rgba(201,162,77,.15)}
@media(max-width:700px){.company-setup-modal form{grid-template-columns:1fr}}


/* PALUX CHAT — ADDITIVE ONLY */
.chat-shell{display:grid;grid-template-columns:300px 1fr;background:var(--panel);border:1px solid var(--line);border-radius:17px;overflow:hidden;min-height:650px;box-shadow:var(--shadow)}
.chat-sidebar{border-right:1px solid var(--line);background:rgba(120,130,150,.035);overflow:auto;max-height:760px}
.chat-sidebar-head{display:flex;justify-content:space-between;align-items:center;padding:17px 16px 10px}.chat-sidebar-head h3{margin:0;font-size:15px}.chat-sidebar-head small{color:var(--muted)}
.private-head{border-top:1px solid var(--line);margin-top:10px}.chat-add-btn{width:34px;height:34px;border:1px solid var(--line);border-radius:9px;background:var(--panel);color:var(--text);font-size:20px}
.chat-list{padding:0 9px 10px}.chat-list-item{width:100%;display:flex;gap:11px;align-items:center;text-align:left;border:0;background:transparent;color:var(--text);padding:11px;border-radius:11px}.chat-list-item:hover,.chat-list-item.active{background:rgba(201,162,77,.13)}
.chat-list-item span:last-child{min-width:0}.chat-list-item strong{display:block;font-size:13px}.chat-list-item small{display:block;color:var(--muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:205px}
.chat-channel-icon,.chat-person-avatar{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;flex:0 0 38px;background:linear-gradient(135deg,#d2aa53,#8b6723);color:#111;font-weight:900;overflow:hidden}.chat-person-avatar{border-radius:50%}.chat-person-avatar img{width:100%;height:100%;object-fit:cover}
.chat-main{display:grid;grid-template-rows:auto 1fr auto;min-width:0}.chat-header{display:flex;justify-content:space-between;align-items:center;padding:17px 20px;border-bottom:1px solid var(--line)}.chat-header h3{margin:0}.chat-header p{margin:3px 0 0;color:var(--muted);font-size:11px}
.chat-messages{padding:21px;overflow:auto;max-height:560px;min-height:420px;background:linear-gradient(180deg,rgba(120,130,150,.025),transparent);overscroll-behavior:contain;overflow-anchor:none;scroll-behavior:auto}.chat-message,.chat-composer{overflow-anchor:none}
.chat-message{display:flex;gap:10px;margin-bottom:17px;max-width:78%}.chat-message.mine{margin-left:auto;flex-direction:row-reverse}.chat-message-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#d9dee6;color:#344054;font-size:10px;font-weight:900;flex:0 0 34px}
.chat-bubble{background:var(--panel);border:1px solid var(--line);border-radius:4px 14px 14px 14px;padding:11px 13px;box-shadow:0 5px 14px rgba(10,20,40,.05)}.chat-message.mine .chat-bubble{background:rgba(201,162,77,.15);border-color:rgba(201,162,77,.3);border-radius:14px 4px 14px 14px}.chat-meta{display:flex;gap:9px;align-items:center}.chat-meta strong{font-size:12px}.chat-meta span{font-size:9px;color:var(--muted)}.chat-bubble p{margin:6px 0 0;line-height:1.5;font-size:13px}
.chat-composer{padding:15px 18px;border-top:1px solid var(--line)}.chat-composer textarea{width:100%;min-height:78px;resize:vertical;padding:12px;border:1px solid var(--line);border-radius:11px;background:var(--panel);color:var(--text)}.chat-composer-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:9px}.chat-composer-actions span{font-size:10px;color:var(--muted)}
.chat-empty{text-align:center;color:var(--muted);padding:100px 20px}.chat-empty span{font-size:36px}.chat-empty h3{color:var(--text)}
.chat-role-checks{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;border:1px solid var(--line);padding:12px;border-radius:10px}.chat-role-checks label{font-size:12px}
@media(max-width:900px){.chat-shell{grid-template-columns:240px 1fr}.chat-list-item small{max-width:145px}}
@media(max-width:700px){.chat-shell{grid-template-columns:1fr}.chat-sidebar{max-height:280px;border-right:0;border-bottom:1px solid var(--line)}.chat-message{max-width:92%}.chat-composer-actions{align-items:stretch;flex-direction:column}.chat-composer-actions button{width:100%}.chat-role-checks{grid-template-columns:1fr}}


/* PALUX ENHANCED CHAT COMPOSER */
.enhanced-chat-composer{position:relative;padding:12px 16px 14px;background:var(--panel)}
.chat-input-row{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:end;border:1px solid var(--line);border-radius:16px;padding:8px;background:rgba(120,130,150,.035)}
.chat-tool-row{display:flex;gap:5px;align-items:center;padding-bottom:2px}
.chat-tool-btn{width:39px;height:39px;border:0;border-radius:10px;background:transparent;color:var(--text);display:grid;place-items:center;font-size:19px;cursor:pointer}
.chat-tool-btn:hover{background:rgba(201,162,77,.14)}
.chat-tool-btn input{display:none}
.chat-tool-btn.recording{background:#ffe8e8;color:#cf3030;animation:paluxPulse 1s infinite}
@keyframes paluxPulse{50%{transform:scale(1.08);box-shadow:0 0 0 7px rgba(207,48,48,.10)}}
.enhanced-chat-composer textarea{min-height:46px!important;max-height:130px;resize:none;border:0!important;background:transparent!important;padding:11px 6px!important;outline:none}
.chat-send-btn{width:45px;height:45px;border:0;border-radius:12px;background:linear-gradient(135deg,#b88c32,#e5c46f);color:#111;font-size:20px;font-weight:900}
.chat-send-btn:hover{transform:translateY(-1px)}
.chat-composer-footer{display:flex;justify-content:space-between;gap:10px;padding:7px 4px 0;color:var(--muted);font-size:10px}
.emoji-picker{position:absolute;left:16px;bottom:90px;width:310px;display:grid;grid-template-columns:repeat(7,1fr);gap:5px;padding:11px;background:var(--panel);border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 45px rgba(0,0,0,.16);z-index:20}
.emoji-picker button{border:0;background:transparent;border-radius:8px;padding:7px;font-size:20px}
.emoji-picker button:hover{background:rgba(201,162,77,.14)}
.chat-attachment-preview{padding:0 0 9px}
.chat-preview-card{display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:rgba(120,130,150,.045);padding:9px;border-radius:12px;max-width:430px}
.chat-preview-card img{width:55px;height:55px;object-fit:cover;border-radius:9px}
.chat-preview-card audio{width:240px;height:36px}
.chat-preview-card div{flex:1;min-width:0}.chat-preview-card strong,.chat-preview-card small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-preview-card small{color:var(--muted)}
.chat-preview-card button{border:0;background:transparent;color:var(--text);font-size:22px}
.preview-file-icon{font-size:30px}
.chat-media{margin-top:9px}.chat-media img{display:block;max-width:330px;max-height:260px;object-fit:cover;border-radius:11px;cursor:pointer}.chat-media small{display:block;margin-top:5px;color:var(--muted)}
.chat-audio{margin-top:9px;padding:9px;border:1px solid var(--line);border-radius:11px;background:rgba(120,130,150,.04)}.chat-audio span{display:block;font-size:11px;font-weight:800;margin-bottom:6px}.chat-audio audio{width:280px;max-width:100%}
.chat-file{display:flex;align-items:center;gap:9px;margin-top:9px;padding:10px;border:1px solid var(--line);border-radius:11px;color:var(--text);text-decoration:none}.chat-file>span{font-size:25px}.chat-file strong,.chat-file small{display:block}.chat-file small{color:var(--muted)}
.chat-message-tools{display:flex;align-items:center;gap:4px;margin-top:8px}.chat-message-tools button{border:0;background:transparent;border-radius:8px;padding:3px 5px}.chat-message-tools button:hover{background:rgba(120,130,150,.10)}.chat-message-tools span{font-size:10px;background:rgba(120,130,150,.08);border-radius:999px;padding:3px 6px}
@media(max-width:700px){
  .chat-input-row{grid-template-columns:1fr auto}.chat-tool-row{grid-column:1/-1}.emoji-picker{left:10px;right:10px;width:auto;grid-template-columns:repeat(7,1fr)}
  .chat-composer-footer{flex-direction:column}.chat-media img{max-width:100%}
}


/* CHAT NOTIFICATIONS ONLY — ENHANCED CHAT UI UNCHANGED */
.notification-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}
.chat-notification{border-left:4px solid #c9a24d;background:rgba(201,162,77,.055)}
#notificationBadge{min-width:17px;text-align:center}
@media(max-width:650px){
  .notification-card{align-items:flex-start}
  .notification-actions{width:100%;margin-top:7px}
}


/* MESSAGE ACTIONS + TECHNICAL SUPPORT */
.chat-message-tools button{font-size:10px;font-weight:800;color:var(--muted)}
.chat-message-tools button:hover{color:var(--text)}
.edited-label{font-size:9px;color:var(--muted);margin-left:3px}
.support-primary-card{text-align:center}
.support-logo{width:76px;height:76px;border-radius:22px;display:grid;place-items:center;margin:0 auto 14px;background:linear-gradient(135deg,#d8b15a,#8d6724);font-size:38px;font-weight:900;color:#111}
.support-primary-card h2{margin:8px 0 4px}.support-primary-card>p{color:var(--muted);margin-top:0}
.support-contact-list{display:grid;gap:10px;margin:20px 0;text-align:left}
.support-contact-list a{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:12px;padding:13px;color:var(--text);text-decoration:none}
.support-contact-list a:hover{border-color:#c9a24d;background:rgba(201,162,77,.07)}
.support-contact-list a>span{font-size:24px}.support-contact-list small,.support-contact-list strong{display:block}.support-contact-list small{color:var(--muted);margin-bottom:3px}
.support-actions{display:flex;gap:9px;justify-content:center;flex-wrap:wrap}
.support-actions a{text-decoration:none}


/* ASSET HISTORY */
.asset-assignment-card{display:flex;align-items:center;gap:13px;border:1px solid var(--line);border-radius:14px;padding:15px;background:rgba(120,130,150,.04)}
.asset-assignment-card p{margin:4px 0;color:var(--muted)}
.asset-history-entry{display:grid;grid-template-columns:18px 1fr;gap:12px;position:relative;padding-bottom:20px}
.asset-history-entry:not(:last-child)::before{content:"";position:absolute;left:7px;top:16px;bottom:0;width:2px;background:var(--line)}
.asset-history-dot{width:16px;height:16px;border-radius:50%;background:#c9a24d;box-shadow:0 0 0 5px rgba(201,162,77,.12);margin-top:3px;z-index:1}
.asset-history-body{border:1px solid var(--line);border-radius:13px;padding:14px;background:var(--panel)}
.asset-history-head{display:flex;justify-content:space-between;gap:12px}.asset-history-head span{color:var(--muted);font-size:12px}
.asset-history-body p{margin:7px 0;color:var(--text)}.asset-history-body small{color:var(--muted)}


/* FLEET VEHICLE PROFILE */
.vehicle-profile-hero{background:linear-gradient(125deg,#111823,#263244);color:#fff;border-radius:20px;padding:24px;display:grid;grid-template-columns:auto 1fr 220px;gap:22px;align-items:center;margin-bottom:16px}
.vehicle-profile-icon{width:120px;height:120px;border-radius:24px;display:grid;place-items:center;background:linear-gradient(135deg,#d7b25e,#8c6724);font-size:58px}
.vehicle-profile-hero h2{font-size:32px;margin:7px 0 5px}.vehicle-profile-hero p{color:#bbc5d2;margin:0 0 12px}
.vehicle-profile-hero .profile-completion span{display:block;color:#aeb9c8;font-size:11px}
.vehicle-section{display:none}.vehicle-section.active{display:block}
@media(max-width:850px){.vehicle-profile-hero{grid-template-columns:auto 1fr}.vehicle-profile-hero .profile-completion{grid-column:1/-1}}
@media(max-width:600px){.vehicle-profile-hero{grid-template-columns:1fr;text-align:center}.vehicle-profile-icon{margin:auto}}


/* TRAINING CENTER MANAGEMENT */
.training-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.training-card-head h4{margin:0 0 4px}.training-card-head p{margin:0;color:var(--muted);font-size:12px}
.training-meta{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 13px}
.training-meta span{font-size:10px;font-weight:800;color:var(--muted);border:1px solid var(--line);padding:4px 7px;border-radius:999px}
.training-profile-hero{background:linear-gradient(125deg,#111823,#263244);color:#fff;border-radius:20px;padding:24px;display:grid;grid-template-columns:auto 1fr 220px;gap:22px;align-items:center;margin-bottom:16px}
.training-profile-icon{width:110px;height:110px;border-radius:24px;display:grid;place-items:center;background:linear-gradient(135deg,#d7b25e,#8c6724);font-size:48px;color:#111}
.training-profile-hero h2{font-size:30px;margin:7px 0 5px}.training-profile-hero p{color:#bbc5d2;margin:0 0 12px}
.training-section{display:none}.training-section.active{display:block}
@media(max-width:850px){.training-profile-hero{grid-template-columns:auto 1fr}.training-profile-hero .profile-completion{grid-column:1/-1}}
@media(max-width:600px){.training-profile-hero{grid-template-columns:1fr;text-align:center}.training-profile-icon{margin:auto}}


/* EMPLOYEE DOCUMENT UPLOAD */
.employee-document-upload{display:inline-flex;align-items:center;cursor:pointer}
.employee-document-upload input{display:none}
.empty-documents{text-align:center;padding:42px 20px;color:var(--muted)}
.empty-documents span{display:block;font-size:42px;margin-bottom:10px}
.empty-documents h3{color:var(--text);margin:0 0 6px}
.danger-text{color:#c94b4b!important}

/* COMPANY SETTINGS */
.settings-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:14px}
.settings-list-row,.settings-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding:14px 0}
.settings-list-row:last-child,.settings-toggle-row:last-child{border-bottom:0}
.settings-list-row p,.settings-toggle-row p{margin:4px 0 0;color:var(--muted)}
.settings-toggle-row input{width:20px;height:20px}
.permission-matrix{overflow:auto}.permission-matrix table{min-width:1000px;width:100%;border-collapse:collapse}
.permission-matrix th,.permission-matrix td{padding:10px;border-bottom:1px solid var(--line);text-align:center}
.permission-matrix th:first-child,.permission-matrix td:first-child{text-align:left;position:sticky;left:0;background:var(--panel)}
@media(max-width:700px){.settings-form-grid{grid-template-columns:1fr}.settings-list-row{align-items:flex-start;flex-direction:column}}


/* PAYROLL & DIRECT DEPOSIT */
.payroll-status-card{position:relative;overflow:hidden}
.payroll-period-total{padding:16px;border-radius:14px;background:linear-gradient(135deg,rgba(201,162,77,.18),rgba(201,162,77,.06));margin-bottom:14px}
.payroll-period-total small{display:block;color:var(--muted);margin-bottom:6px}.payroll-period-total strong{font-size:26px}
.payroll-total-row{background:rgba(201,162,77,.08);font-size:15px}
.provider-connect-box{display:flex;align-items:center;gap:14px;border:1px solid var(--line);border-radius:14px;padding:15px;background:rgba(120,130,150,.04)}
.provider-icon{width:54px;height:54px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(135deg,#d7b25e,#8d6724);font-size:27px;font-weight:900;color:#111}
.provider-connect-box p{margin:4px 0 0;color:var(--muted)}


/* COMPANY-WIDE PAYROLL DIRECTORY */
.payroll-toolbar{display:flex;justify-content:space-between;gap:14px;align-items:center;flex-wrap:wrap}
.payroll-filter-group{display:flex;gap:9px;flex-wrap:wrap;flex:1}
.payroll-filter-group input,.payroll-filter-group select{min-width:160px}
.payroll-directory-wrap{overflow:auto}
.payroll-employee-cell{display:flex;align-items:center;gap:10px;min-width:190px}
.payroll-employee-cell small{display:block;color:var(--muted);margin-top:3px}
.employee-list-avatar.large{width:78px;height:78px;font-size:24px}
.payroll-employee-hero{background:linear-gradient(125deg,#111823,#263244);color:#fff;border-radius:20px;padding:24px;display:grid;grid-template-columns:auto 1fr 230px;gap:22px;align-items:center;margin-bottom:16px}
.payroll-employee-hero h2{font-size:30px;margin:7px 0 5px}.payroll-employee-hero p{color:#bbc5d2;margin:0 0 12px}
.payroll-employee-hero .profile-completion span{display:block;color:#aeb9c8;font-size:11px}
.payroll-section{display:none}.payroll-section.active{display:block}
@media(max-width:850px){.payroll-employee-hero{grid-template-columns:auto 1fr}.payroll-employee-hero .profile-completion{grid-column:1/-1}}
@media(max-width:700px){.payroll-toolbar{align-items:stretch}.payroll-filter-group{flex-direction:column}.payroll-filter-group input,.payroll-filter-group select{width:100%}.payroll-employee-hero{grid-template-columns:1fr;text-align:center}.payroll-employee-hero .employee-list-avatar{margin:auto}}

/* PAYROLL PROVIDER WIZARD */
.provider-wizard{display:grid;gap:14px}.provider-wizard-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}
.provider-wizard-steps span{font-size:10px;font-weight:800;text-align:center;border:1px solid var(--line);border-radius:999px;padding:7px;color:var(--muted)}
.provider-wizard-steps span.active{background:rgba(201,162,77,.15);border-color:#c9a24d;color:var(--text)}
.provider-wizard-intro{margin:0;color:var(--muted);line-height:1.55}.provider-choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.provider-choice-card{position:relative;display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:14px;padding:12px;cursor:pointer;background:var(--panel)}
.provider-choice-card:hover{border-color:#c9a24d;background:rgba(201,162,77,.06)}.provider-choice-card input{position:absolute;right:9px;top:9px}
.provider-choice-card:has(input:checked){border-color:#c9a24d;box-shadow:0 0 0 2px rgba(201,162,77,.12)}
.provider-choice-logo{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#d7b25e,#8d6724);font-weight:900;color:#111}
.provider-choice-card small{display:block;color:var(--muted);margin-top:3px}.provider-log-list{display:grid;gap:10px;max-height:420px;overflow:auto}
.provider-log-entry{border:1px solid var(--line);border-radius:12px;padding:12px}.provider-log-entry p{margin:5px 0;color:var(--text)}.provider-log-entry small{color:var(--muted)}
@media(max-width:700px){.provider-choice-grid{grid-template-columns:1fr}.provider-wizard-steps{grid-template-columns:1fr 1fr}}


/* MY PAY FOR ALL PAID ROLES */
.private-pay-badge{display:inline-flex;align-items:center;gap:6px;font-size:10px;font-weight:800;color:var(--muted)}

/* PALUX AI KNOWLEDGE */
.palux-ai-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:16px}.palux-ai-sidebar{align-self:start}.full-btn{width:100%}.palux-ai-library-item{display:flex;gap:10px;align-items:center;border-bottom:1px solid var(--line);padding:11px 0}.palux-ai-library-item small{display:block;color:var(--muted);margin-top:3px}.palux-ai-doc-icon{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:rgba(201,162,77,.14);color:#9a6d13;font-weight:900}.palux-ai-chat-card{padding:0;overflow:hidden;min-height:720px;display:flex;flex-direction:column}.palux-ai-chat-header{display:flex;align-items:center;gap:12px;padding:16px 18px;border-bottom:1px solid var(--line)}.palux-ai-avatar{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,#d9b75c,#8a641e);color:#111;font-size:22px;font-weight:900}.palux-ai-chat-header h3{margin:0}.palux-ai-chat-header p{margin:3px 0 0;color:var(--muted);font-size:12px}.palux-ai-online{display:inline-block;width:7px;height:7px;border-radius:50%;background:#4fb476;margin-right:5px}.palux-ai-header-badge{margin-left:auto;border:1px solid var(--line);border-radius:999px;padding:7px 10px;font-size:10px;font-weight:800;color:var(--muted)}.palux-ai-suggestions{display:flex;gap:8px;overflow:auto;padding:12px 16px;border-bottom:1px solid var(--line)}.palux-ai-suggestions button{white-space:nowrap;border:1px solid var(--line);background:var(--panel);border-radius:999px;padding:8px 11px;font-size:11px;color:var(--text)}.palux-ai-messages{flex:1;overflow:auto;padding:20px}.palux-ai-message{display:flex;gap:10px;margin-bottom:18px;max-width:86%}.palux-ai-message.user{margin-left:auto;flex-direction:row-reverse}.palux-ai-message-avatar{width:34px;height:34px;flex:0 0 34px;border-radius:11px;display:grid;place-items:center;background:#e8ebef;font-size:10px;font-weight:900;color:#38414d}.palux-ai-message.assistant .palux-ai-message-avatar{background:linear-gradient(135deg,#d9b75c,#8a641e);color:#111;font-size:16px}.palux-ai-bubble{border:1px solid var(--line);border-radius:16px;padding:13px 14px;background:var(--panel);min-width:220px}.palux-ai-message.user .palux-ai-bubble{background:linear-gradient(135deg,#1c2633,#2c394b);color:#fff;border-color:transparent}.palux-ai-message-meta{display:flex;gap:10px;align-items:center;font-size:11px;margin-bottom:7px}.palux-ai-message-meta span{color:var(--muted);font-size:10px}.palux-ai-bubble h4{margin:3px 0 9px}.palux-ai-answer p{margin:5px 0;line-height:1.55}.palux-ai-source{display:grid;grid-template-columns:auto 1fr auto;gap:7px;align-items:center;border-top:1px solid var(--line);margin-top:12px;padding-top:10px;font-size:10px}.palux-ai-source span{border-radius:999px;background:rgba(201,162,77,.13);color:#9a6d13;padding:5px 7px;font-weight:900}.palux-ai-source small{color:var(--muted)}.palux-ai-message-actions{display:flex;gap:10px;margin-top:10px}.palux-ai-message-actions button{border:0;background:transparent;color:var(--muted);padding:0;font-size:10px}.palux-ai-composer{border-top:1px solid var(--line);padding:14px 16px}.palux-ai-composer textarea{width:100%;resize:none;border:1px solid var(--line);border-radius:13px;padding:12px;font:inherit;background:var(--panel);color:var(--text)}.palux-ai-composer-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:9px}.palux-ai-composer-actions span{font-size:10px;color:var(--muted)}@media(max-width:900px){.palux-ai-layout{grid-template-columns:1fr}.palux-ai-sidebar{order:2}}@media(max-width:650px){.palux-ai-message{max-width:96%}.palux-ai-composer-actions{flex-direction:column;align-items:stretch}}

/* OPERATIONS WORKFLOW FIXES */
.schedule-day-cell{position:relative;min-height:80px}
.schedule-add-btn{position:absolute;right:5px;top:5px;width:24px;height:24px;border-radius:50%;border:1px solid var(--line);background:var(--panel);color:var(--text);font-weight:900;cursor:pointer;opacity:.72}
.schedule-day-cell:hover .schedule-add-btn{opacity:1;border-color:#c9a24d;background:rgba(201,162,77,.13)}
.applicant-row{display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--line);padding:11px 0;cursor:pointer}
.applicant-row>div:nth-child(2){flex:1}.applicant-row p{margin:0}.applicant-row small{color:var(--muted)}
.empty-stage{padding:18px 0;text-align:center;color:var(--muted)}

/* SCHEDULE NAVIGATION & DISPATCH PLANNING */
.dispatch-planning-card{margin-top:16px}
.planning-kpis{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:14px}
@media(max-width:800px){.planning-kpis{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.planning-kpis{grid-template-columns:1fr}}

/* HIRING PIPELINE STAGES */
@media(min-width:1180px){
  .hiring-pipeline-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

/* WEEKLY SCORECARD */
.scorecard-upload-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;background:linear-gradient(120deg,rgba(201,162,77,.12),var(--panel))}
.scorecard-upload-banner h3{margin:5px 0}.scorecard-upload-banner p{margin:0;color:var(--muted)}
.scorecard-progress-chart{height:240px;display:flex;align-items:flex-end;gap:18px;padding:20px 10px 0;border-bottom:1px solid var(--line)}
.scorecard-progress-column{height:100%;flex:1;min-width:46px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:7px}
.scorecard-progress-value{font-size:11px;font-weight:800}.scorecard-progress-bar{width:70%;max-width:58px;border-radius:8px 8px 0 0;background:#c9a24d;min-height:12px}
.scorecard-progress-bar.fantastic{background:linear-gradient(180deg,#56b87b,#2f8253)}.scorecard-progress-bar.great{background:linear-gradient(180deg,#d8b24f,#9e7920)}.scorecard-progress-bar.fair{background:linear-gradient(180deg,#e39448,#b15b1d)}.scorecard-progress-bar.poor{background:linear-gradient(180deg,#d66a6a,#9f3030)}
.scorecard-progress-column small{font-size:10px;color:var(--muted)}
.scorecard-analysis-item{display:flex;gap:10px;align-items:flex-start;border-bottom:1px solid var(--line);padding:10px 0}.scorecard-analysis-item:last-child{border-bottom:0}
.scorecard-analysis-item span{width:26px;height:26px;border-radius:9px;display:grid;place-items:center;background:rgba(201,162,77,.14);color:#9a6d13;font-weight:900}.scorecard-analysis-item p{margin:3px 0;line-height:1.45}
.scorecard-metric-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.scorecard-metric-card{border:1px solid var(--line);border-radius:14px;padding:14px;background:var(--panel)}.scorecard-metric-card small{display:block;color:var(--muted);margin-bottom:6px}.scorecard-metric-card strong{font-size:20px}
.latest-scorecard-dashboard-card{margin-top:16px}.latest-scorecard-content{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.latest-scorecard-content>div{border:1px solid var(--line);border-radius:14px;padding:14px}.latest-scorecard-content small{display:block;color:var(--muted);margin-bottom:7px}.latest-scorecard-content strong{font-size:22px;display:block;margin-bottom:7px}.latest-scorecard-content span{font-size:11px;color:var(--muted)}
@media(max-width:900px){.scorecard-metric-grid{grid-template-columns:repeat(3,1fr)}.latest-scorecard-content{grid-template-columns:1fr}}
@media(max-width:600px){.scorecard-upload-banner{align-items:stretch;flex-direction:column}.scorecard-upload-banner .primary-btn{width:100%}.scorecard-metric-grid{grid-template-columns:1fr 1fr}.scorecard-progress-chart{overflow:auto}}

/* DASHBOARD SCORECARD ACTIONS */
.dashboard-scorecard-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.dashboard-scorecard-footer{display:flex;gap:8px;justify-content:flex-end;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}
@media(max-width:700px){
  .dashboard-scorecard-actions,.dashboard-scorecard-footer{align-items:stretch;flex-direction:column}
  .dashboard-scorecard-actions button,.dashboard-scorecard-footer button{width:100%}
}

/* PALUX FINAL BETA SAAS */
.trial-status-banner{display:flex;justify-content:space-between;align-items:center;gap:16px;border:1px solid rgba(201,162,77,.4);background:linear-gradient(120deg,rgba(201,162,77,.16),var(--panel));border-radius:16px;padding:15px 18px;margin-bottom:16px}
.trial-status-banner.urgent{border-color:#d16b5f;background:linear-gradient(120deg,rgba(209,107,95,.13),var(--panel))}
.trial-status-banner strong,.trial-status-banner small{display:block}.trial-status-banner strong{font-size:18px;margin:4px 0}.trial-status-banner small{color:var(--muted)}
.billing-plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.billing-plan-card{position:relative}.billing-plan-card.selected{border-color:#c9a24d;box-shadow:0 0 0 2px rgba(201,162,77,.12)}
.billing-plan-tag{position:absolute;right:12px;top:12px;border-radius:999px;padding:5px 8px;background:rgba(201,162,77,.14);font-size:10px;font-weight:800;color:#946914}
.billing-plan-price{margin:16px 0}.billing-plan-price strong{font-size:34px;display:block}.billing-plan-price small{color:var(--muted)}
.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,#111823,#2b3748)}
.auth-card{width:min(520px,100%);background:#fff;border-radius:22px;padding:24px;box-shadow:0 24px 70px rgba(0,0,0,.25)}
.signup-card{width:min(760px,100%)}.auth-brand{display:flex;align-items:center;gap:12px;margin-bottom:20px}.auth-brand h2,.auth-brand p{margin:0}.auth-brand p{color:#66717e;margin-top:4px}
.signup-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:18px}.signup-progress span{border:1px solid #dfe4ea;border-radius:999px;padding:7px;text-align:center;font-size:10px;font-weight:800;color:#77818c}.signup-progress .active{border-color:#c9a24d;background:rgba(201,162,77,.12);color:#745215}
.auth-secondary-actions{display:flex;justify-content:space-between;margin-top:12px}.auth-link{display:block;margin:14px auto 0}
.setup-stepper{display:grid;grid-template-columns:repeat(9,1fr);gap:7px;margin-bottom:16px}.setup-stepper div{text-align:center;color:var(--muted)}.setup-stepper span{width:30px;height:30px;margin:auto;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line);font-size:11px;font-weight:900}.setup-stepper small{display:block;margin-top:5px;font-size:9px}.setup-stepper .active span{background:#c9a24d;color:#111;border-color:#c9a24d}.setup-stepper .complete span{background:#4caa73;color:#fff;border-color:#4caa73}
.setup-wizard-card{max-width:960px;margin:auto}.setup-wizard-card>h3{font-size:22px;margin-top:0}.setup-wizard-actions{display:flex;justify-content:space-between;align-items:center;margin-top:22px;padding-top:16px;border-top:1px solid var(--line)}
.setup-complete-state{text-align:center;padding:35px 15px}.setup-complete-icon{width:74px;height:74px;margin:0 auto 14px;border-radius:50%;display:grid;place-items:center;background:#4caa73;color:#fff;font-size:32px;font-weight:900}
@media(max-width:900px){.billing-plan-grid{grid-template-columns:1fr}.setup-stepper{grid-template-columns:repeat(3,1fr)}}
@media(max-width:650px){.trial-status-banner{align-items:stretch;flex-direction:column}.trial-status-banner button{width:100%}.signup-progress{grid-template-columns:1fr 1fr}.auth-secondary-actions{flex-direction:column;gap:8px}}

/* FUNCTIONAL INTEGRATIONS CENTER */
.integration-summary{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}
.integration-summary strong,.integration-summary small{display:block}.integration-summary strong{font-size:28px;margin:5px 0}.integration-summary small{color:var(--muted)}
.integration-security-note{display:flex;gap:10px;align-items:center;max-width:520px;border:1px solid var(--line);border-radius:14px;padding:12px}.integration-security-note p{margin:0;color:var(--muted);font-size:11px}
.integration-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.integration-card{display:flex;flex-direction:column;gap:14px}.integration-card.connected{border-color:rgba(74,174,114,.45)}
.integration-card-top{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:start}.integration-card-top h3,.integration-card-top p{margin:0}.integration-card-top p{margin-top:4px;color:var(--muted);font-size:11px;line-height:1.45}
.integration-service-icon{width:43px;height:43px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(135deg,#d9b75c,#8a641e);font-weight:900;color:#111}.integration-service-icon.large{width:52px;height:52px;font-size:17px}
.integration-state{font-size:10px;font-weight:800;white-space:nowrap}.integration-state.online{color:#3c9a63}.integration-state.offline{color:var(--muted)}
.integration-permission-preview{display:flex;flex-direction:column;gap:6px;border-top:1px solid var(--line);padding-top:12px}.integration-permission-preview span{font-size:10px;color:var(--muted)}
.integration-account-details{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.integration-account-details>div{border:1px solid var(--line);border-radius:12px;padding:10px}.integration-account-details small{display:block;color:var(--muted);font-size:8px;margin-bottom:5px}.integration-account-details strong{font-size:11px;word-break:break-word}
.integration-actions{display:flex;gap:8px;align-items:center;margin-top:auto}.integration-actions .danger-text{margin-left:auto}
.integration-modal-heading{display:flex;gap:12px;align-items:center}.integration-modal-heading p{margin:4px 0 0;color:var(--muted)}
.integration-permission-box{border:1px solid var(--line);border-radius:13px;padding:12px}.integration-permission-box p{margin:7px 0;color:var(--muted);font-size:11px}
@media(max-width:900px){.integration-grid{grid-template-columns:1fr}.integration-summary{align-items:stretch;flex-direction:column}}
@media(max-width:620px){.integration-card-top{grid-template-columns:auto 1fr}.integration-state{grid-column:2}.integration-account-details{grid-template-columns:1fr}.integration-actions{align-items:stretch;flex-direction:column}.integration-actions button{width:100%}.integration-actions .danger-text{margin-left:0}}

/* CONNECTED EMAIL DISPLAY */
.connected-email-badge{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:12px;padding:7px 10px;background:var(--panel);cursor:pointer;max-width:250px}
.connected-email-badge span{font-size:10px}.connected-email-badge.connected span{color:#43a66c}.connected-email-badge.not-connected span{color:var(--muted)}
.connected-email-badge small{display:block;font-size:7px;color:var(--muted);letter-spacing:.08em}.connected-email-badge strong{display:block;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.connected-email-settings-card{margin-bottom:16px}
.connected-email-large{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center}
.connected-email-large small{display:block;color:var(--muted);font-size:8px;letter-spacing:.08em;margin-bottom:5px}.connected-email-large strong{display:block;font-size:17px}.connected-email-large p{margin:5px 0 0;color:var(--muted);font-size:11px}
@media(max-width:760px){.connected-email-badge{display:none}.connected-email-large{grid-template-columns:auto 1fr}.connected-email-large button{grid-column:1/-1;width:100%}}

/* FINAL CONNECTED EMAIL & BILLING CORRECTION */
.connected-owner-chip{cursor:pointer;min-width:220px}
.owner-chip-details{display:flex;flex-direction:column;min-width:0}
.owner-chip-details span{display:block;max-width:210px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px;color:var(--muted);margin-top:3px}
.owner-chip-details em{font-style:normal;font-size:8px;font-weight:800;margin-top:2px}
.verified-email-label{color:#3e9d64}.unverified-email-label{color:#b0791d}
.login-account-actions{display:flex;justify-content:space-between;gap:10px;margin-top:10px}
.billing-plan-card .primary-btn,.billing-plan-card .secondary-btn{width:100%}
@media(max-width:760px){.connected-owner-chip{min-width:auto}.owner-chip-details span,.owner-chip-details em{display:none}}

/* CREATE COMPANY REGISTRATION FIX */
.company-signup-screen{position:fixed;inset:0;z-index:9999;overflow:auto;background:linear-gradient(135deg,#111823,#2b3748);padding:24px}
.company-signup-screen.hidden{display:none}
.company-signup-screen .auth-shell{min-height:calc(100vh - 48px)}
@media(max-width:600px){.company-signup-screen{padding:12px}.company-signup-screen .auth-shell{min-height:calc(100vh - 24px)}}

/* COMPANY EMAIL CENTER */
.email-center-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}
.email-center-actions button[disabled]{opacity:.45;cursor:not-allowed}
.email-action-label{font-size:12px!important;line-height:1.35}
@media(max-width:650px){.email-center-actions{flex-direction:column}.email-center-actions button{width:100%}}

/* FINAL PAYCOM & PALUX WALLET */
.paycom-featured-card{margin-bottom:16px;border-color:rgba(201,162,77,.45);background:linear-gradient(120deg,rgba(201,162,77,.09),var(--panel))}
.paycom-featured-heading{display:grid;grid-template-columns:auto 1fr auto;gap:13px;align-items:start;margin-bottom:14px}.paycom-featured-heading h3,.paycom-featured-heading p{margin:0}.paycom-featured-heading h3{margin:4px 0}.paycom-featured-heading p{color:var(--muted);line-height:1.45}
.paycom-featured-card button[disabled]{opacity:.45;cursor:not-allowed}
@media(max-width:700px){.paycom-featured-heading{grid-template-columns:auto 1fr}.paycom-featured-heading>.status{grid-column:2}.paycom-featured-card .support-actions{flex-direction:column}.paycom-featured-card .support-actions button{width:100%}}

/* RC1 WALLET-ONLY & QUICK START IMPORT */
.quickstart-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}
.quickstart-summary-grid>div{border:1px solid var(--line);border-radius:13px;padding:13px;background:var(--panel)}
.quickstart-summary-grid small{display:block;color:var(--muted);margin-bottom:5px}
.quickstart-summary-grid strong{font-size:22px}
@media(max-width:700px){.quickstart-summary-grid{grid-template-columns:1fr 1fr}}

/* HIRING SCREENING WORKFLOW */
.hiring-pipeline-grid .card{min-width:0}

/* VISIBLE HIRING ACTIONS */
.hiring-applicant-row{align-items:center}
.applicant-main{min-width:0;flex:1}
.applicant-actions{display:flex;align-items:center;gap:5px;flex-wrap:wrap;justify-content:flex-end}
.applicant-actions .text-btn{padding:5px 7px;border-radius:7px;border:1px solid var(--line);background:var(--panel)}
.applicant-actions .pass-action{color:#2d8d58;border-color:rgba(45,141,88,.35)}
@media(max-width:700px){.hiring-applicant-row{align-items:flex-start}.applicant-actions{width:100%;justify-content:flex-start;margin-top:7px}}

/* RTS CASE MANAGEMENT */
.rts-investigation-actions{display:flex;gap:8px;flex-wrap:wrap}
.rts-investigation-actions button{min-width:140px}
@media(max-width:650px){.rts-investigation-actions{flex-direction:column}.rts-investigation-actions button{width:100%}}

/* COACHING RECORD ACTIONS */
.coaching-record-actions{display:flex;gap:8px;flex-wrap:wrap}
.coaching-record-actions button{min-width:140px}
@media(max-width:650px){.coaching-record-actions{flex-direction:column}.coaching-record-actions button{width:100%}}

/* DELIVERY QUALITY ACTIONS */
.delivery-quality-actions{display:flex;gap:8px;flex-wrap:wrap}
.delivery-quality-actions button{min-width:120px}
@media(max-width:650px){.delivery-quality-actions{flex-direction:column}.delivery-quality-actions button{width:100%}}

/* REPORT GENERATOR */
.empty-state{padding:30px;text-align:center;color:var(--muted)}
.empty-state strong{display:block;color:var(--text);margin-bottom:6px}

/* PRIVATE PALUX AI SESSIONS */
.ai-private-session-notice{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.ai-private-session-notice p{flex:1;min-width:240px;margin:0}
.ai-private-session-notice button{margin-left:auto}
@media(max-width:650px){.ai-private-session-notice{align-items:flex-start}.ai-private-session-notice button{width:100%;margin-left:0}}

/* TRUE USER-ISOLATED PALUX AI */
.ai-private-session-notice strong strong{color:var(--accent)}

/* PALUX SAFETY SHIELD */
.safety-shield-card{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center;border:1px solid rgba(200,60,60,.4);background:linear-gradient(120deg,rgba(190,45,45,.12),var(--panel));border-radius:18px;padding:18px;margin-bottom:16px}
.safety-shield-card h3,.safety-shield-card p{margin:0}.safety-shield-card h3{margin:5px 0}.safety-shield-card p,.safety-shield-card small{color:var(--muted)}.safety-shield-card small{grid-column:1/-1}
.palux-sos-button{width:190px;min-height:76px;border:0;border-radius:18px;background:linear-gradient(145deg,#d94a4a,#8f1f1f);color:#fff;box-shadow:0 12px 30px rgba(150,30,30,.28);cursor:pointer;touch-action:none;user-select:none}
.palux-sos-button span,.palux-sos-button strong{display:block}.palux-sos-button span{font-size:9px;letter-spacing:.12em;margin-bottom:5px}.palux-sos-button strong{font-size:15px}.palux-sos-button.holding{animation:sosHold 3s linear forwards}
@keyframes sosHold{0%{box-shadow:inset 0 0 0 0 rgba(255,255,255,.35)}100%{box-shadow:inset 190px 0 0 rgba(255,255,255,.28)}}
.emergency-modal-warning{border:1px solid rgba(200,60,60,.4);background:rgba(200,60,60,.09);border-radius:14px;padding:13px}.emergency-modal-warning p{margin:5px 0 0;color:var(--muted)}
.danger-primary-btn{width:100%;border:0;border-radius:12px;padding:13px;background:#b42d2d;color:#fff;font-weight:900;cursor:pointer}
.safety-incident-actions{display:flex;gap:8px;flex-wrap:wrap}
@media(max-width:700px){.safety-shield-card{grid-template-columns:1fr}.palux-sos-button{width:100%}.safety-incident-actions{flex-direction:column}.safety-incident-actions button{width:100%}}

/* SAFETY SHIELD VISIBILITY FIX */
.driver-home > .safety-shield-card{
  margin-top:14px;
  margin-bottom:14px;
  position:relative;
  z-index:2;
}
.driver-home .palux-sos-button{
  display:block;
  visibility:visible;
  opacity:1;
}

/* MANAGER SAFETY ALERT VISIBILITY */

.manager-welcome-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid rgba(204,163,67,.35);background:linear-gradient(120deg,rgba(204,163,67,.12),var(--panel));border-radius:18px;padding:16px;margin-bottom:16px}
.manager-welcome-banner h3,.manager-welcome-banner p{margin:0}.manager-welcome-banner h3{margin:4px 0}.manager-welcome-banner p{color:var(--muted)}
.manager-welcome-status{display:flex;align-items:center;gap:8px;font-weight:700;white-space:nowrap}.manager-welcome-status span{width:10px;height:10px;border-radius:50%;background:#39b878;box-shadow:0 0 0 5px rgba(57,184,120,.12)}
@media(max-width:700px){.manager-welcome-banner{flex-direction:column;align-items:flex-start}}
.manager-safety-alert-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid rgba(200,60,60,.45);background:linear-gradient(120deg,rgba(190,45,45,.14),var(--panel));border-radius:18px;padding:16px;margin-bottom:16px}
.manager-safety-alert-banner h3,.manager-safety-alert-banner p{margin:0}.manager-safety-alert-banner h3{margin:4px 0}.manager-safety-alert-banner p{color:var(--muted)}
.critical-notification{border-left:4px solid #b42d2d;background:rgba(180,45,45,.08);cursor:pointer}
@media(max-width:700px){.manager-safety-alert-banner{flex-direction:column;align-items:flex-start}.manager-safety-alert-banner .support-actions{width:100%}.manager-safety-alert-banner button{width:100%}}

/* SAFETY MAP & LIVE TRACKING */
.safety-map-panel{border:1px solid var(--line);border-radius:14px;padding:12px;background:var(--panel)}
.safety-map-panel iframe{width:100%;height:270px;border:0;border-radius:12px;margin-bottom:10px;background:var(--soft)}
.safety-map-panel small{display:block;margin-top:8px;color:var(--muted)}
.safety-location-history{max-height:260px;overflow:auto;border:1px solid var(--line);border-radius:12px}
@media(max-width:650px){.safety-map-panel iframe{height:220px}.safety-map-panel .support-actions{flex-direction:column}.safety-map-panel button{width:100%}}

/* SAFETY ALERT SOUND & DAILY PACKAGE RECONCILIATION */
.good-text{color:#2d8d58}
.warning-text{color:#b67a16}
.manager-safety-alert-banner{animation:safetyPulse 1.8s ease-in-out infinite}
@keyframes safetyPulse{
  0%,100%{box-shadow:0 0 0 0 rgba(180,45,45,0)}
  50%{box-shadow:0 0 0 5px rgba(180,45,45,.08)}
}

/* EXACT DAILY DISPATCH PACKAGE CONTROL */
.daily-package-control{border:1px solid var(--line);background:var(--panel);border-radius:18px;padding:18px;margin:0 0 18px}
.daily-package-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px}
.daily-package-heading h3,.daily-package-heading p{margin:0}.daily-package-heading h3{margin:4px 0}.daily-package-heading p{color:var(--muted)}
.daily-package-rate{min-width:120px;text-align:center;border:1px solid var(--line);border-radius:14px;padding:12px;background:var(--soft)}
.daily-package-rate small{display:block;color:var(--muted);margin-bottom:5px}.daily-package-rate strong{font-size:27px}
.daily-package-two-col{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.daily-package-form{border:1px solid var(--line);border-radius:14px;padding:14px;background:var(--soft)}
.daily-package-form h4{margin:0 0 12px}
.daily-package-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.daily-package-reconciliation{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;margin-top:14px}
.daily-package-reconciliation>div{border:1px solid var(--line);border-radius:12px;padding:11px;background:var(--panel)}
.daily-package-reconciliation small{display:block;color:var(--muted);margin-bottom:5px}
.daily-package-reconciliation strong{font-size:20px}
@media(max-width:850px){.daily-package-two-col{grid-template-columns:1fr}.daily-package-reconciliation{grid-template-columns:repeat(3,1fr)}}
@media(max-width:520px){.daily-package-heading{flex-direction:column}.daily-package-rate{width:100%}.daily-package-fields,.daily-package-reconciliation{grid-template-columns:1fr 1fr}}

/* COMPACT DAILY DISPATCH — MATCH ORIGINAL PALUX SIZE */
.daily-package-control{
  border:1px solid var(--line);
  background:var(--panel);
  border-radius:14px;
  padding:12px;
  margin:0 0 12px;
}
.daily-package-heading{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:10px;
  margin-bottom:10px;
}
.daily-package-heading h3{
  margin:2px 0;
  font-size:15px;
}
.daily-package-heading p{
  margin:0;
  color:var(--muted);
  font-size:11px;
  line-height:1.35;
}
.daily-package-rate{
  min-width:88px;
  text-align:center;
  border:1px solid var(--line);
  border-radius:10px;
  padding:8px;
  background:var(--soft);
}
.daily-package-rate small{
  display:block;
  color:var(--muted);
  font-size:8px;
  margin-bottom:2px;
}
.daily-package-rate strong{font-size:18px}
.daily-package-two-col{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:9px;
}
.daily-package-form{
  border:1px solid var(--line);
  border-radius:11px;
  padding:10px;
  background:var(--soft);
}
.daily-package-form h4{
  margin:0 0 8px;
  font-size:12px;
}
.daily-package-form .field{margin-bottom:7px}
.daily-package-form label{font-size:9px}
.daily-package-form input,
.daily-package-form select,
.daily-package-form textarea{
  min-height:30px;
  padding:6px 8px;
  font-size:10px;
}
.daily-package-form textarea{min-height:48px}
.daily-package-form .primary-btn{
  min-height:31px;
  padding:7px 10px;
  font-size:10px;
}
.daily-package-fields{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:6px;
}
.daily-package-reconciliation{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:6px;
  margin-top:9px;
}
.daily-package-reconciliation>div{
  border:1px solid var(--line);
  border-radius:9px;
  padding:7px;
  background:var(--panel);
}
.daily-package-reconciliation small{
  display:block;
  color:var(--muted);
  font-size:8px;
  margin-bottom:2px;
}
.daily-package-reconciliation strong{font-size:14px}
@media(max-width:850px){
  .daily-package-two-col{grid-template-columns:1fr}
  .daily-package-reconciliation{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:520px){
  .daily-package-heading{flex-direction:column}
  .daily-package-rate{width:100%}
  .daily-package-fields,.daily-package-reconciliation{grid-template-columns:1fr 1fr}
}

/* NETRADYNE DRIVER•I */
.netradyne-actions{display:flex;gap:7px;flex-wrap:wrap}
.netradyne-actions button{min-width:120px}
@media(max-width:650px){
  .netradyne-actions{flex-direction:column}
  .netradyne-actions button{width:100%}
}

/* NETRADYNE VISIBILITY FIX */
.netradyne-shortcut-card{margin-bottom:14px}
.netradyne-shortcut-card h3,.netradyne-shortcut-card p{margin:0}
.netradyne-shortcut-card h3{margin:4px 0}
.netradyne-shortcut-card p{color:var(--muted)}

/* DAILY DISPATCH — SLIGHTLY LARGER, ORIGINAL PALUX PROPORTIONS */
.daily-package-control{
  padding:14px !important;
  margin-bottom:14px !important;
}
.daily-package-heading h3{
  font-size:16px !important;
}
.daily-package-heading p{
  font-size:12px !important;
}
.daily-package-rate{
  min-width:98px !important;
  padding:9px !important;
}
.daily-package-rate strong{
  font-size:21px !important;
}
.daily-package-form{
  padding:11px !important;
}
.daily-package-form h4{
  font-size:13px !important;
}
.daily-package-form label{
  font-size:10px !important;
}
.daily-package-form input,
.daily-package-form select,
.daily-package-form textarea{
  min-height:33px !important;
  padding:7px 9px !important;
  font-size:11px !important;
}
.daily-package-form textarea{
  min-height:54px !important;
}
.daily-package-form .primary-btn{
  min-height:34px !important;
  padding:8px 11px !important;
  font-size:11px !important;
}
.daily-package-reconciliation>div{
  padding:8px !important;
}
.daily-package-reconciliation strong{
  font-size:16px !important;
}

.required-training-lock-card{text-align:center;max-width:760px;margin:auto}.required-training-lock-icon{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;margin:0 auto 10px;background:rgba(180,45,45,.12);color:#b42d2d;font-size:26px;font-weight:900}.training-module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.training-module-card,.training-question,.training-review-text{border:1px solid var(--line);border-radius:12px;padding:12px;background:var(--soft)}.training-module-card p{margin:5px 0 0;color:var(--muted);font-size:11px}.training-choice{display:block;padding:7px 8px;margin-top:5px;border:1px solid var(--line);border-radius:9px}@media(max-width:850px){.training-module-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.training-module-grid{grid-template-columns:1fr}}

/* ASSOCIATE SAFETY TRAINING TEST PORTAL */
.required-training-associate-card{border-left:4px solid #b42d2d}
.training-complete-banner{display:flex;justify-content:space-between;align-items:center;gap:14px}
.training-complete-banner h3,.training-complete-banner p{margin:0}
.training-complete-banner h3{margin:4px 0}
.training-complete-banner p{color:var(--muted)}
@media(max-width:650px){.training-complete-banner{align-items:flex-start;flex-direction:column}}

/* OPERATIONS MANAGER TRAINING ASSIGNMENT */
.training-module-button{
  width:100%;
  text-align:left;
  cursor:pointer;
  color:inherit;
  font:inherit;
}
.training-module-button span{
  display:inline-block;
  margin-top:8px;
  font-size:10px;
  font-weight:700;
  color:var(--accent);
}
.training-module-button:hover{
  transform:translateY(-1px);
  border-color:var(--accent);
}

/* TRAINING RECOVERY — NO DESIGN CHANGE */
.training-module-button{cursor:pointer}
.training-module-button:focus{outline:2px solid var(--accent);outline-offset:2px}

/* COMPLETE TRAINING WORKFLOW — EXISTING PALUX DESIGN */
.training-module-button{width:100%;text-align:left;cursor:pointer;color:inherit;font:inherit}
.training-module-button:hover{border-color:var(--accent)}
.training-module-button span{display:inline-block;margin-top:7px;font-size:10px;font-weight:700;color:var(--accent)}
.required-training-associate-card{border-left:4px solid #b42d2d}
.training-complete-banner{display:flex;justify-content:space-between;align-items:center;gap:14px}
@media(max-width:650px){.training-complete-banner{flex-direction:column;align-items:flex-start}}

/* CLICKABLE TRAINING SUMMARY CARDS — SAME PALUX DESIGN */
.training-kpi-button{
  display:block;
  width:100%;
  padding:0;
  margin:0;
  border:0;
  background:transparent;
  color:inherit;
  font:inherit;
  text-align:inherit;
  cursor:pointer;
}
.training-kpi-button > *{
  height:100%;
}
.training-kpi-button:focus-visible{
  outline:2px solid var(--accent);
  outline-offset:2px;
  border-radius:14px;
}

/* CREATE FULL TEST VISIBLE CONFIRMATION */
#modalForm .work-location-notice{
  margin-bottom:10px;
}

/* CLICKABLE DASHBOARD KPI CARDS — SAME PALUX DESIGN */
.dashboard-kpi-button{
  display:block;
  width:100%;
  padding:0;
  margin:0;
  border:0;
  background:transparent;
  color:inherit;
  font:inherit;
  text-align:inherit;
  cursor:pointer;
}
.dashboard-kpi-button > *{height:100%}
.dashboard-kpi-button:focus-visible{
  outline:2px solid var(--accent);
  outline-offset:2px;
  border-radius:14px;
}

/* PALUX WORKSPACE LOADER — ORIGINAL LOGIN DESIGN PRESERVED */
.palux-workspace-loader{
  position:fixed;
  inset:0;
  z-index:99999;
  display:grid;
  place-items:center;
  background:rgba(8,12,18,.94);
  opacity:0;
  visibility:hidden;
  transition:opacity .18s ease,visibility .18s ease;
  pointer-events:none;
  touch-action:auto;
}

.palux-workspace-loader.show{
  opacity:1;
  visibility:visible;
  pointer-events:none;
}

.palux-workspace-loader-card{
  width:min(320px,86vw);
  padding:30px 26px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:18px;
  background:rgba(20,26,35,.96);
  text-align:center;
  color:#fff;
  box-shadow:0 24px 70px rgba(0,0,0,.35);
}

.palux-workspace-loader-mark{
  width:54px;
  height:54px;
  margin:0 auto 12px;
  display:grid;
  place-items:center;
  border-radius:16px;
  background:linear-gradient(145deg,#f3c34d,#b8790d);
  color:#111722;
  font-size:28px;
  font-weight:900;
}

.palux-workspace-loader-card strong{
  display:block;
  font-size:22px;
  letter-spacing:.18em;
}

.palux-workspace-loader-card p{
  margin:7px 0 18px;
  color:rgba(255,255,255,.72);
}

.palux-workspace-loader-line{
  height:4px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(255,255,255,.1);
}

.palux-workspace-loader-line span{
  display:block;
  width:45%;
  height:100%;
  border-radius:inherit;
  background:#d7a62a;
  animation:paluxWorkspaceLoading .8s ease-in-out infinite;
}

@keyframes paluxWorkspaceLoading{
  0%{transform:translateX(-105%)}
  100%{transform:translateX(245%)}
}

.firebase-connection-status{display:block;margin-top:7px;font-weight:700;color:#8a6a16}
.firebase-connection-status.connected{color:#18794e}
.firebase-connection-status.offline{color:#b42318}
body[data-cloud-status="error"] .topbar::after{
  content:"";display:none!important;position:fixed;right:18px;bottom:18px;z-index:9998;
  padding:9px 12px;border-radius:10px;background:#8f1d1d;color:#fff;font-size:12px;font-weight:800
}

/* PALUX COMMERCIAL LOGIN */
.commercial-login-footer{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:13px;font-size:12px;color:var(--muted)}
.commercial-trial-link{border:0;background:transparent;color:var(--gold);font:inherit;font-weight:800;cursor:pointer;padding:0}
.commercial-trial-link:hover{text-decoration:underline}
.developer-only.hidden,.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.developer-only:not(.hidden){position:static!important;width:auto!important;height:auto!important;margin:0!important;overflow:visible!important;clip:auto!important;white-space:normal!important}
.commercial-onboarding-note{display:flex;flex-direction:column;gap:3px;margin:14px 0 18px;padding:12px 14px;border:1px solid rgba(197,147,28,.28);border-radius:12px;background:rgba(197,147,28,.07)}
.commercial-onboarding-note span{font-size:12px;color:var(--muted)}

.signup-error-box{
  margin:0 0 12px;
  padding:11px 13px;
  border:1px solid #d92d20;
  border-radius:10px;
  background:#fff1f0;
  color:#8f1d1d;
  font-size:13px;
  font-weight:750;
  line-height:1.4;
}
.signup-error-box.hidden{display:none}

.emergency-sidebar-shortcut{padding:10px 12px 8px;border-top:1px solid rgba(255,255,255,.08);background:#080c12}
.emergency-sidebar-shortcut button{width:100%;display:flex;align-items:center;gap:10px;border:1px solid rgba(217,74,74,.55);background:linear-gradient(135deg,rgba(217,74,74,.28),rgba(217,74,74,.10));color:#fff;padding:10px 11px;border-radius:10px;text-align:left}
.emergency-sidebar-shortcut button:hover{background:linear-gradient(135deg,rgba(217,74,74,.42),rgba(217,74,74,.16))}
.emergency-sidebar-icon{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#d94a4a;color:#fff;font-weight:900;font-size:17px;flex:0 0 28px}
.emergency-sidebar-shortcut strong{display:block;font-size:12px;line-height:1.2}
.emergency-sidebar-shortcut small{display:block;color:#f4b6b6;font-size:9px;margin-top:3px}

.notification-card.unread{border-left:4px solid #d59b24;background:rgba(213,155,36,.07)}
.notification-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}


/* MOBILE ASSOCIATE CHAT COMPOSER VISIBILITY FIX — keeps time clock and design unchanged */
@media(max-width:780px){
  .driver-shell .chat-shell{margin-bottom:190px;min-height:calc(100vh - 250px)}
  .driver-shell .chat-main{padding-bottom:0;min-height:620px}
  .driver-shell .enhanced-chat-composer{
    position:sticky;
    bottom:178px;
    z-index:86;
    box-shadow:0 -10px 24px rgba(0,0,0,.12);
  }
  .driver-shell .chat-messages{padding-bottom:24px;max-height:none;min-height:420px}
  .driver-shell .chat-input-row{align-items:flex-end}
  .driver-shell #channelMessageInput{font-size:16px;min-height:48px!important}
}
@media(max-width:560px){
  .driver-shell .chat-shell{margin-bottom:205px}
  .driver-shell .enhanced-chat-composer{bottom:194px;padding:10px}
  .driver-shell .chat-tool-row{gap:4px}
  .driver-shell .chat-tool-btn{width:34px;height:34px}
}

/* MOBILE ASSOCIATE MENU LAYER FIX — keep existing layout, only prevent time clock overlay */
@media (max-width:780px){
  .sidebar.open{
    z-index:120;
  }
}

/* MOBILE SIDEBAR FOOTER VISIBILITY FINAL FIX
   Keep Theme and Logout visible above the permanent associate time-clock bar. */
@media (max-width:780px){
  .sidebar.open{
    overflow-y:auto;
    overflow-x:hidden;
    -webkit-overflow-scrolling:touch;
    padding-bottom:260px;
  }
  .sidebar.open #navMenu{
    flex:0 0 auto;
    padding-bottom:16px;
  }
  .sidebar.open .emergency-sidebar-shortcut{
    flex:0 0 auto;
  }
  .sidebar.open .sidebar-footer{
    position:fixed;
    left:0;
    bottom:178px;
    width:285px;
    z-index:130;
    margin-top:0;
    background:#080c12;
    box-shadow:0 -12px 28px rgba(0,0,0,.36);
    border-top:1px solid rgba(255,255,255,.13);
    padding:12px;
  }
}
@media (max-width:560px){
  .sidebar.open{
    padding-bottom:278px;
  }
  .sidebar.open .sidebar-footer{
    bottom:194px;
  }
}


/* ALL-ROLE PROFILE PHOTO + MOBILE MENU FINAL STABILITY FIX
   This does not alter desktop navigation or the time-clock workflow. */
@media (max-width:780px){
  body.palux-mobile-menu-open{overflow:hidden;}
  body.palux-mobile-menu-open .associate-clock-bar{display:none!important;}
  body.palux-mobile-menu-open .sidebar.open{
    display:flex;
    flex-direction:column;
    height:100dvh;
    max-height:100dvh;
    padding-bottom:0!important;
    overflow:hidden!important;
    z-index:220;
  }
  body.palux-mobile-menu-open .sidebar.open #navMenu{
    flex:1 1 auto;
    min-height:0;
    overflow-y:auto;
    overflow-x:hidden;
    -webkit-overflow-scrolling:touch;
    padding-bottom:18px;
  }
  body.palux-mobile-menu-open .sidebar.open .emergency-sidebar-shortcut{
    flex:0 0 auto;
  }
  body.palux-mobile-menu-open .sidebar.open .sidebar-footer{
    position:static!important;
    inset:auto!important;
    width:auto!important;
    flex:0 0 auto;
    margin-top:0!important;
    padding:12px!important;
    background:#080c12;
    z-index:230;
    box-shadow:0 -10px 24px rgba(0,0,0,.32);
  }
}

/* PALUX MOBILE MENU PRIVACY/STABILITY PATCH 2026-07-18
   The menu owns the full viewport while open; the time clock cannot cover it. */
@media (max-width:780px){
  body.palux-mobile-menu-open .associate-clock-bar{display:none!important;visibility:hidden!important;pointer-events:none!important;}
  body.palux-mobile-menu-open .sidebar.open{
    position:fixed!important;inset:0 auto 0 0!important;height:100dvh!important;max-height:100dvh!important;
    width:min(86vw,360px)!important;display:flex!important;flex-direction:column!important;
    overflow:hidden!important;padding:0!important;z-index:9999!important;
  }
  body.palux-mobile-menu-open .sidebar.open .brand,
  body.palux-mobile-menu-open .sidebar.open .company-switcher{flex:0 0 auto!important;}
  body.palux-mobile-menu-open .sidebar.open #navMenu{
    flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;
    padding-bottom:24px!important;-webkit-overflow-scrolling:touch!important;
  }
  body.palux-mobile-menu-open .sidebar.open .emergency-sidebar-shortcut{flex:0 0 auto!important;}
  body.palux-mobile-menu-open .sidebar.open .sidebar-footer{
    display:grid!important;visibility:visible!important;opacity:1!important;position:relative!important;
    left:auto!important;right:auto!important;bottom:auto!important;width:100%!important;flex:0 0 auto!important;
    margin:0!important;padding:12px!important;background:#080c12!important;z-index:10000!important;
  }
}

/* Clickable email addresses: opens the user device email application. */
.palux-email-link,.palux-email-open{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px;cursor:pointer;overflow-wrap:anywhere}
.palux-email-link:hover,.palux-email-open:hover{opacity:.72}
.owner-chip-details .palux-email-open{display:block}

/* Hiring mobile card actions and professional rejection modal */
.modal-action-row{display:flex;gap:12px;justify-content:flex-end;align-items:center}
.danger-primary{background:#b42318!important;border-color:#b42318!important}
.hiring-applicant-row{position:relative;padding-right:132px}
.hiring-applicant-row .applicant-actions{position:absolute;right:12px;top:12px;display:flex;gap:8px;align-items:center;justify-content:flex-end}
.hiring-applicant-row .applicant-main{min-width:0}
.hiring-applicant-row .applicant-main strong{display:block;overflow-wrap:anywhere}
@media(max-width:700px){
  .hiring-pipeline-grid{grid-template-columns:1fr!important}
  .hiring-applicant-row{display:grid!important;grid-template-columns:56px minmax(0,1fr) auto!important;align-items:start!important;gap:12px!important;padding:16px!important}
  .hiring-applicant-row .avatar{grid-column:1;grid-row:1 / span 2}
  .hiring-applicant-row .applicant-main{grid-column:2;grid-row:1 / span 2;padding-right:0!important}
  .hiring-applicant-row .applicant-actions{grid-column:3;grid-row:1;position:static!important;width:auto!important;margin:0!important;justify-content:flex-end!important;align-self:start;white-space:nowrap}
  .hiring-applicant-row .applicant-actions .text-btn{padding:7px 10px;font-size:14px}
  .modal-action-row{flex-direction:column-reverse;align-items:stretch}
  .modal-action-row button{width:100%}
}

/* Employee employment-status control: keep HR actions visible at the top of the profile. */
.employee-profile-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.employee-inactive-btn{border-color:#b42318!important;color:#b42318!important;background:#fff7f6!important}
.employee-inactive-btn:hover{background:#fee4e2!important}
@media(max-width:760px){.profile-back-row{align-items:flex-start;gap:10px}.employee-profile-actions{width:100%;justify-content:flex-start}.employee-profile-actions .secondary-btn,.employee-profile-actions .primary-btn{flex:1 1 auto}}

.employee-active-btn{border-color:#168a5b!important;color:#0f6f48!important;background:#e9f8f1!important}
.employee-active-btn:hover{background:#d7f2e5!important}

/* PALUX MOBILE MESSAGE BAR FINAL FIX — only the associate chat on phones */
@media(max-width:780px){
  .driver-shell .enhanced-chat-composer{
    background:var(--panel);
    border-top:1px solid var(--line);
    box-shadow:0 -10px 28px rgba(0,0,0,.16);
    overflow:visible;
  }
  .driver-shell .chat-input-row{min-width:0}
  .driver-shell #channelMessageInput{min-width:0;width:100%;font-size:16px}
  .driver-shell .chat-send-btn{flex:0 0 auto}
  .driver-shell .chat-messages{-webkit-overflow-scrolling:touch}
}

/* PALUX Archive 35: clickable Notification Activity Center KPI cards */
.kpi-button{display:block;width:100%;padding:0;border:0;background:transparent;text-align:inherit;font:inherit;color:inherit;cursor:pointer;border-radius:inherit}
.kpi-button>.card{height:100%;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.kpi-button:hover>.card,.kpi-button:focus-visible>.card{transform:translateY(-2px);box-shadow:0 10px 24px rgba(15,23,42,.10);border-color:rgba(212,168,46,.55)}
.kpi-button:focus-visible{outline:3px solid rgba(212,168,46,.35);outline-offset:3px}

/* Live incoming-message banner: visible on every PALUX page for five seconds. */
.palux-live-message-banner{
  position:fixed;
  top:86px;
  right:22px;
  width:min(430px,calc(100vw - 32px));
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  padding:14px;
  border:1px solid rgba(193,148,45,.35);
  border-radius:16px;
  background:var(--panel,#fff);
  color:var(--text,#111827);
  box-shadow:0 18px 50px rgba(15,23,42,.22);
  opacity:0;
  transform:translateY(-14px) scale(.98);
  pointer-events:none;
  transition:opacity .2s ease,transform .2s ease;
  z-index:10000;
}
.palux-live-message-banner.show{opacity:1;transform:none;pointer-events:auto}
.palux-live-message-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:rgba(193,148,45,.14);font-size:21px}
.palux-live-message-content{min-width:0}
.palux-live-message-content strong{display:block;font-size:14px;line-height:1.25;margin-bottom:4px}
.palux-live-message-content p{margin:0;color:var(--muted,#64748b);font-size:13px;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.palux-live-message-actions{display:flex;align-items:center;gap:7px}
.palux-live-message-open{border:0;border-radius:10px;padding:9px 11px;background:linear-gradient(135deg,#c3982f,#e4bd57);color:#101722;font-weight:800;white-space:nowrap;cursor:pointer}
.palux-live-message-close{border:0;background:transparent;color:var(--muted,#64748b);font-size:25px;line-height:1;padding:4px;cursor:pointer}
@media(max-width:768px){
  .palux-live-message-banner{top:76px;left:14px;right:14px;width:auto;grid-template-columns:auto minmax(0,1fr);padding:12px}
  .palux-live-message-actions{grid-column:1/-1;justify-content:flex-end}
  .palux-live-message-open{flex:1}
}

/* Unread marker for the exact channel or person who sent a new message. */
.chat-list-item{position:relative}
.chat-list-item>span:nth-child(2){min-width:0;flex:1}
.chat-unread-badge{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;margin-left:auto;border-radius:999px;background:#c3982f;color:#fff;font-size:11px;font-weight:900;line-height:1;box-shadow:0 2px 7px rgba(15,23,42,.18);flex:0 0 auto}
.chat-list-item.active .chat-unread-badge{background:#111827}

/* PALUX launch accessibility: live time and open employee scorecard metrics */
.palux-live-clock{min-width:118px;padding:8px 12px;border:1px solid var(--border,#e5e7eb);border-radius:12px;background:var(--card,#fff);text-align:right;line-height:1.15}.palux-live-clock strong{display:block;font-size:14px;font-variant-numeric:tabular-nums}.palux-live-clock small{display:block;margin-top:3px;opacity:.68;font-size:10px}.scorecard-open-card{display:block;width:100%;padding:0;border:0;background:transparent;text-align:inherit;cursor:pointer;border-radius:16px}.scorecard-open-card>.card{height:100%;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.scorecard-open-card:hover>.card,.scorecard-open-card:focus-visible>.card{transform:translateY(-2px);box-shadow:0 10px 24px rgba(15,23,42,.12);border-color:#d5ae24}.scorecard-open-card:focus-visible{outline:3px solid rgba(213,174,36,.35);outline-offset:3px}.scorecard-metric-detail{display:flex;align-items:center;gap:18px;padding:18px;border:1px solid var(--border,#e5e7eb);border-radius:16px;background:var(--card,#fff)}.scorecard-metric-detail-value{display:grid;place-items:center;min-width:92px;height:92px;border-radius:50%;background:#111827;color:#f4c430;font-size:34px;font-weight:800}.scorecard-metric-detail h3{margin:0 0 6px}.scorecard-metric-detail p{margin:0;opacity:.72}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}@media(max-width:900px){.palux-live-clock{display:none}.employee-scorecard-open-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.employee-scorecard-open-grid{grid-template-columns:1fr}.scorecard-metric-detail{align-items:flex-start}.scorecard-metric-detail-value{min-width:72px;height:72px;font-size:26px}}

/* PALUX MOBILE TIME CLOCK — clock in, meal start, meal end, clock out */
@media(max-width:780px){
  body:has(#associateClockBar:not(.hidden)) .main{padding-bottom:210px!important;}
  #associateClockBar.associate-clock-bar:not(.hidden){
    display:grid!important;
    grid-template-columns:1fr auto;
    grid-template-areas:"summary details" "buttons buttons";
    left:0!important;
    right:0!important;
    bottom:0!important;
    width:auto!important;
    min-height:0!important;
    gap:8px!important;
    padding:9px 10px calc(9px + env(safe-area-inset-bottom))!important;
    z-index:110!important;
  }
  #associateClockBar .associate-clock-summary{grid-area:summary;min-width:0!important;}
  #associateClockBar .associate-clock-summary small{font-size:9px!important;white-space:nowrap;}
  #associateClockBar .associate-clock-summary strong{font-size:13px!important;}
  #associateClockBar .clock-details-btn{grid-area:details;padding:7px 9px!important;font-size:10px!important;}
  #associateClockBar .associate-clock-buttons{
    grid-area:buttons;
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:6px!important;
    width:100%!important;
    max-width:none!important;
  }
  #associateClockBar .associate-clock-buttons button{
    min-width:0!important;
    padding:9px 3px!important;
    border-radius:9px!important;
    font-size:10px!important;
    line-height:1.15!important;
    white-space:normal!important;
  }
}
@media(max-width:390px){
  #associateClockBar .associate-clock-buttons{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  body:has(#associateClockBar:not(.hidden)) .main{padding-bottom:255px!important;}
}

/* PALUX Wallet metric cards — clickable details */
.wallet-metric-card{cursor:pointer;border-radius:inherit;transition:transform .16s ease,box-shadow .16s ease}
.wallet-metric-card>.card{height:100%}
.wallet-metric-card:hover{transform:translateY(-2px)}
.wallet-metric-card:focus-visible{outline:3px solid rgba(214,168,27,.45);outline-offset:3px}
.wallet-metric-card:active{transform:translateY(0)}

/* PALUX daily Safety & Quality calendar */
.palux-performance-calendar-card{margin-top:16px;overflow:hidden}.calendar-month{min-width:150px;text-align:center}.performance-summary{margin:14px 0}.palux-calendar-weekdays,.palux-performance-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.palux-calendar-weekdays{padding:8px 0;color:#667085;font-size:12px;font-weight:800;text-align:center}.palux-performance-day{min-height:112px;border:1px solid #e3e7ee;border-radius:14px;background:#fff;padding:10px;text-align:left;display:flex;flex-direction:column;gap:5px;cursor:pointer;transition:.18s ease}.palux-performance-day:hover{border-color:#d4a900;box-shadow:0 8px 24px rgba(21,30,45,.08);transform:translateY(-1px)}.palux-performance-day.outside{opacity:.42}.palux-performance-day.today{outline:2px solid #d4a900}.palux-performance-day.has-data{background:linear-gradient(180deg,#fffdf4,#fff)}.day-number{font-weight:900;font-size:15px;color:#111827}.day-count{font-size:10px;color:#667085}.day-score{font-size:11px;font-weight:800;border-radius:999px;padding:4px 7px;width:max-content}.day-score.safety{background:#e8f7ee;color:#1f7a4c}.day-score.quality{background:#fff4cf;color:#8a6600}.day-empty{font-size:10px;color:#98a2b3;margin-top:auto}@media(max-width:760px){.palux-calendar-weekdays,.palux-performance-calendar{gap:4px}.palux-performance-day{min-height:82px;padding:6px;border-radius:10px}.day-score{font-size:9px;padding:3px 4px}.day-count{display:none}.palux-performance-calendar-card .card-head{align-items:flex-start}.palux-performance-calendar-card .support-actions{width:100%;flex-wrap:wrap}.calendar-month{min-width:110px;font-size:13px}.performance-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* PALUX 89 empty workspace onboarding */
.palux-empty-workspace-banner{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:16px;border:1px solid rgba(197,147,28,.32);background:linear-gradient(135deg,rgba(197,147,28,.10),rgba(255,255,255,.96))}
.palux-empty-workspace-banner h3{margin:5px 0 6px}.palux-empty-workspace-banner p{margin:0;max-width:760px;color:var(--muted);line-height:1.5}
body[data-cloud-status="retry"] .topbar::after,body[data-cloud-status="saving"] .topbar::after,body[data-cloud-status="saved"] .topbar::after{display:none}
@media(max-width:720px){.palux-empty-workspace-banner{align-items:flex-start;flex-direction:column}}


/* ================================================================
   PALUX ARCHIVE 90 — URGENT NATIVE MOBILE HEADER + DASHBOARD FIX
   Keeps iPhone content below the status bar and makes the dashboard
   compact enough for real daily use without changing desktop design.
   ================================================================ */
html{
  width:100%;
  min-height:100%;
  overflow-x:hidden;
  -webkit-text-size-adjust:100%;
  background:var(--panel,#fff);
}
body{
  width:100%;
  min-height:100dvh;
  overflow-x:hidden;
}

@media (max-width:780px){
  .app-shell,.main{width:100%;max-width:100%;min-width:0;}
  .main{overflow-x:hidden;}

  /* The topbar owns the iPhone safe area. Nothing may sit behind the clock,
     signal, Dynamic Island, or battery indicator. */
  .topbar{
    box-sizing:border-box!important;
    height:auto!important;
    min-height:calc(76px + env(safe-area-inset-top))!important;
    padding:calc(10px + env(safe-area-inset-top)) 12px 10px!important;
    display:grid!important;
    grid-template-columns:42px minmax(0,1fr) auto!important;
    align-items:center!important;
    justify-content:stretch!important;
    column-gap:9px!important;
    top:0!important;
    overflow:visible!important;
    background:var(--panel,#fff)!important;
    isolation:isolate;
  }
  .topbar .mobile-menu{
    width:42px!important;
    height:42px!important;
    display:grid!important;
    place-items:center!important;
    padding:0!important;
    border-radius:12px!important;
    font-size:24px!important;
    line-height:1!important;
    z-index:2;
  }
  .topbar>div:not(.top-actions){min-width:0!important;overflow:hidden!important;}
  .topbar h1{
    margin:0!important;
    font-size:22px!important;
    line-height:1.08!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  .topbar p{
    margin:5px 0 0!important;
    max-width:100%!important;
    font-size:12px!important;
    line-height:1.2!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  .top-actions{
    min-width:0!important;
    gap:6px!important;
    justify-content:flex-end!important;
  }
  .top-actions .palux-live-clock{display:none!important;}
  .top-actions .icon-btn{
    width:40px!important;
    height:40px!important;
    flex:0 0 40px!important;
    border-radius:12px!important;
    padding:0!important;
  }
  .top-actions .user-chip{
    margin-left:0!important;
    gap:0!important;
    flex:0 0 auto!important;
  }
  .top-actions .avatar{
    width:40px!important;
    height:40px!important;
    border-radius:12px!important;
    overflow:hidden!important;
  }
  .top-actions .avatar img{width:100%!important;height:100%!important;object-fit:cover!important;}
  .top-actions .owner-chip-details{display:none!important;}
  .badge{right:-3px!important;top:-6px!important;}

  .content{
    box-sizing:border-box!important;
    width:100%!important;
    padding:14px 12px calc(26px + env(safe-area-inset-bottom))!important;
  }
  .manager-welcome-banner,.manager-safety-alert-banner{
    margin-bottom:14px!important;
    padding:18px!important;
    border-radius:18px!important;
  }
  .manager-welcome-banner h3,.manager-safety-alert-banner h3{
    margin:7px 0 7px!important;
    font-size:23px!important;
    line-height:1.15!important;
  }
  .manager-welcome-banner p,.manager-safety-alert-banner p{
    font-size:14px!important;
    line-height:1.45!important;
  }
  .manager-welcome-status{font-size:17px!important;}

  /* Four KPIs remain visible without forcing a very long one-card-per-row page. */
  .kpi-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }
  .dashboard-kpi-button{min-width:0!important;}
  .dashboard-kpi-button>.card{
    min-height:154px!important;
    padding:14px!important;
    border-radius:15px!important;
  }
  .kpi h3{font-size:32px!important;margin:12px 0 5px!important;}
  .kpi small{font-size:12px!important;line-height:1.25!important;}
  .kpi .trend{font-size:11px!important;line-height:1.3!important;}
  .kpi-icon{
    width:38px!important;
    height:38px!important;
    flex:0 0 38px!important;
    font-size:18px!important;
  }
  .two-col,.three-col{grid-template-columns:1fr!important;}
  .card{max-width:100%;}
}

@media (max-width:430px){
  .topbar{
    grid-template-columns:40px minmax(0,1fr) auto!important;
    column-gap:7px!important;
    padding-left:10px!important;
    padding-right:10px!important;
  }
  .topbar .mobile-menu,.top-actions .icon-btn,.top-actions .avatar{
    width:38px!important;height:38px!important;flex-basis:38px!important;
  }
  .topbar h1{font-size:20px!important;}
  .topbar p{font-size:11px!important;}
  .top-actions{gap:5px!important;}
  .dashboard-kpi-button>.card{min-height:148px!important;padding:13px!important;}
  .kpi h3{font-size:29px!important;}
  .kpi-icon{width:34px!important;height:34px!important;flex-basis:34px!important;font-size:16px!important;}
}

@media (max-width:350px){
  #quickAddBtn{display:none!important;}
  .kpi-grid{grid-template-columns:1fr!important;}
}


/* PALUX Archive 92: cloud status is shown only inside real authenticated screens;
   never create synthetic floating sync banners from body attributes. */
body .topbar::after{display:none!important;content:none!important;}

/* PALUX Archive 101 — secure card checkout and import feedback */
.card-payment-notice{border:1px solid rgba(203,157,44,.35);background:linear-gradient(135deg,rgba(255,250,235,.96),rgba(255,255,255,.98))}
.payment-card-brands{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0}
.payment-card-brands strong{display:inline-flex;align-items:center;min-height:34px;padding:7px 12px;border:1px solid #d9dce3;border-radius:9px;background:#fff;color:#202633;font-size:.78rem;letter-spacing:.03em;box-shadow:0 2px 8px rgba(15,23,42,.05)}
#weeklyScorecardImportPreview:empty{display:none}
#weeklyScorecardImportPreview .work-location-notice{margin:0}
@media(max-width:680px){.payment-card-brands{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.payment-card-brands strong{justify-content:center}}

/* Archive 104: mobile browser resume and fast authenticated startup */
body.palux-login-hydrating .app-shell{opacity:1}
html:not(.palux-session-pending) #paluxBootSplash{display:none!important}
html.palux-session-pending #paluxBootSplash{animation:paluxBootFadeIn .16s ease-out}
@keyframes paluxBootFadeIn{from{opacity:.75}to{opacity:1}}
.modal.hidden,#ackModal.hidden,#imageViewer.hidden,.company-signup-screen.hidden{pointer-events:none!important}

.modal:not(.hidden),#ackModal:not(.hidden),#imageViewer:not(.hidden),.company-signup-screen:not(.hidden){pointer-events:auto!important}

/* ARCHIVE 105: never expose associate time controls before authentication */
body:not(.palux-authenticated) #associateClockBar{display:none!important;visibility:hidden!important;pointer-events:none!important;}

/* Archive 106: manager-controlled schedule patterns and shift colors */
.schedule-pattern-btn{display:block;margin:8px auto 0;border:1px solid rgba(15,23,42,.18);background:#fff;border-radius:8px;padding:5px 8px;font-size:10px;font-weight:800;cursor:pointer;color:#344054}
.schedule-pattern-btn:hover{border-color:#d7ad3f;color:#7a5600}
.palux-orphan-schedule-remove{color:#b42318!important;border-color:rgba(180,35,24,.2)!important;background:rgba(180,35,24,.04)!important;font-size:10px!important;padding:5px 8px!important;border-radius:8px!important}
.palux-orphan-schedule-remove:hover{background:rgba(180,35,24,.09)!important;border-color:rgba(180,35,24,.4)!important}
.calendar-cell.employee-cell .palux-orphan-schedule-remove{display:block;margin:5px auto 0;max-width:100%;white-space:nowrap}
.sms-preview{white-space:pre-wrap}
@media(max-width:820px){.schedule-pattern-btn{font-size:9px;padding:4px 6px}}

/* PALUX ARCHIVE 110 — native store billing safety and private admin console */
html.palux-native-app .palux-web-commercial-only,
body.palux-native-app .palux-web-commercial-only { display:none !important; }
.mobile-billing-note { margin-top:14px; padding:12px 14px; border:1px solid rgba(17,24,39,.12); border-radius:12px; background:rgba(17,24,39,.035); display:flex; flex-direction:column; gap:4px; }
.mobile-billing-note small { line-height:1.45; }
.four-col { grid-template-columns:repeat(4,minmax(0,1fr)); }
.platform-admin-kpis .card h3 { font-size:1.9rem; }
@media (max-width:900px){
  .four-col,.platform-admin-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:560px){
  .four-col,.platform-admin-kpis { grid-template-columns:1fr; }
}



/* PALUX Archive 117 — accepted-card indicators are responsive but checkout
   remains plan-based. */
.payment-card-brands button{
  appearance:none;
  -webkit-appearance:none;
  border:1px solid rgba(17,24,39,.13);
  background:var(--panel);
  color:var(--text);
  border-radius:9px;
  padding:7px 10px;
  font:inherit;
  font-weight:800;
  cursor:pointer;
}
.payment-card-brands button:hover,
.payment-card-brands button:focus-visible{
  border-color:#c9a24d;
  box-shadow:0 0 0 2px rgba(201,162,77,.13);
  outline:none;
}

.vehicle-profile-photo{width:160px;height:120px;border-radius:20px;overflow:hidden;background:#eef1f5;display:grid;place-items:center;font-size:52px}
.vehicle-profile-photo img{width:100%;height:100%;object-fit:cover;display:block}
.vehicle-profile-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.danger-btn{border:1px solid #b42318;background:#fff;color:#b42318;border-radius:10px;padding:10px 14px;font-weight:700;cursor:pointer}
.danger-btn:hover{background:#fff1f0}
@media(max-width:600px){.vehicle-profile-photo{width:100%;height:190px}.vehicle-profile-actions{justify-content:center}}


/* PALUX ARCHIVE 121 — NATIVE MOBILE SIDEBAR BOTTOM-SAFE FIX
   Keeps Theme and Logout completely above Android system navigation controls.
   The center menu remains independently scrollable on every role. */
@media (max-width:780px){
  html.palux-native-app body.palux-mobile-menu-open .sidebar.open{
    box-sizing:border-box!important;
    height:100dvh!important;
    max-height:100dvh!important;
    min-height:100dvh!important;
    overflow:hidden!important;
  }
  html.palux-native-app body.palux-mobile-menu-open .sidebar.open #navMenu{
    flex:1 1 0!important;
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    scroll-padding-bottom:24px!important;
    -webkit-overflow-scrolling:touch!important;
  }
  html.palux-native-app body.palux-mobile-menu-open .sidebar.open .emergency-sidebar-shortcut{
    flex:0 0 auto!important;
  }
  html.palux-native-app body.palux-mobile-menu-open .sidebar.open .sidebar-footer{
    box-sizing:border-box!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:8px!important;
    flex:0 0 auto!important;
    min-height:68px!important;
    margin:0!important;
    border-top:1px solid rgba(255,255,255,.13)!important;
    background:#080c12!important;
    box-shadow:0 -10px 24px rgba(0,0,0,.32)!important;
  }
  html.palux-native-app body.palux-mobile-menu-open .sidebar.open .sidebar-footer .ghost-btn{
    min-width:0!important;
    min-height:42px!important;
    padding:9px 8px!important;
    white-space:nowrap!important;
  }
  html.palux-native-ios body.palux-mobile-menu-open .sidebar.open .sidebar-footer{
    padding:12px 12px calc(12px + env(safe-area-inset-bottom,0px))!important;
  }
  html.palux-native-android body.palux-mobile-menu-open .sidebar.open .sidebar-footer{
    /* Android WebView can report a zero CSS safe-area while the 3-button or
       gesture navigation area still overlays content. Keep a reliable guard. */
    padding:12px 12px calc(12px + env(safe-area-inset-bottom,0px) + 52px)!important;
  }
}

/* PALUX ARCHIVE 123 — LIVE ANDROID SIDEBAR SYSTEM-BAR FIX
   The Android app loads the live Firebase Hosting URL. This rule therefore
   applies without relying on a Capacitor-only class and keeps Theme/Logout
   above Android's gesture or 3-button navigation area. */
@media (max-width:780px){
  body.palux-mobile-menu-open .sidebar.open{
    box-sizing:border-box!important;
    top:0!important;
    bottom:64px!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
  }
  body.palux-mobile-menu-open .sidebar.open #navMenu{
    flex:1 1 0!important;
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    padding-bottom:12px!important;
  }
  body.palux-mobile-menu-open .sidebar.open .emergency-sidebar-shortcut{
    flex:0 0 auto!important;
  }
  body.palux-mobile-menu-open .sidebar.open .sidebar-footer{
    box-sizing:border-box!important;
    position:relative!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    width:100%!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:8px!important;
    flex:0 0 auto!important;
    min-height:66px!important;
    margin:0!important;
    padding:12px!important;
    visibility:visible!important;
    opacity:1!important;
    background:#080c12!important;
    border-top:1px solid rgba(255,255,255,.13)!important;
    box-shadow:0 -10px 24px rgba(0,0,0,.32)!important;
    z-index:10001!important;
  }
  body.palux-mobile-menu-open .sidebar.open .sidebar-footer .ghost-btn{
    min-width:0!important;
    min-height:42px!important;
    padding:9px 8px!important;
    white-space:nowrap!important;
  }
}

/* PALUX ARCHIVE 124 — ASSOCIATE EMERGENCY ALERT MOBILE FIX
   The permanent Time Clock bar is temporarily removed while the Emergency /
   Safety Alert form is open. The alert card owns the available phone viewport,
   scrolls internally, and respects Android/iOS safe areas. */
@media (max-width:780px){
  body.palux-safety-modal-open{
    overflow:hidden!important;
    overscroll-behavior:none!important;
  }
  body.palux-safety-modal-open #associateClockBar{
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
  body.palux-safety-modal-open #modal:not(.hidden){
    box-sizing:border-box!important;
    inset:0!important;
    width:100%!important;
    height:100dvh!important;
    min-height:100dvh!important;
    padding:
      max(10px, env(safe-area-inset-top))
      10px
      max(12px, env(safe-area-inset-bottom))!important;
    align-items:center!important;
    justify-items:center!important;
    overflow:hidden!important;
    z-index:10050!important;
  }
  body.palux-safety-modal-open #modal:not(.hidden) .modal-card{
    box-sizing:border-box!important;
    width:min(620px,100%)!important;
    max-width:100%!important;
    max-height:calc(100dvh - max(10px, env(safe-area-inset-top)) - max(12px, env(safe-area-inset-bottom)) - 20px)!important;
    margin:0!important;
    padding:16px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    scroll-padding-bottom:24px!important;
  }
  body.palux-safety-modal-open #modalForm[data-type="safetysos"]{
    padding-bottom:12px!important;
  }
  body.palux-safety-modal-open #modalForm[data-type="safetysos"] .danger-primary-btn{
    width:100%!important;
    min-height:48px!important;
    margin-bottom:4px!important;
  }
}

/* PALUX ARCHIVE 125 — PUBLIC PRIVACY AND ACCOUNT-DELETION LINKS */
.palux-legal-links{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  flex-wrap:wrap;
  margin-top:14px;
  font-size:.78rem;
}
.palux-legal-links a{
  color:var(--muted,#64748b);
  text-decoration:underline;
  text-underline-offset:3px;
}
.palux-legal-links a:hover,
.palux-legal-links a:focus{
  color:var(--accent,#d4af37);
}


/* PALUX Archive 165 — route completion, live tracking stop, and RTS photo proof */
.palux-rts-proof-field{border:1px dashed #c8a84e;border-radius:14px;padding:14px;background:#fffdf7}
.palux-rts-proof-field input[type="file"]{width:100%;margin-bottom:10px}
.palux-rts-proof-preview{min-height:105px;border-radius:12px;background:#f7f7f8;display:flex;align-items:center;justify-content:center;gap:10px;flex-direction:column;text-align:center;padding:12px;overflow:hidden}
.palux-rts-proof-preview img{width:100%;max-height:220px;object-fit:contain;border-radius:10px;background:#111}
.palux-rts-proof-preview span{font-size:28px}.palux-rts-proof-preview small{color:#697386}
.palux-rts-proof-thumb{border:0;background:transparent;padding:0;cursor:pointer}
.palux-rts-proof-thumb img{width:58px;height:58px;border-radius:10px;object-fit:cover;border:1px solid #ddd}
.palux-rts-investigation-proof button{width:100%;border:1px solid #e1e4ea;background:#f8f9fb;border-radius:14px;padding:12px;display:flex;align-items:center;gap:14px;cursor:pointer}
.palux-rts-investigation-proof img{width:120px;height:100px;border-radius:10px;object-fit:cover}.palux-rts-investigation-proof span{font-weight:700}

/* PALUX ARCHIVE 174 — MOBILE FULL-SCREEN CONVERSATION
   Presentation only. Desktop chat and all messaging/security data paths remain unchanged. */
.chat-mobile-list-title{display:none}
.chat-mobile-back{display:none}
.chat-header-avatar{display:none}
.chat-header-copy{min-width:0;flex:1}
.chat-newest-button{position:absolute;right:18px;bottom:108px;z-index:18;border:1px solid rgba(201,162,77,.45);border-radius:999px;background:var(--panel);color:var(--text);box-shadow:0 8px 24px rgba(15,23,42,.18);padding:8px 12px;font-size:11px;font-weight:900;opacity:0;transform:translateY(10px);pointer-events:none;transition:.18s ease}
.chat-newest-button.show{opacity:1;transform:none;pointer-events:auto}

@media(max-width:700px){
  .chat-mobile-page.mobile-conversation-list .chat-main{display:none!important}
  .chat-mobile-page.mobile-conversation-list .chat-shell{display:block;min-height:0;border-radius:16px}
  .chat-mobile-page.mobile-conversation-list .chat-sidebar{display:block;max-height:none;border-right:0;border-bottom:0;overflow:visible}
  .chat-mobile-page.mobile-conversation-list .chat-list{padding-bottom:14px}
  .chat-mobile-page.mobile-conversation-list .chat-list-item{min-height:62px;padding:11px 13px}
  .chat-mobile-page.mobile-conversation-list .chat-list-item small{max-width:none}
  .chat-mobile-list-title{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 16px;border-bottom:1px solid var(--line);background:linear-gradient(135deg,rgba(201,162,77,.12),rgba(201,162,77,.03))}
  .chat-mobile-list-title strong,.chat-mobile-list-title small{display:block}
  .chat-mobile-list-title strong{font-size:19px}
  .chat-mobile-list-title small{margin-top:3px;color:var(--muted);font-size:11px}
  .chat-mobile-list-title>span{display:grid;place-items:center;min-width:34px;height:34px;border-radius:999px;background:rgba(201,162,77,.18);color:#8b651c;font-weight:900}

  body.palux-mobile-chat-open{overflow:hidden!important;overscroll-behavior:none!important}
  body.palux-mobile-chat-open #associateClockBar{display:none!important;visibility:hidden!important;pointer-events:none!important}
  body.palux-mobile-chat-open .palux-live-message-banner{display:none!important}
  body.palux-mobile-chat-open .toast{z-index:10020}

  .chat-mobile-page.mobile-conversation-open{
    position:fixed!important;
    inset:0!important;
    width:100%!important;
    height:100dvh!important;
    min-height:100dvh!important;
    z-index:10000!important;
    overflow:hidden!important;
    background:var(--bg)!important;
    padding:0!important;
    margin:0!important;
  }
  .chat-mobile-page.mobile-conversation-open>.module-hero{display:none!important}
  .chat-mobile-page.mobile-conversation-open .chat-shell{
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    overflow:hidden!important;
    background:var(--panel)!important;
  }
  .chat-mobile-page.mobile-conversation-open .chat-sidebar{display:none!important}
  .chat-mobile-page.mobile-conversation-open .chat-main{
    position:relative!important;
    display:grid!important;
    grid-template-rows:auto minmax(0,1fr) auto!important;
    width:100%!important;
    height:100%!important;
    min-width:0!important;
    min-height:0!important;
    padding:0!important;
    background:var(--panel)!important;
  }
  .chat-mobile-page.mobile-conversation-open .chat-header{
    position:relative!important;
    z-index:12!important;
    display:grid!important;
    grid-template-columns:auto auto minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:10px!important;
    min-height:66px!important;
    padding:calc(10px + env(safe-area-inset-top,0px)) 12px 10px!important;
    border-bottom:1px solid var(--line)!important;
    background:color-mix(in srgb,var(--panel) 94%,transparent)!important;
    -webkit-backdrop-filter:blur(16px);
    backdrop-filter:blur(16px);
  }
  .chat-mobile-back{
    display:grid!important;
    place-items:center!important;
    width:40px!important;
    height:40px!important;
    border:0!important;
    border-radius:50%!important;
    background:rgba(120,130,150,.10)!important;
    color:var(--text)!important;
    font-size:34px!important;
    font-weight:400!important;
    line-height:1!important;
    padding:0 0 4px!important;
  }
  .chat-header-avatar{
    display:grid!important;
    place-items:center!important;
    width:42px!important;
    height:42px!important;
    flex:0 0 42px!important;
    border-radius:50%!important;
    overflow:hidden!important;
    background:#d9dee6!important;
    color:#344054!important;
    font-size:11px!important;
    font-weight:900!important;
  }
  .chat-header-avatar.channel{border-radius:12px!important;background:linear-gradient(135deg,#d2aa53,#8b6723)!important;color:#111!important;font-size:20px!important}
  .chat-header-avatar img{width:100%;height:100%;object-fit:cover}
  .chat-header-copy{min-width:0!important}
  .chat-header-copy h3{font-size:16px!important;line-height:1.2!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .chat-header-copy p{font-size:10px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .chat-live-status{font-size:10px!important;padding:7px 9px!important;white-space:nowrap!important}

  .chat-mobile-page.mobile-conversation-open .chat-messages{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    padding:18px 12px 24px!important;
    scroll-padding-top:16px!important;
    scroll-padding-bottom:24px!important;
  }
  .chat-mobile-page.mobile-conversation-open .chat-message{max-width:94%!important;margin-bottom:13px!important}
  .chat-mobile-page.mobile-conversation-open .chat-message-avatar{width:30px!important;height:30px!important;flex-basis:30px!important}
  .chat-mobile-page.mobile-conversation-open .chat-bubble{padding:10px 11px!important}
  .chat-mobile-page.mobile-conversation-open .chat-meta{align-items:flex-start!important;flex-wrap:wrap!important;gap:4px 8px!important}
  .chat-mobile-page.mobile-conversation-open .chat-bubble p{font-size:14px!important;line-height:1.45!important}
  .chat-mobile-page.mobile-conversation-open .chat-message-tools{flex-wrap:wrap!important;gap:2px 5px!important}

  .chat-mobile-page.mobile-conversation-open .enhanced-chat-composer{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    z-index:14!important;
    width:100%!important;
    margin:0!important;
    padding:9px 10px calc(9px + env(safe-area-inset-bottom,0px))!important;
    border-top:1px solid var(--line)!important;
    box-shadow:0 -8px 24px rgba(15,23,42,.10)!important;
    background:var(--panel)!important;
  }
  .chat-mobile-page.mobile-conversation-open .chat-input-row{grid-template-columns:minmax(0,1fr) auto!important;gap:6px!important;padding:6px!important;border-radius:18px!important}
  .chat-mobile-page.mobile-conversation-open .chat-tool-row{grid-column:1/-1!important;display:flex!important;gap:3px!important;padding:0 2px!important}
  .chat-mobile-page.mobile-conversation-open .chat-tool-btn{width:34px!important;height:34px!important;font-size:18px!important}
  .chat-mobile-page.mobile-conversation-open #channelMessageInput{font-size:16px!important;min-height:42px!important;max-height:108px!important;padding:8px 5px!important}
  .chat-mobile-page.mobile-conversation-open .chat-send-btn{width:44px!important;height:44px!important;border-radius:50%!important}
  .chat-mobile-page.mobile-conversation-open .chat-composer-footer{display:none!important}
  .chat-mobile-page.mobile-conversation-open .emoji-picker{left:10px!important;right:10px!important;bottom:118px!important;width:auto!important;max-height:260px!important;overflow:auto!important}
  .chat-mobile-page.mobile-conversation-open .chat-attachment-preview{max-height:94px!important;overflow:auto!important}
  .chat-mobile-page.mobile-conversation-open .chat-preview-card{max-width:none!important}
  .chat-mobile-page.mobile-conversation-open .chat-newest-button{right:14px!important;bottom:118px!important}
  .chat-mobile-page.mobile-conversation-open .chat-empty{padding:70px 20px!important}
}

@media(max-width:380px){
  .chat-mobile-page.mobile-conversation-open .chat-live-status{display:none!important}
  .chat-mobile-page.mobile-conversation-open .chat-header{grid-template-columns:auto auto minmax(0,1fr)!important}
}


/* PALUX ARCHIVE 175 — MOBILE COMPOSER BOTTOM FIX
   Keep the composer in the final grid row. The legacy associate helper must not
   float it over message history while the full-screen conversation is open. */
@media(max-width:700px){
  .chat-mobile-page.mobile-conversation-open .chat-main{
    grid-template-rows:auto minmax(0,1fr) auto!important;
    overflow:hidden!important;
  }
  .chat-mobile-page.mobile-conversation-open .chat-header{grid-row:1!important}
  .chat-mobile-page.mobile-conversation-open .chat-messages{
    grid-row:2!important;
    position:relative!important;
    overflow-y:auto!important;
    padding-bottom:18px!important;
  }
  .chat-mobile-page.mobile-conversation-open .enhanced-chat-composer{
    grid-row:3!important;
    position:static!important;
    inset:auto!important;
    align-self:end!important;
    max-height:none!important;
    transform:none!important;
  }
  .chat-mobile-page.mobile-conversation-open .chat-newest-button{
    position:absolute!important;
  }
}


/* PALUX ARCHIVE 176 — MOBILE CONVERSATION SEARCH
   Mobile-only directory search. Desktop layout and messaging data paths are unchanged. */
.chat-mobile-search,.chat-mobile-search-empty{display:none}
@media(max-width:700px){
  .chat-mobile-page.mobile-conversation-list .chat-mobile-search{
    position:sticky;
    top:0;
    z-index:9;
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    gap:8px;
    margin:12px 12px 8px;
    padding:8px 10px;
    border:1px solid var(--line);
    border-radius:14px;
    background:color-mix(in srgb,var(--panel) 96%,transparent);
    box-shadow:0 6px 18px rgba(15,23,42,.06);
    -webkit-backdrop-filter:blur(12px);
    backdrop-filter:blur(12px);
  }
  .chat-mobile-search-icon{font-size:22px;line-height:1;color:#8b651c;transform:rotate(-20deg)}
  .chat-mobile-search input{
    min-width:0;
    width:100%;
    height:40px;
    padding:0;
    border:0!important;
    outline:0!important;
    background:transparent!important;
    color:var(--text);
    font-size:16px;
    box-shadow:none!important;
  }
  .chat-mobile-search input::-webkit-search-cancel-button{display:none}
  .chat-mobile-search button{
    display:grid;
    place-items:center;
    width:34px;
    height:34px;
    border:0;
    border-radius:50%;
    background:rgba(120,130,150,.12);
    color:var(--text);
    font-size:22px;
    line-height:1;
  }
  .chat-mobile-search button[hidden]{display:none!important}
  .chat-mobile-search-section{display:block;border-top:1px solid var(--line)}
  .chat-mobile-search-section:first-of-type{border-top:0}
  .chat-mobile-search-section.mobile-chat-section-empty{display:none}
  .chat-mobile-search-target.mobile-chat-search-hidden{display:none!important}
  .chat-mobile-search-empty.show{
    display:grid;
    place-items:center;
    gap:5px;
    padding:44px 20px 54px;
    text-align:center;
    color:var(--muted);
  }
  .chat-mobile-search-empty strong{color:var(--text);font-size:16px}
  .chat-mobile-search-empty small{font-size:12px}
}


/* PALUX ARCHIVE 177 — DESKTOP CHAT SEARCH + LAST-MESSAGE STABILITY
   Presentation only. Existing company-scoped messaging and Firebase paths are unchanged. */
@media(min-width:701px){
  .chat-mobile-page .chat-mobile-search{
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    gap:8px;
    margin:10px 12px 8px;
    padding:8px 10px;
    border:1px solid var(--line);
    border-radius:12px;
    background:var(--panel);
    box-shadow:0 5px 16px rgba(15,23,42,.04);
  }
  .chat-mobile-page .chat-mobile-search-icon{font-size:20px;line-height:1;color:#8b651c;transform:rotate(-20deg)}
  .chat-mobile-page .chat-mobile-search input{
    width:100%;min-width:0;border:0!important;outline:0!important;background:transparent!important;
    color:var(--text)!important;font-size:13px!important;padding:5px 2px!important;box-shadow:none!important;
  }
  .chat-mobile-page .chat-mobile-search input::-webkit-search-cancel-button{display:none}
  .chat-mobile-page .chat-mobile-search button{
    display:grid;place-items:center;width:28px;height:28px;border:0;border-radius:50%;
    background:rgba(120,130,150,.10);color:var(--text);font-size:20px;line-height:1;cursor:pointer;
  }
  .chat-mobile-page .chat-mobile-search button[hidden]{display:none!important}
  .chat-mobile-page .chat-mobile-search-section.mobile-chat-section-empty{display:none!important}
  .chat-mobile-page .chat-mobile-search-target.mobile-chat-search-hidden{display:none!important}
  .chat-mobile-page .chat-mobile-search-empty.show{
    display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:4px;
    margin:12px;padding:22px 14px;border:1px dashed var(--line);border-radius:12px;color:var(--muted);text-align:center;
  }
  .chat-mobile-page .chat-mobile-search-empty strong{color:var(--text);font-size:14px}
  .chat-mobile-page .chat-mobile-search-empty small{font-size:11px}
}


/* PALUX PRODUCTION SAFETY UPDATE 203 — compact mobile brand/header.
   Reduces vertical space without changing desktop/tablet navigation. */
@media (max-width:780px){
  body.palux-mobile-menu-open .sidebar.open .brand,
  .sidebar.open .brand{
    min-height:64px!important;
    height:64px!important;
    padding:6px 16px!important;
    padding-top:max(6px,env(safe-area-inset-top,0px))!important;
  }
  body.palux-mobile-menu-open .sidebar.open .brand img,
  .sidebar.open .brand img{
    width:132px!important;
    height:52px!important;
    object-fit:contain!important;
    object-position:left center!important;
  }
  body.palux-mobile-menu-open .sidebar.open .company-switcher{margin-top:6px!important;}
}


/* PALUX 208 — MOBILE DRAWER TAP-OUTSIDE CLOSE
   Mobile navigation behaves like a native drawer: menu items remain clickable,
   tapping the visible page/backdrop closes the drawer, and desktop is unchanged. */
@media (max-width:780px){
  .palux-mobile-menu-backdrop{
    position:fixed!important;
    inset:0!important;
    display:block!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:rgba(8,12,18,.30)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    z-index:9998!important;
    transition:opacity .18s ease,visibility .18s ease!important;
  }
  .palux-mobile-menu-backdrop.show{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }
  body.palux-mobile-menu-open .sidebar.open{z-index:9999!important;}
}
@media (min-width:781px){.palux-mobile-menu-backdrop{display:none!important;}}

/* PALUX 209 — Owner Company Storage Center */
.palux-storage-summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:4px 2px 16px}.palux-storage-summary h3{font-size:28px;margin:4px 0}.palux-storage-summary p{margin:0;color:var(--muted);max-width:720px}.palux-storage-ring{--storage-percent:0;min-width:92px;width:92px;height:92px;border-radius:50%;display:grid;place-content:center;text-align:center;background:conic-gradient(var(--gold2) calc(var(--storage-percent)*1%),#e7eaf0 0);position:relative}.palux-storage-ring:before{content:"";position:absolute;inset:8px;border-radius:50%;background:var(--panel)}.palux-storage-ring strong,.palux-storage-ring small{position:relative;z-index:1}.palux-storage-ring strong{font-size:20px}.palux-storage-ring small{color:var(--muted)}.palux-storage-progress{height:10px;border-radius:999px;background:#e7eaf0;overflow:hidden;margin-bottom:18px}.palux-storage-progress span{display:block;height:100%;min-width:2px;background:linear-gradient(90deg,var(--gold),var(--gold2));border-radius:999px}.palux-storage-breakdown{border:1px solid var(--line);border-radius:14px;overflow:hidden}.palux-storage-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 15px;border-bottom:1px solid var(--line)}.palux-storage-row:last-child{border-bottom:0}.palux-storage-row strong,.palux-storage-row small{display:block}.palux-storage-row small{color:var(--muted);margin-top:2px}.palux-storage-row b{white-space:nowrap}.palux-storage-actions{margin-top:16px}.palux-storage-actions>.card{margin:0}.storage-chip-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.storage-chip-row span{border:1px solid var(--line);background:var(--panel2);border-radius:999px;padding:6px 9px;font-size:11px}.palux-storage-review-links{margin-top:16px}.palux-storage-note{margin-top:16px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--panel2)}.palux-storage-note p{margin:6px 0 0;color:var(--muted)}
@media(max-width:780px){.palux-storage-summary{align-items:flex-start}.palux-storage-ring{min-width:78px;width:78px;height:78px}.palux-storage-summary h3{font-size:23px}.palux-storage-row{align-items:flex-start}.palux-storage-row small{font-size:10px}}

/* PALUX 210 — Owner storage governance */
.palux-storage-warning{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 16px;padding:13px 15px;border:1px solid var(--line);border-radius:14px;background:var(--panel2)}.palux-storage-warning strong,.palux-storage-warning p{display:block}.palux-storage-warning p{margin:4px 0 0;color:var(--muted)}.palux-storage-warning>span{font-size:22px;font-weight:800;white-space:nowrap}.palux-storage-warning.healthy{border-color:#b8ddc8}.palux-storage-warning.watch{border-color:#e8c96b;background:#fff9e9}.palux-storage-warning.high{border-color:#e9a95f;background:#fff4e8}.palux-storage-warning.critical{border-color:#e07b7b;background:#fff0f0}.palux-storage-scan-card{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:16px;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--panel2)}.palux-storage-scan-card h3{margin:4px 0 6px}.palux-storage-scan-card p{margin:0;color:var(--muted);max-width:760px}.palux-storage-scan-status{min-height:18px;margin-top:8px;font-size:12px;font-weight:700;color:var(--muted)}
@media(max-width:780px){.palux-storage-warning,.palux-storage-scan-card{align-items:flex-start}.palux-storage-scan-card{flex-direction:column}.palux-storage-scan-card .secondary-btn{width:100%}.palux-storage-warning>span{font-size:18px}}
/* PALUX 244 — Owner category-specific storage management */
.palux-storage-row-actions{display:flex;align-items:center;gap:10px;justify-content:flex-end;flex-wrap:wrap}.palux-storage-manage-btn{padding:8px 12px!important;min-height:36px!important;font-size:12px!important}.palux-storage-category-manager{display:grid;gap:14px}.palux-storage-category-manager h2{margin:0}.palux-storage-category-size{font-size:32px;font-weight:800;letter-spacing:-.03em}.palux-storage-category-clean,.palux-storage-manager-note{padding:14px;border:1px solid var(--border,#e7e7e7);border-radius:14px;background:var(--card,#fff)}.palux-storage-category-clean p,.palux-storage-manager-note p{margin:6px 0 0;color:var(--muted,#64748b)}@media(max-width:620px){.palux-storage-row{align-items:flex-start!important}.palux-storage-row-actions{width:100%;justify-content:space-between;margin-top:8px}.palux-storage-manage-btn{min-width:92px}}


/* PALUX 246 — Professional Owner Storage Manager */
.palux-storage-manager-shell{display:grid;gap:18px;min-width:min(760px,86vw)}
.palux-storage-manager-head{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:18px;border:1px solid #e4e8ef;border-radius:20px;background:linear-gradient(135deg,#fff 0%,#faf7ef 100%)}
.palux-storage-manager-head h2{margin:3px 0 2px;font-size:28px}.palux-storage-manager-head p{margin:0;color:#667085}
.palux-storage-manager-mark{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:#c99b2e;color:#101828;font-size:22px;font-weight:800}
.palux-storage-manager-total{text-align:right}.palux-storage-manager-total small{display:block;color:#667085}.palux-storage-manager-total strong{font-size:24px}
.palux-storage-manager-toolbar{display:grid;grid-template-columns:1fr auto;gap:10px}.palux-storage-manager-toolbar input,.palux-storage-manager-toolbar select{width:100%;border:1px solid #d8dee8;border-radius:14px;padding:13px 14px;background:#fff;font:inherit;color:#101828}
.palux-storage-manager-selectbar{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 14px;border-radius:14px;background:#f6f8fb;color:#344054}.palux-storage-manager-selectbar label{display:flex;gap:8px;align-items:center;font-weight:700}
.palux-storage-manager-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.palux-storage-manager-stats>div{padding:13px 14px;border:1px solid #e6eaf0;border-radius:14px;background:#fff}.palux-storage-manager-stats small{display:block;color:#667085}.palux-storage-manager-stats strong{display:block;margin-top:2px;font-size:18px}
.palux-storage-file-list{display:grid;gap:8px;max-height:min(48vh,520px);overflow:auto;padding-right:3px}.palux-storage-file-row{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;gap:11px;align-items:center;padding:13px;border:1px solid #e4e8ef;border-radius:15px;background:#fff;cursor:pointer}.palux-storage-file-row:hover{border-color:#d2a83e;box-shadow:0 6px 20px rgba(16,24,40,.06)}.palux-storage-file-row.is-protected{background:#f8f9fb;cursor:default;opacity:.82}.palux-storage-file-icon{width:36px;height:36px;border-radius:11px;background:#f5ead0;display:grid;place-items:center;font-weight:800;color:#8b6512}.palux-storage-file-main{min-width:0}.palux-storage-file-main strong,.palux-storage-file-main small,.palux-storage-file-main em{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.palux-storage-file-main small{color:#667085;margin-top:2px}.palux-storage-file-main em{color:#8a6b22;font-size:12px;font-style:normal;margin-top:3px}.palux-storage-protected-chip{grid-column:3/5;justify-self:start;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#667085;background:#e9edf3;padding:4px 8px;border-radius:999px}
.palux-storage-manager-footer{position:sticky;bottom:0;display:flex;justify-content:space-between;gap:16px;align-items:center;padding:14px;border:1px solid #e1e6ee;border-radius:16px;background:rgba(255,255,255,.96);backdrop-filter:blur(12px)}.palux-storage-manager-footer p{margin:3px 0 0;color:#667085;font-size:13px}.palux-storage-manager-alert{padding:10px 12px;border-radius:12px;background:#fff7df;border:1px solid #f0d484;color:#725516}.palux-storage-manager-loading{padding:30px;text-align:center;border:1px dashed #d8dee8;border-radius:16px;color:#667085}.palux-storage-manager-loading strong,.palux-storage-manager-loading span{display:block}.palux-storage-manager-intro{border-left:4px solid #c99b2e}
@media(max-width:720px){.palux-storage-manager-shell{min-width:0}.palux-storage-manager-head{grid-template-columns:auto 1fr}.palux-storage-manager-total{grid-column:1/-1;text-align:left;padding-top:8px;border-top:1px solid #e8ebf0}.palux-storage-manager-toolbar{grid-template-columns:1fr}.palux-storage-manager-stats{grid-template-columns:1fr 1fr}.palux-storage-manager-stats>div:last-child{grid-column:1/-1}.palux-storage-file-row{grid-template-columns:auto auto minmax(0,1fr)}.palux-storage-file-row>b{grid-column:3}.palux-storage-manager-footer{align-items:stretch;flex-direction:column}.palux-storage-manager-footer .danger-btn{width:100%}.palux-storage-manager-selectbar{align-items:flex-start;flex-direction:column}.palux-storage-file-list{max-height:50vh}}

/* PALUX 250 — professional long-press message actions */
.chat-message{position:relative;transition:background .16s ease,transform .16s ease,border-color .16s ease;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}
.chat-message p,.chat-message .chat-meta,.chat-message .chat-message-tools{user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}
.chat-message-tools.palux-chat-message-meta-tools{min-height:4px;margin-top:5px;justify-content:flex-end}
.chat-message-tools.palux-chat-message-meta-tools:empty{display:none}
.palux-chat-select-indicator{display:none;position:absolute;left:-3px;top:50%;transform:translate(-100%,-50%);width:28px;height:28px;border-radius:999px;border:2px solid rgba(120,130,150,.34);background:var(--panel,#fff);color:#fff;font-size:15px;font-weight:900;align-items:center;justify-content:center;pointer-events:none;z-index:2}
.chat-message.palux-chat-selected{background:rgba(201,162,77,.10);border-radius:16px}
.chat-message.palux-chat-selected .palux-chat-select-indicator{display:flex;background:#c99f2f;border-color:#c99f2f}
.palux-chat-action-backdrop{user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;position:fixed;inset:0;background:rgba(8,13,24,.36);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);z-index:10050;display:flex;align-items:flex-end;justify-content:center;padding:16px;opacity:0;transition:opacity .16s ease}
.palux-chat-action-backdrop.open{opacity:1}
.palux-chat-action-sheet{user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;width:min(520px,100%);border-radius:24px;background:var(--panel,#fff);box-shadow:0 24px 70px rgba(5,10,20,.30);padding:10px 12px max(12px,env(safe-area-inset-bottom));transform:translateY(22px);transition:transform .2s ease;border:1px solid rgba(130,140,160,.20)}
.palux-chat-action-backdrop.open .palux-chat-action-sheet{transform:translateY(0)}
.palux-chat-reaction-strip{display:grid;grid-template-columns:repeat(6,1fr);gap:5px;padding:7px 4px 10px}
.palux-chat-reaction-strip button{border:0;background:transparent;border-radius:14px;font-size:27px;min-height:48px;transition:background .12s ease,transform .12s ease}
.palux-chat-reaction-strip button:active{background:rgba(120,130,150,.12);transform:scale(.92)}
.palux-chat-action-preview{padding:11px 14px;margin-bottom:7px;border-radius:16px;background:rgba(120,130,150,.08);max-height:112px;overflow:hidden}
.palux-chat-action-preview strong{font-size:12px;color:var(--muted,#6b7280)}
.palux-chat-action-preview p{margin:4px 0 0;font-size:14px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.palux-chat-action-list{overflow:hidden;border-radius:17px;background:rgba(120,130,150,.065)}
.palux-chat-action-list button,.palux-chat-action-cancel{width:100%;border:0;background:transparent;display:flex;align-items:center;gap:14px;padding:15px 17px;font-size:16px;font-weight:700;text-align:left;color:var(--text,#111827);border-bottom:1px solid rgba(130,140,160,.14)}
.palux-chat-action-list button:last-child{border-bottom:0}
.palux-chat-action-list button span{width:24px;text-align:center;font-size:19px;color:var(--muted,#667085)}
.palux-chat-action-list button.danger{color:#c92e2e}.palux-chat-action-list button.danger span{color:#c92e2e}
.palux-chat-action-cancel{justify-content:center;margin-top:8px;border-radius:16px;background:rgba(120,130,150,.08);border:0;font-weight:800}
.palux-chat-selection-bar{user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;position:fixed;left:50%;bottom:max(14px,env(safe-area-inset-bottom));transform:translateX(-50%);width:min(680px,calc(100% - 24px));z-index:10020;display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:20px;background:rgba(16,24,40,.96);color:#fff;box-shadow:0 18px 55px rgba(5,10,20,.30);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px)}
.palux-chat-selection-close{width:38px;height:38px;border-radius:999px;border:0;background:rgba(255,255,255,.12);color:#fff;font-size:25px;line-height:1}
.palux-chat-selection-count{display:flex;flex-direction:column;min-width:58px}.palux-chat-selection-count strong{font-size:17px}.palux-chat-selection-count span{font-size:11px;opacity:.7}
.palux-chat-selection-actions{margin-left:auto;display:flex;gap:7px}.palux-chat-selection-actions button{border:0;border-radius:12px;padding:10px 14px;font-weight:800;background:rgba(255,255,255,.12);color:#fff}.palux-chat-selection-actions button.danger{background:#b42318}.palux-chat-selection-actions button:disabled{opacity:.38}
body.dark .palux-chat-action-sheet,[data-theme="dark"] .palux-chat-action-sheet{background:#17191d;border-color:rgba(255,255,255,.08)}
body.dark .palux-chat-action-list button,body.dark .palux-chat-action-cancel,[data-theme="dark"] .palux-chat-action-list button,[data-theme="dark"] .palux-chat-action-cancel{color:#f5f6f7}
@media (max-width:720px){.palux-chat-action-backdrop{padding:8px}.palux-chat-action-sheet{border-radius:24px 24px 18px 18px}.palux-chat-select-indicator{left:4px;transform:translate(0,-50%)}.chat-message.palux-chat-selected{padding-left:38px}.palux-chat-selection-bar{bottom:max(8px,env(safe-area-inset-bottom));border-radius:18px}}

/* PALUX 256 — Professional Hiring Command Center */
.hiring-command-bar{display:grid;grid-template-columns:minmax(280px,1.7fr) repeat(3,minmax(145px,.7fr)) auto;gap:10px;align-items:center;margin:14px 0 12px;padding:14px;position:sticky;top:8px;z-index:8;box-shadow:0 10px 30px rgba(15,23,42,.08)}
.hiring-search-wrap{position:relative;display:flex;align-items:center}.hiring-search-icon{position:absolute;left:13px;font-size:20px;opacity:.55;pointer-events:none}.hiring-search{width:100%;min-height:42px;padding:10px 13px 10px 40px;border:1px solid var(--border,#d9dee8);border-radius:12px;background:var(--surface,#fff);color:inherit;outline:none}.hiring-search:focus{border-color:#d6a928;box-shadow:0 0 0 3px rgba(214,169,40,.12)}
.hiring-command-bar select{min-height:42px;border:1px solid var(--border,#d9dee8);border-radius:12px;padding:0 10px;background:var(--surface,#fff);color:inherit}.hiring-clear-btn{min-height:42px;white-space:nowrap}
.hiring-summary-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}.hiring-summary-strip>div{background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,250,252,.96));border:1px solid var(--border,#e5e7eb);border-radius:14px;padding:12px 14px;display:flex;flex-direction:column;gap:2px}.hiring-summary-strip strong{font-size:22px;line-height:1.1}.hiring-summary-strip span{font-size:12px;opacity:.7}
.hiring-stage-card{display:flex;flex-direction:column;min-height:300px}.hiring-stage-scroll{max-height:520px;overflow:auto;padding-right:3px;scrollbar-width:thin}.hiring-applicant-row{border-radius:12px;transition:background .16s ease,transform .16s ease}.hiring-applicant-row:hover{background:rgba(214,169,40,.07);transform:translateY(-1px)}
.hiring-sync-badge{display:inline-flex;margin-top:5px;padding:3px 7px;border-radius:999px;font-size:10px;font-weight:700;width:max-content}.hiring-sync-badge.success{background:#e8f7ee;color:#137a3b}.hiring-sync-badge.warning{background:#fff4d8;color:#8b5e00}
.hiring-history-card{margin-top:16px}.hiring-history-card .card-head p{margin:3px 0 0;font-size:12px;opacity:.7}.hiring-history-list{display:flex;flex-direction:column;gap:7px}.hiring-history-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:10px;border:1px solid var(--border,#e5e7eb);border-radius:12px;cursor:pointer}.hiring-history-row:hover{background:rgba(15,23,42,.025)}.hiring-history-row>div:nth-child(2){min-width:0;display:flex;flex-direction:column}.hiring-history-row small{opacity:.65;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hiring-history-status{font-size:11px;font-weight:700;border-radius:999px;padding:5px 9px}.hiring-history-status.success{background:#e8f7ee;color:#137a3b}.hiring-history-status.muted{background:#f1f5f9;color:#64748b}
@media(max-width:1100px){.hiring-command-bar{grid-template-columns:1fr 1fr 1fr}.hiring-search-wrap{grid-column:1/-1}.hiring-clear-btn{width:100%}.hiring-summary-strip{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.hiring-command-bar{position:static;grid-template-columns:1fr}.hiring-search-wrap{grid-column:auto}.hiring-summary-strip{grid-template-columns:repeat(2,1fr)}.hiring-history-row{grid-template-columns:auto minmax(0,1fr) auto}.hiring-history-row .text-btn{grid-column:2/-1;justify-self:end}.hiring-stage-scroll{max-height:460px}}

/* PALUX 267 — Restore professional Hiring & Interviews mobile layout.
   Keeps recruiting QR, interview scheduler, open-position dropdown and iOS Firebase fixes. */
@media (max-width: 700px) {
  .hiring-command-bar.card,
  .hiring-command-bar {
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
    padding:16px !important;
    margin:14px 0 16px !important;
    position:static !important;
    border-radius:18px !important;
  }
  .hiring-command-bar .hiring-search-wrap,
  .hiring-search-wrap {
    grid-column:1 !important;
    width:100% !important;
    min-width:0 !important;
  }
  .hiring-command-bar .hiring-search,
  .hiring-command-bar select,
  .hiring-command-bar button,
  .hiring-clear-btn {
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    box-sizing:border-box !important;
  }
  .hiring-command-bar .hiring-search {
    min-height:52px !important;
    font-size:16px !important;
    padding:0 16px 0 44px !important;
    border-radius:14px !important;
  }
  .hiring-command-bar select {
    min-height:52px !important;
    font-size:16px !important;
    border-radius:14px !important;
    padding:0 14px !important;
    background-color:var(--surface,#fff) !important;
  }
  .hiring-command-bar .secondary-btn,
  .hiring-command-bar .primary-btn {
    min-height:52px !important;
    border-radius:14px !important;
    font-size:16px !important;
  }
  .hiring-summary-strip {
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:12px !important;
    margin:0 0 16px !important;
    width:100% !important;
  }
  .hiring-summary-strip > div {
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
    min-height:92px !important;
    padding:16px !important;
    border:1px solid var(--border,#e5e7eb) !important;
    border-radius:18px !important;
    background:linear-gradient(180deg,#fff,#f8fafc) !important;
    box-shadow:0 4px 16px rgba(15,23,42,.035) !important;
    overflow:hidden !important;
  }
  .hiring-summary-strip > div strong {
    display:block !important;
    font-size:26px !important;
    line-height:1 !important;
    margin:0 0 8px !important;
  }
  .hiring-summary-strip > div span {
    display:block !important;
    font-size:14px !important;
    line-height:1.3 !important;
    opacity:.72 !important;
  }
  .hiring-pipeline-grid,
  .grid.three-col.hiring-pipeline-grid {
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:16px !important;
  }
  .hiring-stage-card {
    border-radius:18px !important;
    padding:18px !important;
  }
  .hiring-stage-card .card-head h3 {font-size:20px !important;}
  .hiring-stage-scroll {max-height:none !important;}
}


/* PALUX 271 — professional upcoming interview tracker */
.hiring-upcoming-card{margin:0 0 16px;padding:16px}
.hiring-upcoming-head{align-items:flex-start;gap:12px}.hiring-upcoming-head p{margin:4px 0 0;color:var(--muted);font-size:13px}.hiring-upcoming-head>span{min-width:34px;height:34px;border-radius:999px;display:grid;place-items:center;background:rgba(214,169,40,.14);font-weight:800;color:#8b6518}
.hiring-upcoming-list{display:flex;flex-direction:column;gap:10px}.hiring-interview-row{display:grid;grid-template-columns:90px minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px;border:1px solid var(--border,#e5e7eb);border-radius:16px;background:var(--surface,#fff);cursor:pointer}.hiring-interview-row.is-today{border-color:rgba(214,169,40,.55);box-shadow:0 0 0 3px rgba(214,169,40,.08)}
.hiring-interview-time{display:flex;flex-direction:column;gap:3px}.hiring-interview-time strong{font-size:18px}.hiring-interview-time small{color:var(--muted);font-weight:700}.hiring-interview-person{min-width:0;display:flex;flex-direction:column;gap:3px}.hiring-interview-person strong{font-size:16px}.hiring-interview-person span,.hiring-interview-person small{color:var(--muted);overflow-wrap:anywhere}.hiring-interview-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;max-width:440px}
.hiring-interview-badge{display:inline-flex;align-items:center;gap:4px;width:max-content;max-width:100%;margin-top:6px;padding:5px 8px;border-radius:999px;background:rgba(214,169,40,.12);color:#7a5818;font-size:12px;font-weight:800;line-height:1.3}.hiring-interview-badge.muted{background:rgba(100,116,139,.10);color:var(--muted)}.hiring-interview-badge.walkin{border-radius:14px;white-space:normal;overflow-wrap:anywhere;word-break:normal;max-width:100%;align-items:flex-start}
@media(max-width:800px){.hiring-interview-row{grid-template-columns:74px minmax(0,1fr);align-items:start}.hiring-interview-actions{grid-column:1/-1;justify-content:flex-start;max-width:none}.hiring-interview-actions .text-btn{padding:8px 10px}.hiring-upcoming-card{padding:14px}.hiring-upcoming-head{flex-direction:row}}
@media(max-width:520px){.hiring-interview-row{grid-template-columns:1fr}.hiring-interview-time{flex-direction:row;align-items:baseline;gap:8px}.hiring-interview-actions{grid-column:auto}.hiring-interview-actions .text-btn{font-size:12px}.hiring-interview-badge{white-space:normal;width:auto}}

/* PALUX 285 — Hiring summary cards dark-mode contrast fix */
body.dark .hiring-summary-strip > div,
[data-theme="dark"] .hiring-summary-strip > div {
  background:linear-gradient(180deg,#1b2533,#151e2a) !important;
  border-color:#334155 !important;
  box-shadow:none !important;
}
body.dark .hiring-summary-strip > div strong,
[data-theme="dark"] .hiring-summary-strip > div strong {
  color:#f8fafc !important;
  opacity:1 !important;
}
body.dark .hiring-summary-strip > div span,
[data-theme="dark"] .hiring-summary-strip > div span {
  color:#cbd5e1 !important;
  opacity:1 !important;
}


/* PALUX 289 — desktop message click/right-click mini actions */
@media (hover:hover) and (pointer:fine){
  .chat-message[data-palux-message-id]{cursor:pointer}
  .chat-message[data-palux-message-id]:hover,.chat-message.palux-chat-desktop-active{background:rgba(201,162,77,.075);border-radius:16px}
  .palux-desktop-chat-menu{position:fixed;z-index:10120;width:min(360px,calc(100vw - 24px));padding:8px;border:1px solid rgba(130,140,160,.22);border-radius:16px;background:var(--panel,#fff);box-shadow:0 16px 42px rgba(5,10,20,.24);user-select:none;-webkit-user-select:none;animation:paluxDesktopChatMenuIn .12s ease-out}
  .palux-desktop-chat-reactions{display:grid;grid-template-columns:repeat(6,1fr);gap:3px;padding:2px 2px 7px;border-bottom:1px solid rgba(130,140,160,.14)}
  .palux-desktop-chat-reactions button{border:0;background:transparent;border-radius:10px;min-height:36px;font-size:20px;cursor:pointer}
  .palux-desktop-chat-reactions button:hover{background:rgba(120,130,150,.12);transform:translateY(-1px)}
  .palux-desktop-chat-actions{display:flex;align-items:stretch;gap:4px;padding-top:7px}
  .palux-desktop-chat-actions button{flex:1;min-width:54px;border:0;border-radius:10px;background:transparent;color:var(--text,#111827);padding:7px 6px;display:flex;flex-direction:column;align-items:center;gap:2px;cursor:pointer;font:inherit}
  .palux-desktop-chat-actions button:hover{background:rgba(120,130,150,.10)}
  .palux-desktop-chat-actions button span{font-size:17px;line-height:1}.palux-desktop-chat-actions button small{font-size:10px;font-weight:800;white-space:nowrap}
  .palux-desktop-chat-actions button.danger{color:#c92e2e}
  body.dark .palux-desktop-chat-menu,[data-theme="dark"] .palux-desktop-chat-menu{background:#17191d;border-color:rgba(255,255,255,.10);color:#f5f6f7}
  body.dark .palux-desktop-chat-actions button,[data-theme="dark"] .palux-desktop-chat-actions button{color:#f5f6f7}
  body.dark .palux-desktop-chat-actions button.danger,[data-theme="dark"] .palux-desktop-chat-actions button.danger{color:#ff6b63}
  @keyframes paluxDesktopChatMenuIn{from{opacity:0;transform:translateY(4px) scale(.985)}to{opacity:1;transform:none}}
}

/* PALUX 293 — Address Watch Command Center */
.palux-address-watch-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:18px;margin-top:18px}.palux-address-watch-metrics{margin:18px 0}.palux-address-watch-metrics .quick-card h4{font-size:32px;margin:0 0 6px}.palux-address-watch-register .table-wrap{max-height:430px;overflow:auto}.palux-address-match-list{display:grid;gap:12px}.palux-address-match-card{border:1px solid var(--border,#dfe4ea);border-radius:18px;padding:16px;background:var(--card,#fff)}.palux-address-match-top{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center}.palux-address-match-top strong{display:block;font-size:15px}.palux-address-match-top small{display:block;color:var(--muted,#68758a);margin-top:4px}.palux-address-risk-dot{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#fff3d3;color:#8a5c00;font-weight:900;border:1px solid #efcf72}.palux-address-note{margin:14px 0;padding:12px 14px;border-radius:14px;background:#fff8e7;border:1px solid #f3d58b}.palux-address-note small{display:block;text-transform:uppercase;letter-spacing:.04em;color:#87631b;font-weight:700;margin-bottom:4px}.palux-address-note strong{display:block;color:#5e430b;line-height:1.45}.palux-address-match-actions{display:flex;gap:10px;flex-wrap:wrap}.palux-address-watch-map{min-height:520px;position:relative;overflow:hidden;border-radius:18px;background:#e8edf2}.palux-address-watch-map .palux-map-tiles,.palux-address-watch-map .palux-map-overlay{position:absolute;inset:0}.palux-address-watch-map .palux-map-tile{position:absolute;width:256px;height:256px;max-width:none}.palux-address-map-pin{position:absolute;transform:translate(-50%,-100%);border:0;background:transparent;z-index:5;cursor:pointer;display:flex;flex-direction:column;align-items:center}.palux-address-map-pin span{display:grid;place-items:center;width:34px;height:34px;border-radius:50% 50% 50% 8px;transform:rotate(-45deg);background:#b42318;color:#fff;font-weight:900;border:3px solid #fff;box-shadow:0 5px 16px rgba(0,0,0,.28)}.palux-address-map-pin span::first-letter{transform:rotate(45deg)}.palux-address-map-pin small{margin-top:5px;background:rgba(17,24,39,.88);color:#fff;padding:4px 7px;border-radius:8px;white-space:nowrap;font-size:10px}.palux-address-watch-map .palux-map-style-switch{position:absolute;left:14px;top:14px;z-index:8}.palux-address-watch-map .palux-map-style-switch button.active{background:#172235;color:#fff}.palux-address-watch-map .palux-map-attribution{position:absolute;right:8px;bottom:6px;z-index:8;background:rgba(255,255,255,.82);font-size:9px;padding:2px 5px;border-radius:4px}.palux-address-watch-map .palux-map-empty{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:40px}.palux-address-watch-map .palux-map-empty div{max-width:520px}.palux-address-watch-map .palux-map-empty strong{font-size:18px}.palux-address-watch-map .palux-map-empty p{color:var(--muted,#68758a);line-height:1.5}@media(max-width:980px){.palux-address-watch-layout{grid-template-columns:1fr}.palux-address-watch-map{min-height:420px}}

/* PALUX 303 — registry address stays visually clean while remaining clickable */
.palux-registry-address-link{color:inherit!important;text-decoration:none!important;display:inline-block;cursor:pointer}
.palux-registry-address-link strong{color:inherit!important;font-weight:700}
.palux-registry-address-link:hover strong,.palux-registry-address-link:focus strong{text-decoration:underline;text-underline-offset:3px}

/* PALUX 311 — Address Watch bulk selection */
.palux-address-bulk-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;margin:0 0 10px;border:1px solid var(--border,#dfe4ea);border-radius:14px;background:color-mix(in srgb,var(--card,#fff) 94%,#f7f8fa 6%)}
.palux-address-bulk-left,.palux-address-bulk-actions,.palux-select-all-label{display:flex;align-items:center;gap:10px}.palux-select-all-label{font-weight:700;cursor:pointer}.palux-address-selected-count{font-size:12px;color:var(--muted,#68758a);font-weight:700}.palux-address-select-checkbox{width:18px;height:18px;accent-color:#d9a51b;cursor:pointer}.palux-address-select-cell{width:38px;text-align:center}.palux-address-watch-row.is-selected td{background:rgba(217,165,27,.08)}.palux-address-bulk-actions button:disabled{opacity:.45;cursor:not-allowed}.palux-bulk-remove-btn{white-space:nowrap}@media(max-width:720px){.palux-address-bulk-toolbar{align-items:stretch;flex-direction:column}.palux-address-bulk-actions{justify-content:flex-end;flex-wrap:wrap}}
/* PALUX 316: Interview History dedicated internal scrollbar; approximately four records visible. */
.hiring-interview-history-card:not(.hiring-interview-archive-card) .hiring-upcoming-list{height:320px;max-height:320px;overflow-y:scroll!important;overflow-x:hidden;padding-right:8px;overscroll-behavior:contain;scrollbar-gutter:stable both-edges;-webkit-overflow-scrolling:touch}
.hiring-interview-history-card:not(.hiring-interview-archive-card) .hiring-upcoming-list::-webkit-scrollbar{width:10px}
.hiring-interview-history-card:not(.hiring-interview-archive-card) .hiring-upcoming-list::-webkit-scrollbar-track{background:rgba(148,163,184,.10);border-radius:999px}
.hiring-interview-history-card:not(.hiring-interview-archive-card) .hiring-upcoming-list::-webkit-scrollbar-thumb{background:rgba(100,116,139,.48);border-radius:999px}
@media(max-width:800px){.hiring-interview-history-card:not(.hiring-interview-archive-card) .hiring-upcoming-list{height:300px;max-height:300px}}


/* PALUX 317: hard four-row Interview History viewport with independent internal scrolling. */
.hiring-interview-history-card:not(.hiring-interview-archive-card) .hiring-interview-history-scroll{
  display:flex!important;flex-direction:column!important;gap:10px!important;
  height:410px!important;max-height:410px!important;min-height:0!important;
  overflow-y:auto!important;overflow-x:hidden!important;
  padding-right:10px!important;overscroll-behavior:contain!important;
  scrollbar-gutter:stable!important;-webkit-overflow-scrolling:touch!important;
}
.hiring-interview-history-card:not(.hiring-interview-archive-card) .hiring-interview-history-scroll .hiring-interview-row{flex:0 0 auto!important}
.hiring-interview-history-card:not(.hiring-interview-archive-card) .hiring-interview-history-scroll::-webkit-scrollbar{width:10px!important}
.hiring-interview-history-card:not(.hiring-interview-archive-card) .hiring-interview-history-scroll::-webkit-scrollbar-track{background:rgba(148,163,184,.14);border-radius:999px}
.hiring-interview-history-card:not(.hiring-interview-archive-card) .hiring-interview-history-scroll::-webkit-scrollbar-thumb{background:rgba(71,85,105,.58);border-radius:999px;border:2px solid transparent;background-clip:padding-box}
@media(max-width:800px){.hiring-interview-history-card:not(.hiring-interview-archive-card) .hiring-interview-history-scroll{height:390px!important;max-height:390px!important}}


/* PALUX 318: each Hiring & Interviews card gets its own fixed internal scroll area. */
.hiring-pipeline-grid .hiring-stage-card{
  min-height:0!important;
}
.hiring-pipeline-grid .hiring-stage-card .hiring-stage-scroll{
  height:350px!important;
  max-height:350px!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding-right:8px!important;
  overscroll-behavior:contain!important;
  scrollbar-gutter:stable!important;
  scrollbar-width:thin!important;
  -webkit-overflow-scrolling:touch!important;
}
.hiring-pipeline-grid .hiring-stage-card .hiring-stage-scroll::-webkit-scrollbar{width:9px!important}
.hiring-pipeline-grid .hiring-stage-card .hiring-stage-scroll::-webkit-scrollbar-track{background:rgba(148,163,184,.12);border-radius:999px}
.hiring-pipeline-grid .hiring-stage-card .hiring-stage-scroll::-webkit-scrollbar-thumb{background:rgba(71,85,105,.52);border-radius:999px;border:2px solid transparent;background-clip:padding-box}
.hiring-history-card .hiring-history-list{
  max-height:310px!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding-right:8px!important;
  overscroll-behavior:contain!important;
  scrollbar-gutter:stable!important;
  scrollbar-width:thin!important;
  -webkit-overflow-scrolling:touch!important;
}
.hiring-history-card .hiring-history-list::-webkit-scrollbar{width:9px!important}
.hiring-history-card .hiring-history-list::-webkit-scrollbar-track{background:rgba(148,163,184,.12);border-radius:999px}
.hiring-history-card .hiring-history-list::-webkit-scrollbar-thumb{background:rgba(71,85,105,.52);border-radius:999px;border:2px solid transparent;background-clip:padding-box}
@media(max-width:800px){
  .hiring-pipeline-grid .hiring-stage-card .hiring-stage-scroll{height:330px!important;max-height:330px!important}
  .hiring-history-card .hiring-history-list{max-height:300px!important}
}
