/* BLC Self Storage administration presentation layer. */
body:has(.adminbar){background:#f4f6f8;color:#172a3a}
.adminbar{position:fixed;inset:0 auto 0 0;z-index:20;width:276px;display:block;padding:26px 16px;background:#0b263b;color:#eaf1f5;box-shadow:4px 0 18px #06152224}
.admin-brand{margin:0 8px 28px!important;gap:13px!important;color:#fff!important;line-height:1.15;font-size:1rem}.admin-brand img{width:56px;height:56px;filter:drop-shadow(0 2px 4px #0005)}.admin-brand small{display:block;margin-top:5px;font-size:.62rem;letter-spacing:.15em;color:#a7becb}
.adminbar nav{display:grid;gap:3px}.adminbar nav a{margin:0!important;padding:10px 12px;border-radius:7px;color:#d4e0e8;font-size:.9rem;font-weight:700}.adminbar nav a:hover,.adminbar nav a:focus-visible,.adminbar nav a.active{background:#174866;color:#fff;outline:0}.adminbar .nav-divider{height:1px;background:#2b4b60;margin:9px 5px}.adminbar .signout{color:#ffdaa0}.admin-menu{display:none}
.admin{max-width:1240px;margin:0 0 0 276px;padding:42px clamp(24px,5vw,70px);min-height:100vh}.admin h1{margin:0 0 8px;font:700 clamp(2rem,4vw,3rem)/1.05 Georgia,serif;color:#102e43}.admin h2{font:700 1.25rem/1.2 Georgia,serif;color:#102e43}.admin>p{color:#5f7180}.admin form,.admin>table,.admin .unit{background:#fff;border:1px solid #dce3e8;border-radius:10px;box-shadow:0 4px 16px #0920330c}.admin form{padding:24px;margin:22px 0}.admin form form{box-shadow:none;border:0;padding:0;margin:12px 0 0}.admin-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.admin-grid section{border:1px solid #dce3e8;border-radius:10px;box-shadow:0 4px 16px #0920330c;padding:24px;background:#fff}.admin .unit{padding:22px;margin:18px 0;border-top:4px solid #73a996}.admin fieldset.unit{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}.admin fieldset.unit legend{font:700 1.2rem Georgia,serif;padding:0 7px}.admin fieldset.unit label:nth-child(3),.admin fieldset.unit label:nth-child(7){grid-column:1/-1}.admin input,.admin textarea,.admin select{border:1px solid #bdcbd4;border-radius:6px;padding:11px 12px;background:#fff;color:#172a3a}.admin input:focus,.admin textarea:focus,.admin select:focus,.adminbar a:focus-visible,.button:focus-visible{outline:3px solid #e9a444;outline-offset:2px}.admin textarea{min-height:94px}.admin label{color:#314858;font-size:.9rem}.admin button,.admin .button{border-radius:6px;background:#d99438;color:#142d3f;box-shadow:0 1px 2px #0002}.admin button+button,.admin .button+.button{margin-left:8px}.admin table{width:100%;border-collapse:collapse;overflow:hidden}.admin th{background:#eaf0f3;color:#29475a;text-align:left;font-size:.78rem;letter-spacing:.04em;text-transform:uppercase}.admin th,.admin td{padding:13px 14px;border-bottom:1px solid #e1e7eb}.admin tr:last-child td{border-bottom:0}.admin .success{padding:12px 14px;background:#e6f3ec;border-radius:7px}.admin .error{padding:12px 14px;background:#f9e8e4;border-radius:7px}
.login{background:linear-gradient(135deg,#061f32,#123f59)}.login form{border-radius:12px;width:min(440px,100%);padding:38px}.login-logo{display:block;width:82px;height:82px;object-fit:contain;margin:0 auto 20px}.login h1{margin:5px 0;font:700 2.35rem Georgia,serif}.login .button{width:100%;margin-top:6px;border-radius:6px}
@media(max-width:900px){.adminbar{width:220px}.admin{margin-left:220px;padding:32px 26px}.admin-brand{font-size:.87rem}.admin-brand img{width:43px;height:43px}}
@media(max-width:700px){.adminbar{position:sticky;top:0;bottom:auto;width:100%;padding:10px 16px;display:flex;align-items:center;min-height:66px}.admin-brand{margin:0!important;font-size:.84rem}.admin-brand img{width:40px;height:40px}.admin-menu{display:block;margin-left:auto;order:2;background:#174866;color:#fff;border:1px solid #5f8297;border-radius:5px;padding:7px 10px}.adminbar nav{display:none;position:absolute;top:66px;left:0;right:0;padding:12px 16px 18px;background:#0b263b;max-height:calc(100vh - 66px);overflow:auto}.adminbar.menu-open nav{display:grid}.admin{margin:0;padding:28px 16px}.admin h1{font-size:2.1rem}.admin fieldset.unit{grid-template-columns:1fr}.admin fieldset.unit label:nth-child(3),.admin fieldset.unit label:nth-child(7){grid-column:auto}.admin th,.admin td{padding:10px 8px}.admin table{font-size:.82rem;display:block;overflow-x:auto}}
