:root{--ink:#171b20;--ink2:#232a31;--paper:#f4f3ef;--card:#fff;--line:#dad7d0;--muted:#69727a;--red:#b7332d;--amber:#c77b12;--green:#27755e;--steel:#dfe5e7;--shadow:0 14px 36px rgba(21,27,31,.09)}*{box-sizing:border-box}html{background:var(--paper)}body{margin:0;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:radial-gradient(circle at top right,rgba(183,51,45,.07),transparent 28rem),var(--paper);min-height:100vh}.topbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:11px max(14px,env(safe-area-inset-left));background:rgba(23,27,32,.96);backdrop-filter:blur(18px);color:#fff;border-bottom:1px solid rgba(255,255,255,.08)}.brand{display:flex;align-items:center;gap:10px}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,#d1463f,#8f231e);font-weight:950;letter-spacing:-.04em}.brand strong{display:block;font-size:.94rem}.brand small{display:block;color:rgba(255,255,255,.62);font-size:.65rem;margin-top:1px}.top-actions{display:flex;gap:6px}.status-pill,.version-pill{border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.07);color:#fff;border-radius:999px;padding:8px 10px;font-size:.66rem;font-weight:800}.status-pill{display:flex;align-items:center;gap:6px}.status-pill i{width:7px;height:7px;border-radius:50%;background:#56c496}.shell{width:min(980px,100%);margin:auto;padding:20px 14px 105px}.view{display:none}.view.active{display:block;animation:fade .18s ease}.hero{display:flex;justify-content:space-between;align-items:center;gap:20px;background:linear-gradient(135deg,#20262c,#111519);color:#fff;border-radius:26px;padding:24px;box-shadow:var(--shadow);overflow:hidden;position:relative}.hero:after{content:"";position:absolute;width:210px;height:210px;border-radius:50%;right:-70px;bottom:-105px;border:24px solid rgba(183,51,45,.17)}h1,h2,p{margin-top:0}.hero h1,.page-title h1{font-size:clamp(1.8rem,7vw,3.2rem);letter-spacing:-.045em;margin-bottom:7px}.hero-sub,.page-title p,.muted{color:var(--muted)}.hero .hero-sub{color:rgba(255,255,255,.67);max-width:560px}.eyebrow{font-size:.64rem;font-weight:950;letter-spacing:.16em;color:var(--red);margin-bottom:8px}.hero .eyebrow{color:#ef736d}.readiness-ring{z-index:1;min-width:105px;width:105px;height:105px;border-radius:50%;border:9px solid rgba(255,255,255,.12);outline:6px solid rgba(39,117,94,.7);display:grid;place-items:center;align-content:center}.readiness-ring strong{font-size:2rem;line-height:1}.readiness-ring span{font-size:.57rem;letter-spacing:.12em;color:rgba(255,255,255,.68);margin-top:4px}.recommendation-card{margin:14px 0;border-radius:22px;padding:19px 20px;border:1px solid var(--line);background:#fff;box-shadow:var(--shadow);position:relative;overflow:hidden}.recommendation-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--green)}.recommendation-card.warn:before{background:var(--amber)}.recommendation-card.danger:before{background:var(--red)}.rec-kicker{font-size:.59rem;font-weight:950;letter-spacing:.15em;color:var(--muted);margin-bottom:7px}.recommendation-card h2{margin-bottom:6px;font-size:1.15rem}.recommendation-card p{color:var(--muted);font-size:.87rem;max-width:720px}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0}.metric,.card{background:var(--card);border:1px solid var(--line);border-radius:20px;box-shadow:0 9px 24px rgba(26,32,37,.05)}.metric{padding:16px}.metric span,.metric small{display:block;color:var(--muted);font-size:.66rem;font-weight:800}.metric strong{display:block;font-size:1.8rem;letter-spacing:-.04em;margin:4px 0}.card{padding:18px;margin:12px 0}.compact-card{padding-bottom:14px}.section-head,.page-title{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.section-head h2{font-size:1rem;margin-bottom:3px}.page-title{align-items:end;margin:5px 0 16px}.page-title p{margin-bottom:0;max-width:620px;font-size:.84rem}.priority-list{display:grid;gap:8px}.priority-row{display:flex;align-items:center;gap:12px;padding:12px;border-radius:15px;background:#f7f7f4;border:1px solid #e7e4de}.priority-icon{width:35px;height:35px;border-radius:11px;display:grid;place-items:center;font-weight:950;background:#efe8e3;color:var(--red)}.priority-copy{min-width:0;flex:1}.priority-copy b,.priority-copy small{display:block}.priority-copy small{color:var(--muted);margin-top:2px}.badge{font-size:.59rem;padding:5px 7px;border-radius:999px;font-weight:900;background:#eceae5}.badge.red{background:#f6dedc;color:#8e2722}.badge.amber{background:#f7ead4;color:#87520e}.badge.green{background:#dceee8;color:#1f604d}.quick-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.quick{display:flex;align-items:center;gap:9px;border:1px solid var(--line);background:#f8f7f3;border-radius:14px;padding:13px;text-align:left}.quick span{font-size:1.2rem}.quick b{font-size:.75rem}.primary,.secondary,.ghost,.file-label{appearance:none;border-radius:12px;padding:10px 13px;font-weight:900;font-size:.74rem;cursor:pointer}.primary{border:1px solid #8d2924;background:linear-gradient(180deg,#c7453e,#a52f29);color:#fff}.secondary,.file-label{border:1px solid var(--line);background:#fff;color:var(--ink)}.ghost{border:0;background:#efeee9;color:var(--ink)}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid rgba(183,51,45,.25);outline-offset:2px}.toolbar{display:flex;gap:9px;margin-bottom:12px}.toolbar input{flex:1}input,select,textarea{width:100%;min-height:44px;border:1px solid #cbc9c2;border-radius:12px;background:#fff;padding:10px 11px;color:var(--ink);font:inherit;font-size:16px}label{display:grid;gap:6px;font-size:.73rem;font-weight:850;margin:12px 0}.gear-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.gear-card{background:#fff;border:1px solid var(--line);border-radius:19px;padding:17px;box-shadow:0 8px 22px rgba(24,30,34,.05)}.gear-top{display:flex;justify-content:space-between;gap:12px}.gear-card h3{margin:0;font-size:1rem}.gear-card .person{color:var(--muted);font-size:.74rem;margin-top:3px}.gear-meta{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:14px}.gear-meta div{padding:9px;border-radius:12px;background:#f5f4f0}.gear-meta small,.gear-meta b{display:block}.gear-meta small{color:var(--muted);font-size:.6rem}.gear-meta b{font-size:.75rem;margin-top:2px}.gear-actions{display:flex;gap:7px;margin-top:12px;flex-wrap:wrap}.gear-actions button{flex:1;min-width:105px}.history-list{display:grid;gap:8px}.history-row{display:grid;grid-template-columns:90px 1fr auto;gap:12px;align-items:center;padding:11px 4px;border-bottom:1px solid #ece9e3}.history-row:last-child{border-bottom:0}.history-row time{font-size:.68rem;color:var(--muted)}.history-row b,.history-row small{display:block}.history-row small{color:var(--muted);font-size:.68rem}.settings-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:12px}.fineprint{font-size:.68rem;color:var(--muted);line-height:1.45}.stack-actions{display:grid;gap:8px}.file-label{display:block;text-align:center}.file-label input{display:none}.empty-state{color:var(--muted);font-size:.78rem;padding:18px;text-align:center}.bottom-nav{position:fixed;z-index:60;left:50%;transform:translateX(-50%);bottom:max(9px,env(safe-area-inset-bottom));width:min(620px,calc(100% - 16px));display:grid;grid-template-columns:repeat(6,1fr);gap:4px;background:rgba(23,27,32,.96);backdrop-filter:blur(18px);padding:5px;border:1px solid rgba(255,255,255,.08);border-radius:18px;box-shadow:0 16px 42px rgba(0,0,0,.24)}.nav-btn{border:0;background:transparent;color:rgba(255,255,255,.55);border-radius:13px;padding:7px 2px 6px}.nav-btn span,.nav-btn b{display:block}.nav-btn span{font-size:1rem}.nav-btn b{font-size:.55rem;margin-top:2px}.nav-btn.active{background:rgba(209,70,63,.18);color:#fff;outline:1px solid rgba(239,115,109,.3)}.nav-btn.active:after{content:"";display:block;width:4px;height:4px;border-radius:50%;background:#ef736d;margin:3px auto 0}.modal{position:fixed;inset:0;z-index:100;background:rgba(9,12,14,.6);display:grid;place-items:end center;padding:12px}.modal-card{position:relative;width:min(620px,100%);max-height:90vh;overflow:auto;background:#f7f6f2;border-radius:24px;padding:22px;box-shadow:0 25px 70px rgba(0,0,0,.35)}.modal-close{position:absolute;right:12px;top:12px;width:37px;height:37px;border:0;border-radius:50%;background:#e8e6df;font-size:1.35rem}.hidden{display:none!important}@keyframes fade{from{opacity:.4;transform:translateY(4px)}to{opacity:1;transform:none}}@media(max-width:700px){.shell{padding-left:10px;padding-right:10px}.hero{padding:20px 17px}.readiness-ring{width:88px;height:88px;min-width:88px}.metric-grid{grid-template-columns:1fr 1fr}.metric{padding:13px}.quick-actions{grid-template-columns:1fr}.gear-grid,.settings-grid{grid-template-columns:1fr}.page-title{align-items:flex-start}.toolbar{display:grid;grid-template-columns:1fr}.history-row{grid-template-columns:74px 1fr}.history-row>.badge{display:none}.status-pill span{display:none}.status-pill{padding:9px}.hero h1,.page-title h1{font-size:2rem}}@media(max-width:390px){.hero{display:block}.readiness-ring{margin-top:18px}.metric-grid{gap:7px}.topbar{padding-left:10px;padding-right:10px}}

.compliance-note{margin:12px 0;padding:12px 14px;border:1px solid var(--line,#d7d7d2);border-radius:14px;background:rgba(255,255,255,.5)}
.compliance-note b{display:block;margin-bottom:4px}
.compliance-note p{margin:0;color:var(--muted,#687078);font-size:.9rem;line-height:1.4}

.page-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.personal-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0}.personal-summary>div{background:#f5f4f0;border:1px solid #e6e2da;border-radius:14px;padding:12px}.personal-summary small,.personal-summary b{display:block}.personal-summary small{color:var(--muted);font-size:.62rem}.personal-summary b{font-size:.9rem;margin-top:4px}.career-note{border-left:4px solid var(--green);padding:10px 12px;background:#edf5f1;border-radius:10px;color:var(--muted);font-size:.72rem;line-height:1.45}@media(max-width:700px){.page-actions{width:100%;justify-content:stretch}.page-actions button{flex:1}.personal-summary{grid-template-columns:1fr}}

/* V1.4 field UI + cross-platform scan workflow */
:root{--blue:#2e6785;--blue-soft:#e7f0f4;--red-soft:#f8e4e2;--amber-soft:#fbefd9;--green-soft:#e3f1eb;--violet:#6b5b95;--violet-soft:#eeeaf7}
.metric,.gear-card,.priority-row,.history-row,.recommendation-card,.card{transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}
.metric{border-left:4px solid var(--line)}.metric-danger{border-left-color:var(--red);background:linear-gradient(105deg,var(--red-soft),#fff 34%)}.metric-warn{border-left-color:var(--amber);background:linear-gradient(105deg,var(--amber-soft),#fff 34%)}.metric-plan{border-left-color:var(--violet);background:linear-gradient(105deg,var(--violet-soft),#fff 34%)}.metric-info{border-left-color:var(--blue);background:linear-gradient(105deg,var(--blue-soft),#fff 34%)}
.gear-card{position:relative;border-left:5px solid var(--green)}.gear-card.state-overdue{border-left-color:var(--red);box-shadow:0 9px 24px rgba(183,51,45,.09)}.gear-card.state-soon{border-left-color:var(--amber);box-shadow:0 9px 24px rgba(199,123,18,.08)}.gear-card.state-retiring{border-left-color:var(--violet)}.gear-card.state-baseline{border-left-color:var(--blue)}.gear-card.state-ok{border-left-color:var(--green)}
.priority-row{border-left:4px solid var(--blue)}.priority-row.priority-danger{border-left-color:var(--red);background:linear-gradient(90deg,var(--red-soft),#f7f7f4 30%)}.priority-row.priority-warn{border-left-color:var(--amber);background:linear-gradient(90deg,var(--amber-soft),#f7f7f4 30%)}.priority-row.priority-plan{border-left-color:var(--violet);background:linear-gradient(90deg,var(--violet-soft),#f7f7f4 30%)}.priority-row.priority-info{border-left-color:var(--blue);background:linear-gradient(90deg,var(--blue-soft),#f7f7f4 30%)}
.badge.blue,.status-chip.info{background:var(--blue-soft);color:#21536d}.badge.violet{background:var(--violet-soft);color:#55467c}
.scan-action{appearance:none;border:1px solid #23536c;background:linear-gradient(180deg,#3e7896,#285d79);color:#fff;border-radius:12px;padding:10px 13px;font-weight:900;font-size:.74rem;cursor:pointer}.scan-action:focus-visible{outline:3px solid rgba(46,103,133,.25);outline-offset:2px}
.tag-line{display:flex;align-items:center;gap:7px;margin-top:10px;padding:8px 10px;border-radius:11px;background:var(--blue-soft);border:1px solid #c9dde7;color:#28566e;font-size:.68rem;font-weight:850}.tag-line code{font:800 .68rem ui-monospace,SFMono-Regular,Menlo,monospace;overflow:hidden;text-overflow:ellipsis}
.status-chip{display:inline-flex;align-items:center;border-radius:999px;padding:5px 8px;font-size:.58rem;font-weight:950;letter-spacing:.08em}.accent-card{border-left:5px solid var(--blue)}.workflow-strip{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0}.workflow-strip span{padding:7px 9px;border:1px solid #d6e2e8;background:#f4f8fa;border-radius:999px;font-size:.65rem;font-weight:850;color:#3e6174}
.scanner-stage{margin:12px 0;border:1px solid #34424b;border-radius:18px;background:#11171b;overflow:hidden;min-height:160px;display:grid;place-items:center;position:relative}.scanner-stage video{display:block;width:100%;max-height:330px;object-fit:cover}.scanner-line{position:absolute;left:10%;right:10%;top:50%;height:2px;background:#ef736d;box-shadow:0 0 14px #ef736d}.scanner-help{color:#d8e1e5;text-align:center;padding:28px;font-size:.78rem}.scan-result{padding:11px 12px;border-radius:13px;background:var(--blue-soft);border:1px solid #c5dae5;font-size:.75rem;word-break:break-word}.bind-grid{display:grid;gap:8px;margin-top:12px}.bind-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px;border:1px solid var(--line);border-radius:13px;background:#fff}.bind-row div{min-width:0}.bind-row b,.bind-row small{display:block}.bind-row small{color:var(--muted);margin-top:2px}.bind-row button{flex:0 0 auto}
@media(hover:hover) and (pointer:fine){.gear-card:hover,.priority-row:hover{transform:translateY(-1px);box-shadow:0 12px 26px rgba(24,30,34,.08)}}
@media(max-width:700px){.page-actions .scan-action{flex:1}.workflow-strip{display:grid;grid-template-columns:repeat(3,1fr)}.workflow-strip span{text-align:center;padding:7px 4px}.bind-row{align-items:flex-start;flex-direction:column}.bind-row button{width:100%}}

.training-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0}
.compact-select{width:auto;min-width:96px;min-height:38px;padding:7px 10px;font-size:.78rem}
.training-roster-list{display:grid;gap:9px;margin-top:14px}
.training-member-card{display:block;width:100%;text-align:left;background:#fff;border:1px solid var(--line);border-left:5px solid #87939a;border-radius:16px;padding:14px;color:var(--ink)}
.training-member-card.complete{border-left-color:var(--green)}.training-member-card.needs{border-left-color:var(--amber)}
.training-member-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.training-member-top h3{margin:0 0 5px;font-size:.95rem}.training-member-top p{display:flex;gap:10px;flex-wrap:wrap;margin:0;color:var(--muted);font-size:.65rem}.training-member-top p span b{color:var(--ink)}
.training-progress{height:8px;border-radius:999px;background:#eceae5;overflow:hidden;margin:12px 0 7px}.training-progress i{display:block;height:100%;background:var(--green);border-radius:999px}
.training-member-card.needs .training-progress i{background:var(--amber)}.training-progress-copy{display:flex;justify-content:space-between;gap:12px;font-size:.7rem}.training-progress-copy span{color:var(--muted)}
.training-target-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}.training-category-breakdown{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0}.training-category-breakdown>div{display:flex;justify-content:space-between;gap:10px;padding:10px 11px;background:#f2f1ed;border-radius:12px;font-size:.72rem}.training-category-breakdown span{color:var(--muted)}
.badge.blue{background:#e2edf2;color:#355e70}
@media(max-width:700px){.training-summary-grid{grid-template-columns:1fr 1fr}.training-target-grid,.training-category-breakdown{grid-template-columns:1fr}.training-member-top,.training-progress-copy{display:block}.training-member-top .badge{display:inline-block;margin-top:8px}.training-progress-copy span{display:block;margin-top:2px}}

/* V1.6 apparatus + testing */
#apparatus .gear-grid{margin-top:12px}#apparatus .gear-card{min-height:220px}#apparatus .gear-meta{grid-template-columns:repeat(3,1fr)}@media(max-width:700px){#apparatus .gear-meta{grid-template-columns:1fr 1fr}}


/* V1.6.2 reversible showcase mode (retained in V1.6.3) */
.showcase-card{grid-column:1/-1;border-left:5px solid var(--amber);background:linear-gradient(105deg,var(--amber-soft),#fff 38%)}
.showcase-pill{display:inline-flex;align-items:center;border:1px solid rgba(255,198,83,.38);background:rgba(199,123,18,.2);color:#ffd88e;border-radius:999px;padding:8px 10px;font-size:.62rem;font-weight:950;letter-spacing:.1em}
.showcase-active-chip{background:#2b322d;color:#fff}.showcase-locked-chip{background:#eceae5;color:#68645c}
#showcaseModeBtn:disabled{opacity:.48;cursor:not-allowed}
@media(max-width:700px){.showcase-pill{padding:8px;font-size:.56rem}.showcase-card{grid-column:auto}}

/* V1.6.5 Cloud Sync Preview */
.cloud-preview-card{grid-column:1/-1;border-left:5px solid #397a91;background:linear-gradient(105deg,#edf6f8,#fff 42%)}
.cloud-action-grid{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:10px;margin:12px 0}.cloud-or{font-size:.67rem;font-weight:900;color:var(--muted);text-transform:uppercase}.cloud-join-row{display:grid;grid-template-columns:1fr auto;gap:8px}.cloud-code-box{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:15px;background:#f7f9f9;margin:12px 0}.cloud-code-box span{font-size:.59rem;font-weight:950;letter-spacing:.12em;color:var(--muted)}.cloud-code-box code{font-size:.86rem;font-weight:900;user-select:all;word-break:break-all}.status-chip.cloud-synced{background:#dceee8;color:#1f604d}.status-chip.cloud-warn{background:#f7ead4;color:#87520e}.status-chip.cloud-error{background:#f6dedc;color:#8e2722}
@media(max-width:700px){.cloud-preview-card{grid-column:auto}.cloud-action-grid{grid-template-columns:1fr}.cloud-or{text-align:center}.cloud-code-box{grid-template-columns:1fr}.cloud-code-box .ghost{width:100%}.cloud-join-row{grid-template-columns:1fr auto}}

/* V1.7 Battery Readiness — quiet list, loud exceptions */
.battery-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0}
.battery-monitor-banner{border-left:5px solid var(--blue);background:linear-gradient(105deg,#edf5f8,#fff 42%)}
.battery-banner-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.battery-sync-line{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding-top:10px;border-top:1px solid var(--line);font-size:.7rem;color:var(--muted)}
.battery-truck-list{display:grid;gap:8px;margin-top:12px}
.battery-truck-row{display:grid;grid-template-columns:minmax(180px,1.35fr) minmax(105px,.7fr) minmax(105px,.7fr) minmax(145px,.9fr) auto;align-items:center;gap:12px;padding:13px 14px;border:1px solid var(--line);border-left:5px solid #87939a;border-radius:15px;background:#fff;box-shadow:0 5px 14px rgba(24,30,34,.04)}
.battery-truck-row.battery-ready{border-left-color:var(--green)}
.battery-truck-row.battery-watch{border-left-color:var(--amber);background:linear-gradient(90deg,var(--amber-soft),#fff 22%)}
.battery-truck-row.battery-action{border-left-color:var(--red);background:linear-gradient(90deg,var(--red-soft),#fff 22%)}
.battery-truck-row.battery-unmonitored{border-left-color:#9aa2a7}
.battery-unit h3{margin:0 0 4px;font-size:.96rem}.battery-unit p{margin:0;color:var(--muted);font-size:.65rem}
.battery-reading small,.battery-reading strong,.battery-reading span{display:block}.battery-reading small{font-size:.56rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:900}.battery-reading strong{font-size:1rem;margin-top:3px}.battery-reading span{font-size:.58rem;color:var(--muted);margin-top:2px}
.battery-monitor-state{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.battery-monitor-state small{font-size:.58rem;color:var(--muted)}
.battery-state{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:6px 8px;font-size:.58rem;font-weight:950;letter-spacing:.08em}.battery-state:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}.battery-state.ready{background:var(--green-soft);color:#24634f}.battery-state.watch{background:var(--amber-soft);color:#8b570d}.battery-state.action{background:var(--red-soft);color:#962e29}.battery-state.unmonitored{background:#eceeed;color:#677078}
.battery-row-actions{display:flex;justify-content:flex-end}.battery-row-actions button{min-width:82px}
.battery-adapter-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.battery-adapter-grid article{padding:12px;border:1px solid var(--line);border-radius:13px;background:#f7f7f4}.battery-adapter-grid b,.battery-adapter-grid span,.battery-adapter-grid small{display:block}.battery-adapter-grid b{font-size:.78rem}.battery-adapter-grid span{font-size:.62rem;font-weight:850;color:var(--blue);margin-top:4px}.battery-adapter-grid small{font-size:.61rem;line-height:1.4;color:var(--muted);margin-top:5px}
.battery-connect-options{display:grid;gap:8px;margin:14px 0}.battery-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}.battery-detail-grid>div{padding:10px;border:1px solid var(--line);border-radius:12px;background:#f7f7f4}.battery-detail-grid small,.battery-detail-grid b{display:block}.battery-detail-grid small{font-size:.58rem;color:var(--muted);text-transform:uppercase}.battery-detail-grid b{margin-top:3px}
@media(max-width:900px){.battery-truck-row{grid-template-columns:1fr 1fr 1fr}.battery-unit{grid-column:1/3}.battery-monitor-state{grid-column:3}.battery-row-actions{grid-column:1/-1}.battery-row-actions button{width:100%}.battery-adapter-grid{grid-template-columns:1fr}}
@media(max-width:700px){.battery-summary-grid{grid-template-columns:1fr 1fr}.battery-truck-row{grid-template-columns:1fr 1fr}.battery-unit{grid-column:1/-1}.battery-monitor-state{grid-column:auto}.battery-row-actions{grid-column:1/-1}.battery-banner-top{display:block}.battery-banner-top .status-chip{margin-top:8px}}
.status-chip.green{background:var(--green-soft);color:#1f604d}
.status-chip.amber{background:var(--amber-soft);color:#87520e}
.status-chip.red{background:var(--red-soft);color:#8e2722}

/* Battery Readiness V1.8.0 — bay gateway layer */
.gateway-registry-card{border-left:5px solid #566b7a}
.gateway-actions{display:flex;gap:7px;flex-wrap:wrap}
.gateway-registry{display:grid;gap:8px;margin-top:12px}
.gateway-empty{padding:14px;border:1px dashed var(--line);border-radius:13px;background:#f7f7f4;color:var(--muted);font-size:.68rem;line-height:1.45}
.gateway-row{display:grid;grid-template-columns:minmax(170px,1.2fr) minmax(110px,.75fr) minmax(100px,.65fr) minmax(120px,.8fr) auto;align-items:center;gap:12px;padding:12px 13px;border:1px solid var(--line);border-left:5px solid #7d8990;border-radius:14px;background:#fff}
.gateway-row.gateway-online{border-left-color:var(--green)}
.gateway-row.gateway-watch{border-left-color:var(--amber);background:linear-gradient(90deg,var(--amber-soft),#fff 22%)}
.gateway-row.gateway-offline{border-left-color:var(--red);background:linear-gradient(90deg,var(--red-soft),#fff 22%)}
.gateway-main b,.gateway-main span,.gateway-cell small,.gateway-cell b{display:block}
.gateway-main b{font-size:.8rem}.gateway-main span{font-size:.61rem;color:var(--muted);margin-top:3px}
.gateway-cell small{font-size:.54rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:900}.gateway-cell b{font-size:.7rem;margin-top:3px}
.gateway-path{font-size:.58rem;color:var(--muted);margin-top:2px}
.gateway-pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:6px 8px;font-size:.56rem;font-weight:950;letter-spacing:.08em}.gateway-pill:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.gateway-pill.online{background:var(--green-soft);color:#24634f}.gateway-pill.watch{background:var(--amber-soft);color:#8b570d}.gateway-pill.offline{background:var(--red-soft);color:#962e29}
.gateway-observed{font-size:.58rem;color:var(--muted);margin-top:4px}
@media(max-width:900px){.gateway-row{grid-template-columns:1fr 1fr 1fr}.gateway-main{grid-column:1/3}.gateway-row>div:last-child{grid-column:1/-1}.gateway-row>div:last-child button{width:100%}}
@media(max-width:700px){.gateway-row{grid-template-columns:1fr 1fr}.gateway-main{grid-column:1/-1}.gateway-actions{width:100%;margin-top:8px}.gateway-actions button{flex:1}}

/* V2.0.0 Demo Mode — reversible full-app synthetic presentation state */
.chief-demo-banner{border-left:5px solid var(--amber);background:linear-gradient(105deg,var(--amber-soft),#fff 40%);margin:12px 0}
.chief-demo-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.chief-demo-progress{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center;margin-top:12px;padding:10px 12px;border:1px solid rgba(194,132,29,.22);border-radius:12px;background:rgba(255,255,255,.64)}
.chief-demo-progress span{font-size:.58rem;font-weight:950;letter-spacing:.09em;text-transform:uppercase;color:#8b570d}.chief-demo-progress b{font-size:.72rem}
.chief-demo-actions{margin-top:10px;display:flex;gap:8px;justify-content:flex-start}.chief-demo-actions button{min-width:120px}
@media(max-width:700px){.chief-demo-top{display:block}.chief-demo-top .status-chip{margin-top:8px}.chief-demo-progress{grid-template-columns:1fr}.chief-demo-actions{width:100%}.chief-demo-actions button{flex:1}}

/* V2.0.0 global Demo Mode */
.demo-top-btn{opacity:.76}
.demo-top-btn:hover{opacity:1}
.demo-reset-btn{border-color:rgba(199,123,18,.35);background:rgba(199,123,18,.10);color:#b76c08}
.demo-mode-active .topbar{box-shadow:inset 0 -3px 0 rgba(199,123,18,.40)}
.demo-mode-active .view.active:before{content:"DEMO MODE · SYNTHETIC DATA";display:block;width:max-content;max-width:100%;margin:0 0 10px auto;padding:5px 8px;border-radius:999px;background:#fff7e7;border:1px solid rgba(199,123,18,.25);color:#8b570d;font-size:.54rem;font-weight:950;letter-spacing:.09em}
@media(max-width:700px){.demo-top-btn,.demo-reset-btn{padding:7px 8px;font-size:.56rem}.demo-mode-active .view.active:before{margin-right:2px}}

/* V2.1 Roster + unified Equipment workspace */
.roster-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0}.metric-ok strong{color:var(--green)}
.roster-toolbar{margin:14px 0}.roster-view-list{display:grid;gap:9px}.roster-member-card{width:100%;display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:12px;text-align:left;border:1px solid var(--line);border-left:5px solid var(--green);background:#fff;border-radius:17px;padding:12px 13px;color:var(--ink);box-shadow:0 7px 18px rgba(24,30,34,.04)}.roster-member-card.roster-due{border-left-color:var(--amber)}.roster-member-card.roster-action{border-left-color:var(--red);box-shadow:0 8px 22px rgba(183,51,45,.07)}.roster-member-card.roster-setup{border-left-color:var(--blue)}.roster-avatar{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#eeece7;color:#4c555b;font-size:.72rem;font-weight:950;letter-spacing:.05em}.roster-main{min-width:0}.roster-name{display:block;font-weight:950;font-size:.92rem}.roster-reason{display:block;color:var(--muted);font-size:.71rem;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.roster-mini{display:flex;gap:6px;align-items:center;flex-wrap:wrap;font-size:.63rem;color:#7d858a;margin-top:5px}.roster-mini b{font-size:.57rem;letter-spacing:.06em;color:#555e64;text-transform:uppercase}.roster-modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.roster-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}.roster-detail-grid section{border:1px solid var(--line);border-radius:15px;background:#fff;padding:12px}.roster-detail-grid h3{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:#636d73;margin:0 0 8px}.roster-detail-row{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid #ece9e3;font-size:.72rem}.roster-detail-row:last-child{border-bottom:0}
.equipment-panel{scroll-margin-top:82px;margin:14px 0 22px;padding-top:4px}.equipment-panel+.equipment-panel{border-top:2px solid #e6e2dc;padding-top:22px}.equipment-section-head{align-items:end;margin-bottom:12px}.equipment-section-head h2{font-size:1.35rem;margin:0 0 4px}.equipment-section-head p{margin:0}.apparatus-panel .gear-grid{margin-top:12px}.apparatus-panel .gear-card{min-height:220px}.apparatus-panel .gear-meta{grid-template-columns:repeat(3,1fr)}
@media(max-width:700px){.roster-summary-grid{grid-template-columns:1fr 1fr}.roster-member-card{grid-template-columns:40px minmax(0,1fr);}.roster-member-card>.badge{grid-column:2;justify-self:start}.roster-avatar{width:38px;height:38px}.roster-detail-grid{grid-template-columns:1fr}.equipment-section-head{display:block}.equipment-section-head .page-actions{margin-top:10px}.apparatus-panel .gear-meta{grid-template-columns:1fr 1fr}}
