:root{--login-ink:#18243a;--login-muted:#78869b;--login-blue:#315efb}
*{box-sizing:border-box}body{min-height:100vh;margin:0;background:#f5f7fb;color:var(--login-ink);font-family:Inter,"Segoe UI","Microsoft YaHei",sans-serif}
.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);background:#f8faff}
.login-showcase{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;min-height:100vh;padding:clamp(2rem,5vw,5.5rem);color:#fff;background:radial-gradient(ellipse at 78% 18%,#4c76d877,transparent 32%),linear-gradient(145deg,#101a2c,#1b2c49 56%,#263e6a)}
.showcase-grid{position:absolute;inset:0;z-index:-2;opacity:.15;background-image:linear-gradient(#c5d4f31c 1px,transparent 1px),linear-gradient(90deg,#c5d4f31c 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(110deg,#000,transparent 82%)}
.showcase-orbit{position:absolute;z-index:-1;border:1px solid #d7e4ff25;border-radius:50%;pointer-events:none}
.orbit-one{width:min(66vw,800px);height:min(66vw,800px);right:-21%;top:12%;box-shadow:0 0 0 38px #d7e4ff09,0 0 0 86px #d7e4ff07}
.orbit-two{width:min(35vw,430px);height:min(35vw,430px);right:5%;top:31%;border-color:#d7e4ff38;box-shadow:inset 0 0 80px #6d91db17}
.showcase-top{display:flex;align-items:center;gap:1rem;position:relative;z-index:1}
.brand-mark{display:grid;place-items:center;width:70px;height:70px;border:1px solid #ffffff2a;border-radius:18px;background:#ffffff12;backdrop-filter:blur(12px);box-shadow:0 12px 26px #0002}
.brand-mark img{max-width:58px;max-height:56px;object-fit:contain;background:#fff;border-radius:10px;padding:4px}
.brand-mark i{font-size:2rem;color:#e8efff}.brand-caption{font-size:.72rem;letter-spacing:.2em;color:#c3d2eb;font-weight:700}
.showcase-copy{position:relative;z-index:1;max-width:700px;margin:5rem 0}
.eyebrow{display:flex;align-items:center;gap:.65rem;color:#b9cdf4;font-size:.88rem;font-weight:650;letter-spacing:.08em}
.eyebrow span{width:8px;height:8px;border-radius:50%;background:#76a3ff;box-shadow:0 0 0 6px #76a3ff24}
.showcase-copy h1{margin:1.2rem 0 1rem;font-size:clamp(2.6rem,5.6vw,5.1rem);line-height:1.13;font-weight:620;letter-spacing:-.055em}
.showcase-copy h1 strong{font-weight:800;background:linear-gradient(90deg,#fff,#a8c6ff);background-clip:text;-webkit-background-clip:text;color:transparent}
.showcase-copy p{max-width:510px;color:#c4d1e5;font-size:1.08rem;line-height:1.9}
.showcase-pills{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:2.2rem}
.showcase-pills span{display:inline-flex;align-items:center;gap:.5rem;border:1px solid #ffffff24;border-radius:999px;background:#ffffff0d;padding:.55rem .9rem;color:#e3ecfb;font-size:.84rem;backdrop-filter:blur(10px)}
.showcase-pills i{color:#8fb2ff}.showcase-footer{display:flex;justify-content:space-between;gap:1rem;color:#9aacc7;font-size:.75rem;letter-spacing:.08em}
.login-panel{display:grid;place-items:center;padding:clamp(1.4rem,4vw,4rem);background:radial-gradient(ellipse at 10% 90%,#e9efff,transparent 40%),#f8faff}
.login-card{width:min(100%,460px);padding:clamp(1.75rem,4vw,3.25rem);border:1px solid #e7ecf4;border-radius:24px;background:#ffffffd9;box-shadow:0 25px 70px #1b2c4912;backdrop-filter:blur(18px);animation:login-rise .55s ease both}
.login-welcome{margin-bottom:2.15rem}.login-kicker{display:inline-flex;margin-bottom:.9rem;padding:.38rem .72rem;border-radius:999px;background:#eef3ff;color:#315efb;font-size:.78rem;font-weight:750}
.login-welcome h2{font-size:1.55rem;line-height:1.4;font-weight:760;letter-spacing:-.035em;margin:0;overflow-wrap:anywhere}
.login-welcome p{margin:.45rem 0 0;color:var(--login-muted)}
.login-card .form-label{font-weight:680;color:#324158;font-size:.9rem}
.login-input-wrap{position:relative}.login-input-wrap>i{position:absolute;z-index:1;left:15px;top:50%;transform:translateY(-50%);font-size:1.08rem;color:#8b99ad}
.login-input-wrap .form-control{height:51px;min-height:51px;padding-left:45px;border:1px solid #dce4f0;border-radius:12px;background:#fff;box-shadow:none}
.login-input-wrap .form-control:focus{border-color:#7896ff;box-shadow:0 0 0 4px #315efb17}
.login-submit{height:52px;margin-top:.35rem;display:flex;align-items:center;justify-content:center;gap:.8rem;border:0;border-radius:12px;font-size:.98rem;font-weight:720;box-shadow:0 9px 20px #315efb30}
.login-submit i{transition:transform .18s}.login-submit:hover i{transform:translateX(4px)}
.login-security{display:flex;justify-content:center;align-items:center;gap:.5rem;margin-top:1.35rem;color:#8995a7;font-size:.78rem}.login-security i{color:#168463;font-size:.95rem}
.login-mobile-brand{display:none}
@keyframes login-rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:900px){.login-shell{grid-template-columns:minmax(0,1fr) minmax(360px,.95fr)}.login-showcase{padding:2.4rem}.showcase-copy h1{font-size:clamp(2.5rem,6vw,4rem)}}
@media(max-width:700px){.login-shell{display:block;min-height:100vh;padding:1rem;background:radial-gradient(ellipse at 90% 0%,#d8e4ff,transparent 40%),#f4f7fc}.login-showcase{display:none}.login-panel{min-height:calc(100vh - 2rem);padding:0;background:transparent}.login-card{padding:1.65rem 1.35rem;border-radius:20px;box-shadow:0 18px 48px #1b2c4917}.login-welcome{margin-bottom:1.5rem}.login-welcome h2{font-size:1.35rem}.login-mobile-brand{display:block;margin-top:1.6rem;text-align:center;color:#9aa6b8;font-size:.78rem}.login-security{margin-top:1rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}

/* Workspace identity */
.login-showcase{background:radial-gradient(ellipse at 80% 15%,#b0dfd666,transparent 40%),linear-gradient(145deg,#e9f6f1,#f0f5fc 60%,#fff7e8);color:#234d53}.showcase-grid{opacity:.12}.brand-mark{width:96px;height:96px;border-radius:22px;background:#fff;box-shadow:0 15px 40px #2c655a18;border-color:#fff}.brand-mark img{max-width:82px;max-height:78px;background:transparent}.brand-caption,.eyebrow,.showcase-footer{color:#4a7b7a}.eyebrow span{background:#2f9a85}.showcase-copy h1{font-size:clamp(2.7rem,4.7vw,4.5rem);line-height:1.24;color:#243f4c}.showcase-copy h1 strong{background:linear-gradient(90deg,#247e78,#397cba);background-clip:text;-webkit-background-clip:text}.showcase-copy p{color:#65808c}.showcase-pills span{color:#466f75;background:#ffffffb0;border-color:#fff}.showcase-pills i{color:#2b9281}.login-panel{background:#fbfdfc}.login-card{box-shadow:0 24px 70px #1e66550e;border-color:#e3eeea}.login-brand-logo{margin-bottom:1.4rem}.login-brand-logo img{max-width:150px;max-height:68px;object-fit:contain}.login-kicker{background:#eaf5f1;color:#258271}.login-submit{background:linear-gradient(110deg,#218a7c,#368ca2)}.login-submit:hover{background:#227c76}.login-input-wrap .form-control:focus{border-color:#79b9aa;box-shadow:0 0 0 4px #218a7c15}@media(max-width:700px){.login-shell{background:linear-gradient(145deg,#e5f4ee,#edf3fa)}.login-brand-logo{text-align:center}.login-brand-logo img{max-height:80px}}
