/* Shell only: preserve operational controls, status colors and device layouts. */
:root{font-family:'Aptos','Segoe UI',Arial,sans-serif}
body{background:#f3f6f9}
.chrome{background:rgba(7,24,39,.97);border-bottom:1px solid #183b59;min-height:56px;padding-top:max(5px,env(safe-area-inset-top));padding-right:max(16px,env(safe-area-inset-right));padding-bottom:5px;padding-left:max(16px,env(safe-area-inset-left));gap:14px;color:#f4f8fb;box-shadow:0 10px 32px -28px #00101e}
.chrome .brand{min-height:44px;gap:8px;font-size:21px;letter-spacing:-.6px}.chrome .brand strong{display:inline-flex;font-weight:700}.hardy-word{color:#f1f5f8}.edge-word{color:#19bfff}
.hardyedge-mark{width:32px;height:36px;flex:none;display:block}
.chrome>p{color:#9fb3c6;letter-spacing:.02em}
.public-home-link{font-size:12px;min-height:44px;display:inline-flex;align-items:center;text-decoration:none;color:#32c8ff}
.logout-button{border-radius:3px;border-color:#31506a;background:#102a40;font-weight:600;color:#edf5fb}
.login-shell{min-height:calc(100vh - 56px)}.login-panel{border:1px solid #d9e0e7;border-radius:5px;box-shadow:0 16px 45px -30px #101e2d;padding:40px;color:#101e2d}
.login-panel input{border-radius:3px;border-color:#cbd5e1}.login-panel button[type=submit]{background:#0a84ff;color:white;border-color:#0a84ff;border-radius:3px}
.login-panel input:focus-visible,.chrome a:focus-visible{outline:3px solid #0a84ff;outline-offset:3px}
.page-shell>.page-header{color:#101e2d}
@media(max-width:620px){.chrome{min-height:52px;gap:8px;padding-top:max(4px,env(safe-area-inset-top));padding-right:max(10px,env(safe-area-inset-right));padding-bottom:4px;padding-left:max(10px,env(safe-area-inset-left));flex-wrap:nowrap}.chrome .brand{gap:6px;font-size:18px;letter-spacing:-.45px}.hardyedge-mark{width:28px;height:31px}.chrome>p,.public-home-link{display:none}.logout-button{padding:.35rem .5rem;font-size:.75rem}.login-panel{padding:26px}}
@media(max-width:360px){.chrome .brand strong{display:none}.chrome .brand{min-width:28px}}
@media(max-height:500px) and (orientation:landscape){.chrome{min-height:48px;padding-top:max(2px,env(safe-area-inset-top));padding-bottom:2px}.chrome .brand{min-height:44px}.hardyedge-mark{width:26px;height:29px}}

:root{--signal:oklch(.75 .14 220);--signal-ink:oklch(.56 .16 242);--signal-wash:oklch(.95 .035 230)}
.login-panel{border-color:#d5e0ea}
.login-panel button[type=submit]{background:linear-gradient(135deg,#0a84ff,#006bdc);border-color:#0a84ff}
.page-shell>.page-header h1,.site-header h1{color:#0b1c2d}

/* Login presentation only; form/session logic and post-login dashboard are unchanged. */
.login-shell{position:relative;isolation:isolate;overflow:hidden;padding:52px 20px 72px;background:radial-gradient(ellipse at 70% 25%,#e5f2ff,transparent 62%),linear-gradient(135deg,#edf3f8,#f8fafc)}
.login-shell::before{content:"";position:absolute;inset:0 48% 0 0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgba(240,246,251,.73),#f3f7fb),url("brand/camera-detail.webp") center 42%/cover no-repeat;opacity:.55}
.login-panel{position:relative;width:min(100%,470px);padding:36px 40px;border:1px solid #d7e3ed;border-radius:12px;background:#fff;box-shadow:0 24px 70px -38px rgba(11,28,45,.48)}
.login-panel::before{content:"";display:block;width:50px;height:58px;margin-bottom:23px;background:url("brand/hardyedge-mark-r1.png") center/contain no-repeat}
.login-panel h1{font-size:32px;letter-spacing:-1px;line-height:1.2}.login-panel .eyebrow{color:#087cf0}.login-panel .login-intro{font-size:14px;color:#5b6e82;line-height:1.65}.login-panel input{background:#f8fafc;border-radius:6px}.login-panel button[type=submit]{border-radius:6px;min-height:48px}
.hardyedge-mark{object-fit:contain;filter:none}
@media(max-width:600px){.login-shell{padding:30px 16px 50px}.login-shell::before{display:none}.login-panel{padding:28px 24px}.login-panel h1{font-size:29px}}
