:root{
  --navy:#0b235b;
  --navy-2:#123774;
  --red:#c7273c;
  --red-dark:#9f1f31;
  --sky:#43b9e6;
  --ink:#1b2638;
  --muted:#687386;
  --line:#dde3ec;
  --bg:#f4f6fa;
  --white:#fff;
  --green:#178455;
  --gold:#d89d22;
  --shadow:0 14px 38px rgba(11,35,91,.09);
}
*{box-sizing:border-box}
.stack{display:grid;gap:15px}.stack hr{width:100%;border:0;border-top:1px solid var(--line)}
.install-logo{width:150px;max-height:180px;object-fit:cover;object-position:center;border-radius:14px;background:#fff;margin-bottom:22px}
.qr-code{display:grid;place-items:center;min-height:210px}.qr-code svg,.qr-code canvas{max-width:100%;height:auto}.label-qr{float:left;min-height:0!important}.label-qr svg{width:27mm;height:27mm}
body{margin:0;overflow-x:hidden;background:var(--bg);color:var(--ink);font:15px/1.5 Inter,Segoe UI,Arial,sans-serif}
a{color:var(--navy-2);text-decoration:none}
h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(1.9rem,4vw,2.75rem);line-height:1.08;margin-bottom:.55rem}
h2{font-size:1.28rem}
label{display:grid;gap:.45rem;font-weight:750;color:var(--navy)}
input,select,textarea{width:100%;padding:.82rem .9rem;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);font:inherit}
input:focus,select:focus,textarea:focus{outline:3px solid rgba(67,185,230,.22);border-color:var(--navy-2)}
button{font:inherit}
.optional{color:var(--muted);font-size:.78rem;font-weight:500}

