/* Behin360 phase 1 — consolidated design system */
:root{--b360-font:Tahoma,"Segoe UI",sans-serif;--b360-muted:#596b85;--b360-radius:22px;--b360-border:#e2e7f0}
body,button,input,textarea,select{font-family:var(--b360-font)}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #46cbd9;outline-offset:4px}
[hidden]{display:none!important}
body.b360-fullscreen-login{background:#08172f;color:#fff;overflow-x:hidden}
body.b360-fullscreen-login .b360-login{display:grid!important;grid-template-columns:minmax(0,1.25fr) minmax(340px,.8fr)!important;align-items:center;gap:clamp(28px,6vw,100px);min-height:100svh;padding:clamp(24px,5vw,80px);background:radial-gradient(ellipse at 90% 5%,#41235e 0,transparent 45%),radial-gradient(ellipse at 4% 95%,#182855 0,transparent 45%),#08172f;position:relative;isolation:isolate;overflow:hidden}
body.b360-fullscreen-login .b360-login:before{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(#ffffff04 1px,transparent 1px),linear-gradient(90deg,#ffffff04 1px,transparent 1px);background-size:54px 54px;pointer-events:none}
body.b360-fullscreen-login .b360-login-visual{position:relative!important;inset:auto!important;padding:0!important;background:none!important;overflow:visible!important;min-height:0!important;border-radius:0!important}
body.b360-fullscreen-login .b360-login-visual:before,body.b360-fullscreen-login .b360-login-visual:after,body.b360-fullscreen-login .b360-login-copy:before,body.b360-fullscreen-login .b360-login-copy:after,body.b360-fullscreen-login .b360-login-panel:after{display:none!important}
body.b360-fullscreen-login .b360-login-copy{max-width:720px;padding:0!important;margin:0!important}
body.b360-fullscreen-login .b360-brand{display:flex;justify-content:flex-start;gap:12px;margin-bottom:clamp(32px,5vh,64px)}
body.b360-fullscreen-login .b360-brand>div{display:block!important}
body.b360-fullscreen-login .b360-brand img{width:52px;height:52px}
body.b360-fullscreen-login .b360-brand strong{color:white;font-size:22px}
body.b360-fullscreen-login .b360-brand small{font-size:11px;color:#cbd5e4;opacity:1}
.b360-eyebrow{font-size:12px;color:#d5b4e8;letter-spacing:0; margin-bottom:14px}
body.b360-fullscreen-login .b360-login-copy h1{font-size:clamp(38px,4.6vw,68px)!important;line-height:1.55!important;margin:0 0 22px!important;letter-spacing:-1px;max-width:100%;color:#fff!important;background:none!important;-webkit-text-fill-color:initial}
body.b360-fullscreen-login .b360-login-copy h1 em{font-style:normal;color:#f28ec9}
body.b360-fullscreen-login .b360-login-copy>p{font-size:15px!important;line-height:2.2!important;color:#c5d0e3;max-width:550px;margin:0}
.b360-role-strip{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}
.b360-role-strip span{border:1px solid #ffffff20;border-radius:999px;padding:7px 14px;font-size:12px;color:#e2e8f5;background:#ffffff05}
body.b360-fullscreen-login .b360-login-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:38px}
body.b360-fullscreen-login .b360-login-point{border:0;border-top:1px solid #ffffff26;border-radius:0;background:none;padding:16px 0;color:#b9c6dc;font-size:11px;line-height:1.9;backdrop-filter:none}
body.b360-fullscreen-login .b360-login-point strong{display:block;font-size:12px;color:#fff;margin-bottom:8px}
.b360-hero-footer{display:flex;justify-content:space-between;border-top:1px solid #ffffff15;padding-top:20px;margin-top:30px;font-size:11px;color:#aabbd3}
body.b360-fullscreen-login .b360-login-panel{position:relative!important;inset:auto!important;display:block!important;transform:none!important;background:none!important;padding:0!important;width:100%!important;overflow:visible!important}
body.b360-fullscreen-login .b360-login-box{width:100%;max-width:450px;margin:0 auto;padding:36px 30px;background:linear-gradient(145deg,#ffffff12,#ffffff06)!important;border:1px solid #ffffff28;border-radius:28px;box-shadow:0 28px 70px #00000030;backdrop-filter:blur(10px);color:#fff}
.b360-login-symbol{display:grid;place-items:center;width:62px;height:62px;border-radius:20px;background:linear-gradient(135deg,#8741bd,#d12d91);font-size:22px;font-weight:bold;margin-bottom:30px;box-shadow:0 12px 32px #ab27882e}
body.b360-fullscreen-login .b360-login-box h2{font-size:25px;margin:0 0 12px;line-height:1.6;color:#fff}
body.b360-fullscreen-login .b360-login-box>p{font-size:13px;line-height:2;color:#c2cce0;margin-bottom:28px}
body.b360-fullscreen-login .b360-field label{font-size:13px;color:#e3e9f3;font-weight:400;margin-bottom:4px}
body.b360-fullscreen-login .b360-field input{background:#07152d80;color:#fff;border:1px solid #ffffff30;padding:14px 16px;min-height:56px;border-radius:13px;font-size:17px;text-align:left;letter-spacing:1px}
body.b360-fullscreen-login .b360-field input::placeholder{color:#a9b7cc;letter-spacing:0}
body.b360-fullscreen-login .b360-field input:focus{border-color:#d678be;box-shadow:0 0 0 3px #d678be20}
body.b360-fullscreen-login .b360-btn{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:54px;border-radius:13px;margin-top:18px;background:linear-gradient(110deg,#c52f91,#8140b9);font-size:14px;animation:none}
body.b360-fullscreen-login .b360-btn.secondary{background:#ffffff12;color:#e8eefe;box-shadow:none}
body.b360-fullscreen-login .b360-login-help{margin-top:28px;padding:16px;border:1px solid #ffffff16;border-radius:12px;background:#ffffff05;color:#bfcee1;font-size:11px;line-height:2}
body.b360-fullscreen-login .b360-login-help strong{color:#e8eef8;font-weight:400}
body.b360-fullscreen-login .b360-trust-row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;font-size:10px;color:#b4c4da;margin-top:20px}
body.b360-fullscreen-login .b360-status.error{background:#592337;color:#ffe1e8}
body.b360-fullscreen-login .b360-status.ok{background:#153e37;color:#c4f8de}
.b360-account-tools{position:fixed;bottom:20px;right:24px;z-index:40;color:#fff}
.b360-account-tools a{display:block;padding:10px 20px;border:1px solid #ffffff35;border-radius:12px;background:#17315a;font-size:12px}
.b360-modal-box{max-height:90svh;overflow-y:auto}
.b360-main{max-width:1700px;width:100%;margin:auto}
.b360-empty{padding:30px 14px;border:1px dashed #d8dfeb;border-radius:14px;background:#f8faff}
.b360-card{scroll-margin-top:55px}
.admin-bar .b360-sidebar{top:32px;height:calc(100svh - 32px)}
.b360-reveal{opacity:1!important;transform:none!important;animation:none!important}
@media(max-width:1100px){body.b360-fullscreen-login .b360-login{gap:35px;padding:35px;grid-template-columns:minmax(0,1fr) minmax(320px,.9fr)!important}body.b360-fullscreen-login .b360-login-points{grid-template-columns:1fr;gap:0;margin-top:20px}body.b360-fullscreen-login .b360-login-point{padding:10px 0}body.b360-fullscreen-login .b360-login-point strong{display:inline;margin-left:8px}}
@media(max-width:760px){body.b360-fullscreen-login .b360-login{display:flex!important;flex-direction:column;align-items:stretch;gap:30px;padding:24px 18px 40px;min-height:100svh}body.b360-fullscreen-login .b360-login-copy h1{font-size:38px!important;line-height:1.6!important}body.b360-fullscreen-login .b360-brand{margin-bottom:28px}body.b360-fullscreen-login .b360-login-copy>p{font-size:13px!important;max-width:100%}body.b360-fullscreen-login .b360-login-points,.b360-hero-footer{display:none}body.b360-fullscreen-login .b360-login-box{padding:26px 22px;max-width:520px;backdrop-filter:none;background:#14243e!important}body.b360-fullscreen-login .b360-login-copy{max-width:520px;margin:0 auto!important;width:100%}.b360-login-symbol{width:48px;height:48px;border-radius:15px;font-size:18px;margin-bottom:18px}.b360-role-strip{gap:6px;margin-top:18px}.b360-role-strip span{font-size:10px;padding:5px 10px}.b360-account-tools{display:none}.b360-mobile-nav{padding-bottom:max(8px,env(safe-area-inset-bottom))}.b360-topbar{gap:8px}.b360-userchip{backdrop-filter:none}}
@media(max-width:760px){body.b360-fullscreen-login .b360-brand{margin-bottom:18px}body.b360-fullscreen-login .b360-login-copy h1{font-size:29px!important;margin-bottom:12px!important}body.b360-fullscreen-login .b360-login-copy h1 br{display:none}body.b360-fullscreen-login .b360-login-copy>p{font-size:12px!important;line-height:1.9!important}.b360-eyebrow{font-size:11px;margin-bottom:9px}body.b360-fullscreen-login .b360-login{gap:22px}.b360-login-symbol{display:none}body.b360-fullscreen-login .b360-login-box>p{margin-bottom:18px}.b360-role-strip{margin-top:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* v0.7.1 — cinematic login, motion bounded and optional */
body.b360-fullscreen-login .b360-login:after{content:"";position:absolute;inset:-30%;pointer-events:none;z-index:-1;background:linear-gradient(115deg,transparent 38%,#c179ef0a 47%,transparent 57%);animation:b360-light 16s ease-in-out 2}
@keyframes b360-light{0%,100%{transform:translateX(-12%)}50%{transform:translateX(12%)}}
body.b360-fullscreen-login .b360-login-box{box-shadow:0 30px 90px #00000040,inset 0 1px 0 #ffffff18}
@media(max-width:760px),(prefers-reduced-motion:reduce){body.b360-fullscreen-login .b360-login:after{animation:none}body.b360-fullscreen-login .b360-login-box{backdrop-filter:none}}
