body{min-height:100vh;background:#e9edf3}
.mobile-signin{min-height:100vh;display:grid;place-items:center;padding:1.25rem;background:var(--navy-deep)}
.signin-card{width:min(430px,100%);padding:1.5rem;background:var(--white);border-top:4px solid var(--gold);box-shadow:var(--shadow)}
.signin-card img{display:block;max-width:245px;max-height:82px;margin:0 0 1.25rem}
.signin-card h1{margin:.2rem 0 .6rem;color:var(--navy-deep);font-size:2rem}
.signin-card p{line-height:1.5;color:var(--muted)}
.signin-error{padding:.75rem;border-left:4px solid var(--danger);background:#fff6f6;color:var(--danger)!important}
.full-width{width:100%}
.mobile-shell{width:min(760px,100%);min-height:100vh;margin:0 auto;background:var(--paper);box-shadow:0 0 40px rgba(2,20,48,.12);padding-bottom:82px}
.mobile-topbar{position:sticky;top:0;z-index:4;display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:.85rem 1rem;background:var(--navy-deep);color:var(--white);border-bottom:2px solid var(--gold)}
.mobile-brand{display:flex;align-items:center;gap:.7rem;min-width:0}
.mobile-brand img{width:46px;height:46px;object-fit:contain;background:var(--white);padding:.2rem;border-radius:2px}
.mobile-brand .eyebrow{margin:0;color:var(--gold-light);font-size:.63rem}
.mobile-brand h1{margin:.1rem 0 0;font-size:1.2rem}
.mobile-session{display:flex;align-items:flex-end;flex-direction:column;gap:.2rem;font-size:.72rem;max-width:38%}
.mobile-session span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.mobile-session button{border:0;background:transparent;color:var(--white);padding:.2rem 0;text-decoration:underline}
.mobile-shell main{padding:1rem}
.mobile-hero{padding:1.35rem;color:var(--white);background:var(--navy);border-bottom:4px solid var(--gold);box-shadow:var(--shadow)}
.mobile-hero .eyebrow{color:var(--gold-light)}
.mobile-hero h2{margin:.25rem 0 .6rem;font-size:1.6rem;line-height:1.15}
.mobile-hero p{line-height:1.5;color:#dce6f2}
.mobile-hero .button{margin-top:.4rem}
.mobile-grid{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;margin:.8rem 0 1.1rem}
.mobile-metric{padding:1rem;background:var(--white);border:1px solid var(--line);box-shadow:0 6px 18px rgba(2,20,48,.04)}
.mobile-metric span{display:block;color:var(--muted);font-size:.82rem}
.mobile-metric strong{display:block;margin-top:.2rem;color:var(--navy);font-family:Georgia,serif;font-size:1.65rem}
.section-heading,.back-row,.card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}
.section-heading{margin:1rem 0 .65rem}
.section-heading h2,.section-intro h2{margin:.1rem 0;color:var(--navy-deep);font-size:1.25rem}
.section-intro{padding:.2rem 0 .85rem}
.section-intro>p:not(.eyebrow){margin:.45rem 0 0;color:var(--muted);line-height:1.45}
.text-button{border:0;background:transparent;color:var(--navy);font-weight:700;padding:.35rem 0}
.mobile-card{margin-bottom:.75rem;padding:1rem;background:var(--white);border:1px solid var(--line);box-shadow:0 6px 18px rgba(2,20,48,.04)}
.mobile-card h3{margin:.25rem 0 .45rem;color:var(--navy);font-size:1rem;line-height:1.3}
.mobile-card>p{margin:.35rem 0;line-height:1.48;color:var(--muted)}
.card-head .eyebrow{margin-top:.15rem}
.card-meta{display:flex;flex-wrap:wrap;gap:.25rem .75rem;margin-top:.7rem;color:var(--muted);font-size:.72rem}
.mobile-actions{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-top:1rem}
.action-error{margin:.7rem 0 0!important;padding:.65rem;background:#fff6f6;color:var(--danger)!important}
.empty{text-align:center;padding:1.5rem}
.mobile-filter{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.75rem;margin-top:.8rem;padding:.7rem;background:var(--white);border:1px solid var(--line)}
.mobile-filter select{min-height:42px;border:1px solid var(--line);background:var(--white);padding:.4rem}
.layer-stack{display:grid;gap:.65rem}
.layer-card{display:grid;grid-template-columns:42px 1fr;gap:.75rem;align-items:start;padding:1rem;background:var(--white);border:1px solid var(--line);border-left:4px solid var(--gold)}
.layer-card>span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--navy);color:var(--white);font-weight:800}
.layer-card h3{margin:0;color:var(--navy);font-size:.98rem}
.layer-card p{margin:.35rem 0 0;color:var(--muted);line-height:1.4}
.decision-card-mobile{margin-top:.85rem;padding:1rem;background:var(--navy-deep);color:var(--white);border-bottom:3px solid var(--gold)}
.decision-card-mobile .eyebrow{color:var(--gold-light)}
.decision-options{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}
.decision-options span{padding:.65rem;text-align:center;border:1px solid rgba(255,255,255,.3);font-weight:700}
.menu-list{display:grid;gap:.6rem}
.menu-list button{display:flex;flex-direction:column;align-items:flex-start;gap:.2rem;padding:1rem;border:1px solid var(--line);background:var(--white);text-align:left;color:var(--ink)}
.menu-list button span{color:var(--navy);font-weight:800;font-size:1rem}
.menu-list button small{color:var(--muted);font-size:.78rem}
.audit-card{padding:0 1rem}
.audit-row{display:grid;grid-template-columns:1fr auto;gap:.7rem;padding:.9rem 0;border-bottom:1px solid var(--line)}
.audit-row:last-child{border-bottom:0}
.audit-row p{margin:.25rem 0 0;color:var(--muted);font-size:.84rem}
.audit-row time{color:var(--muted);font-size:.68rem;text-align:right;max-width:120px}
.mobile-note{margin:.1rem 0 .8rem;color:var(--muted);line-height:1.45}
.handbook-list{display:grid;gap:.6rem;margin-bottom:.8rem}
.handbook-card{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.9rem;background:var(--white);border:1px solid var(--line)}
.handbook-card h3{margin:.15rem 0;color:var(--navy);font-size:.92rem}
.handbook-card .eyebrow{font-size:.63rem}
.handbook-card .button{min-height:40px;padding:.5rem .8rem;text-decoration:none}
.handbook-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.45rem}
.handbook-actions .button{white-space:nowrap}
.handbook-notice{display:grid;gap:.25rem;margin-top:.8rem;padding:.85rem;border-left:4px solid var(--gold);background:var(--white)}
.handbook-notice.pending{border-color:var(--warning);background:#fff9f1}.handbook-notice.success{border-color:var(--success);background:#f2fbf7}.handbook-notice.error{border-color:var(--danger);background:#fff6f6}
.handbook-notice span{color:var(--muted);font-size:.82rem;line-height:1.4}
.account-card>div{display:grid;gap:.25rem;padding:.8rem 0;border-bottom:1px solid var(--line)}
.account-card>div span{color:var(--muted);font-size:.78rem}.account-card>div strong{overflow-wrap:anywhere}.account-card .button{margin-top:1rem}.success-text{color:var(--success)}
.bottom-nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);z-index:5;width:min(760px,100%);display:grid;grid-template-columns:repeat(5,1fr);padding:.35rem env(safe-area-inset-right) calc(.35rem + env(safe-area-inset-bottom)) env(safe-area-inset-left);background:var(--white);border-top:1px solid var(--line);box-shadow:0 -8px 22px rgba(2,20,48,.08)}
.bottom-nav button{min-height:56px;padding:.2rem;border:0;border-top:3px solid transparent;background:transparent;color:var(--muted);font-size:.68rem;font-weight:650}
.bottom-nav button.active{color:var(--navy);border-color:var(--gold);font-weight:800}
.bottom-nav button span{display:inline-grid;place-items:center;min-width:18px;height:18px;margin-left:.15rem;border-radius:50%;background:var(--danger);color:var(--white);font-size:.65rem}
@media(min-width:700px){.mobile-shell{margin-top:1.5rem;min-height:calc(100vh - 3rem)}.mobile-signin{padding:2rem}}
