.login-body{background:#080b09;--lime:#ed6c1b}
.login-body .login-page{min-height:100svh;padding:0 6vw;display:flex;flex-direction:column;align-items:stretch;position:relative;isolation:isolate;overflow:hidden;background:#080b09}
.login-backdrop{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#0508051a 0%,#05080535 40%,#080b09e8 76%,#080b09 100%),linear-gradient(0deg,#060907c9,transparent 45%,#070a0844),url('../images/landing-dj-party.png') 42% center/cover no-repeat}
.login-body .login-page:after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 78% 48%,#ed6c1b0c,transparent 35%)}
.login-header{height:105px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.login-header .logo{font-size:36px}
.login-header .back-link{display:flex;align-items:center;gap:13px;color:#b6beb3;font-size:12px}
.login-header .back-link:hover{color:var(--lime)}
.login-header .back-link svg{transform:rotate(180deg)}
.login-content{display:grid;grid-template-columns:1fr 430px;gap:6vw;align-items:center;flex:1;width:100%;max-width:1400px;margin:0 auto;padding:30px 0 50px}
.login-story{align-self:stretch;display:flex;flex-direction:column;justify-content:center;padding:20px 0;max-width:650px}
.login-story .eyebrow{color:#dce5d4;font-size:10px;letter-spacing:2.2px;display:flex;align-items:center;gap:11px;margin-bottom:27px}
.login-dot{height:6px;width:6px;border-radius:50%;background:var(--lime);box-shadow:0 0 15px #ed6c1b77}
.login-story h2{font-size:clamp(68px,7.2vw,110px);line-height:1.02;letter-spacing:-5px;font-weight:800;margin:0 0 26px;color:#fff;text-shadow:0 4px 35px #0005}
.login-story h2 span{color:var(--lime)}
.login-story>p{font-size:22px;line-height:1.6;color:#ccd3c5;margin:0;text-shadow:0 2px 18px #000}
.login-story-footer{display:flex;align-items:center;gap:15px;margin-top:62px;font-size:11px;line-height:1.65;color:#bac5b0;letter-spacing:.6px}
.story-wave{height:50px;width:50px;border:1px solid #ed6c1b35;background:#0b1009a0;border-radius:50%;display:grid;place-items:center;color:var(--lime);backdrop-filter:blur(10px)}
.login-story-footer strong{font-weight:500;color:#e6eddf}
.login-body .login-card{margin:0;padding:34px 36px 29px;width:100%;max-width:none;position:relative;overflow:hidden;border:1px solid #8b62493d;border-radius:19px;background:linear-gradient(140deg,#27201be8,#0c110bee 72%);backdrop-filter:blur(22px);box-shadow:0 30px 95px #0007,0 0 80px #ed6c1b10,inset 0 1px #edc5ac12}
.login-body .login-card:before{content:'';position:absolute;left:28px;right:28px;top:0;height:1px;background:linear-gradient(90deg,transparent,#ed6c1baa,transparent)}
.login-card-top{display:flex;align-items:center;gap:12px;margin-bottom:22px}
.login-emblem{height:46px;width:46px;border:1px solid #ed6c1b40;border-radius:13px;background:linear-gradient(135deg,#ed6c1b16,#ed6c1b05);display:grid;place-items:center;color:var(--lime)}
.login-card-top .eyebrow{font-size:9px;letter-spacing:2px}
.login-body .login-card h1{font-size:29px;letter-spacing:-1px;margin:0 0 9px;line-height:1.3}
.login-body .login-card>p{font-size:13px;color:#adb7a3;margin:0 0 28px}
.login-body .login-card label{color:#d1dac7;font-size:12px;letter-spacing:.1px;margin:20px 0 0}
.login-body .login-card input{background:#070c06a8;border:1px solid #63504466;border-radius:9px;min-height:49px;font-size:13px;padding:13px 15px;margin-top:9px;transition:border-color .18s,box-shadow .18s}
.login-body .login-card input::placeholder{color:#7c8971}
.login-body .login-card input:focus{border-color:#ed6c1b90;box-shadow:0 0 0 3px #ed6c1b0a;outline:none}
.login-body .login-card input[aria-invalid]{border-color:#d4888066}
.login-body .login-card .button{border-radius:9px;min-height:50px;margin-top:25px;justify-content:space-between;padding:14px 18px;font-size:13px}
.login-body .login-card .primary{background:var(--lime);box-shadow:0 5px 25px #ed6c1b14}
.login-body .login-card .primary:hover{background:#ed6c1b}
.login-body .login-divider{margin-top:27px;padding:0;border:0;display:flex;align-items:center;gap:13px;color:#8e796c;font-size:8px;letter-spacing:1.8px}
.login-body .login-divider:before,.login-body .login-divider:after{content:'';flex:1;height:1px;background:#68524445}
.login-body .login-divider+form .button{margin-top:20px;background:#ed6c1b04;border-color:#7b553e55;color:#d9e5cb}
.login-body .login-card small{font-size:9px;color:#958174;margin-top:17px;letter-spacing:.15px}
.login-footer{display:flex;justify-content:space-between;align-items:center;height:65px;border-top:1px solid #856f6126;color:#857267}
.login-footer>span{font-size:8px;letter-spacing:2.8px}.login-footer small{font-size:10px}
@media(min-width:1900px){.login-content{max-width:1600px;grid-template-columns:1fr 470px}.login-story h2{font-size:125px}.login-body .login-card{padding:42px}}
@media(max-width:1050px){.login-body .login-page{padding:0 5vw}.login-content{grid-template-columns:1fr 390px;gap:4vw}.login-story h2{font-size:73px;letter-spacing:-3px}.login-story>p{font-size:18px}.login-body .login-card{padding:29px}.login-body .login-card h1{font-size:26px}.login-story .eyebrow{font-size:8px;letter-spacing:1.5px}}
@media(max-width:760px){.login-body .login-page{padding:0 22px}.login-header{height:83px}.login-header .logo{font-size:30px}.login-header .back-link{font-size:10px;gap:7px}.login-header .back-link svg{width:14px}.login-content{display:flex;flex-direction:column;align-items:center;gap:26px;padding:23px 0 38px}.login-story{align-self:center;width:100%;max-width:430px;padding:0}.login-story .eyebrow{font-size:8px;letter-spacing:1.4px;margin-bottom:16px}.login-story h2{font-size:48px;letter-spacing:-2.5px;line-height:1.03;margin-bottom:15px}.login-story h2 br{display:none}.login-story>p{font-size:14px;line-height:1.7}.login-story>p br{display:none}.login-story-footer{display:none}.login-backdrop{background:linear-gradient(0deg,#080b09 12%,#080b09cc 58%,#080b0944),url('../images/landing-dj-party.png') 80% top/auto 690px no-repeat}.login-body .login-card{max-width:430px;padding:27px 25px 24px;background:linear-gradient(140deg,#261d18e8,#0b1109f2)}.login-card-top{margin-bottom:18px}.login-body .login-card h1{font-size:27px}.login-body .login-card>p{margin-bottom:22px}.login-body .login-card label{margin-top:18px}.login-footer{height:57px}.login-body .login-page:after{background:radial-gradient(ellipse at 50% 60%,#ed6c1b0d,transparent 60%)}}
@media(max-width:350px){.login-body .login-page{padding:0 16px}.login-header .logo{font-size:27px}.login-header .back-link{font-size:9px}.login-story h2{font-size:42px}.login-body .login-card{padding:23px 20px}.login-body .login-card h1{font-size:24px}}

.login-body .login-card .signup-login{margin:24px 0 0;font-size:13px;line-height:1.7}.signup-login a{color:var(--lime);font-weight:700;text-decoration:underline;text-underline-offset:4px}.login-body .login-card .session-notice{padding:14px;border:1px solid #7b553e55;border-radius:9px;line-height:1.7}

.status-page{min-height:100vh;display:grid;place-items:center;padding:30px 20px;background:radial-gradient(ellipse at top,#33241b,#080b09 65%)}.login-body .status-page .login-card{max-width:640px}.status-page .logo{display:block;margin-bottom:28px}.status-page .eyebrow{margin-bottom:18px}.status-page details{margin-top:24px}.status-page summary{cursor:pointer;color:var(--lime);font-size:14px}.status-page textarea{width:100%;margin-top:10px;padding:12px;background:#080c07;color:#eee;border:1px solid #63504466;border-radius:8px;resize:vertical}.status-page .preserve-lines{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}.status-page .notice{line-height:1.6}.status-page .button{width:100%}
