:root{--bg:#f4f7fb;--panel:#fff;--text:#0f172a;--muted:#64748b;--line:#e2e8f0;--brand:#083b79;--brand2:#0ea5e9;--brand3:#1d4ed8;--success:#16a34a;--danger:#dc2626;--warn:#d97706;--shadow:0 22px 55px rgba(15,23,42,.09);--soft:0 12px 30px rgba(15,23,42,.06)}
[data-theme="dark"]{--bg:#07111f;--panel:#0f1b2d;--text:#e5efff;--muted:#93a4bb;--line:#1e2d43;--shadow:0 22px 55px rgba(0,0,0,.25)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at top left,rgba(14,165,233,.11),transparent 30%),var(--bg);color:var(--text);font-family:Inter,Segoe UI,Arial,sans-serif;font-size:15px}.app-shell{display:flex;min-height:100vh}.sidebar{width:296px;background:linear-gradient(180deg,#071525,#0a1d34 70%,#06101e);color:#dbeafe;padding:22px;position:sticky;top:0;height:100vh;overflow:auto;border-right:1px solid rgba(255,255,255,.08)}.brand-block{display:flex;gap:12px;align-items:center;margin-bottom:16px}.brand-mark{width:48px;height:48px;border-radius:18px;background:linear-gradient(135deg,var(--brand2),var(--brand3));display:grid;place-items:center;font-weight:900;color:#fff;box-shadow:0 18px 35px rgba(14,165,233,.25)}.brand-block strong{display:block;color:#fff;font-size:17px}.brand-block span{display:block;color:#93c5fd;font-size:12px;margin-top:3px}.firm-chip{display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.09);border-radius:16px;padding:11px 12px;margin:10px 0 20px;font-weight:700;color:#e0f2fe}.dot{width:9px;height:9px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 5px rgba(34,197,94,.12)}.side-nav{display:grid;gap:7px}.side-nav a{display:flex;align-items:center;gap:10px;color:#cbd5e1;text-decoration:none;padding:12px 13px;border-radius:15px;font-weight:760;transition:.2s}.side-nav a span{width:23px;color:#7dd3fc}.side-nav a:hover,.side-nav a.active{background:rgba(255,255,255,.1);color:#fff;transform:translateX(3px)}.sidebar-card{margin-top:22px;background:linear-gradient(135deg,rgba(14,165,233,.16),rgba(255,255,255,.05));border:1px solid rgba(255,255,255,.12);border-radius:22px;padding:16px}.sidebar-card small{color:#93c5fd}.sidebar-card strong{display:block;color:#fff;margin:6px 0}.sidebar-card p{color:#b6c8df;font-size:12px;line-height:1.5}.progress{height:8px;background:rgba(255,255,255,.12);border-radius:999px;overflow:hidden}.progress span{display:block;height:100%;background:linear-gradient(90deg,#22c55e,#0ea5e9)}.main-area{flex:1;padding:28px;max-width:1540px;margin:0 auto;width:100%}.topbar{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:22px}.topbar h1{margin:0;font-size:30px;letter-spacing:-.045em}.eyebrow{margin:0 0 7px;text-transform:uppercase;color:var(--brand2);font-weight:900;font-size:12px;letter-spacing:.14em}.top-actions{display:flex;gap:10px;align-items:center}.menu-btn{display:none;border:0;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:10px 13px;color:var(--text)}.btn,.ghost,.mini-btn,.ghost-link{border:0;border-radius:14px;padding:12px 18px;text-decoration:none;font-weight:850;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn{background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;box-shadow:var(--soft)}.btn.full{width:100%;margin-top:10px}.ghost{background:var(--panel);color:var(--brand);border:1px solid var(--line)}.ghost-link{background:#eef7ff;color:#075985;border:1px solid #bae6fd}.mini-btn{padding:8px 11px;font-size:12px;background:#e0f2fe;color:#075985}.mini-btn.light{background:#f1f5f9;color:#334155}.hero,.list-hero{border-radius:30px;background:linear-gradient(135deg,var(--panel),rgba(224,242,254,.85));padding:28px;display:flex;justify-content:space-between;align-items:center;gap:20px;box-shadow:var(--shadow);border:1px solid var(--line);margin-bottom:22px}.hero-enterprise{background:radial-gradient(circle at top right,rgba(14,165,233,.28),transparent 34%),linear-gradient(135deg,var(--panel),#edf8ff)}.hero-dark{background:radial-gradient(circle at top right,#0ea5e9,#071525 58%);color:#fff}.hero h2,.list-hero h2{font-size:34px;line-height:1.05;letter-spacing:-.055em;max-width:900px;margin:0 0 10px}.hero p,.list-hero p{color:var(--muted);max-width:820px;line-height:1.6}.hero-dark p{color:#bfdbfe}.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.hero-stat-card{min-width:220px;background:rgba(255,255,255,.65);border:1px solid var(--line);border-radius:24px;padding:22px;box-shadow:var(--soft)}.hero-stat-card span{display:block;color:var(--muted);font-weight:800}.hero-stat-card strong{display:block;font-size:28px;margin:9px 0;letter-spacing:-.04em}.dark-card{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.22)}.dark-card span,.dark-card small{color:#bfdbfe}.metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:22px}.metric-card{background:var(--panel);border:1px solid var(--line);border-radius:25px;box-shadow:var(--shadow);padding:20px;text-decoration:none;color:inherit;position:relative;overflow:hidden}.metric-card:before{content:"";position:absolute;right:-35px;top:-35px;width:90px;height:90px;background:rgba(14,165,233,.1);border-radius:999px}.metric-card span{color:var(--muted);font-weight:850}.metric-card strong{display:block;font-size:31px;margin:12px 0;letter-spacing:-.05em}.metric-card small{color:var(--muted)}.metric-card.success strong{color:var(--success)}.metric-card.warn strong{color:var(--warn)}.metric-card.danger strong{color:var(--danger)}.workspace-grid{display:grid;grid-template-columns:1.4fr .8fr;gap:18px;margin-bottom:22px}.two-col{display:grid;grid-template-columns:1.2fr 1fr;gap:18px}.panel,.form-card{background:var(--panel);border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow);padding:20px;overflow:hidden}.panel-head{display:flex;justify-content:space-between;gap:12px;align-items:start;margin-bottom:16px}.panel h3{margin:0 0 5px;font-size:20px;letter-spacing:-.02em}.panel p{margin:0;color:var(--muted);line-height:1.5}.status-badge,.pill{display:inline-flex;border-radius:999px;background:#e0f2fe;color:#075985;font-weight:900;padding:6px 11px;font-size:12px;white-space:nowrap}.table-wrap{overflow:auto;border-radius:18px;border:1px solid var(--line)}table{width:100%;border-collapse:collapse;background:var(--panel)}th{text-align:left;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em;background:rgba(148,163,184,.1)}th,td{padding:14px 13px;border-bottom:1px solid var(--line);vertical-align:middle}tbody tr:hover{background:rgba(14,165,233,.05)}.empty{color:var(--muted);text-align:center;padding:28px!important}.quick-actions{display:grid;gap:10px}.quick-actions a,.list-stack a,.alert-list div{display:flex;justify-content:space-between;gap:12px;align-items:center;text-decoration:none;color:inherit;background:rgba(148,163,184,.09);border:1px solid var(--line);border-radius:17px;padding:13px 14px;font-weight:800}.list-stack{display:grid;gap:10px}.list-stack span,.alert-list span{color:var(--muted);font-size:13px}.alert-list{display:grid;gap:10px}.alert-list strong{font-size:22px;color:var(--brand2)}.table-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px}.table-toolbar input,.form-card input,.form-card select,.form-card textarea,.login-card input{width:100%;border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:15px;padding:12px 14px;outline:none}.table-toolbar input:focus,.form-card input:focus,.form-card select:focus,.form-card textarea:focus,.login-card input:focus{border-color:var(--brand2);box-shadow:0 0 0 4px rgba(14,165,233,.13)}.form-card{max-width:860px}.form-card p{display:grid;gap:7px;margin:0 0 15px}.form-card label{font-weight:850}.helptext{color:var(--muted);font-size:12px}.errorlist{color:var(--danger);font-weight:800}.form-actions{display:flex;gap:10px;align-items:center;margin-top:18px}.messages{margin-bottom:16px}.alert{background:#ecfeff;border:1px solid #bae6fd;padding:12px;border-radius:16px}.login-body{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at top,#0ea5e9,#071525 58%);padding:20px}.login-card{width:min(440px,100%);background:#fff;border-radius:30px;padding:30px;box-shadow:0 30px 80px rgba(0,0,0,.25)}.login-card h1{font-size:32px;margin:18px 0 6px;letter-spacing:-.05em}.login-card p{color:#64748b}.login-card form p{display:grid;gap:7px}.login-card label{font-weight:850}@media(max-width:980px){.app-shell{display:block}.sidebar{position:fixed;z-index:20;left:-310px;transition:.25s;width:290px}.sidebar.open{left:0}.main-area{padding:17px}.menu-btn{display:inline-flex}.topbar,.hero,.list-hero{align-items:flex-start}.topbar,.hero,.list-hero{display:block}.top-actions{margin-top:12px;flex-wrap:wrap}.workspace-grid,.two-col{grid-template-columns:1fr}.hero h2,.list-hero h2{font-size:28px}.hero-stat-card{margin-top:16px}.table-toolbar{display:grid}.metric-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}}@media print{.sidebar,.top-actions,.menu-btn,.quick-actions{display:none}.main-area{padding:0}.panel,.metric-card,.hero,.list-hero{box-shadow:none}.app-shell{display:block}}

/* Phase 8 enterprise workflow polish */
.workflow-hero{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:20px;align-items:stretch;background:radial-gradient(circle at top right,rgba(14,165,233,.28),transparent 35%),linear-gradient(135deg,var(--panel),#edf8ff);border:1px solid var(--line);border-radius:32px;box-shadow:var(--shadow);padding:28px;margin-bottom:20px}.workflow-hero h2{font-size:38px;line-height:1.02;letter-spacing:-.06em;margin:0 0 10px}.workflow-hero p{color:var(--muted);line-height:1.6;max-width:850px}.workflow-score{background:rgba(255,255,255,.72);border:1px solid var(--line);border-radius:26px;box-shadow:var(--soft);padding:22px;display:grid;align-content:center}.workflow-score span,.workflow-kpi span{color:var(--muted);font-weight:900}.workflow-score strong{font-size:44px;letter-spacing:-.06em}.workflow-score small,.workflow-kpi small{color:var(--muted)}.workflow-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-bottom:20px}.workflow-kpi{background:var(--panel);border:1px solid var(--line);border-radius:24px;box-shadow:var(--soft);padding:18px;min-height:125px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.workflow-kpi:after{content:"";position:absolute;right:-18px;top:-18px;width:70px;height:70px;border-radius:999px;background:rgba(14,165,233,.12)}.workflow-kpi strong{font-size:34px;letter-spacing:-.05em}.workflow-kpi.danger strong{color:var(--danger)}.workflow-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.55fr);gap:18px;margin-bottom:20px}.workflow-panel{padding:26px}.kanban-mini,.kanban-board{display:grid;grid-template-columns:repeat(6,minmax(220px,1fr));gap:14px;overflow:auto;padding-bottom:4px}.kanban-board{align-items:start}.kanban-column{background:linear-gradient(180deg,rgba(148,163,184,.1),rgba(148,163,184,.04));border:1px solid var(--line);border-radius:22px;padding:12px;min-width:220px}.kanban-column.full{min-height:62vh}.kanban-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.kanban-title span{font-weight:950;color:var(--text)}.kanban-title b{background:#e0f2fe;color:#075985;border-radius:999px;padding:5px 9px}.task-card{background:var(--panel);border:1px solid var(--line);border-left:5px solid var(--brand2);border-radius:18px;padding:13px;margin-bottom:10px;box-shadow:0 10px 26px rgba(15,23,42,.06)}.task-card strong{display:block;line-height:1.3}.task-card small{display:block;color:var(--muted);margin:6px 0}.task-card p{font-size:12px;color:var(--muted);line-height:1.45;margin:6px 0 0}.priority-urgent{border-left-color:#dc2626}.priority-high{border-left-color:#d97706}.priority-medium{border-left-color:#0ea5e9}.priority-low{border-left-color:#16a34a}.task-actions{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-top:10px}.task-actions.wrap{flex-wrap:wrap;justify-content:flex-start}.task-actions a{font-size:12px;font-weight:900;text-decoration:none;background:#eef7ff;color:#075985;border:1px solid #bae6fd;border-radius:999px;padding:6px 9px}.empty-mini{color:var(--muted);font-size:13px;text-align:center;border:1px dashed var(--line);border-radius:16px;padding:14px}.bar{width:120px;max-width:100%;height:8px;background:#e2e8f0;border-radius:999px;overflow:hidden}.bar i{display:block;height:100%;background:linear-gradient(90deg,#0ea5e9,#22c55e);border-radius:999px}.strong-link{font-weight:950;color:var(--text);text-decoration:none}.strong-link:hover{color:var(--brand2)}.workflow-grid-two{margin-bottom:20px}.activity-list{display:grid;gap:10px}.activity{display:flex;gap:10px;align-items:center;justify-content:space-between;background:rgba(148,163,184,.09);border:1px solid var(--line);border-radius:18px;padding:12px}.activity small{display:block;color:var(--muted);margin-top:4px}.timeline-feed{display:grid;gap:0}.timeline-item{display:grid;grid-template-columns:24px 1fr;gap:10px;position:relative;padding:0 0 18px}.timeline-item:before{content:"";position:absolute;left:8px;top:18px;bottom:0;width:2px;background:var(--line)}.timeline-item:last-child:before{display:none}.timeline-item>span{width:18px;height:18px;border-radius:999px;background:linear-gradient(135deg,var(--brand2),var(--brand3));box-shadow:0 0 0 5px rgba(14,165,233,.12);margin-top:2px}.timeline-item strong{display:block}.timeline-item small{color:var(--muted)}.compact-alerts div{align-items:flex-start}.report-sheet{background:var(--panel);border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow);padding:30px}.report-head{display:flex;justify-content:space-between;gap:20px;align-items:start;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:18px}.report-head h2{font-size:34px;letter-spacing:-.05em;margin:0}.report-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0}.report-grid div{background:rgba(148,163,184,.09);border:1px solid var(--line);border-radius:18px;padding:14px}.report-grid span{display:block;color:var(--muted);font-size:12px;font-weight:900}.report-grid strong{font-size:20px}.report-line{border-bottom:1px solid var(--line);padding:8px 0;color:var(--muted)}@media(max-width:1180px){.workflow-kpis{grid-template-columns:repeat(2,1fr)}.workflow-layout{grid-template-columns:1fr}.kanban-mini,.kanban-board{grid-template-columns:repeat(3,minmax(220px,1fr))}.workflow-hero{grid-template-columns:1fr}.report-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:680px){.workflow-kpis{grid-template-columns:1fr}.kanban-mini,.kanban-board{grid-template-columns:1fr}.workflow-hero h2{font-size:30px}.workflow-score strong{font-size:36px}.report-head{display:block}.report-grid{grid-template-columns:1fr}}@media print{.workflow-hero .hero-actions,.btn,.ghost,.ghost-link,.mini-btn{display:none!important}.report-sheet{box-shadow:none;border:0}.report-head{display:block}.report-grid{grid-template-columns:repeat(4,1fr)}}


/* Phase 35: mobile app polish, WebView readiness and PWA layout */
:root{--safe-top:env(safe-area-inset-top);--safe-bottom:env(safe-area-inset-bottom)}
body{min-height:100svh;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overscroll-behavior-y:none}.main-area{padding-bottom:calc(28px + var(--safe-bottom))}a,button,input,select,textarea{-webkit-tap-highlight-color:rgba(14,165,233,.16)}button,.btn,.ghost,.ghost-link,.mini-btn{touch-action:manipulation}.panel,.metric-card,.hero,.list-hero,.workflow-kpi,.task-card{backface-visibility:hidden}.mobile-bottom-nav,.pwa-install-fab,.offline-toast{display:none}
.table-wrap{scrollbar-width:thin;-webkit-overflow-scrolling:touch}.table-wrap:after{content:"Swipe table →";display:none;color:var(--muted);font-size:12px;font-weight:800;padding:8px 12px;background:rgba(148,163,184,.08)}
@media(max-width:760px){
  html{font-size:15px}body{background:linear-gradient(180deg,#f7fbff,var(--bg))}.app-shell{min-height:100svh}.main-area{padding:12px 12px calc(86px + var(--safe-bottom));max-width:100%;overflow-x:hidden}.topbar{position:sticky;top:0;z-index:15;margin:-12px -12px 14px;padding:calc(10px + var(--safe-top)) 12px 10px;background:rgba(244,247,251,.9);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);border-radius:0 0 20px 20px}.topbar h1{font-size:20px;letter-spacing:-.035em}.eyebrow{font-size:10px;margin-bottom:3px}.top-actions{gap:7px;overflow-x:auto;padding-bottom:2px}.top-actions .ghost,.top-actions .btn{padding:9px 12px;border-radius:12px;font-size:12px;white-space:nowrap}.menu-btn{min-width:42px;height:42px;border-radius:14px;background:#fff;box-shadow:0 8px 20px rgba(15,23,42,.08)}
  .sidebar{width:min(86vw,320px);left:calc(-1 * min(86vw,320px));padding:18px 16px calc(90px + var(--safe-bottom));box-shadow:30px 0 80px rgba(2,6,23,.38)}.sidebar.open{left:0}.brand-mark{width:42px;height:42px;border-radius:15px}.brand-block strong{font-size:15px}.firm-chip{font-size:13px;padding:9px 10px}.side-nav{grid-template-columns:1fr;gap:5px}.side-nav a,.sidebar>a{padding:11px 12px;border-radius:14px;font-size:14px}.sidebar-card{border-radius:18px;padding:13px;margin-top:14px}
  .hero,.list-hero,.workflow-hero{border-radius:22px;padding:18px;margin-bottom:14px;box-shadow:0 12px 28px rgba(15,23,42,.08)}.hero h2,.list-hero h2,.workflow-hero h2{font-size:24px;line-height:1.08}.hero p,.list-hero p,.workflow-hero p{font-size:13px;line-height:1.55}.hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.hero-actions a,.quick-actions a{min-height:44px;text-align:center}.hero-stat-card{min-width:0;width:100%;border-radius:18px;padding:16px}.hero-stat-card strong{font-size:22px}
  .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.metric-card{border-radius:20px;padding:15px;min-height:112px;box-shadow:0 10px 24px rgba(15,23,42,.07)}.metric-card span{font-size:11px}.metric-card strong{font-size:26px}.metric-card small{font-size:11px}.workspace-grid,.two-col,.workflow-layout,.workflow-grid-two{grid-template-columns:1fr!important;gap:12px}.panel{border-radius:21px;padding:16px;box-shadow:0 10px 24px rgba(15,23,42,.07)}.panel-head{align-items:flex-start;gap:10px;margin-bottom:12px}.panel h3{font-size:17px}.panel p{font-size:12px}.status-badge,.pill{font-size:11px;padding:5px 9px}.quick-actions{grid-template-columns:1fr;gap:8px}.quick-actions a,.list-stack a,.alert-list div{border-radius:15px;padding:12px;font-size:13px}
  .table-wrap{border:0;overflow:visible}.table-wrap:after{display:block}table,thead,tbody,tr,th,td{display:block;width:100%}thead{display:none}tbody tr{background:var(--panel);border:1px solid var(--line);border-radius:18px;margin:0 0 10px;padding:10px;box-shadow:0 8px 20px rgba(15,23,42,.055)}th,td{border:0;padding:7px 6px}td{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;font-size:13px}td:before{content:attr(data-label);font-weight:900;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em;min-width:92px}.table-wrap td:first-child:before{content:"Item"}.table-wrap td:nth-child(2):before{content:"Details"}.table-wrap td:nth-child(3):before{content:"Date"}.table-wrap td:nth-child(4):before{content:"Status"}.empty{display:block!important;text-align:center}.table-toolbar{gap:8px}.form-card,.login-card{border-radius:24px;padding:20px}.form-actions{display:grid;grid-template-columns:1fr;gap:8px}.form-actions .btn,.form-actions .ghost,.form-actions .ghost-link{width:100%}.login-body{padding:14px}.login-card h1{font-size:26px}
  .mobile-bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:30;display:grid;grid-template-columns:repeat(5,1fr);gap:4px;padding:8px 8px calc(8px + var(--safe-bottom));background:rgba(255,255,255,.92);backdrop-filter:blur(20px);border-top:1px solid var(--line);box-shadow:0 -12px 40px rgba(15,23,42,.1)}.mobile-bottom-nav a,.mobile-bottom-nav button{border:0;background:transparent;color:#334155;text-decoration:none;font-weight:900;font-size:18px;display:grid;place-items:center;gap:2px;padding:6px 2px;border-radius:14px}.mobile-bottom-nav span{font-size:10px}.mobile-bottom-nav a:active,.mobile-bottom-nav button:active{background:#e0f2fe;color:#075985}.mobile-bottom-nav form{display:contents}
  .pwa-install-fab{display:inline-flex;position:fixed;right:14px;bottom:calc(78px + var(--safe-bottom));z-index:32;border:0;border-radius:999px;background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;font-weight:950;padding:12px 16px;box-shadow:0 16px 40px rgba(8,59,121,.28)}.offline-toast{display:block;position:fixed;left:12px;right:12px;bottom:calc(76px + var(--safe-bottom));z-index:33;background:#071525;color:#fff;border-radius:16px;padding:12px 14px;text-align:center;font-weight:850;box-shadow:0 18px 50px rgba(2,6,23,.3)}
}
@media(max-width:390px){.metric-grid,.hero-actions{grid-template-columns:1fr}.top-actions{display:none}.topbar{display:grid;grid-template-columns:auto 1fr;align-items:center}.topbar>div:first-of-type{min-width:0}.topbar h1{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.panel{padding:14px}.metric-card{min-height:98px}.metric-card strong{font-size:23px}}
@media(display-mode:standalone){.topbar{padding-top:calc(12px + var(--safe-top))}.pwa-install-fab{display:none!important}}
[data-theme="dark"] .topbar{background:rgba(7,17,31,.9)}[data-theme="dark"] .mobile-bottom-nav{background:rgba(15,27,45,.92)}[data-theme="dark"] .mobile-bottom-nav a,[data-theme="dark"] .mobile-bottom-nav button{color:#cbd5e1}


/* Phase 35B: real mobile card wrapper applied globally */
.mobile-card-wrapper{width:100%;display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:20px}
.mobile-card-wrapper table{width:100%}
.mobile-card-list{display:grid;gap:12px;width:100%}
.mobile-data-card{background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:13px;box-shadow:0 10px 26px rgba(15,23,42,.07);display:grid;gap:8px}
.mobile-data-row{display:grid;grid-template-columns:minmax(88px,36%) 1fr;gap:10px;align-items:start;border-bottom:1px dashed rgba(148,163,184,.35);padding-bottom:8px}
.mobile-data-row:last-child{border-bottom:0;padding-bottom:0}.mobile-data-label{font-size:11px;font-weight:950;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.mobile-data-value{font-size:13px;font-weight:700;color:var(--text);word-break:break-word}.mobile-data-value .mini-btn,.mobile-data-value .btn,.mobile-data-value .ghost{margin:2px 3px 2px 0;padding:8px 10px;font-size:12px}.mobile-card-empty{background:var(--panel);border:1px dashed var(--line);border-radius:18px;padding:18px;text-align:center;color:var(--muted);font-weight:800}.mobile-only-cards{display:none}
@media(max-width:760px){
  .mobile-card-wrapper{overflow:visible;border-radius:0}.mobile-card-wrapper table{display:none!important}.mobile-only-cards{display:grid!important}.table-wrap{overflow:visible!important}.smart-table{display:none!important}.dashboard-card-wrap,.card-wrapper,.mobile-section-card{background:var(--panel);border:1px solid var(--line);border-radius:22px;padding:14px;box-shadow:0 10px 26px rgba(15,23,42,.07);margin-bottom:12px}.mobile-data-card:first-child{border-top:4px solid var(--brand2)}.mobile-data-row:first-child .mobile-data-value{font-size:15px;font-weight:950}.mobile-data-value form{display:inline-block!important}.mobile-data-value button{white-space:nowrap}.panel table{display:none!important}
}
@media(min-width:761px){.mobile-only-cards{display:none!important}.mobile-card-wrapper{overflow-x:auto}}

/* Phase 36: Enterprise mobile transformation - professional card wrapper everywhere */
:root{--card-radius:24px;--tap:48px;--glass:rgba(255,255,255,.82)}
.notification-pill{min-height:44px;min-width:54px;border-radius:16px;background:var(--panel);border:1px solid var(--line);display:inline-flex;align-items:center;justify-content:center;gap:6px;text-decoration:none;color:var(--brand);font-weight:950;box-shadow:0 10px 24px rgba(15,23,42,.055)}
.notification-pill span{background:#ef4444;color:#fff;min-width:19px;height:19px;border-radius:999px;display:grid;place-items:center;font-size:10px;padding:0 5px}.mobile-drawer-backdrop{display:none}.quick-action-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(142px,1fr));gap:12px;margin-top:18px}.action-card{background:rgba(255,255,255,.78);border:1px solid var(--line);border-radius:22px;padding:15px;text-decoration:none;color:var(--text);box-shadow:0 10px 28px rgba(15,23,42,.065);display:grid;gap:5px;min-height:112px;align-content:start;transition:.18s}.action-card:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(15,23,42,.1)}.action-card b{font-size:24px;line-height:1}.action-card span{font-weight:950;font-size:15px;letter-spacing:-.02em}.action-card small{color:var(--muted);font-weight:700;line-height:1.35}.premium-actions{margin-bottom:6px}.mobile-fab-wrap{display:none}.mobile-section-card{position:relative}.side-nav a,.sidebar>a{line-height:1.25}.sidebar>a{display:none!important}

@media(max-width:760px){
  body{background:#eef5fb}.app-shell{display:block}.mobile-drawer-backdrop{display:block;position:fixed;inset:0;background:rgba(2,6,23,.45);backdrop-filter:blur(4px);z-index:39;opacity:0;visibility:hidden;transition:.2s}.mobile-drawer-backdrop.show{opacity:1;visibility:visible}.sidebar{position:fixed!important;z-index:40;top:0;bottom:0;height:100svh;transition:left .25s ease;border-radius:0 26px 26px 0}.sidebar.open{left:0!important}.main-area{padding:10px 12px calc(98px + var(--safe-bottom));width:100%;}
  .topbar{min-height:70px}.topbar h1{font-size:19px}.top-actions .ghost:nth-of-type(2){display:none}.notification-pill{width:44px;min-width:44px;height:44px;padding:0;border-radius:15px}.notification-pill span{position:absolute;margin-left:26px;margin-top:-24px}.menu-btn{display:inline-flex!important;align-items:center;justify-content:center;font-size:19px}
  .hero,.list-hero,.workflow-hero{display:grid!important;grid-template-columns:1fr!important;gap:16px;border-radius:28px;padding:20px;background:linear-gradient(145deg,#fff,#eef8ff)!important;border:1px solid rgba(14,165,233,.13);box-shadow:0 18px 42px rgba(15,23,42,.075)}.hero h2,.list-hero h2,.workflow-hero h2{font-size:26px!important;letter-spacing:-.055em;line-height:1.05;margin-bottom:8px}.hero p,.list-hero p,.workflow-hero p{font-size:13.5px;color:#5d6f85}.hero-stat-card{border-radius:24px;background:#fff;border:1px solid var(--line);box-shadow:0 12px 28px rgba(15,23,42,.07)}
  .premium-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px;margin:14px 0}.premium-actions .btn,.premium-actions .ghost-link{height:48px;border-radius:16px;font-size:13px}.quick-action-grid,.executive-action-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.action-card{border-radius:20px;padding:14px;min-height:108px;background:#fff}.action-card b{font-size:24px}.action-card span{font-size:13.5px}.action-card small{font-size:11.5px}
  .metric-grid,.mobile-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px}.metric-card{border-radius:24px!important;background:#fff!important;border:1px solid var(--line);box-shadow:0 12px 28px rgba(15,23,42,.07);padding:15px!important;min-height:124px;display:flex!important;flex-direction:column;justify-content:space-between}.metric-card span{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#64748b}.metric-card strong{font-size:28px!important;line-height:1}.metric-card small{font-size:11px;color:#0ea5e9;font-weight:900}
  .panel,.form-card,.login-card,.report-sheet,.dashboard-card-wrap,.card-wrapper,.mobile-section-card{border-radius:26px!important;background:#fff!important;border:1px solid var(--line)!important;box-shadow:0 14px 32px rgba(15,23,42,.07)!important;padding:16px!important;margin-bottom:12px}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:14px}.panel h3{font-size:18px;letter-spacing:-.03em}.panel p{font-size:12.5px;line-height:1.45}
  .quick-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px}.quick-actions a{min-height:50px;border-radius:18px!important;background:#f1f8ff!important;color:#075985!important;border:1px solid #d8efff!important;text-decoration:none;font-weight:950;display:flex;align-items:center;justify-content:center;text-align:center;padding:10px!important}
  .table-toolbar{display:grid!important;grid-template-columns:1fr!important;gap:10px}.table-toolbar input,.table-toolbar select,.table-toolbar textarea{height:52px;border-radius:18px}.table-toolbar .ghost{height:50px;border-radius:18px;width:100%}
  .mobile-card-list{gap:12px}.mobile-data-card{border-radius:24px!important;padding:15px!important;background:#fff!important;box-shadow:0 12px 30px rgba(15,23,42,.075)!important;border:1px solid var(--line)!important;position:relative;overflow:hidden}.mobile-data-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:linear-gradient(180deg,var(--brand2),var(--brand))}.mobile-data-row{grid-template-columns:1fr!important;gap:4px;border-bottom:1px solid #eef2f7;padding:9px 0;margin-left:5px}.mobile-data-label{font-size:10.5px;color:#64748b}.mobile-data-value{font-size:14px;font-weight:850;line-height:1.35}.mobile-data-row:first-child .mobile-data-value{font-size:17px;font-weight:950;color:#071525}.mobile-data-value .mini-btn,.mobile-data-value .btn,.mobile-data-value .ghost,.mobile-data-value a{min-height:38px;border-radius:14px;margin:4px 4px 0 0;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.pill,.status-badge{border-radius:999px!important;font-size:11px!important;font-weight:950!important;padding:7px 10px!important}.empty,.mobile-card-empty{border-radius:22px!important;background:#f8fbff!important;color:#64748b!important;padding:20px!important}
  form input,form select,form textarea{font-size:16px!important;border-radius:18px!important;min-height:48px}.btn,.ghost,.ghost-link,.mini-btn{min-height:44px;border-radius:16px!important}.mobile-bottom-nav{grid-template-columns:repeat(5,1fr);padding:9px 9px calc(9px + var(--safe-bottom));border-radius:22px 22px 0 0}.mobile-bottom-nav a,.mobile-bottom-nav button{height:52px;border-radius:18px;font-size:20px}.mobile-bottom-nav span{font-size:10px;margin-top:1px}.mobile-bottom-nav a.active{background:#e0f2fe;color:#075985}
  .mobile-fab-wrap{display:block;position:fixed;right:16px;bottom:calc(86px + var(--safe-bottom));z-index:35}.mobile-fab{width:58px;height:58px;border-radius:22px;border:0;background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;font-size:28px;font-weight:900;box-shadow:0 18px 40px rgba(8,59,121,.32)}.mobile-fab-menu{position:absolute;right:0;bottom:70px;display:none;gap:8px;grid-template-columns:1fr;background:#fff;border:1px solid var(--line);border-radius:22px;padding:10px;min-width:190px;box-shadow:0 18px 46px rgba(15,23,42,.18)}.mobile-fab-menu.open{display:grid}.mobile-fab-menu a{padding:12px 14px;border-radius:16px;background:#f1f8ff;color:#075985;text-decoration:none;font-weight:950}.pwa-install-fab{left:16px;right:auto;bottom:calc(86px + var(--safe-bottom));border-radius:18px}.report-grid{grid-template-columns:1fr!important}
}
@media(max-width:390px){.quick-action-grid,.executive-action-grid,.metric-grid,.mobile-kpi-grid,.quick-actions{grid-template-columns:1fr!important}.hero h2,.list-hero h2{font-size:24px!important}.metric-card{min-height:110px}.top-actions .ghost{display:none}}
[data-theme="dark"] .action-card,[data-theme="dark"] .panel,[data-theme="dark"] .hero,[data-theme="dark"] .list-hero,[data-theme="dark"] .metric-card,[data-theme="dark"] .mobile-data-card,[data-theme="dark"] .mobile-fab-menu{background:#0f1b2d!important}

/* Phase 37: premium mobile-first SaaS polish layer */
:root{--safe-bottom:env(safe-area-inset-bottom,0px);--card-radius:24px;--touch:48px}
.notification-pill{min-height:44px;min-width:44px;border-radius:16px;background:var(--panel);border:1px solid var(--line);display:inline-flex;align-items:center;justify-content:center;text-decoration:none;color:var(--text);font-weight:950;box-shadow:var(--soft)}
.hero-actions,.quick-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;align-items:stretch}.quick-actions a,.hero-actions a{min-height:48px;border-radius:17px;text-decoration:none;font-weight:900;display:flex;align-items:center;justify-content:center;text-align:center;padding:12px 14px;background:linear-gradient(135deg,#eff8ff,#fff);border:1px solid #dbeafe;color:#075985;box-shadow:0 10px 24px rgba(15,23,42,.055)}
.hero-actions .btn{background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;border:0}.hero-actions .ghost-link{background:#fff;color:#075985;border:1px solid #bae6fd}.panel,.hero,.list-hero,.metric-card,.action-card,.hero-stat-card{backdrop-filter:saturate(140%) blur(10px)}
.action-card{position:relative;overflow:hidden}.action-card:after{content:"";position:absolute;inset:auto -25% -45% auto;width:90px;height:90px;border-radius:50%;background:rgba(14,165,233,.08)}
.action-card b{width:42px;height:42px;border-radius:16px;background:#e0f2fe;display:grid;place-items:center}.metric-card{position:relative;overflow:hidden}.metric-card:before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,var(--brand),var(--brand2))}.panel-head{gap:14px}.status-badge,.pill{display:inline-flex;align-items:center;justify-content:center;min-height:30px}
.table-wrap{overflow:auto;border-radius:22px}.smart-table{width:100%;border-collapse:separate;border-spacing:0}.smart-table th{font-size:12px;text-transform:uppercase;letter-spacing:.09em;color:#64748b;background:#f8fafc}.smart-table td,.smart-table th{padding:15px 16px;border-bottom:1px solid var(--line)}.smart-table tr:last-child td{border-bottom:0}
.mobile-only-cards{display:none}
@media (max-width: 900px){
  html,body{max-width:100%;overflow-x:hidden;background:#f7fbff}.app-shell{display:block}.main-area{padding:14px 12px calc(104px + var(--safe-bottom));width:100%;max-width:100%;margin:0}.sidebar{position:fixed;z-index:80;left:0;top:0;bottom:0;width:min(86vw,330px);height:100dvh;transform:translateX(-106%);transition:transform .25s ease;border-radius:0 26px 26px 0;padding:18px;box-shadow:0 25px 80px rgba(0,0,0,.34)}.sidebar.open{transform:translateX(0)}.mobile-drawer-backdrop.show{display:block;position:fixed;inset:0;background:rgba(2,6,23,.48);z-index:70;backdrop-filter:blur(3px)}.brand-block{margin-bottom:12px}.brand-mark{width:44px;height:44px;border-radius:16px}.firm-chip{font-size:13px;padding:10px 12px;border-radius:15px}.side-nav{gap:5px}.side-nav a{padding:12px;border-radius:16px;font-size:14px}.sidebar-card{display:none}
  .topbar{position:sticky;top:0;z-index:50;margin:-14px -12px 14px;padding:12px 12px;background:rgba(247,251,255,.86);backdrop-filter:blur(18px);border-bottom:1px solid rgba(226,232,240,.9);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px}.menu-btn{display:inline-grid;place-items:center;width:46px;height:46px;padding:0;border-radius:18px;background:#fff;box-shadow:0 8px 22px rgba(15,23,42,.08)}.topbar h1{font-size:20px;line-height:1.1;letter-spacing:-.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:48vw}.eyebrow{font-size:9px;margin-bottom:3px;letter-spacing:.18em}.top-actions{gap:7px}.top-actions .ghost{display:none}.top-actions form .btn,.top-actions>.btn{min-width:46px;width:46px;height:46px;padding:0;font-size:0;border-radius:18px}.top-actions form .btn:before{content:"⇥";font-size:20px}.notification-pill{width:46px;height:46px;padding:0;font-size:19px}.notification-pill span{position:absolute;transform:translate(13px,-12px)}
  .hero,.list-hero{display:grid;grid-template-columns:1fr!important;align-items:start;border-radius:28px;padding:18px;margin-bottom:14px;gap:14px;background:linear-gradient(145deg,#fff,#eaf7ff);box-shadow:0 18px 42px rgba(15,23,42,.085)}.hero h2,.list-hero h2{font-size:27px;line-height:1.05;margin:6px 0 9px;letter-spacing:-.055em}.hero p,.list-hero p{font-size:14px;line-height:1.55}.hero-stat-card{width:100%;border-radius:24px;padding:18px;background:#fff;box-shadow:0 12px 30px rgba(15,23,42,.075)}
  .hero-actions,.premium-actions{grid-template-columns:1fr 1fr!important;gap:10px;margin:12px 0}.hero-actions a,.quick-actions a{min-height:50px;border-radius:18px;font-size:13px;padding:11px}.executive-action-grid,.quick-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px;margin-top:12px}.action-card{min-height:116px;border-radius:24px;padding:14px;background:#fff!important;box-shadow:0 12px 30px rgba(15,23,42,.07);border-color:#e5edf7}.action-card b{font-size:22px}.action-card span{font-size:13px;line-height:1.15}.action-card small{font-size:11px;line-height:1.3}
  .metric-grid,.mobile-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px}.metric-card{border-radius:24px;min-height:116px;padding:15px;background:#fff!important;box-shadow:0 12px 30px rgba(15,23,42,.07)}.metric-card span{font-size:11px;text-transform:uppercase;letter-spacing:.08em}.metric-card strong{font-size:24px}.metric-card small{font-size:11.5px}.workspace-grid,.two-col,.report-grid{display:grid!important;grid-template-columns:1fr!important;gap:12px}.panel{border-radius:26px;padding:15px;background:#fff;box-shadow:0 14px 34px rgba(15,23,42,.075);border:1px solid #e5edf7;margin-bottom:12px}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:12px}.panel-head h3{font-size:17px;margin:0 0 4px;letter-spacing:-.035em}.panel-head p{font-size:12.5px;margin:0;color:var(--muted);line-height:1.45}.quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px}.quick-actions a{justify-content:flex-start;text-align:left;background:#f4faff;color:#075985;border:1px solid #dbeafe;box-shadow:none}
  .table-toolbar{display:grid!important;grid-template-columns:1fr!important;gap:10px;margin-bottom:12px}.table-toolbar input,.table-toolbar select,.table-toolbar button{width:100%;min-height:50px;border-radius:19px!important}.table-wrap table{display:none!important}.mobile-only-cards{display:grid!important;gap:12px}.mobile-data-card{display:grid!important;gap:0;border-radius:25px!important;background:#fff!important;border:1px solid #e5edf7!important;box-shadow:0 12px 30px rgba(15,23,42,.075)!important;padding:14px!important;overflow:hidden;position:relative}.mobile-data-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:linear-gradient(180deg,var(--brand2),var(--brand))}.mobile-data-row{display:grid!important;grid-template-columns:1fr!important;border-bottom:1px solid #eef2f7;padding:9px 0 9px 8px;gap:3px}.mobile-data-row:last-child{border-bottom:0}.mobile-data-label{font-size:10px;text-transform:uppercase;letter-spacing:.09em;color:#7c8ca3;font-weight:900}.mobile-data-value{font-size:14px;font-weight:750;color:#0f172a;line-height:1.35;word-break:break-word}.mobile-data-row:first-child .mobile-data-value{font-size:18px;font-weight:950;letter-spacing:-.035em}.mobile-data-value a,.mobile-data-value button,.mobile-data-value .mini-btn{min-height:40px;border-radius:15px!important;padding:9px 12px;margin:4px 5px 0 0;text-decoration:none}.empty,.mobile-card-empty{border-radius:22px!important;background:#f8fbff!important;color:#64748b!important;padding:18px!important;text-align:center;font-weight:750}
  input,select,textarea{font-size:16px!important;min-height:50px;border-radius:19px!important}.btn,.ghost,.ghost-link,.mini-btn{min-height:44px;border-radius:17px!important}.mobile-bottom-nav{display:grid!important;grid-template-columns:repeat(5,1fr);position:fixed;left:8px;right:8px;bottom:8px;z-index:60;padding:7px calc(7px + env(safe-area-inset-right,0px)) calc(7px + var(--safe-bottom)) calc(7px + env(safe-area-inset-left,0px));background:rgba(255,255,255,.94);backdrop-filter:blur(18px);border:1px solid #dbeafe;border-radius:25px;box-shadow:0 20px 60px rgba(15,23,42,.18);gap:4px}.mobile-bottom-nav a,.mobile-bottom-nav button{height:54px;border:0;background:transparent;color:#52657d;text-decoration:none;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:18px;font-weight:900;font-size:20px}.mobile-bottom-nav span{font-size:10px;margin-top:2px}.mobile-bottom-nav a.active{background:#e0f2fe;color:#075985}.mobile-bottom-nav form{margin:0}.mobile-fab-wrap{display:block;position:fixed;right:18px;bottom:calc(88px + var(--safe-bottom));z-index:65}.mobile-fab{width:58px;height:58px;border-radius:22px;border:0;background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;font-size:28px;font-weight:950;box-shadow:0 18px 45px rgba(8,59,121,.33)}.mobile-fab-menu{position:absolute;right:0;bottom:70px;display:none;grid-template-columns:1fr;gap:8px;background:#fff;border:1px solid #dbeafe;border-radius:24px;padding:10px;min-width:205px;box-shadow:0 20px 58px rgba(15,23,42,.2)}.mobile-fab-menu.open{display:grid}.mobile-fab-menu a{padding:13px 14px;border-radius:17px;background:#f1f8ff;color:#075985;text-decoration:none;font-weight:950}.pwa-install-fab{position:fixed;left:16px;bottom:calc(92px + var(--safe-bottom));z-index:64;border:0;border-radius:18px;background:#0f172a;color:#fff;padding:13px 15px;font-weight:950;box-shadow:0 18px 45px rgba(15,23,42,.25)}
}
@media (max-width:430px){.executive-action-grid,.quick-action-grid,.quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important}.hero h2,.list-hero h2{font-size:25px}.metric-card strong{font-size:22px}.topbar h1{max-width:42vw}.action-card{min-height:108px;padding:13px}.action-card b{width:38px;height:38px;border-radius:15px}.hero-actions a{font-size:12px}}
@media (max-width:360px){.executive-action-grid,.quick-action-grid,.quick-actions,.metric-grid,.mobile-kpi-grid{grid-template-columns:1fr!important}.topbar h1{max-width:38vw;font-size:18px}.hero-actions,.premium-actions{grid-template-columns:1fr!important}}

/* ========================================================================
   PHASE 38 — WORLD-CLASS MOBILE CARD POLISH
   Real app polish: compact topbar, native-style cards, clean mobile portal,
   touch-first tables, bottom nav spacing, no overlapping FAB/toasts.
   ======================================================================== */
:root{
  --phase38-radius:24px;
  --phase38-radius-sm:18px;
  --phase38-card:#ffffff;
  --phase38-blue:#0b63ce;
  --phase38-blue2:#00a9f4;
  --phase38-ink:#0b1220;
  --phase38-sub:#667085;
  --phase38-line:#e7edf6;
  --phase38-lift:0 14px 34px rgba(15,23,42,.075);
  --phase38-press:0 8px 20px rgba(15,23,42,.06);
}
body{background:linear-gradient(180deg,#f7fbff 0%,#eef5fb 100%)!important;}
a{word-break:break-word}.badge{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#e9f7ef;color:#087443;font-weight:900;padding:6px 10px;font-size:12px}.app-shell{isolation:isolate}.main-area{padding-bottom:calc(34px + env(safe-area-inset-bottom,0px))}.panel,.hero,.list-hero,.hero-panel,.metric-card,.stat-card,.mobile-data-card{border:1px solid rgba(226,232,240,.95)!important;background:rgba(255,255,255,.96)!important;box-shadow:var(--phase38-lift)!important}.panel,.hero-panel{border-radius:var(--phase38-radius)!important}.panel h3{letter-spacing:-.04em}.grid-2,.stats-grid{display:grid;gap:16px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:18px}.stat-card{border-radius:var(--phase38-radius)!important;padding:18px;display:grid;gap:8px;min-height:118px}.stat-card span{font-size:12px;color:var(--phase38-sub);font-weight:900;text-transform:uppercase;letter-spacing:.08em}.stat-card strong{font-size:31px;letter-spacing:-.06em;color:var(--phase38-ink)}.stat-card small{color:var(--phase38-sub)}.hero-panel{padding:28px;margin-bottom:18px;background:linear-gradient(135deg,#ffffff 0%,#edf8ff 100%)!important}.hero-panel h2{font-size:34px;margin:7px 0 10px;line-height:1.03;letter-spacing:-.06em}.hero-panel p{color:var(--phase38-sub);line-height:1.55}.topbar{border-radius:0}.notification-pill{position:relative;text-decoration:none;border:1px solid var(--line);background:#fff;color:var(--brand);border-radius:16px;min-height:46px;padding:0 14px;display:inline-flex;align-items:center;gap:6px;font-weight:950;box-shadow:var(--phase38-press)}.notification-pill span{display:inline-grid;place-items:center;min-width:20px;height:20px;border-radius:999px;background:#ef4444;color:#fff;font-size:11px}.side-nav a{min-height:46px}.side-nav a[href="/command-center/admin-control/"]{display:none!important}.quick-action-grid.executive-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.action-card{display:grid!important;align-content:start;gap:9px;text-decoration:none;color:var(--phase38-ink);border-radius:22px;padding:16px;border:1px solid var(--phase38-line);background:#fff;box-shadow:var(--phase38-press);min-height:132px}.action-card b{width:42px;height:42px;border-radius:16px;display:grid;place-items:center;background:#eef7ff}.action-card span{font-weight:950;letter-spacing:-.03em}.action-card small{color:var(--phase38-sub);line-height:1.35}.client-portal-shell .hero-panel{margin-top:0}.portal-access-card{border-radius:26px!important;overflow:hidden}.portal-access-card select,.portal-access-card input{border-radius:18px!important}.mobile-bottom-nav{display:none}.mobile-fab-wrap{display:none}.mobile-drawer-backdrop{display:none}.offline-toast{position:fixed;left:16px;right:16px;bottom:18px;z-index:100;background:#071525;color:#fff;border-radius:18px;padding:13px 16px;font-weight:900;box-shadow:0 20px 60px rgba(2,6,23,.25);text-align:center}.pwa-install-fab{position:fixed;right:18px;bottom:18px;z-index:80;border:0;border-radius:18px;background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;padding:13px 16px;font-weight:950;box-shadow:0 16px 42px rgba(8,59,121,.28)}

@media (max-width: 1024px){.quick-action-grid.executive-action-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-2{grid-template-columns:1fr}}

@media (max-width: 760px){
  html{font-size:15px} body{background:#f6faff!important;color:var(--phase38-ink)!important;-webkit-tap-highlight-color:transparent}.app-shell{display:block}.main-area{padding:0 12px calc(112px + env(safe-area-inset-bottom,0px))!important;max-width:100%!important;overflow:hidden}.main-area>*{max-width:100%}.sidebar{position:fixed!important;z-index:100;left:0!important;top:0!important;bottom:0!important;width:min(84vw,320px)!important;height:100dvh!important;transform:translateX(-105%)!important;transition:transform .24s ease!important;border-radius:0 28px 28px 0!important;padding:18px!important;box-shadow:0 30px 90px rgba(2,6,23,.38)!important}.sidebar.open{transform:translateX(0)!important}.mobile-drawer-backdrop.show{display:block!important;position:fixed;inset:0;background:rgba(2,6,23,.48);backdrop-filter:blur(4px);z-index:90}.brand-block{gap:10px;margin-bottom:12px}.brand-mark{width:42px;height:42px;border-radius:15px}.brand-block strong{font-size:15px}.brand-block span{font-size:11px}.firm-chip{margin:8px 0 14px;border-radius:17px;padding:11px 12px;font-size:13px}.side-nav{gap:6px}.side-nav a{min-height:46px;border-radius:16px;padding:11px 12px;font-size:14px}.sidebar-card{display:none!important}
  .topbar{position:sticky!important;top:0!important;z-index:70!important;margin:0 -12px 14px!important;padding:calc(10px + env(safe-area-inset-top,0px)) 12px 10px!important;background:rgba(246,250,255,.94)!important;backdrop-filter:blur(20px)!important;border-bottom:1px solid rgba(226,232,240,.82)!important;display:grid!important;grid-template-columns:48px minmax(0,1fr) auto!important;gap:10px!important;align-items:center!important;min-height:auto!important}.menu-btn{display:grid!important;place-items:center;width:48px!important;height:48px!important;border-radius:18px!important;background:#fff!important;border:1px solid #e5edf7!important;box-shadow:var(--phase38-press)!important;font-size:20px!important}.topbar>div:nth-child(2){min-width:0}.eyebrow{font-size:9px!important;letter-spacing:.18em!important;margin:0 0 2px!important;color:#0ea5e9!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar h1{font-size:21px!important;line-height:1.05!important;letter-spacing:-.055em!important;max-width:none!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top-actions{gap:7px!important;display:flex!important;align-items:center!important}.top-actions .ghost{display:none!important}.notification-pill{width:48px!important;height:48px!important;min-height:48px!important;border-radius:18px!important;padding:0!important;justify-content:center;font-size:19px!important}.notification-pill span{position:absolute;right:4px;top:3px;min-width:19px;height:19px;font-size:10px}.top-actions form .btn,.top-actions>.btn{width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important;padding:0!important;border-radius:18px!important;font-size:0!important}.top-actions form .btn:before{content:"⇥";font-size:21px!important}.top-actions>.btn:before{content:"→";font-size:21px!important}
  .hero,.list-hero,.hero-panel{margin:0 0 13px!important;border-radius:28px!important;padding:18px!important;background:linear-gradient(145deg,#fff 0%,#ecf8ff 100%)!important;box-shadow:0 16px 38px rgba(15,23,42,.075)!important}.hero h2,.list-hero h2,.hero-panel h2{font-size:27px!important;line-height:1.04!important;letter-spacing:-.065em!important;margin:5px 0 9px!important}.hero p,.list-hero p,.hero-panel p{font-size:14px!important;line-height:1.55!important;margin:0 0 10px!important;color:#5f7187!important}.hero-actions,.premium-actions{grid-template-columns:1fr 1fr!important;gap:9px!important;margin-top:12px!important}.hero-actions a,.premium-actions a,.quick-actions a{min-height:48px!important;border-radius:18px!important;font-size:12.5px!important;padding:10px 12px!important;line-height:1.15!important}.hero-stat-card{border-radius:24px!important;padding:16px!important;box-shadow:var(--phase38-press)!important}.hero-stat-card strong{font-size:24px!important}.quick-action-grid.executive-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.action-card{min-height:112px!important;border-radius:24px!important;padding:14px!important;background:#fff!important;box-shadow:0 12px 28px rgba(15,23,42,.07)!important}.action-card b{width:38px!important;height:38px!important;border-radius:15px!important;font-size:19px!important}.action-card span{font-size:13.5px!important}.action-card small{font-size:11px!important;line-height:1.25!important}.metric-grid,.stats-grid,.mobile-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;margin-bottom:13px!important}.metric-card,.stat-card{border-radius:24px!important;padding:15px!important;min-height:112px!important;box-shadow:0 12px 28px rgba(15,23,42,.065)!important}.metric-card span,.stat-card span{font-size:10.5px!important;letter-spacing:.085em!important;color:#6b7d92!important}.metric-card strong,.stat-card strong{font-size:25px!important;line-height:1.05!important}.metric-card small,.stat-card small{font-size:11px!important;color:#6b7d92!important}.workspace-grid,.two-col,.grid-2,.report-grid{grid-template-columns:1fr!important;display:grid!important;gap:12px!important}.panel{border-radius:26px!important;padding:15px!important;margin-bottom:12px!important;background:#fff!important;box-shadow:0 14px 32px rgba(15,23,42,.07)!important;overflow:hidden}.panel-head{gap:12px!important;margin-bottom:12px!important}.panel-head h3,.panel h3{font-size:18px!important;letter-spacing:-.045em!important;margin:0 0 4px!important}.panel-head p,.panel p{font-size:12.5px!important;line-height:1.45!important;color:#667085!important}.quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}.quick-actions a{display:flex!important;justify-content:flex-start!important;align-items:center!important;text-align:left!important;background:#f4faff!important;border:1px solid #dbeafe!important;color:#075985!important;font-weight:900!important;box-shadow:none!important}.table-toolbar{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}.table-toolbar input,.table-toolbar select,.table-toolbar button{width:100%!important;min-height:50px!important;border-radius:19px!important}.table-wrap{border:0!important;overflow:visible!important;border-radius:0!important}.table-wrap table{display:none!important}.mobile-only-cards{display:grid!important;gap:12px!important}.mobile-data-card{border-radius:26px!important;padding:0!important;background:#fff!important;box-shadow:0 14px 34px rgba(15,23,42,.075)!important;overflow:hidden!important;border:1px solid #e7edf6!important}.mobile-data-card:before{display:none!important}.mobile-data-row{display:grid!important;grid-template-columns:1fr!important;gap:4px!important;padding:11px 15px!important;border-bottom:1px solid #edf2f7!important}.mobile-data-row:last-child{border-bottom:0!important}.mobile-data-label{font-size:10px!important;text-transform:uppercase!important;letter-spacing:.1em!important;color:#7b8ca2!important;font-weight:950!important}.mobile-data-value{font-size:14px!important;line-height:1.35!important;color:#111827!important;font-weight:700!important;word-break:break-word}.mobile-data-row:first-child{background:linear-gradient(135deg,#f7fbff,#fff)!important}.mobile-data-row:first-child .mobile-data-value{font-size:18px!important;font-weight:950!important;letter-spacing:-.04em!important}.mobile-data-value .mini-btn,.mobile-data-value a,.mobile-data-value button{min-height:38px!important;border-radius:15px!important;margin:4px 5px 0 0!important;text-decoration:none!important}.pill,.badge,.status-badge{min-height:28px!important;border-radius:999px!important;padding:6px 10px!important;font-size:11px!important}.empty,.mobile-card-empty{border-radius:24px!important;background:#f8fbff!important;color:#667085!important;padding:18px!important;text-align:center!important;font-weight:800!important}.form-card,.login-card{border-radius:28px!important}.form-card p{margin-bottom:13px!important}input,select,textarea{font-size:16px!important;min-height:50px!important;border-radius:19px!important}.btn,.ghost,.ghost-link,.mini-btn{min-height:44px!important;border-radius:17px!important}.mobile-bottom-nav{display:grid!important;grid-template-columns:repeat(5,1fr)!important;position:fixed!important;left:10px!important;right:10px!important;bottom:8px!important;z-index:80!important;padding:7px 7px calc(7px + env(safe-area-inset-bottom,0px))!important;background:rgba(255,255,255,.94)!important;backdrop-filter:blur(22px)!important;border:1px solid rgba(219,234,254,.95)!important;border-radius:28px!important;box-shadow:0 20px 58px rgba(15,23,42,.18)!important;gap:3px!important}.mobile-bottom-nav a,.mobile-bottom-nav button{height:56px!important;border:0!important;background:transparent!important;color:#50657d!important;text-decoration:none!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;border-radius:20px!important;font-weight:950!important;font-size:20px!important}.mobile-bottom-nav span{font-size:10px!important;margin-top:2px!important}.mobile-bottom-nav a.active{background:#e6f3ff!important;color:#075985!important}.mobile-bottom-nav form{margin:0!important}.mobile-fab-wrap{display:block!important;position:fixed!important;right:18px!important;bottom:calc(92px + env(safe-area-inset-bottom,0px))!important;z-index:85!important}.mobile-fab{width:58px!important;height:58px!important;border-radius:22px!important;border:0!important;background:linear-gradient(135deg,#0b63ce,#00a9f4)!important;color:#fff!important;font-size:28px!important;font-weight:950!important;box-shadow:0 18px 45px rgba(11,99,206,.32)!important}.mobile-fab-menu{position:absolute!important;right:0!important;bottom:70px!important;display:none!important;grid-template-columns:1fr!important;gap:8px!important;background:#fff!important;border:1px solid #dbeafe!important;border-radius:24px!important;padding:10px!important;min-width:210px!important;box-shadow:0 20px 58px rgba(15,23,42,.2)!important}.mobile-fab-menu.open{display:grid!important}.mobile-fab-menu a{padding:13px 14px!important;border-radius:17px!important;background:#f1f8ff!important;color:#075985!important;text-decoration:none!important;font-weight:950!important}.pwa-install-fab{left:16px!important;right:auto!important;bottom:calc(94px + env(safe-area-inset-bottom,0px))!important;border-radius:18px!important;padding:12px 14px!important}.offline-toast{left:16px!important;right:16px!important;bottom:calc(92px + env(safe-area-inset-bottom,0px))!important;border-radius:19px!important;z-index:90!important;font-size:13px!important;padding:13px 15px!important}
  .client-portal-shell .hero-panel,.client-portal-shell .list-hero{padding:16px!important}.client-portal-shell .hero-panel h2{font-size:25px!important}.client-portal-shell .grid-2,.client-portal-shell .stats-grid{gap:10px!important}.portal-access-card,.client-portal-shell .panel{border-radius:27px!important}.client-portal-shell .panel h3{font-size:18px!important}.client-portal-shell .panel:first-of-type{margin-top:0!important}
}
@media (max-width:430px){.topbar h1{font-size:20px!important}.hero h2,.list-hero h2,.hero-panel h2{font-size:25px!important}.metric-card strong,.stat-card strong{font-size:23px!important}.quick-action-grid.executive-action-grid,.quick-actions{gap:8px!important}.action-card{min-height:106px!important}.main-area{padding-left:10px!important;padding-right:10px!important}.topbar{margin-left:-10px!important;margin-right:-10px!important}.mobile-bottom-nav{left:8px!important;right:8px!important}.mobile-bottom-nav a,.mobile-bottom-nav button{height:54px!important}.mobile-fab{width:56px!important;height:56px!important}}
@media (max-width:360px){.metric-grid,.stats-grid,.mobile-kpi-grid,.quick-action-grid.executive-action-grid,.quick-actions,.hero-actions,.premium-actions{grid-template-columns:1fr!important}.topbar{grid-template-columns:46px minmax(0,1fr) auto!important}.notification-pill{display:none!important}.top-actions form .btn,.top-actions>.btn{width:46px!important;height:46px!important;min-width:46px!important}.hero h2,.list-hero h2,.hero-panel h2{font-size:23px!important}}
@media (max-width:760px){.phase38-card-head{display:flex!important;align-items:center!important;gap:12px!important;padding:14px 15px!important;background:linear-gradient(135deg,#f7fbff,#fff)!important;border-bottom:1px solid #edf2f7!important}.phase38-card-avatar{width:44px!important;height:44px!important;border-radius:16px!important;background:linear-gradient(135deg,#e0f2fe,#dbeafe)!important;color:#075985!important;display:grid!important;place-items:center!important;font-weight:950!important;letter-spacing:-.04em!important}.phase38-card-title{font-size:18px!important;font-weight:950!important;letter-spacing:-.045em!important;color:#0b1220!important;line-height:1.1!important}.phase38-card-head + .mobile-data-row:first-of-type{display:none!important}.client-portal-shell{display:block!important}.portal-code-actions a{display:grid!important;gap:4px!important;align-items:start!important}.portal-code-actions a span{font-size:11px!important;color:#667085!important;font-weight:800!important}.portal-kpis .stat-card{background:linear-gradient(145deg,#fff,#f7fbff)!important}.portal-hero-compact{min-height:0!important}.portal-grid{align-items:start!important}}


/* Phase 39: Mobile scroll/menu fix + remove offline toast */
.offline-toast,
#offlineToast{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}

html, body{
  height:auto !important;
  min-height:100% !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  overscroll-behavior-y:auto !important;
  -webkit-overflow-scrolling:touch !important;
}

body.drawer-open{
  overflow-y:auto !important;
  position:static !important;
  height:auto !important;
}

@media(max-width:760px){
  html, body{
    height:auto !important;
    min-height:100dvh !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    touch-action:pan-y !important;
  }
  .app-shell{
    min-height:100dvh !important;
    overflow:visible !important;
  }
  .main-area{
    min-height:100dvh !important;
    height:auto !important;
    overflow:visible !important;
    overflow-y:visible !important;
    padding-bottom:calc(122px + env(safe-area-inset-bottom,0px)) !important;
    -webkit-overflow-scrolling:touch !important;
  }
  .main-area > *{
    overflow:visible !important;
  }

  /* keep drawer crisp; no heavy blur over UI */
  .mobile-drawer-backdrop,
  .mobile-drawer-backdrop.show{
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
    background:rgba(2,6,23,.22) !important;
    z-index:88 !important;
  }
  .sidebar{
    filter:none !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    -webkit-overflow-scrolling:touch !important;
    height:100dvh !important;
    max-height:100dvh !important;
  }
  .sidebar.open{
    filter:none !important;
    transform:translateX(0) !important;
  }

  /* improve touch scrolling with fixed bottom nav */
  .mobile-bottom-nav{
    pointer-events:auto !important;
  }
  .mobile-fab-wrap{
    pointer-events:auto !important;
  }

  /* tighter mobile card layout so content scrolls naturally */
  .hero,
  .list-hero,
  .mobile-section-card{
    overflow:visible !important;
  }
  .mobile-data-card,
  .panel,
  .metric-card,
  .action-card{
    contain:layout paint !important;
  }
}


/* Phase 40: Enterprise Mobile UX Stabilization - real button placement, drawer scroll and compact mobile hierarchy */
.sidebar-tools{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
  margin:14px 0 12px;
}
.sidebar-tool-btn{
  width:100%;
  min-height:42px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:15px;
  background:rgba(255,255,255,.08);
  color:#dbeafe;
  text-decoration:none;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:10px 12px;
  font-weight:900;
  font-size:12px;
  cursor:pointer;
}
.sidebar-tool-btn:hover{background:rgba(255,255,255,.13);color:#fff}
.pwa-install-fab{display:none!important}
.pwa-install-side[hidden]{display:none!important}
.pwa-install-side:not([hidden]){display:flex!important}

@media(max-width:760px){
  /* restore true scrolling: page scrolls, drawer scrolls independently */
  html,body{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    touch-action:auto!important;
  }
  body.drawer-open{
    overflow:hidden!important;
    height:100dvh!important;
  }
  .app-shell{overflow:visible!important;min-height:100dvh!important}
  .main-area{
    overflow:visible!important;
    padding-bottom:calc(118px + env(safe-area-inset-bottom,0px))!important;
  }

  /* Sidebar: no blur, no frozen drawer, full independent scroll */
  .sidebar{
    width:min(82vw,304px)!important;
    height:100dvh!important;
    max-height:100dvh!important;
    overflow-y:scroll!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior:contain!important;
    touch-action:pan-y!important;
    padding:16px 14px calc(118px + env(safe-area-inset-bottom,0px))!important;
    border-radius:0 24px 24px 0!important;
    z-index:1000!important;
    scrollbar-width:thin;
  }
  .sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-thumb{background:rgba(148,163,184,.45);border-radius:20px}
  .mobile-drawer-backdrop.show{
    z-index:990!important;
    background:rgba(2,6,23,.34)!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  .side-nav{padding-bottom:8px!important}
  .side-nav a,.sidebar > a{
    min-height:42px!important;
    padding:10px 11px!important;
    font-size:13px!important;
    border-radius:14px!important;
  }
  .brand-block{margin-bottom:8px!important}.firm-chip{margin:8px 0 10px!important}
  .sidebar-tools{
    position:sticky;
    bottom:0;
    background:linear-gradient(180deg,rgba(7,21,37,0),#071525 26%,#071525);
    padding-top:18px;
    padding-bottom:2px;
    margin-top:8px;
  }
  .sidebar-tool-btn{
    min-height:38px!important;
    border-radius:14px!important;
    font-size:11px!important;
    padding:8px 10px!important;
  }

  /* compact top and hero so cards show immediately */
  .topbar{margin-bottom:10px!important}.messages{margin-bottom:10px!important}.alert{padding:10px 12px!important;border-radius:16px!important;font-size:13px!important}
  .hero,.list-hero,.hero-panel,.hero-enterprise{
    padding:15px!important;
    border-radius:24px!important;
    margin-bottom:10px!important;
  }
  .hero h2,.list-hero h2,.hero-panel h2{
    font-size:23px!important;
    line-height:1.08!important;
    margin-bottom:7px!important;
  }
  .hero p,.list-hero p,.hero-panel p{
    font-size:12.5px!important;
    line-height:1.45!important;
    margin-bottom:8px!important;
  }
  .hero-stat-card{display:none!important}
  .hero-actions,.premium-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
    margin-top:10px!important;
  }
  .hero-actions .btn,.hero-actions .ghost-link,.premium-actions .btn,.premium-actions .ghost-link{
    min-height:40px!important;
    height:40px!important;
    padding:8px 10px!important;
    border-radius:15px!important;
    font-size:11.5px!important;
    line-height:1!important;
    box-shadow:none!important;
  }

  /* clean card spacing and no overlaps */
  .metric-grid,.stats-grid,.mobile-kpi-grid{gap:9px!important;margin-bottom:10px!important}
  .metric-card,.stat-card{min-height:96px!important;border-radius:21px!important;padding:12px!important}
  .metric-card strong,.stat-card strong{font-size:22px!important;margin:8px 0!important}
  .panel{border-radius:23px!important;padding:13px!important;margin-bottom:10px!important}
  .quick-action-grid.executive-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;margin-top:10px!important}
  .action-card{min-height:92px!important;border-radius:20px!important;padding:11px!important}
  .action-card b{width:32px!important;height:32px!important;border-radius:13px!important;font-size:16px!important}
  .action-card span{font-size:12px!important}.action-card small{display:none!important}

  /* FAB smaller and placed above bottom nav without touching install/menu buttons */
  .mobile-fab-wrap{
    right:16px!important;
    bottom:calc(96px + env(safe-area-inset-bottom,0px))!important;
    z-index:86!important;
  }
  .mobile-fab{
    width:50px!important;
    height:50px!important;
    border-radius:18px!important;
    font-size:24px!important;
    box-shadow:0 14px 34px rgba(11,99,206,.28)!important;
  }
  .mobile-fab-menu{bottom:60px!important;min-width:190px!important;border-radius:20px!important}
  .mobile-bottom-nav{
    left:12px!important;
    right:12px!important;
    bottom:8px!important;
    border-radius:24px!important;
    padding:6px 6px calc(6px + env(safe-area-inset-bottom,0px))!important;
    z-index:82!important;
  }
  .mobile-bottom-nav a,.mobile-bottom-nav button{height:50px!important;border-radius:18px!important;font-size:18px!important}
  .mobile-bottom-nav span{font-size:9.5px!important}

  /* if browser still exposes old install button, never let it float over content */
  body > .pwa-install-fab{display:none!important;visibility:hidden!important;pointer-events:none!important}
}

@media(max-width:390px){
  .hero-actions,.premium-actions{grid-template-columns:1fr!important}
  .quick-action-grid.executive-action-grid{grid-template-columns:1fr 1fr!important}
  .mobile-fab-wrap{right:14px!important;bottom:calc(92px + env(safe-area-inset-bottom,0px))!important}
  .mobile-fab{width:48px!important;height:48px!important}
}

/* Phase 41: Native-app accordion sidebar + reliable drawer scrolling */
.app-accordion-nav{display:grid;gap:8px;padding-bottom:10px!important}.side-nav .nav-home{min-height:44px}.nav-accordion{border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.045);border-radius:18px;overflow:hidden}.nav-accordion[open]{background:rgba(255,255,255,.075)}.nav-accordion summary{list-style:none;cursor:pointer;min-height:48px;display:flex;align-items:center;gap:10px;padding:12px 13px;color:#e0f2fe;font-weight:950;user-select:none}.nav-accordion summary::-webkit-details-marker{display:none}.nav-accordion summary .nav-ico{width:24px;display:inline-grid;place-items:center;color:#7dd3fc}.nav-accordion summary strong{flex:1;font-size:13px;letter-spacing:.01em}.nav-accordion summary i{font-style:normal;transition:transform .18s ease;color:#93c5fd;font-weight:950}.nav-accordion[open] summary i{transform:rotate(180deg)}.nav-panel{display:grid;gap:5px;padding:0 7px 8px}.nav-panel a{min-height:40px!important;padding:10px 11px!important;border-radius:14px!important;font-size:13px!important;background:rgba(255,255,255,.025)}.nav-panel a span{width:22px!important}.nav-accordion:has(a.active){border-color:rgba(125,211,252,.32);box-shadow:inset 3px 0 0 rgba(14,165,233,.85)}.nav-accordion:has(a.active) summary{color:#fff}.sidebar{scrollbar-gutter:stable;overscroll-behavior:contain}.sidebar,.side-nav{-webkit-overflow-scrolling:touch}.sidebar-tools{flex-shrink:0}.sidebar-card{flex-shrink:0}
@media(max-width:760px){body.drawer-open{position:fixed!important;inset:0!important;width:100%!important;overflow:hidden!important}.sidebar{display:flex!important;flex-direction:column!important;left:0!important;right:auto!important;transform:translateX(-106%)!important;height:100dvh!important;max-height:100dvh!important;overflow-y:auto!important;overflow-x:hidden!important;touch-action:pan-y!important;padding:16px 14px calc(96px + env(safe-area-inset-bottom,0px))!important}.sidebar.open{transform:translateX(0)!important}.app-accordion-nav{flex:1 1 auto!important;overflow:visible!important;min-height:0!important;padding-bottom:14px!important}.nav-accordion{border-radius:17px}.nav-accordion summary{min-height:45px;padding:11px 12px}.nav-panel{gap:4px;padding:0 6px 7px}.nav-panel a{min-height:39px!important;font-size:12.5px!important;padding:9px 10px!important}.sidebar-tools{position:relative!important;bottom:auto!important;background:transparent!important;padding-top:8px!important;margin-top:4px!important}.mobile-drawer-backdrop.show{touch-action:none!important}.side-nav a:hover,.side-nav a.active{transform:none!important}.brand-block,.firm-chip{flex-shrink:0}.sidebar-card{display:none!important}}

/* Phase 42: Mobile drawer click/scroll rescue - native app behavior */
@media(max-width:760px){
  body.drawer-open{
    position:static!important;
    inset:auto!important;
    width:100%!important;
    height:auto!important;
    overflow:hidden!important;
  }
  body.drawer-open .mobile-bottom-nav,
  body.drawer-open .mobile-fab-wrap{
    display:none!important;
    pointer-events:none!important;
  }
  .sidebar{
    pointer-events:auto!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior-y:contain!important;
    touch-action:pan-y!important;
    padding-bottom:calc(36px + env(safe-area-inset-bottom,0px))!important;
  }
  .sidebar.open{
    overflow-y:auto!important;
  }
  .sidebar *{
    pointer-events:auto!important;
  }
  .app-accordion-nav{
    flex:0 0 auto!important;
    overflow:visible!important;
    padding-bottom:10px!important;
  }
  .nav-accordion summary,
  .nav-panel a,
  .sidebar-tool-btn{
    position:relative!important;
    z-index:2!important;
    touch-action:manipulation!important;
  }
  .sidebar-tools{
    position:relative!important;
    bottom:auto!important;
    margin-top:10px!important;
    padding:10px 0 4px!important;
    background:transparent!important;
  }
}

/* Phase 43: REAL native drawer fix — scroll belongs to the drawer/nav, not the page */
@media(max-width:760px){
  html.drawer-open,
  body.drawer-open{
    overflow:hidden!important;
    overscroll-behavior:none!important;
  }
  body.drawer-open .main-area{
    overflow:hidden!important;
    pointer-events:none!important;
  }
  body.drawer-open .mobile-bottom-nav,
  body.drawer-open .mobile-fab-wrap,
  body.drawer-open .topbar{
    pointer-events:none!important;
  }
  body.drawer-open #sidebar,
  body.drawer-open #sidebar *{
    pointer-events:auto!important;
  }
  #sidebar.sidebar{
    display:flex!important;
    flex-direction:column!important;
    position:fixed!important;
    top:0!important;
    left:0!important;
    bottom:auto!important;
    width:min(84vw,320px)!important;
    height:100vh!important;
    height:100dvh!important;
    max-height:100vh!important;
    max-height:100dvh!important;
    transform:translate3d(-106%,0,0)!important;
    overflow:hidden!important;
    touch-action:none!important;
    overscroll-behavior:contain!important;
    padding:16px 14px calc(12px + env(safe-area-inset-bottom,0px))!important;
    z-index:5000!important;
  }
  #sidebar.sidebar.open{
    transform:translate3d(0,0,0)!important;
  }
  #sidebar .brand-block,
  #sidebar .firm-chip,
  #sidebar .sidebar-tools,
  #sidebar .sidebar-card{
    flex:0 0 auto!important;
  }
  #sidebar .app-accordion-nav{
    flex:1 1 auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior-y:contain!important;
    touch-action:pan-y!important;
    padding-right:3px!important;
    padding-bottom:18px!important;
    scrollbar-width:thin!important;
  }
  #sidebar .app-accordion-nav::-webkit-scrollbar{width:6px!important}
  #sidebar .app-accordion-nav::-webkit-scrollbar-thumb{background:rgba(125,211,252,.45)!important;border-radius:999px!important}
  #sidebar .sidebar-tools{
    position:relative!important;
    bottom:auto!important;
    margin:8px 0 0!important;
    padding:8px 0 0!important;
    background:#071525!important;
    z-index:3!important;
  }
  #sidebar details,
  #sidebar summary,
  #sidebar a,
  #sidebar button{
    touch-action:manipulation!important;
  }
  #mobileDrawerBackdrop.show{
    position:fixed!important;
    inset:0!important;
    z-index:4990!important;
    pointer-events:auto!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
}

/* Phase 44: Native mobile drawer final guard
   Full drawer owns scroll; backdrop/bottom nav never steals taps. */
@media (max-width:760px){
  html.drawer-open, body.drawer-open{
    overflow:hidden!important;
    height:100%!important;
    overscroll-behavior:none!important;
  }
  body.drawer-open{position:fixed!important;width:100%!important;left:0!important;right:0!important;}
  body.drawer-open .main-area,
  body.drawer-open .mobile-bottom-nav,
  body.drawer-open .mobile-fab-wrap,
  body.drawer-open .topbar{pointer-events:none!important;}
  #sidebar.sidebar{
    position:fixed!important;
    inset:0 auto 0 0!important;
    width:min(86vw,340px)!important;
    height:100dvh!important;
    max-height:100dvh!important;
    display:block!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior-y:contain!important;
    touch-action:pan-y!important;
    transform:translate3d(-110%,0,0)!important;
    z-index:9999!important;
    padding:16px 14px calc(92px + env(safe-area-inset-bottom,0px))!important;
    scrollbar-width:thin!important;
  }
  #sidebar.sidebar.open{transform:translate3d(0,0,0)!important;}
  #sidebar.sidebar.open,
  #sidebar.sidebar.open *{pointer-events:auto!important;}
  #sidebar .app-accordion-nav{
    display:grid!important;
    gap:8px!important;
    overflow:visible!important;
    height:auto!important;
    max-height:none!important;
    min-height:auto!important;
    padding:0 0 12px!important;
    touch-action:pan-y!important;
  }
  #sidebar .nav-accordion,
  #sidebar .nav-accordion summary,
  #sidebar .nav-panel,
  #sidebar .nav-panel a,
  #sidebar .nav-home,
  #sidebar .sidebar-tool-btn{
    pointer-events:auto!important;
    touch-action:manipulation!important;
  }
  #sidebar .nav-accordion summary{cursor:pointer!important;-webkit-tap-highlight-color:transparent!important;}
  #sidebar .sidebar-tools{position:relative!important;margin-top:12px!important;padding:8px 0 0!important;background:transparent!important;}
  #mobileDrawerBackdrop.show{z-index:9990!important;pointer-events:auto!important;}
}


/* Phase 45: native-app mobile drawer final repair */
@media (max-width:760px){
  html.drawer-open,
  body.drawer-open{
    overflow:hidden!important;
    overscroll-behavior:none!important;
    touch-action:none!important;
  }
  body.drawer-open .main-area,
  body.drawer-open .mobile-bottom-nav,
  body.drawer-open .mobile-fab-wrap{
    pointer-events:none!important;
  }
  #sidebar.sidebar{
    position:fixed!important;
    top:0!important;
    left:0!important;
    bottom:0!important;
    width:min(88vw,350px)!important;
    height:100vh!important;
    height:100dvh!important;
    max-height:100dvh!important;
    transform:translate3d(-112%,0,0)!important;
    z-index:2147483000!important;
    display:flex!important;
    flex-direction:column!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior-y:contain!important;
    touch-action:pan-y!important;
    padding:16px 14px calc(90px + env(safe-area-inset-bottom,0px))!important;
    border-radius:0 24px 24px 0!important;
    scrollbar-width:thin!important;
  }
  #sidebar.sidebar.open{transform:translate3d(0,0,0)!important;pointer-events:auto!important;}
  #sidebar.sidebar.open *{pointer-events:auto!important;}
  #sidebar .brand-block,
  #sidebar .firm-chip,
  #sidebar .side-nav,
  #sidebar .sidebar-tools{flex:0 0 auto!important;}
  #sidebar .app-accordion-nav{
    display:grid!important;
    gap:8px!important;
    overflow:visible!important;
    touch-action:pan-y!important;
  }
  #sidebar .nav-accordion summary,
  #sidebar .nav-panel a,
  #sidebar .nav-home,
  #sidebar .sidebar-tool-btn{
    touch-action:manipulation!important;
    -webkit-tap-highlight-color:transparent!important;
    user-select:none!important;
  }
  #sidebar .sidebar-tools{position:relative!important;bottom:auto!important;background:transparent!important;margin-top:12px!important;}
  #mobileDrawerBackdrop.show{
    position:fixed!important;
    inset:0!important;
    z-index:2147482990!important;
    pointer-events:auto!important;
    background:rgba(2,6,23,.34)!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
}

/* Phase 46: TRUE mobile drawer isolation - final native app drawer
   This neutralizes older mobile/backdrop handlers and makes the sidebar itself the only scroll container. */
@media (max-width: 900px){
  html.drawer-open,
  body.drawer-open{
    overflow:hidden!important;
    height:100%!important;
    overscroll-behavior:none!important;
  }
  body.drawer-open{
    position:fixed!important;
    inset:0!important;
    width:100%!important;
  }
  body.drawer-open .main-area,
  body.drawer-open .mobile-bottom-nav,
  body.drawer-open .mobile-fab-wrap,
  body.drawer-open .topbar{
    pointer-events:none!important;
  }
  #mobileDrawerBackdrop.show{
    position:fixed!important;
    inset:0!important;
    z-index:2147482990!important;
    pointer-events:none!important; /* never steals drawer tap/scroll */
    background:rgba(2,6,23,.38)!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  #sidebar.sidebar{
    position:fixed!important;
    top:0!important;
    left:0!important;
    bottom:0!important;
    right:auto!important;
    width:min(88vw,360px)!important;
    height:100vh!important;
    height:100dvh!important;
    max-height:100dvh!important;
    display:block!important;
    transform:translate3d(-115%,0,0)!important;
    z-index:2147483640!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior-y:contain!important;
    touch-action:pan-y!important;
    padding:16px 14px calc(110px + env(safe-area-inset-bottom,0px))!important;
    border-radius:0 24px 24px 0!important;
    pointer-events:auto!important;
    scrollbar-width:thin!important;
  }
  #sidebar.sidebar.open{transform:translate3d(0,0,0)!important;}
  #sidebar.sidebar.open,
  #sidebar.sidebar.open *{pointer-events:auto!important;}
  #sidebar .brand-block,
  #sidebar .firm-chip,
  #sidebar .side-nav,
  #sidebar .sidebar-tools,
  #sidebar .sidebar-card{position:relative!important;z-index:2!important;}
  #sidebar .app-accordion-nav{
    display:grid!important;
    gap:8px!important;
    overflow:visible!important;
    height:auto!important;
    min-height:auto!important;
    max-height:none!important;
    touch-action:pan-y!important;
  }
  #sidebar .nav-accordion summary,
  #sidebar .nav-panel a,
  #sidebar .nav-home,
  #sidebar .sidebar-tool-btn{
    pointer-events:auto!important;
    touch-action:manipulation!important;
    -webkit-tap-highlight-color:transparent!important;
    user-select:none!important;
  }
  #sidebar .sidebar-tools{
    position:relative!important;
    bottom:auto!important;
    margin-top:14px!important;
    padding-top:8px!important;
    background:transparent!important;
  }
}

/* Phase 47: Premium native mobile app polish */
@media (max-width: 760px){
  :root{
    --mobile-bg:#f6fbff;
    --mobile-card:#ffffff;
    --mobile-ink:#081827;
    --mobile-muted:#64748b;
    --mobile-blue:#0784d8;
    --mobile-blue-2:#e5f6ff;
    --mobile-border:#dbeafe;
    --mobile-shadow:0 18px 42px rgba(15,23,42,.10);
  }
  html.is-mobile-view, html.is-mobile-view body{background:var(--mobile-bg)!important;}
  body{font-size:14px!important;color:var(--mobile-ink)!important;}
  .app-shell{display:block!important;min-height:100dvh!important;background:
    radial-gradient(circle at 95% 8%, rgba(14,165,233,.12), transparent 26%),
    linear-gradient(180deg,#f7fcff 0%,#f3f8ff 100%)!important;}
  .main-area{
    width:100%!important;
    padding:14px 14px calc(112px + env(safe-area-inset-bottom,0px))!important;
    margin:0!important;
    min-height:100dvh!important;
    overflow:visible!important;
  }
  .topbar{
    position:sticky!important;
    top:0!important;
    z-index:80!important;
    display:grid!important;
    grid-template-columns:56px 1fr auto!important;
    gap:10px!important;
    align-items:center!important;
    margin:-14px -14px 14px!important;
    padding:calc(12px + env(safe-area-inset-top,0px)) 16px 12px!important;
    background:rgba(247,252,255,.88)!important;
    backdrop-filter:blur(18px)!important;
    -webkit-backdrop-filter:blur(18px)!important;
    border-bottom:1px solid rgba(191,219,254,.72)!important;
    box-shadow:0 12px 26px rgba(15,23,42,.06)!important;
  }
  .menu-btn{
    width:48px!important;height:48px!important;border:0!important;border-radius:18px!important;
    background:#fff!important;color:#0f172a!important;font-size:27px!important;
    box-shadow:0 10px 24px rgba(15,23,42,.10)!important;
  }
  .topbar .eyebrow{font-size:10px!important;letter-spacing:.22em!important;color:#0284c7!important;margin:0!important;font-weight:900!important;text-transform:uppercase!important;}
  .topbar h1{font-size:23px!important;line-height:1.02!important;letter-spacing:-.05em!important;margin:1px 0 0!important;color:#06111f!important;}
  .top-actions{display:flex!important;gap:8px!important;align-items:center!important;}
  .top-actions .ghost{display:none!important;}
  .notification-pill,
  .top-actions .btn,
  .top-actions form .btn{
    width:48px!important;height:48px!important;min-width:48px!important;padding:0!important;border-radius:18px!important;
    display:inline-flex!important;align-items:center!important;justify-content:center!important;
    background:#fff!important;border:1px solid #e0f2fe!important;box-shadow:0 10px 24px rgba(15,23,42,.10)!important;
    color:#0369a1!important;font-size:0!important;overflow:hidden!important;
  }
  .notification-pill{font-size:22px!important;text-decoration:none!important;position:relative!important;}
  .notification-pill span{position:absolute!important;right:8px!important;top:7px!important;font-size:10px!important;background:#ef4444!important;color:#fff!important;border-radius:999px!important;min-width:16px!important;height:16px!important;display:flex!important;align-items:center!important;justify-content:center!important;}
  .top-actions form .btn::before{content:'→';font-size:24px!important;color:#fff!important;}
  .top-actions form .btn{background:linear-gradient(135deg,#0284c7,#0ea5e9)!important;border-color:transparent!important;}
  .hero,.list-hero,.hero-panel,.hero-enterprise,.mobile-section-card,
  .panel,.card,.stat-card,.hero-stat-card,.metric-card,.dashboard-card,
  .table-card,.form-card,.client-card,.feature-card,
  section[class*='card'], div[class*='card']{
    border-radius:24px!important;
    background:var(--mobile-card)!important;
    border:1px solid rgba(219,234,254,.92)!important;
    box-shadow:var(--mobile-shadow)!important;
    overflow:hidden!important;
  }
  .hero,.list-hero,.hero-panel,.hero-enterprise,.mobile-section-card{padding:22px 20px!important;margin:0 0 14px!important;}
  .hero h1,.hero h2,.hero-enterprise h1,.hero-enterprise h2,.panel h2{font-size:25px!important;line-height:1.04!important;letter-spacing:-.055em!important;color:#07111f!important;}
  .hero p,.hero-enterprise p,.panel p{color:var(--mobile-muted)!important;font-size:14px!important;line-height:1.55!important;}
  .eyebrow{font-size:10px!important;letter-spacing:.25em!important;color:#64748b!important;font-weight:900!important;}
  .premium-actions,.hero-actions,.actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;width:100%!important;}
  .btn,.button,.premium-actions a,.hero-actions a,.actions a,.actions button{
    min-height:52px!important;border-radius:17px!important;font-weight:900!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;
    box-shadow:none!important;text-align:center!important;
  }
  .btn-primary,.premium-actions a:first-child,.hero-actions a:first-child{background:linear-gradient(135deg,#0369a1,#0ea5e9)!important;color:#fff!important;border-color:transparent!important;}
  .grid,.cards-grid,.stats-grid,.module-grid,.dashboard-grid,.enterprise-grid{
    display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;
  }
  .grid > *, .cards-grid > *, .stats-grid > *, .module-grid > *, .dashboard-grid > *, .enterprise-grid > *{
    min-height:112px!important;border-radius:22px!important;padding:15px!important;
  }
  .panel{padding:18px!important;margin-bottom:14px!important;}
  table{font-size:13px!important;}
  .table-responsive,.table-wrap{border-radius:20px!important;overflow:auto!important;-webkit-overflow-scrolling:touch!important;}
  input,select,textarea{
    min-height:50px!important;border-radius:16px!important;background:#fff!important;border:1px solid #dbeafe!important;font-size:15px!important;
  }
  .mobile-fab-wrap{right:18px!important;bottom:calc(92px + env(safe-area-inset-bottom,0px))!important;z-index:120!important;}
  .mobile-fab{width:60px!important;height:60px!important;border-radius:22px!important;background:linear-gradient(135deg,#0284c7,#0ea5e9)!important;box-shadow:0 18px 38px rgba(2,132,199,.35)!important;}
  .mobile-bottom-nav{
    left:14px!important;right:14px!important;bottom:calc(10px + env(safe-area-inset-bottom,0px))!important;width:auto!important;
    height:78px!important;border-radius:28px!important;padding:8px!important;
    background:rgba(255,255,255,.92)!important;border:1px solid rgba(219,234,254,.95)!important;
    backdrop-filter:blur(18px)!important;-webkit-backdrop-filter:blur(18px)!important;
    box-shadow:0 18px 44px rgba(15,23,42,.14)!important;
  }
  .mobile-bottom-nav a,.mobile-bottom-nav button{
    border-radius:22px!important;color:#475569!important;font-weight:900!important;gap:3px!important;font-size:18px!important;
  }
  .mobile-bottom-nav a.active,.mobile-bottom-nav button:active{
    background:linear-gradient(180deg,#e0f2fe,#eff6ff)!important;color:#0369a1!important;
  }
  .mobile-bottom-nav span{font-size:10px!important;font-weight:900!important;}
  #sidebar.sidebar{
    background:linear-gradient(180deg,#071323 0%,#081a2e 100%)!important;
    border-right:1px solid rgba(125,211,252,.18)!important;
    box-shadow:26px 0 60px rgba(2,6,23,.34)!important;
  }
  #sidebar .brand-block{padding:6px 0 14px!important;}
  #sidebar .brand-mark{border-radius:18px!important;background:linear-gradient(135deg,#0f75d6,#07529b)!important;box-shadow:0 12px 30px rgba(14,165,233,.24)!important;}
  #sidebar .firm-chip,#sidebar .nav-home,#sidebar .nav-accordion{border-radius:20px!important;background:rgba(148,163,184,.08)!important;border:1px solid rgba(148,163,184,.14)!important;}
  #sidebar .nav-panel{padding:6px!important;display:grid!important;gap:7px!important;}
  #sidebar .nav-panel a{border-radius:16px!important;background:rgba(15,23,42,.24)!important;min-height:48px!important;}
  #sidebar .nav-panel a.active,#sidebar .nav-home.active{background:linear-gradient(135deg,rgba(14,165,233,.28),rgba(14,165,233,.10))!important;border-color:rgba(125,211,252,.38)!important;}
  #sidebar .sidebar-card{display:none!important;}
  #sidebar .sidebar-tool-btn{height:50px!important;border-radius:18px!important;background:rgba(255,255,255,.08)!important;border:1px solid rgba(148,163,184,.18)!important;color:#dbeafe!important;}
}
@media (max-width: 390px){
  .topbar h1{font-size:20px!important;}
  .grid,.cards-grid,.stats-grid,.module-grid,.dashboard-grid,.enterprise-grid{gap:10px!important;}
  .grid > *, .cards-grid > *, .stats-grid > *, .module-grid > *, .dashboard-grid > *, .enterprise-grid > *{padding:13px!important;min-height:102px!important;}
}

/* Phase 48: premium native mobile landing typography + collapsible action cards */
.mobile-action-collapse{margin-top:16px;border:1px solid rgba(186,230,253,.9);border-radius:24px;background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(240,249,255,.72));box-shadow:0 18px 45px rgba(15,23,42,.08);overflow:hidden}
.mobile-action-collapse>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 16px;font-weight:950;color:#0b1220;letter-spacing:-.035em;background:linear-gradient(135deg,#ffffff,#f0f9ff)}
.mobile-action-collapse>summary::-webkit-details-marker{display:none}.mobile-action-collapse>summary span{display:flex;align-items:center;gap:8px}.mobile-action-collapse>summary span:before{content:'⌁';display:grid;place-items:center;width:30px;height:30px;border-radius:13px;background:#e0f2fe;color:#0284c7;font-weight:950}.mobile-action-collapse>summary small{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#64748b;font-weight:900}.mobile-action-collapse>summary:after{content:'⌄';width:30px;height:30px;border-radius:12px;display:grid;place-items:center;background:#fff;border:1px solid #dbeafe;color:#075985;transition:.2s}.mobile-action-collapse[open]>summary:after{transform:rotate(180deg)}.mobile-action-collapse .quick-action-grid,.mobile-action-collapse .quick-actions{padding:12px;margin-top:0!important}.auto-action-collapse{margin-top:10px}
@media (max-width:760px){
  body{background:linear-gradient(180deg,#f4fbff 0%,#f8fbff 48%,#eef7ff 100%)!important}.main-area{background:linear-gradient(180deg,#eef8ff 0%,#f8fbff 34%,#f6faff 100%)!important}.topbar{background:rgba(255,255,255,.8)!important;border-bottom:1px solid rgba(219,234,254,.88)!important;box-shadow:0 12px 34px rgba(14,165,233,.08)!important}.topbar .eyebrow{font-size:10px!important;letter-spacing:.2em!important;background:linear-gradient(90deg,#0284c7,#0ea5e9,#0369a1)!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important}.topbar h1{font-weight:950!important;letter-spacing:-.075em!important;text-wrap:balance!important;text-shadow:0 1px 0 rgba(255,255,255,.9)!important}
  .hero-enterprise{position:relative!important;isolation:isolate!important;background:radial-gradient(circle at 92% 8%,rgba(14,165,233,.22),transparent 28%),radial-gradient(circle at 12% 100%,rgba(2,132,199,.13),transparent 35%),linear-gradient(145deg,#ffffff 0%,#f7fcff 56%,#eef8ff 100%)!important;border:1px solid rgba(186,230,253,.92)!important;box-shadow:0 20px 52px rgba(15,23,42,.10)!important;overflow:hidden!important}
  .hero-enterprise:before{content:''!important;position:absolute!important;inset:0!important;background:linear-gradient(110deg,rgba(255,255,255,.7),transparent 45%),repeating-linear-gradient(135deg,rgba(14,165,233,.04) 0 1px,transparent 1px 16px)!important;z-index:-1!important}.hero-enterprise .eyebrow{display:inline-flex!important;align-items:center!important;gap:8px!important;padding:8px 11px!important;margin-bottom:14px!important;border-radius:999px!important;background:#e8f6ff!important;border:1px solid #c7eaff!important;color:#0369a1!important;font-size:10px!important;letter-spacing:.22em!important;box-shadow:inset 0 1px 0 #fff!important}.hero-enterprise .eyebrow:before{content:'';width:7px;height:7px;border-radius:50%;background:#0ea5e9;box-shadow:0 0 0 5px rgba(14,165,233,.13)}
  .hero h2,.list-hero h2,.hero-panel h2{font-size:clamp(27px,7.1vw,38px)!important;line-height:.98!important;font-weight:950!important;letter-spacing:-.085em!important;color:#07111f!important;max-width:100%!important;text-wrap:balance!important;margin-bottom:13px!important}.hero h2:after{content:'';display:block;width:72px;height:5px;border-radius:999px;margin-top:15px;background:linear-gradient(90deg,#0284c7,#38bdf8,#bae6fd)!important}.hero p,.list-hero p,.hero-panel p{font-size:15px!important;line-height:1.58!important;color:#5c6f86!important;font-weight:650!important;text-wrap:pretty!important}.hero-actions,.premium-actions{padding:3px!important;background:rgba(255,255,255,.72)!important;border:1px solid #dbeafe!important;border-radius:22px!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.85)!important}.hero-actions .btn,.premium-actions .btn{box-shadow:0 12px 28px rgba(2,132,199,.24)!important}.hero-actions .ghost-link,.premium-actions .ghost-link{background:#fff!important;color:#075985!important}
  .mobile-action-collapse{border-radius:26px!important;margin-top:16px!important;background:rgba(255,255,255,.82)!important;backdrop-filter:blur(18px)!important}.mobile-action-collapse:not([open]){box-shadow:0 12px 30px rgba(15,23,42,.07)!important}.mobile-action-collapse>summary{min-height:58px!important;padding:13px 14px!important}.landing-action-collapse .quick-action-grid.executive-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:10px!important;gap:10px!important}.landing-action-collapse:not([open]){margin-bottom:6px!important}.action-card{position:relative!important;background:linear-gradient(145deg,#fff,#f8fcff)!important;border:1px solid #e2f1ff!important;box-shadow:0 12px 26px rgba(2,132,199,.08)!important;overflow:hidden!important}.action-card:after{content:''!important;position:absolute!important;right:-24px!important;bottom:-24px!important;width:74px!important;height:74px!important;border-radius:50%!important;background:rgba(14,165,233,.08)!important}.action-card b{background:linear-gradient(145deg,#eff8ff,#e0f2fe)!important;color:#0369a1!important;box-shadow:inset 0 1px 0 #fff!important}.action-card span{font-weight:950!important;color:#0f172a!important;letter-spacing:-.04em!important}.action-card small{display:block!important;color:#6b7d92!important;font-size:10px!important;font-weight:800!important}.compact-action-collapse .quick-actions{padding:10px!important}.compact-action-collapse .quick-actions a{border-radius:18px!important;min-height:48px!important;background:linear-gradient(145deg,#fff,#f2f9ff)!important}.auto-action-collapse:not([open])+.auto-action-collapse{margin-top:8px!important}.panel{background:rgba(255,255,255,.88)!important;backdrop-filter:blur(15px)!important}.panel-head h3{font-weight:950!important;color:#0f172a!important}.panel-head p{font-weight:650!important}.metric-card{background:linear-gradient(145deg,#fff,#f6fbff)!important;border:1px solid #e3f2ff!important;box-shadow:0 13px 30px rgba(2,132,199,.08)!important}.metric-card span{text-transform:uppercase!important;letter-spacing:.12em!important;font-size:10px!important;font-weight:950!important;color:#64748b!important}.metric-card strong{font-weight:950!important;letter-spacing:-.065em!important;color:#0b1220!important}
}

/* Phase 49: premium native mobile executive dashboard */
.native-exec-home{display:grid;gap:18px;margin-bottom:22px}.native-greeting-card{position:relative;overflow:hidden;border:1px solid rgba(14,165,233,.14);border-radius:30px;padding:26px;background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(240,249,255,.94));box-shadow:0 26px 70px rgba(15,23,42,.08)}.native-greeting-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% 20%,rgba(14,165,233,.18),transparent 30%),linear-gradient(135deg,rgba(14,165,233,.08) 0 1px,transparent 1px 18px);pointer-events:none}.native-greeting-card>*{position:relative}.native-kicker{margin:0 0 10px;color:#0284c7;text-transform:uppercase;font-weight:900;font-size:12px;letter-spacing:.18em}.native-greeting-card h2{margin:0;font-size:clamp(30px,5vw,44px);line-height:1.03;letter-spacing:-.055em;font-weight:900;color:#061126;max-width:11ch}.native-subtitle{max-width:34rem;color:#64748b;font-weight:650;line-height:1.55;margin:14px 0 18px}.native-mini-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0}.native-mini-strip span{display:grid;gap:4px;background:rgba(255,255,255,.84);border:1px solid rgba(191,219,254,.78);border-radius:20px;padding:14px}.native-mini-strip b{font-size:22px;letter-spacing:-.04em}.native-mini-strip small{color:#64748b;font-weight:800}.native-primary-action{display:flex;justify-content:center;align-items:center;text-decoration:none;background:linear-gradient(135deg,#0284c7,#0ea5e9);color:white;border-radius:18px;padding:15px 18px;font-weight:900;box-shadow:0 16px 34px rgba(14,165,233,.28)}.native-section-card{background:rgba(255,255,255,.96);border:1px solid rgba(191,219,254,.82);border-radius:24px;box-shadow:0 18px 45px rgba(15,23,42,.055);overflow:hidden}.native-section-card summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 18px;cursor:pointer;font-weight:900;color:#0f172a}.native-section-card summary::-webkit-details-marker{display:none}.native-section-card summary:after{content:"⌄";font-weight:900;color:#0284c7;transition:.2s}.native-section-card[open] summary:after{transform:rotate(180deg)}.native-section-card summary span{font-size:16px}.native-section-card summary small{font-size:11px;color:#64748b;font-weight:800}.native-action-list,.native-link-grid{display:grid;gap:10px;padding:0 16px 16px}.native-action-list{grid-template-columns:repeat(2,minmax(0,1fr))}.native-action-list a,.native-link-grid a{text-decoration:none;background:#f8fbff;border:1px solid rgba(219,234,254,.96);border-radius:18px;padding:14px;color:#0f172a;font-weight:850}.native-link-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.native-kpi-grid{margin:0}.native-kpi-tile{min-height:116px!important;border-radius:24px!important}.native-kpi-tile span{font-size:12px!important;text-transform:uppercase;letter-spacing:.08em;color:#64748b!important;font-weight:900}.native-kpi-tile strong{font-size:30px!important;letter-spacing:-.05em}.native-accordion-stack{display:grid;gap:12px}.mobile-more-sheet{display:none}.mobile-more-panel{display:none}
@media(max-width:760px){body{background:#f5f9ff!important}.main-area{padding:0 18px 116px!important}.topbar{position:sticky!important;top:0;z-index:100;padding:18px 18px!important;margin:0 -18px 20px!important;background:rgba(248,252,255,.84)!important;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);border-bottom:1px solid rgba(219,234,254,.8);box-shadow:0 16px 40px rgba(15,23,42,.05)}.topbar h1{font-size:26px!important;max-width:9ch;line-height:1.02!important;letter-spacing:-.055em}.top-actions .ghost,.top-actions form,.top-actions .btn{display:none!important}.notification-pill{width:56px!important;height:56px!important;border-radius:20px!important;display:grid!important;place-items:center!important}.menu-btn{width:56px!important;height:56px!important;border-radius:20px!important;font-size:28px!important;background:white!important;box-shadow:0 16px 34px rgba(15,23,42,.07)}.native-greeting-card{border-radius:32px;padding:26px 25px 24px}.native-greeting-card h2{font-size:38px;max-width:9ch}.native-subtitle{font-size:15px;margin-top:12px}.native-mini-strip{grid-template-columns:repeat(3,1fr);gap:8px}.native-mini-strip span{padding:12px 9px;border-radius:18px;text-align:center}.native-mini-strip b{font-size:20px}.native-primary-action{padding:16px;border-radius:20px}.native-action-list,.native-link-grid{grid-template-columns:1fr 1fr}.workspace-grid,.two-col{display:grid!important;grid-template-columns:1fr!important;gap:14px!important}.workspace-grid>.panel,.two-col>.panel{border-radius:24px!important}.workspace-grid>.panel:not(:first-child),.two-col>.panel{max-height:72px;overflow:hidden;transition:max-height .25s ease}.workspace-grid>.panel:not(:first-child):before,.two-col>.panel:before{content:"Tap section title to view details";display:block;padding:0 18px 14px;color:#64748b;font-size:12px;font-weight:800}.mobile-bottom-nav.native-bottom-nav{grid-template-columns:repeat(4,1fr)!important;padding:8px!important;border-radius:28px!important;left:18px!important;right:18px!important;bottom:14px!important;width:auto!important}.mobile-bottom-nav.native-bottom-nav a,.mobile-bottom-nav.native-bottom-nav button{border:0;background:transparent;color:#334155;text-decoration:none;font-weight:900;display:grid;place-items:center;gap:4px;min-height:62px;border-radius:22px}.mobile-bottom-nav.native-bottom-nav a:first-child{background:#e0f2fe;color:#0284c7}.mobile-more-sheet{display:block;position:fixed;inset:0;z-index:2200;background:rgba(15,23,42,.28);opacity:0;pointer-events:none;transition:.22s}.mobile-more-sheet.open{opacity:1;pointer-events:auto}.mobile-more-panel{display:grid;gap:10px;position:absolute;left:12px;right:12px;bottom:12px;background:white;border-radius:30px;padding:14px 18px 22px;box-shadow:0 -20px 60px rgba(15,23,42,.22);transform:translateY(110%);transition:.24s}.mobile-more-sheet.open .mobile-more-panel{transform:translateY(0)}.mobile-sheet-handle{width:52px;height:6px;border:0;border-radius:99px;background:#cbd5e1;margin:0 auto 6px}.mobile-more-panel h3{margin:0 0 4px;font-size:22px;letter-spacing:-.04em}.mobile-more-panel a,.mobile-more-panel button{text-decoration:none;border:1px solid #e2e8f0;background:#f8fafc;color:#0f172a;border-radius:18px;padding:14px 16px;font-weight:850;text-align:left}.mobile-more-panel form{margin:0}.mobile-fab-menu{border-radius:26px!important}.hero.hero-enterprise{display:none!important}}

/* Phase 50/51: Enterprise communication, approvals, vault UI */
.comm-hero,.comm-thread-head{margin-bottom:16px}.quick-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.ghost-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border-radius:16px;padding:10px 14px;background:#f8fbff;border:1px solid #dbeafe;color:#075985;text-decoration:none;font-weight:900}.ghost-link[type="submit"],button.ghost-link{cursor:pointer}.mobile-collapse-stack,.native-collapse-stack{display:grid;gap:12px;margin:14px 0}.native-collapse-card{background:rgba(255,255,255,.96);border:1px solid rgba(219,234,254,.96);border-radius:24px;box-shadow:0 16px 42px rgba(15,23,42,.06);overflow:hidden}.native-collapse-card>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px 18px;font-weight:950;color:#0f172a}.native-collapse-card>summary::-webkit-details-marker{display:none}.native-collapse-card>summary:after{content:'⌄';color:#0284c7;font-weight:950;transition:.2s}.native-collapse-card[open]>summary:after{transform:rotate(180deg)}.native-collapse-card>summary span{font-size:12px;color:#64748b;font-weight:850}.native-list{display:grid;gap:10px;padding:0 14px 16px}.native-list-item{display:flex;justify-content:space-between;align-items:center;gap:12px;text-decoration:none;background:linear-gradient(145deg,#fff,#f8fbff);border:1px solid #e2f1ff;border-radius:18px;padding:14px;color:#0f172a}.native-list-item strong{font-weight:950;letter-spacing:-.03em}.native-list-item small{display:block;margin-top:4px;color:#64748b;font-weight:750;font-size:12px}.native-list-item p{margin:.45rem 0 0;color:#64748b;font-size:13px}.badge{display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:24px;padding:2px 7px;border-radius:999px;background:#e0f2fe;color:#0369a1;font-weight:950;font-size:12px}.muted{color:#64748b;font-weight:700}.chat-shell{display:grid;gap:10px;margin:14px 0 18px}.chat-bubble{max-width:min(720px,88%);padding:14px 16px;border-radius:22px;border:1px solid #dbeafe;box-shadow:0 12px 30px rgba(15,23,42,.055);background:#fff}.chat-bubble small{display:block;color:#64748b;font-weight:850;font-size:11px;margin-bottom:8px}.chat-bubble p{margin:0;color:#0f172a;line-height:1.55}.chat-bubble em{display:block;margin-top:8px;color:#0ea5e9;font-size:11px;font-weight:900}.from-firm{justify-self:start;background:linear-gradient(145deg,#ffffff,#f5fbff)}.from-client{justify-self:end;background:linear-gradient(145deg,#e0f2fe,#eff6ff);border-color:#bae6fd}.attachment-chip{display:inline-flex;margin-top:9px;border-radius:999px;padding:7px 10px;background:#f1f5f9;color:#075985;text-decoration:none;font-weight:900;font-size:12px}.note-card{margin:0 14px 10px;padding:14px;border-radius:18px;background:#fff7ed;border:1px solid #fed7aa}.note-card p{margin:0;color:#7c2d12}.note-card small{color:#9a3412;font-weight:800}.form-card{padding:0 16px 16px}.client360-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0}.client360-tabs a{min-height:48px;border-radius:17px;text-decoration:none;background:#f8fbff;border:1px solid #dbeafe;color:#0f172a;font-weight:900;display:grid;place-items:center;text-align:center}.client-portal-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.client-portal-actions a{border-radius:18px;padding:14px;background:#fff;border:1px solid #dbeafe;text-decoration:none;color:#075985;font-weight:900;text-align:center}
@media(max-width:760px){.quick-row{display:grid;grid-template-columns:1fr 1fr;width:100%}.ghost-link,.quick-row .btn{min-height:50px;border-radius:18px}.native-list-item{border-radius:20px;padding:15px}.chat-bubble{max-width:94%;border-radius:24px}.client360-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.client-portal-actions{grid-template-columns:1fr 1fr}.native-collapse-card>summary{min-height:58px}.form-card p{display:grid;gap:7px}.form-card textarea{min-height:112px!important}}

/* Phase 54 — Firm package selection + admin plan builder */
.billing-plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin:18px 0 26px}.billing-plan-card{background:linear-gradient(180deg,#fff,#f8fbff);border:1px solid rgba(0,132,255,.12);border-radius:28px;padding:22px;box-shadow:0 22px 55px rgba(15,45,80,.09);display:flex;flex-direction:column;gap:12px}.plan-topline{display:flex;justify-content:space-between;align-items:center;color:#008bdc;font-weight:900;letter-spacing:.12em;font-size:11px;text-transform:uppercase}.plan-topline b{background:#e8f7ff;color:#0277bd;border-radius:999px;padding:6px 10px;letter-spacing:0}.billing-plan-card h3{margin:0;font-size:24px;letter-spacing:-.04em;color:#071426}.plan-price{font-size:34px;font-weight:950;letter-spacing:-.06em;color:#071426}.plan-price small{font-size:13px;color:#60738d;margin-left:4px}.plan-save{margin:0;background:#f1f8ff;border:1px solid #cfefff;color:#0078bc;border-radius:14px;padding:8px 10px;font-weight:800}.billing-plan-card p{color:#62748c;line-height:1.55;margin:0}.billing-plan-card ul{margin:0;padding-left:18px;color:#22324a;line-height:1.8}.plan-select-form{display:grid;gap:10px;margin-top:auto}.plan-select-form select,.plan-select-form textarea,.plan-admin-form input,.plan-admin-form textarea,.plan-inline-form input,.plan-inline-form textarea,.billing-action-buttons input{width:100%;border:1px solid #d9e9f8;border-radius:16px;padding:12px 14px;background:#fff;color:#071426;font-weight:700}.billing-client-sections{align-items:start}.list-row{display:flex;flex-direction:column;gap:5px;padding:14px;border-radius:18px;background:#f8fbff;border:1px solid #e5f0fb}.plan-admin-form,.plan-inline-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;padding-top:14px}.plan-admin-form textarea,.plan-inline-form textarea{grid-column:1/-1}.plan-admin-form label,.plan-inline-form label{display:flex;align-items:center;gap:8px;font-weight:800;color:#31445d}.mini-plan-edit{border:1px solid #e5f0fb;border-radius:18px;padding:12px;background:#fff}.mini-plan-edit summary{cursor:pointer;display:flex;justify-content:space-between;gap:10px;align-items:center}.selection-card{border-color:#beeaff!important}.mini-btn.success{background:#10b981;color:#fff;border-color:#10b981}.status-pending{background:#fff7ed;color:#c2410c}.status-approved{background:#ecfdf5;color:#047857}.status-converted{background:#eff6ff;color:#1d4ed8}.status-rejected{background:#fef2f2;color:#b91c1c}
@media(max-width:760px){.billing-plan-grid{grid-template-columns:1fr;gap:14px}.billing-plan-card{border-radius:24px;padding:18px}.billing-plan-card h3{font-size:22px}.plan-price{font-size:30px}.plan-admin-form,.plan-inline-form{grid-template-columns:1fr}.mini-plan-edit summary{align-items:flex-start;flex-direction:column}.billing-client-hero .hero-stat-card{width:100%}}