.topbar{height:78px;background:var(--navy);display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 max(2.5vw,18px);box-shadow:0 4px 20px rgba(0,0,0,.18);border-bottom:4px solid var(--red);position:relative;z-index:50}
.brand{display:flex;align-items:center;gap:.72rem;color:#fff;font-weight:850;font-size:1rem;letter-spacing:.01em;flex:0 0 auto}
.brand small{display:block;color:#c8d5eb;font-weight:500;font-size:.7rem}
.nav{display:flex;align-items:center;justify-content:flex-end;gap:.35rem;font-size:.84rem;min-width:0}
.topbar .nav .nav-home,.topbar .nav .nav-menu>summary{display:flex;align-items:center;gap:.4rem;padding:.62rem .72rem;color:#fff!important;background:rgba(255,255,255,.035);border:1px solid transparent;border-radius:8px;font-size:.84rem;font-weight:800;opacity:1;white-space:nowrap;cursor:pointer;list-style:none;text-shadow:0 1px 1px rgba(0,0,0,.18)}
.nav-menu>summary::-webkit-details-marker{display:none}.nav-menu>summary::after{content:"⌄";font-size:.78rem;color:#8edbf5!important;transition:.15s}.nav-menu[open]>summary::after{transform:rotate(180deg)}
.topbar .nav .nav-home:hover,.topbar .nav .nav-menu>summary:hover,.topbar .nav .nav-menu[open]>summary{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.16);color:#fff!important}
.nav-menu{position:relative}.nav-dropdown{display:none;position:absolute;top:calc(100% + 11px);left:0;width:235px;padding:9px;background:#fff;border:1px solid var(--line);border-radius:11px;box-shadow:0 18px 45px rgba(6,23,59,.24)}.nav-menu[open]>.nav-dropdown{display:grid}.nav-account .nav-dropdown{left:auto;right:0;width:175px}.nav-menu-wide .nav-dropdown{width:265px;max-height:70vh;overflow:auto}
.nav-dropdown a{padding:.68rem .75rem;border-radius:7px;color:var(--ink);font-weight:700}.nav-dropdown a:hover{background:#edf3fb;color:var(--navy)}.nav-section-title{margin:6px 7px 2px;padding-top:7px;border-top:1px solid var(--line);color:var(--red);font-size:.66rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.nav-section-title:first-child{border-top:0;padding-top:0}
.nav-toggle{display:none}

.crest-crop{position:relative;display:block;overflow:hidden;background:#fff;border-radius:12px;flex:0 0 auto}
.crest-crop img{position:absolute;max-width:none;left:50%;top:38%;width:165%;transform:translate(-50%,-50%)}
.crest-crop.small{width:48px;height:50px;border:2px solid rgba(255,255,255,.85)}
.crest-crop.medium{width:92px;height:104px;margin:0 auto 18px;border:1px solid var(--line)}
.crest-crop.hero{width:150px;height:172px;margin-bottom:24px;border:3px solid rgba(255,255,255,.9);box-shadow:0 14px 35px rgba(0,0,0,.22)}
.crest-crop.label-crest{width:13mm;height:14mm;border:1px solid var(--navy);border-radius:1.5mm}

.container{width:min(1180px,94%);margin:0 auto;padding:42px 0 72px;min-height:calc(100vh - 135px)}
.public-shell{display:grid;align-items:center;justify-items:center}
.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;margin-bottom:26px}
.page-head p{color:var(--muted);margin-bottom:0}
.portal-head{align-items:center}
.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:.7rem;font-weight:900;color:var(--red)!important;margin-bottom:.45rem!important}
.eyebrow.light{color:#9addf2!important}
.role-pill{background:#e6edf8;color:var(--navy);padding:.48rem .8rem;border-radius:99px;font-size:.74rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em}

.button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border:1px solid var(--line);background:#fff;color:var(--navy);padding:.7rem 1rem;border-radius:8px;font-weight:800;cursor:pointer;white-space:nowrap;transition:.16s ease}
.button:hover{transform:translateY(-1px);box-shadow:0 7px 17px rgba(11,35,91,.12)}
.button.primary{background:var(--red);color:#fff;border-color:var(--red)}
.button.primary:hover{background:var(--red-dark)}
.button.light{background:transparent;color:#fff;border-color:rgba(255,255,255,.55)}
.button.white{background:#fff;color:var(--navy);border-color:#fff}
.button.small{padding:.42rem .65rem;font-size:.8rem}
.button.full{width:100%}
.text-link{font-weight:750;color:var(--navy-2)}
.text-link.center{text-align:center}
.panel{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px;box-shadow:var(--shadow)}

.module-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-bottom:22px}
.module-card{position:relative;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:18px;padding:30px;box-shadow:var(--shadow);border-top:6px solid var(--red)}
.module-card.lab-module{border-top-color:var(--sky)}
.module-card.inventory-module{border-top-color:var(--gold)}
.module-card.detergents-module{border-top-color:var(--navy-2)}
.module-card::after{content:"";position:absolute;right:-65px;top:-65px;width:180px;height:180px;border-radius:50%;background:rgba(199,39,60,.05)}
.module-card.lab-module::after{background:rgba(67,185,230,.1)}
.module-card h2{font-size:1.65rem;color:var(--navy);max-width:410px}
.module-card>p:not(.eyebrow){color:var(--muted);min-height:68px}
.module-icon{position:absolute;right:24px;top:24px;width:52px;height:52px;border-radius:14px;display:grid;place-items:center;background:#fbe8eb;color:var(--red);font-weight:950;letter-spacing:.04em}
.lab-module .module-icon{background:#e4f6fc;color:var(--navy)}
.inventory-module .module-icon{background:#fff2cf;color:#805a00}
.detergents-module .module-icon{background:#e7edf9;color:var(--navy)}
.module-metric{display:flex;align-items:baseline;gap:.65rem;margin:20px 0}
.module-metric strong{font-size:2.1rem;color:var(--navy)}
.module-metric span{color:var(--muted);font-size:.82rem}
.module-card .actions{justify-content:flex-start}
.quick-strip{display:flex;align-items:center;justify-content:space-between;gap:2rem;border-left:5px solid var(--navy)}
.quick-strip h2{margin-bottom:.2rem}.quick-strip p{margin-bottom:0;color:var(--muted)}

.module-banner{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:28px 30px;border-radius:17px;color:#fff;margin-bottom:22px;box-shadow:var(--shadow)}
.module-banner h1{margin-bottom:.35rem}.module-banner p{margin-bottom:0;color:#e6edf8}
.student-banner{background:linear-gradient(135deg,var(--navy),#173f86);border-bottom:5px solid var(--red)}
.lab-banner{background:linear-gradient(135deg,#0d396f,var(--navy));border-bottom:5px solid var(--sky)}
.inventory-banner{background:linear-gradient(135deg,var(--navy),#183f83);border-bottom:5px solid var(--gold)}
.detergents-banner{border-bottom-color:var(--sky)}

.inventory-overview{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,.75fr);gap:18px;margin-bottom:22px}
.chart-panel canvas{width:100%;display:block}.chart-key{display:flex;gap:20px;justify-content:center;color:var(--muted);font-size:.78rem}.chart-key i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:5px}.received-key{background:var(--sky)}.used-key{background:var(--red)}
.low-panel{max-height:370px;overflow:auto}.low-stock-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 0;border-bottom:1px solid var(--line);color:var(--ink)}.low-stock-row:last-child{border-bottom:0}.low-stock-row small{display:block;color:var(--muted)}.low-stock-row b{color:var(--red);white-space:nowrap}
.stock-panel{margin-bottom:22px}.recent-panel{margin-top:22px}.export-menu{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;font-size:.78rem}.export-menu span{color:var(--muted);font-weight:800}.export-menu a{padding:.35rem .55rem;border-radius:6px;background:#edf2f9;font-weight:800}.inventory-stats article small{display:block;color:var(--muted)}.inventory-stats .danger-stat{border-top-color:var(--red);background:#fff9fa}
.badge.low{background:#fce0e4;color:var(--red-dark)}.badge.receipt{background:#e4f6fc;color:#0d5875}.badge.consumption{background:#fce0e4;color:var(--red-dark)}.badge.adjustment{background:#fff1c9;color:#765000}.movement-value{font-weight:850}.movement-value.receipt{color:var(--green)}.movement-value.consumption{color:var(--red-dark)}
.pack-example{background:#edf3fb;border-left:4px solid var(--sky);padding:14px;border-radius:6px;color:#46556c}.movement-layout{display:grid;grid-template-columns:290px minmax(0,1fr);gap:18px}.item-balance{text-align:center;align-self:start}.item-balance>strong{display:block;font-size:4rem;line-height:1;color:var(--navy)}.item-balance>h2{color:var(--red)}.item-balance>p:not(.eyebrow){color:var(--muted)}.balance-rule{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:14px;margin-top:20px}.history-filter{grid-template-columns:230px auto auto;justify-content:start}

.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:22px}
.stats article{background:#fff;border:1px solid var(--line);border-radius:13px;padding:20px;box-shadow:var(--shadow);border-top:4px solid var(--navy)}
.stats article:nth-child(2){border-top-color:var(--green)}
.stats article:nth-child(3){border-top-color:var(--sky)}
.stats article:nth-child(4){border-top-color:var(--red)}
.stats span{display:block;color:var(--muted);font-weight:700}.stats strong{font-size:2.25rem;color:var(--navy)}
.section-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:12px}.section-head h2{margin-bottom:0}
.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%}
th,td{text-align:left;padding:.85rem .7rem;border-bottom:1px solid var(--line);vertical-align:middle}
th{color:var(--muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.08em}
td small{display:block;color:var(--muted)}tbody tr:last-child td{border-bottom:0}
.empty{text-align:center!important;color:var(--muted);padding:2.3rem!important}

.filters{display:grid;grid-template-columns:1fr 230px auto;gap:10px;margin-bottom:20px}
.asset-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.asset-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px;box-shadow:var(--shadow)}
.asset-card h3{margin:.9rem 0 .2rem;color:var(--navy)}.asset-card>p{color:var(--muted)}
.asset-top,.card-actions,.actions{display:flex;align-items:center;justify-content:space-between;gap:.7rem;flex-wrap:wrap}
.device-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:#eaf0fa;color:var(--navy);font-size:1.5rem}
.badge{display:inline-block;border-radius:99px;padding:.25rem .58rem;font-size:.69rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em;background:#eef1f5;color:#4c596b}
.badge.registered{background:#e7edf9;color:var(--navy)}.badge.available{background:#e1f5ec;color:#136842}.badge.in_use{background:#e3f5fc;color:#0d5875}.badge.maintenance{background:#ffe2e4;color:#9b2e3a}.badge.lost,.badge.retired{background:#e9e9eb;color:#555}
.asset-card dl{border-top:1px solid var(--line);padding-top:.7rem}.asset-card dl div{display:flex;justify-content:space-between;padding:.25rem 0;gap:1rem}.asset-card dt{color:var(--muted)}.asset-card dd{margin:0;text-align:right}.card-actions{margin-top:1rem;justify-content:flex-end}
.empty-state{grid-column:1/-1;text-align:center;background:#fff;border:1px dashed #bdc6d4;border-radius:14px;padding:45px;color:var(--muted)}

.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.span-2{grid-column:span 2}
.form-grid .actions{justify-content:flex-end;border-top:1px solid var(--line);padding-top:18px}
.form-section{border-bottom:1px solid var(--line);padding-top:8px}.form-section h2{margin-bottom:10px;color:var(--navy)}.form-section .eyebrow{margin-bottom:2px!important}
.detail-grid{display:grid;grid-template-columns:280px 1fr;gap:18px;margin-bottom:18px}
.qr-panel{text-align:center}.qr-panel>img{width:215px;max-width:100%}.qr-panel p{color:var(--muted);font-weight:700}
.details{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.details div{border-bottom:1px solid var(--line);padding-bottom:.75rem}.details dt{font-size:.7rem;text-transform:uppercase;color:var(--muted);font-weight:800}.details dd{margin:.25rem 0 0;font-weight:700}
.narrow{max-width:650px;margin:auto;display:grid;gap:20px}
.check{grid-template-columns:auto 1fr;align-items:start;padding:1rem;border:1px solid var(--line);border-radius:9px}.check input{width:auto;margin-top:.25rem}.check small{display:block;color:var(--muted);font-weight:400}
.two-col{display:grid;grid-template-columns:380px 1fr;gap:18px}.two-col>form{display:grid;gap:15px;align-self:start}
.one-col{display:grid;grid-template-columns:1fr}.permission-form{display:grid;gap:20px}.permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.permission-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px;border:1px solid var(--line);border-radius:10px;background:#f8fafc}.permission-card span{display:grid;gap:3px}.permission-card small,.account-switch small{display:block;color:var(--muted);font-weight:500}.permission-card select{width:150px}.account-switch{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px;border:1px solid var(--line);border-left:4px solid var(--red);border-radius:10px}.account-switch select{width:180px}.access-legend{padding:14px;border-radius:8px;background:#edf3fb;color:#46556c}.permission-form>.actions{justify-content:flex-end;border-top:1px solid var(--line);padding-top:18px}
.profile-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.75fr);gap:20px}.profile-layout .stack,.account-panel .stack{display:grid;gap:16px}.profile-heading{display:flex;align-items:center;gap:16px;padding-bottom:16px;border-bottom:1px solid var(--line)}.profile-heading h2{margin-bottom:6px}.profile-avatar{width:78px;height:78px;border-radius:50%;object-fit:cover;border:4px solid #e7edf9}.profile-avatar.initials{display:grid;place-items:center;background:var(--navy);color:#fff;font-size:2rem;font-weight:900}.security-panel{align-self:start}.manual-link{margin-top:20px}.manual-link input{font-family:monospace}.account-panel{margin:auto;max-width:620px}.stack{display:grid;gap:15px}
.recovery-search{grid-template-columns:minmax(260px,1fr) auto auto}.recovery-link{margin-bottom:20px;border-left:5px solid var(--green)}.recovery-link input{font-family:monospace}.recovery-controls{position:relative}.recovery-controls summary{list-style:none;cursor:pointer}.recovery-controls summary::-webkit-details-marker{display:none}.recovery-popover{position:absolute;right:0;top:38px;width:min(720px,88vw);display:grid;grid-template-columns:1fr 1fr;gap:18px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px;box-shadow:0 20px 55px rgba(11,35,91,.24);z-index:30}.recovery-popover h3{margin:0;color:var(--navy)}.recovery-section{border-left:1px solid var(--line);padding-left:18px}.recovery-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:18px;padding-top:16px;border-top:1px solid var(--line)}.recovery-actions form{display:grid;gap:10px}

.batch-layout{grid-template-columns:1fr 1fr}.step-number{width:34px;height:34px;display:grid;place-items:center;background:var(--red);color:#fff;border-radius:50%;font-weight:900}.instructions ol{padding-left:1.2rem}.instructions li{margin:.5rem 0}.note{background:#edf3fb;border-left:4px solid var(--navy);padding:12px;border-radius:5px;color:#48566c}
.upload-panel{display:grid;align-content:start;gap:16px}.file-drop{padding:24px;border:2px dashed #b7c3d4;border-radius:12px;background:#f8fafc;cursor:pointer}.file-drop input{padding:0;border:0;background:transparent}.file-drop span{font-size:.8rem;color:var(--muted);font-weight:500}
.results-panel{margin-top:20px;text-align:center}.result-number{font-size:4rem;font-weight:900;color:var(--green);line-height:1}.results-panel details{text-align:left;margin-top:18px}.error-list{color:#8c2634}
.migration-results{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}.migration-results article{padding:16px;border-radius:10px;background:#f3f6fb}.migration-results strong{display:block;font-size:2rem;color:var(--navy)}.migration-results span{color:var(--muted);font-weight:700}.review-list{color:#765000}
.class-layout{grid-template-columns:330px 1fr}

.application-public{max-width:1080px}.application-brand{display:flex;align-items:center;justify-content:center;gap:22px;margin-bottom:22px;text-align:left}.application-brand h1{color:var(--navy);margin-bottom:.25rem}.application-brand p:last-child{color:var(--muted);margin:0}.availability-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}.availability-strip article{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:15px}.application-form{display:grid;gap:24px}.application-form .form-section{padding:0 0 24px}.application-form .form-section:last-of-type{border-bottom:0}.disclosure-section{background:#fff7f8;border:2px solid #efb2ba!important;border-radius:12px;padding:20px!important}.application-success{text-align:center}.application-ref{display:block;color:var(--navy);font-size:1.5rem;margin:12px 0 22px}.applicant-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.applicant-card{display:grid;gap:9px;color:var(--ink);border:1px solid var(--line);border-top:4px solid var(--navy);border-radius:12px;padding:18px;background:#fff}.applicant-card:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.applicant-card h2{font-size:1.15rem;margin:0;color:var(--navy)}.applicant-card p,.applicant-card small{margin:0;color:var(--muted)}.applicant-card>strong{color:var(--red)}.app-profile{display:grid;grid-template-columns:300px minmax(0,1fr);gap:20px}.applicant-summary{align-self:start;text-align:center}.applicant-summary>img{width:150px;height:170px;object-fit:cover;border-radius:12px;border:4px solid #e7edf9}.applicant-summary .profile-avatar{margin:0 auto}.applicant-summary dl{text-align:left;margin-top:20px}.applicant-summary dl div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:9px 0}.applicant-summary dd{margin:0;text-align:right;font-weight:700}.status-form{margin-top:20px;text-align:left}.profile-record{display:grid;gap:18px}.flag-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.flag-grid article{border:1px solid var(--line);border-left:4px solid var(--green);border-radius:9px;padding:14px}.flag-grid article.flagged{border-left-color:var(--red);background:#fff7f8}.flag-grid strong,.flag-grid span{display:block}.flag-grid span{font-size:.75rem;font-weight:850;color:var(--muted);margin:5px 0}.flag-grid .flagged span{color:var(--red)}.flag-grid p{white-space:pre-wrap;margin:8px 0 0}.document-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.document-card{display:grid;gap:5px;border:1px solid var(--line);border-radius:9px;padding:15px;color:var(--navy);background:#f8fafc}.document-card span,.document-card small{color:var(--muted)}.large-check{width:22px;height:22px}.notification-actions{justify-content:flex-end;margin-top:18px}.science_lab-module{border-top-color:#4c9f70!important}.science_lab-module .module-icon{background:#e1f5ec;color:#136842}.applications-module{border-top-color:var(--red)}

.qr-reader,.verification-card{width:min(650px,100%);text-align:center;padding:38px;margin:auto}
.qr-reader>p:not(.eyebrow),.verification-card>p:not(.eyebrow){color:var(--muted)}
.qr-reader .file-drop{margin:20px 0;text-align:left}.reader-message{padding:12px;border-radius:8px;background:#eef2f7;color:var(--muted);margin-bottom:18px}.reader-message.success{background:#dff4e9;color:#136842}.reader-message.error{background:#ffe2e4;color:#922b36}
.verified-mark{width:72px;height:72px;margin:0 auto 20px;display:grid;place-items:center;border-radius:50%;background:#e1f5ec;color:var(--green);font-size:2.4rem;font-weight:950}.verification-owner{font-size:1.4rem!important;color:var(--navy)!important;font-weight:850}.privacy-note{margin:20px 0;padding:12px;background:#eef3fa;border-radius:8px;color:var(--muted);font-size:.82rem}

.alert{padding:.85rem 1rem;border-radius:9px;margin-bottom:18px;font-weight:700}.alert.success{background:#def4e9;color:#136842}.alert.danger{background:#ffe1e4;color:#922b36}.alert.warning{background:#fff1c9;color:#765000}
.login-card{width:min(1000px,100%);display:grid;grid-template-columns:1.15fr .85fr;overflow:hidden;border-radius:20px;box-shadow:0 25px 70px rgba(11,35,91,.21)}
.login-art{padding:48px;color:#fff;background:linear-gradient(145deg,rgba(11,35,91,.97),rgba(19,61,126,.94)),repeating-linear-gradient(45deg,#102d65,#102d65 12px,#153873 12px,#153873 24px);display:flex;flex-direction:column;justify-content:center;border-bottom:6px solid var(--red)}
.login-art h1{font-size:2.65rem}.login-art>p{color:#d7e3f4;max-width:450px}.apply-login-button{align-self:flex-start;margin-top:10px}.application-cta{border-color:var(--navy);background:#edf3fb;color:var(--navy)}
.login-form{border:0;border-radius:0;padding:52px 40px;display:grid;align-content:center;gap:18px}.login-form h2{font-size:1.7rem;color:var(--navy)}
.muted{color:var(--muted)}.tiny{font-size:.78rem}.error{text-align:center;max-width:700px;margin:auto}.error>strong{font-size:7rem;line-height:1;color:var(--red)}
footer{text-align:center;color:#8993a2;padding:0 1rem 30px;font-size:.78rem}
.admin-approval{border:1px solid #f2b8bf;background:#fff7f8;border-radius:12px;padding:14px;margin:16px 0;display:grid;gap:12px}.admin-approval legend{font-weight:800;color:#a7192b;padding:0 6px}.admin-approval p{margin:0}.inline-sensitive-form{margin:0}.inline-sensitive-form details{position:relative}.inline-sensitive-form summary{list-style:none;cursor:pointer}.inline-sensitive-form summary::-webkit-details-marker{display:none}.sensitive-popover{position:absolute;right:0;top:38px;width:min(360px,80vw);background:#fff;border:1px solid #d9e0ec;border-radius:14px;padding:14px;box-shadow:0 18px 45px rgba(11,35,91,.2);z-index:20}.station-layout{display:grid;gap:8px}.station-layout>div{display:grid;grid-template-columns:70px repeat(8,1fr);gap:5px;align-items:center}.station-layout span{background:#eef3fb;border:1px solid #d4ddeb;border-radius:7px;padding:7px 3px;text-align:center;font-weight:700}.danger-zone{margin-top:24px;border-top:4px solid #c92b3d}.deregistered-mark{background:#c92b3d!important}

.print-page{background:#fff}.print-tools{display:flex;gap:10px;justify-content:center;padding:30px}
.asset-label{width:90mm;height:59mm;border:2px solid var(--navy);border-bottom:4px solid var(--red);padding:4mm;margin:auto;text-align:center;background:#fff}
.asset-label header{display:flex;align-items:center;justify-content:center;gap:3mm;color:var(--navy);font-size:9pt}.asset-label header small{display:block;font-size:7pt}.asset-label .label-qr{width:27mm;height:27mm;float:left;margin:3mm 4mm 0 2mm}.asset-label h1{font-size:14pt;margin:7mm 0 1mm}.asset-label p{font-size:8pt;margin-bottom:3mm}.asset-label>strong{font-size:7pt;color:var(--red)}

@media(max-width:1180px){
  .brand>span:last-child{display:none}.topbar{gap:12px}.nav-home,.nav-menu>summary{padding:.58rem .56rem}
}
@media(max-width:850px){
  .profile-layout,.app-profile{grid-template-columns:1fr}
  .stats{grid-template-columns:1fr 1fr}.asset-grid{grid-template-columns:1fr 1fr}.two-col,.detail-grid{grid-template-columns:1fr}.login-card{grid-template-columns:1fr}.login-art{padding:35px}.login-art h1{font-size:2rem}
  .nav-toggle{display:block;background:transparent;border:1px solid #7384a7;color:#fff;padding:.45rem .7rem;border-radius:6px}.nav{display:none;position:absolute;top:74px;left:0;right:0;background:var(--navy);padding:1rem;z-index:55;align-items:stretch;max-height:calc(100vh - 74px);overflow:auto}.nav.open{display:grid}.nav-menu{width:100%}.nav-home,.nav-menu>summary{width:100%;justify-content:space-between;padding:.75rem}.nav-home{display:block}.nav-dropdown,.nav-account .nav-dropdown,.nav-menu-wide .nav-dropdown{position:static;width:100%;max-height:none;margin:.25rem 0 .5rem;background:#102f6b;border-color:rgba(255,255,255,.12);box-shadow:none}.nav-dropdown a{color:#e8effa}.nav-dropdown a:hover{background:rgba(255,255,255,.1);color:#fff}.nav-section-title{border-color:rgba(255,255,255,.14);color:#79cae8}.filters{grid-template-columns:1fr 170px auto}.inventory-overview,.movement-layout{grid-template-columns:1fr}
}
@media(max-width:650px){
  .migration-results{grid-template-columns:1fr 1fr}
  .permission-grid{grid-template-columns:1fr}.permission-card,.account-switch{align-items:stretch;flex-direction:column}.permission-card select,.account-switch select{width:100%}
  .container{padding-top:26px}.page-head,.module-banner,.quick-strip{align-items:flex-start;flex-direction:column;gap:1rem}.stats,.asset-grid,.form-grid,.details,.module-grid,.availability-strip,.applicant-grid,.flag-grid,.document-grid{grid-template-columns:1fr}.span-2{grid-column:span 1}.filters{grid-template-columns:1fr}.login-art{display:none}.login-form{padding:38px 24px}.panel{padding:18px}.stats strong{font-size:1.7rem}.module-card>p:not(.eyebrow){min-height:0}.module-banner{padding:24px}.module-banner .actions{justify-content:flex-start}.application-brand{align-items:center;text-align:center;flex-direction:column}.apply-login-button{display:none}
  .station-layout>div{grid-template-columns:50px repeat(4,1fr)}.sensitive-popover{position:fixed;left:5vw;right:5vw;top:20vh;width:auto}.recovery-search{grid-template-columns:1fr}.recovery-popover{position:fixed;left:4vw;right:4vw;top:10vh;width:auto;max-height:82vh;overflow:auto;grid-template-columns:1fr}.recovery-section{border-left:0;border-top:1px solid var(--line);padding-left:0;padding-top:18px}.recovery-actions{grid-template-columns:1fr}
}
@media print{.print-tools{display:none}.asset-label{margin:0;page-break-inside:avoid}@page{size:auto;margin:8mm}}
