/* MusicDiverse developer: Kollylad Team. Third-party licenses and author notices remain intact. */
/* MusicDiverse 1.9.63 — Isolated, responsive sign-in redesign. */
body.MD-login-page { background:#f5f4f1!important; }
.MD-login-main,
.MD-login-main * { box-sizing:border-box; }
.MD-login-main { width:100%; min-width:0; min-height:calc(100vh - 245px); padding:clamp(24px,5vw,68px) 20px 64px; display:flex; align-items:center; justify-content:center; color:#262e33; }
.MD-login-frame { width:min(100%,960px); min-width:0; display:grid; grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr); background:#fff; border:1px solid #e5e2dd; border-radius:8px; overflow:hidden; box-shadow:0 16px 54px rgba(15,22,27,.07); }
.MD-login-intro { min-width:0; min-height:535px; padding:clamp(28px,4vw,49px); display:flex; flex-direction:column; justify-content:space-between; overflow:hidden; position:relative; isolation:isolate; background:linear-gradient(145deg,#11191e 3%,#19252c 62%,#10171b 100%); color:#fff; }
.MD-login-intro::before { content:""; position:absolute; width:340px; height:340px; top:43%; left:47%; transform:rotate(-17deg); border-radius:50%; border:74px solid rgba(206,58,48,.095); z-index:-1; pointer-events:none; }
.MD-login-intro::after { content:""; position:absolute; width:190px; height:190px; bottom:-126px; right:-75px; border:29px solid rgba(255,255,255,.04); border-radius:50%; z-index:-1; pointer-events:none; }
.MD-login-brand { display:flex; align-items:center; gap:12px; min-width:0; }
.MD-login-brand img { flex:none; display:block; width:46px; height:46px; border-radius:9px; object-fit:cover; }
.MD-login-brand span { min-width:0; overflow-wrap:anywhere; color:#fff; font-size:21px; line-height:1.2; font-weight:800; letter-spacing:-.6px; }
.MD-login-kicker { display:block; margin-top:84px; color:#ff9c94; letter-spacing:.19em; font-size:10px; font-weight:800; }
.MD-login-intro h1 { margin:15px 0 19px; color:#fff!important; font-size:clamp(42px,4.8vw,62px); line-height:1.06; letter-spacing:-2px; font-weight:850; }
.MD-login-intro h1 em { color:#f17b71; font-style:normal; }
.MD-login-intro p { max-width:305px; color:#b9c1c4; font-size:14px; line-height:1.8; margin:0; }
.MD-login-intro-bottom { display:flex; align-items:center; gap:13px; margin-top:35px; color:#aeb7bc; font-size:10px; letter-spacing:.04em; }
.MD-login-intro-bottom b { padding:0 6px; color:#e9675b; font-weight:400; }
.MD-login-intro-line { flex:none; width:24px; height:2px; background:#d4352c; }
.MD-login-panel { display:flex; justify-content:center; align-items:center; padding:clamp(28px,5vw,56px); background:#fff; min-width:0; }
.MD-login-panel-inner { width:100%; max-width:390px; min-width:0; }
.MD-login-panel-heading { margin:0 0 27px; }
.MD-login-eyebrow { font-size:10px; font-weight:800; letter-spacing:.14em; color:#b8352e; }
.MD-login-panel-heading h2 { margin:9px 0 8px; font-size:clamp(23px,2.7vw,29px); line-height:1.18; font-weight:800; color:#1d262b!important; letter-spacing:-.7px; }
.MD-login-panel-heading p { margin:0; font-size:13px; color:#697478; line-height:1.6; }
.MD-login-form { display:block; width:100%; margin:0; }
.MD-login-field { display:block; margin:0 0 21px; min-width:0; }
.MD-login-field>label,.MD-login-field-head>label { display:block; margin:0 0 8px; color:#293339!important; font-size:12px; font-weight:750; line-height:1.45; }
.MD-login-field-head { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:8px; }
.MD-login-field-head>label { margin:0; }
.MD-login-field-head>a,.MD-login-panel-footer a { color:#aa3029!important; text-decoration:none; font-size:12px; font-weight:700; }
.MD-login-field-head>a:hover,.MD-login-panel-footer a:hover { text-decoration:underline; }
.MD-login-input-wrap { position:relative; width:100%; min-width:0; }
.MD-login-input-wrap>i { position:absolute; left:15px; top:50%; transform:translateY(-50%); color:#889195; font-size:15px; z-index:1; pointer-events:none; }
.MD-login-main .MD-login-input-wrap input[type=text],.MD-login-main .MD-login-input-wrap input[type=password] { display:block!important; width:100%!important; min-width:0!important; max-width:none!important; height:49px!important; min-height:49px; margin:0!important; padding:0 15px 0 43px!important; background:#fdfdfc!important; border:1px solid #d9dfe0!important; border-radius:5px!important; color:#242d32!important; box-shadow:none!important; font-size:14px!important; font-weight:400; line-height:1.4; appearance:none; outline:0; }
.MD-login-main .MD-login-input-wrap input[type=password],.MD-login-main .MD-login-password-wrap input[type=text] { padding-right:53px!important; }
.MD-login-main .MD-login-input-wrap input::placeholder { color:#979fa2!important; opacity:1; }
.MD-login-main .MD-login-input-wrap input:focus { border-color:#c44a40!important; box-shadow:0 0 0 3px rgba(195,53,43,.12)!important; }
.MD-login-input-wrap:focus-within>i { color:#b9362e; }
.MD-login-main .MD-login-toggle { position:absolute; z-index:2; top:50%; right:6px; transform:translateY(-50%); width:39px; height:39px; min-height:39px; padding:0!important; display:grid; place-items:center; background:transparent!important; color:#68777d!important; border:none!important; border-radius:4px; box-shadow:none!important; cursor:pointer; }
.MD-login-toggle:hover { color:#ac3027!important; }
.MD-login-toggle:focus-visible { outline:2px solid #c74339; outline-offset:0; }
.MD-login-main .MD-login-remember { display:flex!important; align-items:center!important; justify-content:flex-start!important; gap:9px; margin:3px 0 22px; color:#4b575c!important; font-size:12px!important; line-height:1.4; font-weight:550!important; cursor:pointer; }
.MD-login-main .MD-login-remember input[type=checkbox] { flex:none!important; width:16px!important; height:16px!important; margin:0!important; padding:0!important; border:1px solid #c2cbd0; border-radius:3px; accent-color:#be352d; cursor:pointer; }
.MD-login-main .MD-login-submit { display:flex!important; align-items:center; justify-content:center; gap:12px; width:100%!important; min-height:49px!important; margin:0!important; padding:11px 16px!important; background:#b82e27!important; border:1px solid #b82e27!important; border-radius:5px!important; color:#fff!important; font-size:14px!important; font-weight:800!important; text-align:center; letter-spacing:.01em; box-shadow:none!important; cursor:pointer; transition:background .18s ease; }
.MD-login-submit:hover { background:#95251f!important; border-color:#95251f!important; }
.MD-login-submit:focus-visible { outline:3px solid rgba(181,42,35,.27); outline-offset:3px; }
.MD-login-submit i { font-size:12px; }
.MD-login-panel-footer { margin:26px 0 0; padding:22px 0 0; border-top:1px solid #ecebea; text-align:center; }
.MD-login-panel-footer p { margin:0 0 15px; color:#6d767a; font-size:12px; }
.MD-login-panel-footer p a { margin-left:4px; }
.MD-login-panel-footer .MD-login-back { display:inline-flex; align-items:center; gap:8px; color:#5b676b!important; font-weight:600; font-size:11px; }
.MD-login-back i { font-size:10px; }
.MD-login-alert { display:flex; gap:12px; margin:0 0 21px; padding:13px 14px; border:1px solid #f1c4c0; border-radius:5px; background:#fff3f1; color:#842b25; font-size:12px; line-height:1.6; overflow-wrap:anywhere; }
.MD-login-alert>i { flex:none; padding-top:3px; color:#b82e27; }
.MD-login-alert p { margin:0 0 6px; }
.MD-login-alert p:last-child { margin-bottom:0; }
.MD-login-alert a { color:#88241e!important; text-decoration:underline; }
@media(max-width:700px) {
  .MD-login-main { min-height:0; padding:18px 13px 42px; align-items:flex-start; }
  .MD-login-frame { max-width:530px; grid-template-columns:minmax(0,1fr); border-radius:6px; box-shadow:0 8px 30px rgba(15,22,27,.04); }
  .MD-login-intro { min-height:0; padding:23px 25px 25px; }
  .MD-login-brand img { width:39px; height:39px; border-radius:8px; }
  .MD-login-brand span { font-size:19px; }
  .MD-login-kicker { margin-top:21px; font-size:9px; }
  .MD-login-intro h1 { margin:8px 0 8px; font-size:31px; letter-spacing:-1px; }
  .MD-login-intro h1 br { display:none; }
  .MD-login-intro h1 em { margin-left:7px; }
  .MD-login-intro p { font-size:12px; line-height:1.65; max-width:none; }
  .MD-login-intro-bottom { display:none; }
  .MD-login-panel { padding:27px 25px 30px; }
  .MD-login-panel-inner { max-width:none; }
  .MD-login-panel-heading { margin-bottom:23px; }
  .MD-login-panel-heading h2 { font-size:23px; }
}
@media(max-width:390px) {
  .MD-login-main { padding:12px 8px 30px; }
  .MD-login-intro { padding:21px 19px; }
  .MD-login-panel { padding:24px 18px 27px; }
  .MD-login-field-head a { font-size:11px; }
}
@media(prefers-reduced-motion:reduce) { .MD-login-submit { transition:none; } }
