:root{--bg:#07111f;--panel:#101d31;--panel2:#14243c;--line:#263956;--text:#edf4ff;--muted:#9eb0ca;--primary:#4d86ff;--primary2:#6ba4ff;--success:#24c78a;--danger:#ff5d73;--warning:#ffb84d;--shadow:0 18px 60px rgba(0,0,0,.28);--radius:18px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 20% -10%,#16315b 0,#07111f 42%),var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;font-size:14px;line-height:1.55}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{display:grid;grid-template-columns:270px 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:linear-gradient(180deg,#0c1728,#08111e);border-right:1px solid var(--line);padding:18px 14px;display:flex;flex-direction:column;z-index:50}.brand{display:flex;align-items:center;gap:12px;padding:7px 8px 20px}.brand-mark{width:43px;height:43px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,var(--primary),#7a5cff);font-size:23px;font-weight:900;box-shadow:0 12px 30px rgba(77,134,255,.35)}.brand strong{display:block;max-width:175px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand small{display:block;color:var(--muted);font-size:11px}.nav-list{display:flex;flex-direction:column;gap:5px;overflow:auto;padding-right:4px}.nav-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:12px;color:#c7d4e8;transition:.2s}.nav-item span{width:24px;text-align:center}.nav-item b{font-size:13px}.nav-item em{margin-left:auto;background:var(--danger);color:white;font-style:normal;border-radius:999px;padding:1px 7px;font-size:11px}.nav-item:hover,.nav-item.active{background:linear-gradient(135deg,rgba(77,134,255,.22),rgba(122,92,255,.12));color:white}.sidebar-footer{margin-top:auto;border-top:1px solid var(--line);padding:16px 10px 4px}.sidebar-footer small,.sidebar-footer span{display:block;color:var(--muted);font-size:11px}.sidebar-footer strong{display:block;margin:2px 0}.main{min-width:0}.topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 24px;border-bottom:1px solid rgba(38,57,86,.8);background:rgba(7,17,31,.84);backdrop-filter:blur(18px)}.topbar h1{font-size:20px;margin:0}.topbar p{margin:2px 0 0;color:var(--muted);font-size:12px}.top-actions{display:flex;align-items:center;gap:10px}.icon-btn{position:relative;display:grid;place-items:center;width:41px;height:41px;border:1px solid var(--line);border-radius:12px;background:var(--panel);color:var(--text)}.icon-btn em{position:absolute;right:-5px;top:-6px;background:var(--danger);font-style:normal;border-radius:999px;font-size:10px;padding:1px 5px}.user-pill{display:flex;align-items:center;gap:9px;border:1px solid var(--line);background:var(--panel);padding:5px 10px 5px 6px;border-radius:13px}.user-pill>span{width:32px;height:32px;display:grid;place-items:center;border-radius:10px;background:linear-gradient(135deg,var(--primary),#7a5cff);font-weight:800}.user-pill b,.user-pill small{display:block}.user-pill small{color:var(--muted);font-size:10px}.content{padding:24px;max-width:1800px;margin:0 auto}.page-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin:0 0 18px}.page-title-row h2{margin:0;font-size:24px}.page-title-row p{margin:5px 0 0;color:var(--muted);max-width:850px}.page-actions,.form-actions,.top-actions,.inline-form,.filter-bar,.action-stack{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.stat-card{display:flex;gap:13px;align-items:center;background:linear-gradient(145deg,var(--panel),var(--panel2));border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow)}.stat-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:rgba(77,134,255,.15);font-size:24px}.stat-card small,.stat-card span{display:block;color:var(--muted)}.stat-card strong{display:block;font-size:25px;line-height:1.2;margin:2px 0}.stat-card span{font-size:11px}.grid{display:grid;gap:18px;margin-bottom:18px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.card{background:linear-gradient(145deg,rgba(16,29,49,.98),rgba(18,33,55,.98));border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow);margin-bottom:18px}.card.highlight{border-color:rgba(77,134,255,.8);box-shadow:0 18px 60px rgba(77,134,255,.15)}.card h3{margin:0 0 14px;font-size:17px}.card p{color:#c8d4e6}.card-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.card-header h3{margin:0}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:11px;padding:10px 15px;background:linear-gradient(135deg,var(--primary),#6c63ff);color:white;font-weight:750;box-shadow:0 9px 24px rgba(77,134,255,.2);transition:.18s}.btn:hover{transform:translateY(-1px);filter:brightness(1.06)}.btn.small{padding:7px 10px;font-size:12px;border-radius:9px}.btn.full{width:100%;margin-top:8px}.btn.secondary{background:#243956;box-shadow:none}.btn.ghost{background:transparent;border:1px solid var(--line);box-shadow:none}.btn.success{background:linear-gradient(135deg,#16a76f,var(--success));box-shadow:none}.btn.danger{background:linear-gradient(135deg,#d93f56,var(--danger));box-shadow:none}.btn.warning{background:linear-gradient(135deg,#d98a20,var(--warning));color:#111;box-shadow:none}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group.full{grid-column:1/-1}.form-group label{font-weight:700;font-size:12px;color:#cbd8eb}.form-group small{color:var(--muted)}input,select,textarea{width:100%;border:1px solid var(--line);background:#0a1627;color:var(--text);border-radius:11px;padding:11px 12px;outline:none;transition:.2s}textarea{resize:vertical;min-height:90px}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(77,134,255,.13)}select[multiple]{min-height:180px}.switch-row{display:flex!important;flex-direction:row!important;align-items:center;gap:9px}.switch-row input{width:auto}.form-actions{margin-top:16px}.filter-bar{margin:0}.filter-bar input{min-width:240px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px}.table{width:100%;border-collapse:collapse;min-width:840px}.table th{position:sticky;top:0;background:#172740;color:#bfd0e7;text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.04em;padding:11px 12px;white-space:nowrap}.table td{padding:12px;border-top:1px solid var(--line);vertical-align:top}.table tr:hover td{background:rgba(77,134,255,.04)}.table small{color:var(--muted)}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:800;background:#263957;color:#d9e5f6;white-space:nowrap}.badge-approved,.badge-completed,.badge-closed,.badge-settled,.badge-received,.badge-verified,.badge-accepted,.badge-active{background:rgba(36,199,138,.15);color:#71efbe}.badge-rejected,.badge-cancelled,.badge-absent,.badge-inactive,.badge-lost,.badge-disposed{background:rgba(255,93,115,.15);color:#ff9aaa}.badge-urgent,.badge-high,.badge-pending_hod,.badge-pending_admin,.badge-pending_director,.badge-pending_accountant,.badge-pending_doctor,.badge-pending_store,.badge-pending_accounts,.badge-pending_approval{background:rgba(255,184,77,.15);color:#ffd18b}.badge-in_progress,.badge-started,.badge-ongoing,.badge-ordered,.badge-scheduled,.badge-confirmed{background:rgba(77,134,255,.16);color:#9ec1ff}.alert{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;border:1px solid var(--line);border-radius:12px;margin-bottom:14px}.alert button{border:0;background:transparent;color:inherit;font-size:19px}.alert-success{background:rgba(36,199,138,.12);border-color:rgba(36,199,138,.35)}.alert-error{background:rgba(255,93,115,.12);border-color:rgba(255,93,115,.35)}.alert-warning{background:rgba(255,184,77,.12);border-color:rgba(255,184,77,.35)}.quick-list{display:flex;flex-direction:column;gap:9px}.quick-item{display:flex;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--line);border-radius:12px;background:rgba(7,17,31,.35)}.quick-item:hover{border-color:#3b5a85}.quick-item b,.quick-item small{display:block}.quick-item small{color:var(--muted);font-size:11px}.quick-item p{margin:7px 0 0}.empty-state{text-align:center;color:var(--muted);padding:30px 12px}.progress{width:100px;height:7px;border-radius:999px;background:#263957;overflow:hidden}.progress span{display:block;height:100%;background:linear-gradient(90deg,var(--primary),var(--success));border-radius:inherit}.action-stack{min-width:180px}.approval-form{display:grid;grid-template-columns:minmax(160px,1fr) auto auto;gap:7px;align-items:center;min-width:430px}.permission-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:16px}.permission-item{display:flex;align-items:flex-start;gap:10px;border:1px solid var(--line);border-radius:12px;padding:12px;background:#0a1627}.permission-item input{width:auto;margin-top:3px}.permission-item b,.permission-item small{display:block}.permission-item small{color:var(--muted)}.detail-list{display:grid;gap:0}.detail-list>div{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--line)}.detail-list span{color:var(--muted)}.note-box{background:rgba(77,134,255,.08);border:1px solid rgba(77,134,255,.25);padding:14px;border-radius:12px;color:#cddaf0}.notification-list{display:grid;gap:10px}.notification-card{display:flex;justify-content:space-between;gap:14px;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:15px}.notification-card.unread{border-color:rgba(77,134,255,.65);box-shadow:0 12px 30px rgba(77,134,255,.08)}.notification-card p{margin:4px 0;color:#ced9e9}.notification-card small{color:var(--muted)}.assistant-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:18px}.chat-log{height:480px;overflow:auto;display:flex;flex-direction:column;gap:10px;padding:4px}.bubble{max-width:80%;padding:11px 13px;border-radius:14px;white-space:pre-wrap}.bubble.agent{background:#1a2c49;align-self:flex-start}.bubble.user{background:linear-gradient(135deg,var(--primary),#6c63ff);align-self:flex-end}.chat-form{display:flex;gap:8px;margin-top:12px}.quick-buttons{display:grid;gap:9px}.quick-buttons button{border:1px solid var(--line);background:#0a1627;color:var(--text);padding:11px;border-radius:10px;text-align:left}.quick-buttons button:hover{border-color:var(--primary)}#cameraPreview{width:100%;min-height:360px;background:#02060d;border-radius:14px;object-fit:cover}.login-page{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr;background:radial-gradient(circle at 15% 10%,#214477 0,#07111f 45%)}.login-visual,.login-card-wrap{padding:clamp(28px,6vw,80px)}.login-visual{display:flex;flex-direction:column;justify-content:center}.login-visual h1{font-size:clamp(38px,5vw,70px);line-height:1.04;max-width:780px;margin:30px 0 18px}.login-visual>p{font-size:18px;color:#b9c9dd;max-width:690px}.login-features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:26px;max-width:650px}.login-features div{padding:13px;border:1px solid var(--line);background:rgba(16,29,49,.72);border-radius:12px}.login-card-wrap{display:grid;place-items:center}.login-card{width:min(440px,100%);background:rgba(16,29,49,.94);border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:var(--shadow)}.login-card h2{font-size:28px;margin:0}.login-card>p{color:var(--muted);margin-bottom:22px}.login-note{margin-top:16px;padding:12px;background:rgba(77,134,255,.08);border-radius:10px;color:var(--muted);font-size:12px}.modal{position:fixed;inset:0;background:rgba(0,0,0,.68);display:none;place-items:center;padding:20px;z-index:100}.modal.open{display:grid}.modal-card{position:relative;width:min(700px,100%);background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:var(--shadow)}.modal-close{position:absolute;right:12px;top:10px;border:0;background:transparent;color:white;font-size:22px}.mobile-only{display:none}hr{border:0;border-top:1px solid var(--line);margin:20px 0}pre,code{white-space:pre-wrap;word-break:break-word;color:#bcd1ef}ol{color:#cbd8e9}
@media(max-width:1200px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.permission-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:920px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;left:-290px;width:270px;transition:.25s;box-shadow:var(--shadow)}.sidebar.open{left:0}.mobile-only{display:grid}.topbar{padding:13px 16px}.content{padding:16px}.user-pill div{display:none}.grid-2,.grid-3,.assistant-layout{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-group.full{grid-column:auto}.page-title-row{flex-direction:column}.permission-grid{grid-template-columns:1fr}.login-page{grid-template-columns:1fr}.login-visual{display:none}.login-card-wrap{padding:24px}.approval-form{min-width:360px}}
@media(max-width:560px){.stats{grid-template-columns:1fr}.topbar h1{font-size:16px}.topbar p{display:none}.content{padding:12px}.card{padding:14px;border-radius:14px}.login-card{padding:20px}.filter-bar{width:100%}.filter-bar input{min-width:0;flex:1}.action-stack{min-width:150px}}
.kanban-board{display:grid;grid-template-columns:repeat(4,minmax(250px,1fr));gap:12px;overflow:auto;padding-bottom:4px}.kanban-col{min-height:360px;border:1px solid var(--line);background:rgba(5,13,24,.5);border-radius:15px;padding:10px}.kanban-col>header{display:flex;align-items:center;justify-content:space-between;padding:5px 5px 11px}.kanban-col>header span{display:grid;place-items:center;min-width:25px;height:25px;border-radius:999px;background:#243956;font-size:11px}.kanban-dropzone{display:flex;flex-direction:column;gap:9px;min-height:300px}.task-card{border:1px solid var(--line);background:linear-gradient(145deg,#12233a,#0c192b);border-radius:12px;padding:12px;box-shadow:0 9px 22px rgba(0,0,0,.16);cursor:grab}.task-card:active{cursor:grabbing}.task-card:hover{border-color:#4d86ff}.task-card-top,.task-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px}.task-card-top small,.task-card-bottom{color:var(--muted);font-size:10px}.task-card>a b{display:block;margin:8px 0 4px}.task-card p{margin:0 0 9px;font-size:11px}.custom-page-content{overflow:auto}.custom-page-content img,.custom-page-content video{max-width:100%;height:auto}@media(max-width:1200px){.kanban-board{grid-template-columns:repeat(2,minmax(260px,1fr))}}@media(max-width:650px){.kanban-board{grid-template-columns:repeat(4,minmax(260px,1fr))}}


/* ===== v3 mobile-first interaction layer ===== */
button,.btn,a,input,select,textarea{touch-action:manipulation}.btn,button,input,select,textarea{min-height:44px}.sidebar-scrim{display:none}.mobile-bottom-nav{display:none}.mobile-fab{display:none!important}.record-editor{padding:0;overflow:hidden;scroll-margin-top:88px}.record-editor>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px;cursor:pointer;background:linear-gradient(135deg,rgba(77,134,255,.12),rgba(122,92,255,.06));border-bottom:1px solid transparent}.record-editor[open]>summary{border-bottom-color:var(--line)}.record-editor>summary::-webkit-details-marker{display:none}.record-editor>summary span{font-size:17px;font-weight:850}.record-editor>summary small{color:var(--muted)}.record-editor>form{padding:20px}.task-touch-form{display:grid;grid-template-columns:1fr auto;gap:7px;margin-top:10px}.task-touch-form select{min-height:38px;padding:7px 9px}.task-touch-form .btn{min-height:38px}.connectivity-bar{position:fixed;left:50%;transform:translateX(-50%);bottom:88px;z-index:150;width:min(620px,calc(100% - 24px));padding:11px 14px;border-radius:12px;text-align:center;font-weight:750;box-shadow:var(--shadow)}.connectivity-bar.offline{background:#602131;color:#fff}.connectivity-bar.online{background:#145c45;color:#fff}.toast-stack{position:fixed;right:16px;bottom:90px;z-index:140}.sticky-actions{background:linear-gradient(180deg,rgba(16,29,49,0),rgba(16,29,49,.96) 30%);padding-top:18px}
@media(min-width:921px){.task-touch-form{display:none}}
@media(max-width:920px){
  body{padding-bottom:calc(74px + env(safe-area-inset-bottom))}.app-shell{min-height:calc(100vh - 74px)}.main{width:100%;overflow:hidden}.sidebar{left:0;transform:translateX(-105%);width:min(86vw,320px);padding-bottom:calc(18px + env(safe-area-inset-bottom));transition:transform .24s ease}.sidebar.open{left:0;transform:translateX(0)}.sidebar-scrim{display:block;position:fixed;inset:0;background:rgba(0,0,0,.62);opacity:0;pointer-events:none;transition:.2s;z-index:45}.sidebar-scrim.open{opacity:1;pointer-events:auto}body.menu-open{overflow:hidden}.topbar{min-height:64px;padding:10px 12px}.top-actions{gap:6px}.top-actions>.icon-btn:last-child{display:none}.user-pill{padding:4px}.user-pill>span{width:36px;height:36px}.content{padding:12px 12px 24px}.mobile-bottom-nav{position:fixed;display:grid;grid-template-columns:repeat(6,1fr);left:0;right:0;bottom:0;z-index:80;height:calc(68px + env(safe-area-inset-bottom));padding:6px 6px env(safe-area-inset-bottom);background:rgba(7,17,31,.97);border-top:1px solid var(--line);backdrop-filter:blur(18px);box-shadow:0 -12px 35px rgba(0,0,0,.32)}.mobile-bottom-nav a,.mobile-bottom-nav button{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;border:0;background:transparent;color:var(--muted);padding:4px 2px;min-width:0}.mobile-bottom-nav span{font-size:19px;line-height:1}.mobile-bottom-nav b{font-size:9px;white-space:nowrap}.mobile-bottom-nav a.active{color:#fff}.mobile-bottom-nav a.active:before{content:"";position:absolute;top:0;width:26px;height:3px;border-radius:999px;background:var(--primary)}.mobile-bottom-nav em{position:absolute;top:1px;right:14%;background:var(--danger);color:white;border-radius:999px;font-size:9px;font-style:normal;min-width:16px;padding:1px 4px}.page-title-row{gap:10px;margin-bottom:12px}.card-header{flex-direction:column;align-items:stretch}.page-title-row h2{font-size:21px}.page-title-row p{font-size:12px}.page-actions{width:100%}.page-actions .btn{width:100%}.card{margin-bottom:12px}.stats{gap:10px}.stat-card{padding:14px}.stat-icon{width:42px;height:42px}.stat-card strong{font-size:22px}.grid{gap:12px;margin-bottom:12px}.record-editor>summary{padding:15px}.record-editor>form{padding:14px}.sticky-actions{position:sticky;bottom:68px;z-index:8;margin-left:-14px;margin-right:-14px;padding:18px 14px 8px}.sticky-actions .btn{flex:1}.approval-form{min-width:0;width:100%;grid-template-columns:1fr}.approval-form .btn{width:100%}.chat-log{height:56vh}.chat-form{position:sticky;bottom:72px;background:var(--panel);padding-top:10px}.notification-card{flex-direction:column}.notification-card .btn{width:100%}.detail-list>div{align-items:flex-start}.permission-grid{gap:8px}
  .table-wrap{overflow:visible;border:0;background:transparent}.table,.table tbody{display:block;width:100%;min-width:0}.table thead{display:none}.table tr{display:block;margin:0 0 10px;padding:12px;background:linear-gradient(145deg,rgba(16,29,49,.98),rgba(18,33,55,.98));border:1px solid var(--line);border-radius:14px;box-shadow:0 9px 26px rgba(0,0,0,.16)}.table td{display:grid;grid-template-columns:minmax(95px,38%) minmax(0,1fr);gap:10px;width:100%;padding:7px 0;border:0!important;background:transparent!important;word-break:break-word}.table td:before{content:attr(data-label);color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.035em}.table td[colspan]{display:block;text-align:center}.table td[colspan]:before{display:none}.table td:last-child{display:block;margin-top:7px;padding-top:11px;border-top:1px solid var(--line)!important}.table td:last-child:before{display:block;margin-bottom:8px}.table .action-stack{min-width:0;width:100%;display:grid;grid-template-columns:1fr 1fr;gap:7px}.table .action-stack>*{min-width:0;width:100%;margin:0}.table .action-stack .btn,.table .action-stack form .btn{width:100%;min-height:42px}.table .inline-form{display:block}.table details pre{max-width:100%;overflow:auto}.filter-bar{display:grid;grid-template-columns:1fr auto auto;width:100%}.filter-bar input{min-width:0}.filter-bar .btn{padding-left:12px;padding-right:12px}.progress{width:100%}
  .kanban-board{display:flex;grid-template-columns:none;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 2px 8px}.kanban-col{flex:0 0:min(84vw,320px);scroll-snap-align:start;min-height:320px}.task-card{cursor:default}.task-card[draggable="true"]{cursor:default}#cameraPreview{min-height:240px}.form-actions{align-items:stretch}.form-actions>.btn,.form-actions>form{flex:1}.form-actions>form .btn{width:100%}
}
@media(max-width:560px){.mobile-bottom-nav{grid-template-columns:repeat(6,minmax(0,1fr))}.topbar h1{max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.icon-btn{width:40px;height:40px}.card{padding:13px}.form-grid{gap:11px}.login-page{min-height:100svh}.login-card-wrap{padding:14px}.login-card{border-radius:18px}.login-card h2{font-size:24px}.login-note{font-size:11px}.table .action-stack{grid-template-columns:1fr}.quick-item{flex-direction:column}.quick-item>.btn{width:100%}.bubble{max-width:92%}.chat-form{display:grid;grid-template-columns:1fr auto}.record-editor>summary small{display:none}}


/* v3.1 reporting recipient controls */
.field-help{margin:.25rem 0 .6rem;color:var(--muted,#8ea0ba);font-size:.88rem}
.recipient-search{width:100%;margin-bottom:.65rem}
.recipient-checklist{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.55rem;max-height:360px;overflow:auto;padding:.25rem}
.recipient-option{display:flex;align-items:flex-start;gap:.65rem;padding:.75rem;border:1px solid var(--border,#26364f);border-radius:12px;background:rgba(255,255,255,.025);cursor:pointer}
.recipient-option:hover{background:rgba(255,255,255,.055)}
.recipient-option input{margin-top:.2rem;min-width:18px;min-height:18px}
.recipient-option span{display:flex;flex-direction:column;min-width:0}
.recipient-option small{color:var(--muted,#8ea0ba);white-space:normal}
@media(max-width:640px){.recipient-checklist{grid-template-columns:1fr;max-height:420px}.recipient-option{padding:.85rem}.recipient-option input{min-width:22px;min-height:22px}}

/* v3.2 camp transport and action inbox */
.camp-transport{border-color:rgba(77,134,255,.45)}
.transport-history{margin-top:18px}.transport-item{align-items:flex-start}.transport-item>div:first-child{min-width:0}.transport-item .action-stack{justify-content:flex-end;max-width:420px}.compact-masters{margin-top:18px;margin-bottom:0}.card.inset{margin:0;background:rgba(7,17,31,.42);box-shadow:none}.card.inset details>summary{cursor:pointer;padding:4px 0 10px}.notification-card .form-actions{justify-content:flex-end;align-self:center}.quick-item .action-stack{justify-content:flex-end}.badge-pending{background:rgba(255,184,77,.15);color:#ffd18b}
@media(max-width:920px){.transport-item .action-stack{max-width:none;width:100%;display:grid;grid-template-columns:1fr 1fr}.transport-item .action-stack form{grid-column:1/-1;display:grid;grid-template-columns:1fr auto}.transport-item .action-stack form .btn{width:100%}.compact-masters{grid-template-columns:1fr}.notification-card .form-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.notification-card .form-actions>*{width:100%}}
@media(max-width:560px){.transport-item .action-stack{grid-template-columns:1fr}.transport-item .action-stack form{grid-template-columns:1fr}.notification-card .form-actions{grid-template-columns:1fr}}

/* ===== v3.3 HR, timeline, analytics, slip and voice layer ===== */
.approval-timeline{display:grid;gap:12px}.timeline-step{display:grid;grid-template-columns:38px 1fr;gap:12px;align-items:flex-start;padding:13px;border:1px solid var(--line);border-radius:14px;background:rgba(7,17,31,.34)}.timeline-step>span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#263957;font-weight:850}.timeline-step.approved>span{background:rgba(36,199,138,.22);color:#71efbe}.timeline-step.rejected>span{background:rgba(255,93,115,.22);color:#ff9aaa}.timeline-step.pending>span{background:rgba(255,184,77,.22);color:#ffd18b}.timeline-step b,.timeline-step small{display:block}.timeline-step small{color:var(--muted)}.timeline-step p{margin:.35rem 0 0}
.timeline-feed{position:relative;display:grid;gap:0}.timeline-feed:before{content:"";position:absolute;left:9px;top:8px;bottom:8px;width:2px;background:var(--line)}.timeline-feed article{position:relative;display:grid;grid-template-columns:20px 1fr;gap:13px;padding:0 0 18px}.timeline-dot{width:20px;height:20px;border:5px solid var(--panel);background:var(--primary);border-radius:50%;z-index:1}.timeline-feed b,.timeline-feed small{display:block}.timeline-feed small{color:var(--muted)}.timeline-feed p{margin:.4rem 0}
.timeline-board{display:grid;gap:14px}.timeline-post{border:1px solid var(--line);border-radius:16px;background:linear-gradient(145deg,rgba(16,29,49,.98),rgba(18,33,55,.98));padding:16px}.timeline-post.problem,.timeline-post.incident{border-color:rgba(255,93,115,.42)}.timeline-post.achievement{border-color:rgba(36,199,138,.38)}.timeline-post header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.timeline-post header small{color:var(--muted)}.timeline-post .timeline-message{white-space:pre-wrap}.timeline-comments{margin-top:12px;padding-top:12px;border-top:1px solid var(--line);display:grid;gap:8px}.timeline-comment{padding:9px 11px;border-radius:11px;background:rgba(7,17,31,.45)}
.mini-chart{height:190px;display:grid;grid-template-columns:repeat(7,1fr);align-items:end;gap:12px;padding:16px 4px 0}.mini-chart>div{height:100%;display:grid;grid-template-rows:1fr auto auto;gap:5px;text-align:center;align-items:end}.mini-chart span{display:block;align-self:end;min-height:4px;border-radius:9px 9px 3px 3px;background:linear-gradient(180deg,var(--primary2),#6d5cff)}.mini-chart b{font-size:12px}.mini-chart small{color:var(--muted);font-size:10px}.staff-chart{display:grid;gap:12px}.staff-chart>div{display:grid;grid-template-columns:minmax(150px,240px) 1fr 44px;gap:12px;align-items:center}.staff-chart label{font-weight:750}.staff-chart label small{display:block;color:var(--muted);font-weight:400}.staff-chart span{height:13px;background:#263957;border-radius:999px;overflow:hidden}.staff-chart i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--primary),var(--success))}.staff-chart>b{text-align:right}
.evidence-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-top:16px}.evidence-grid figure{margin:0;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#081321}.evidence-grid img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.evidence-grid figcaption{padding:9px;font-size:10px;color:var(--muted)}.slip-preview{white-space:pre-wrap;word-break:break-word;padding:18px;border:1px dashed rgba(77,134,255,.55);border-radius:14px;background:#081321;color:#f2f6ff;line-height:1.65;max-height:520px;overflow:auto}
.voice-field-wrap{position:relative}.voice-field-wrap textarea,.voice-field-wrap input{padding-right:52px}.voice-inline-btn{position:absolute;right:7px;top:7px;width:38px;height:38px;min-height:38px;border:1px solid var(--line);background:#172944;color:white;border-radius:10px}.voice-command{position:fixed;right:18px;bottom:22px;z-index:95;display:flex;align-items:center;gap:7px;min-height:48px;border:1px solid rgba(107,164,255,.55);border-radius:999px;padding:9px 15px;background:linear-gradient(135deg,#254d91,#6c55e9);color:white;box-shadow:0 15px 38px rgba(0,0,0,.35);font-weight:800}.voice-command span{font-size:19px}.voice-command b{font-size:12px}.voice-toast{position:fixed;left:50%;bottom:82px;transform:translateX(-50%);z-index:180;max-width:calc(100% - 28px);padding:10px 15px;border-radius:999px;background:#eaf1ff;color:#0a1730;font-weight:750;box-shadow:0 12px 35px #0007}.voice-toast[hidden]{display:none}
.workflow-ribbon{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.workflow-ribbon span{padding:6px 10px;border-radius:999px;background:#20344f;color:#cbd8eb;font-size:11px}.workflow-ribbon span.active{background:rgba(77,134,255,.25);color:#fff}.metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:10px}.metric-box{padding:14px;border:1px solid var(--line);border-radius:14px;background:rgba(7,17,31,.36)}.metric-box strong{display:block;font-size:24px}.metric-box small{color:var(--muted)}
@media(max-width:920px){.voice-command{right:12px;bottom:82px;padding:9px 12px}.voice-command b{display:none}.voice-toast{bottom:142px}.staff-chart>div{grid-template-columns:minmax(110px,35%) 1fr 34px}.mini-chart{height:150px;gap:7px}.evidence-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.approval-timeline{gap:8px}.timeline-step{grid-template-columns:32px 1fr;padding:11px}.timeline-step>span{width:30px;height:30px}.staff-chart>div{grid-template-columns:1fr}.staff-chart span{height:11px}.staff-chart>b{text-align:left}.mini-chart{height:130px;padding-top:8px}.evidence-grid{grid-template-columns:1fr 1fr}.slip-preview{padding:13px;font-size:12px}.timeline-post{padding:13px}.timeline-post header{flex-direction:column}.metric-grid{grid-template-columns:1fr 1fr}}


/* ===== v3.4 reporting routes + unified finance ledger ===== */
.choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}.choice-card{display:flex;align-items:flex-start;gap:10px;padding:13px;border:1px solid var(--line);border-radius:14px;background:rgba(7,17,31,.38);cursor:pointer}.choice-card:hover{border-color:rgba(77,134,255,.65);background:rgba(77,134,255,.08)}.choice-card input{width:21px;height:21px;min-width:21px;margin-top:2px}.choice-card b,.choice-card small{display:block}.choice-card small{color:var(--muted);margin-top:3px}.recipient-summary{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 3px}.finance-balance-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:11px}.finance-balance-grid>div{padding:14px;border:1px solid var(--line);border-radius:14px;background:rgba(7,17,31,.42)}.finance-balance-grid small,.finance-balance-grid strong{display:block}.finance-balance-grid strong{font-size:22px;margin-top:4px}.compact-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:9px}.compact-stats>div{padding:11px;border-radius:12px;background:rgba(255,255,255,.035);border:1px solid var(--line)}.compact-stats small,.compact-stats b{display:block}.balance-warning{border-color:rgba(255,184,77,.48)!important;background:rgba(255,184,77,.07)!important}.balance-danger{border-color:rgba(255,93,115,.5)!important;background:rgba(255,93,115,.07)!important}.finance-case-card{border-left:4px solid var(--primary)}.finance-ledger-actions{display:flex;gap:8px;flex-wrap:wrap}.money-positive{color:var(--success)}.money-negative{color:var(--danger)}
@media(max-width:650px){.choice-grid,.finance-balance-grid,.compact-stats{grid-template-columns:1fr}.choice-card{padding:12px}.finance-ledger-actions{display:grid;grid-template-columns:1fr}.finance-ledger-actions>*{width:100%}}

/* v3.5 mobile rounds, media and financial privacy */
.stat-link{display:block;color:inherit;text-decoration:none;min-width:0}.stat-link .stat-card{height:100%;transition:transform .15s ease,box-shadow .15s ease}.stat-link:active .stat-card,.stat-link:hover .stat-card{transform:translateY(-2px);box-shadow:0 12px 28px rgba(15,23,42,.12)}
.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px}.media-card{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:rgba(7,17,31,.42)}.media-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.media-card>div{padding:12px}.media-card small{display:block;color:var(--muted);margin-top:4px}.media-card p{margin:8px 0 0}.timeline-photo{display:block;max-width:420px;width:100%;max-height:340px;object-fit:cover;border-radius:14px;margin-top:10px;border:1px solid var(--line)}.readonly-field{min-height:48px;padding:13px 14px;border:1px solid var(--line);border-radius:12px;background:#0a1627;font-weight:700;color:var(--text)}.compression-note{display:block;color:#71efbe;margin-top:6px}.compact-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.compact-stats>div{padding:12px;border-radius:12px;background:rgba(7,17,31,.42);border:1px solid var(--line)}.compact-stats small,.compact-stats b{display:block}
@media(max-width:720px){.media-grid{grid-template-columns:1fr 1fr;gap:10px}.media-card>div{padding:9px}.timeline-photo{max-height:260px}.stat-link{width:100%}.image-compress-form .btn{width:100%}}
@media(max-width:420px){.media-grid{grid-template-columns:1fr}}
