@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@600;900&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{font-family:"Space Grotesk","Noto Sans SC",sans-serif;color:#102033;background:#f4f7fa}
*{box-sizing:border-box}
html,body{width:100%;height:100%;margin:0}
body{overflow:hidden}
.seat-login{--ink:#102033;--muted:#5b6b7c;--line:#d7e0ea;--accent:#1769aa;--deep:#0f4f84;--brand-start:#0e2a3f;--brand-mid:#163a56;--brand-end:#1f5570;--soft:#e8f1f7;position:fixed;inset:0;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr);font-family:inherit;color:var(--ink);background:#f4f7fa;overflow:hidden}
.seat-login-brand{position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:clamp(32px,5vw,64px);color:#f4f8fb;background:radial-gradient(1200px 600px at 10% 0%,rgba(88,168,210,.28),transparent 55%),linear-gradient(155deg,var(--brand-start),var(--brand-mid) 48%,var(--brand-end));overflow:hidden}
.seat-login-brand-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(180deg,rgba(0,0,0,.75),transparent 90%);pointer-events:none}
.seat-login-brand-beam{position:absolute;top:-20%;left:-10%;width:55%;height:140%;background:linear-gradient(105deg,transparent,rgba(160,214,235,.14) 45%,transparent 70%);transform:rotate(12deg);animation:seatBeam 10s ease-in-out infinite alternate;pointer-events:none}
@keyframes seatBeam{0%{transform:rotate(12deg) translate(0);opacity:.55}to{transform:rotate(12deg) translate(8%);opacity:.95}}
.seat-login-brand-inner{position:relative;z-index:1;max-width:560px;margin-top:clamp(48px,10vh,96px);animation:seatFadeUp .7s ease-out}
.seat-login-brand-kicker{margin:0 0 14px;font-size:12px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:#d6e8f2c7}
.seat-login-brand-title{margin:0;font-family:"Noto Serif SC","Songti SC",serif;font-size:clamp(44px,5.8vw,68px);font-weight:900;line-height:1.12;letter-spacing:.12em;color:#fff}
.seat-login-brand-subtitle{margin:14px 0 0;font-family:"Noto Serif SC","Songti SC",serif;font-size:clamp(17px,2vw,22px);font-weight:600;letter-spacing:.28em;color:#c7dff0}
.seat-login-brand-desc{margin:20px 0 0;max-width:460px;font-size:15px;line-height:1.7;color:#dceaf4d1}
.seat-login-capability-list{list-style:none;margin:32px 0 0;padding:0;display:flex;flex-direction:column;gap:14px;max-width:460px}
.seat-login-capability-item{display:flex;align-items:flex-start;gap:14px;padding:12px 0;border-top:1px solid rgba(214,232,242,.16)}
.seat-login-capability-item:last-child{padding-bottom:0}
.seat-login-capability-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;flex-shrink:0;border-radius:8px;background:#ffffff14;border:1px solid rgba(214,232,242,.18);color:#d8ecf8}
.seat-login-capability-icon svg,.seat-login-panel-icon svg,.seat-login-input svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.seat-login-capability-text{display:flex;flex-direction:column;gap:4px;min-width:0}.seat-login-capability-text strong{font-size:14px;font-weight:700;letter-spacing:.04em;color:#f3f8fc}.seat-login-capability-text span{font-size:13px;line-height:1.5;color:#d6e8f2b8}
.seat-login-brand-foot{position:relative;z-index:1;display:flex;justify-content:space-between;gap:16px;font-size:12px;letter-spacing:.08em;color:#d2e4f08c}
.seat-login-stage{display:flex;align-items:center;justify-content:center;padding:clamp(28px,5vw,56px);background:radial-gradient(circle at 80% 20%,rgba(23,105,170,.06),transparent 40%),linear-gradient(180deg,#f7fafc,#eef3f7)}
.seat-login-panel{width:min(100%,460px);padding:40px 40px 28px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 18px 48px #10203314;animation:seatFadeUp .7s ease-out .08s both}
.seat-login-status-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:28px}.seat-login-channel{font-size:12px;font-weight:600;letter-spacing:.08em;color:var(--muted)}
.seat-login-status{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:8px;font-size:12px;font-weight:600;line-height:1.15;letter-spacing:.06em;color:var(--deep);background:var(--soft);border:1px solid #c9dce9}.seat-login-status-dot{width:8px;height:8px;border-radius:50%;background:#2f9e6a;animation:seatDotPulse 2.2s ease-in-out infinite}
@keyframes seatDotPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(.85)}}
.seat-login-panel-head{display:flex;align-items:center;gap:16px;margin-bottom:28px}.seat-login-panel-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:12px;background:linear-gradient(145deg,var(--accent),var(--deep));color:#fff;flex-shrink:0}.seat-login-panel-title{margin:0;font-size:22px;font-weight:700;line-height:1.15;letter-spacing:.04em}.seat-login-panel-desc{margin:6px 0 0;font-size:13px;line-height:1.15;color:var(--muted)}
.seat-login-form label{display:block;margin:0 0 8px;color:var(--ink);font-size:13px;font-weight:600;line-height:22px}.seat-login-form label::before{content:'*';display:inline-block;margin-right:4px;color:#ff4d4f;font-weight:700}.seat-login-form label.optional::before{content:'';margin:0}.seat-login-input{height:48px;display:flex;align-items:center;gap:10px;padding:0 14px;background:#f8fbfd;border:1px solid var(--line);border-radius:10px;transition:border-color .2s,box-shadow .2s}.seat-login-input:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #1769aa1f}.seat-login-input svg{color:var(--accent);width:18px;flex:none}.seat-login-input input{width:100%;border:0;outline:0;background:transparent;color:var(--ink);font:inherit;font-size:15px}.seat-login-input input::placeholder{color:#93a4b5}.seat-login-submit{width:100%;height:50px;margin-top:26px;border:0;border-radius:10px;background:linear-gradient(135deg,var(--accent),var(--deep));color:#fff;font-size:16px;font-weight:700;line-height:1.15;letter-spacing:.18em;box-shadow:0 10px 24px #0f4f8438;cursor:pointer}.seat-login-submit:hover{background:linear-gradient(135deg,#1b74b8,#0d4674)}.seat-login-submit:disabled{opacity:.7;cursor:wait}
#notice{min-height:0;margin:12px 0 0;color:#d14343;font-size:13px;text-align:center}#notice:empty{display:none}
.seat-login-dialog-mask{--ink:#102033;--muted:#5b6b7c;--line:#d7e0ea;--accent:#1769aa;position:fixed;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.45);padding:20px}.seat-login-dialog{width:min(100%,416px);padding:24px;background:#fff;border-radius:10px;box-shadow:0 16px 48px #10203340}.seat-login-dialog h2{margin:0 0 18px;font-size:18px;color:var(--ink)}.seat-login-dialog input{width:100%;height:40px;padding:0 12px;border:1px solid var(--line);border-radius:8px;outline:0;font:inherit}.seat-login-dialog input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #1769aa1f}.seat-login-dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.seat-login-dialog-actions button{height:36px;padding:0 16px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);cursor:pointer}.seat-login-dialog-actions button.primary{border-color:var(--accent);background:var(--accent);color:#fff}
@keyframes seatFadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@media (max-width:900px){.seat-login{grid-template-columns:1fr;grid-template-rows:auto 1fr;overflow:auto}.seat-login-brand{min-height:auto;padding:28px 24px 20px}.seat-login-brand-inner{margin:0}.seat-login-brand-title{font-size:36px}.seat-login-brand-subtitle{letter-spacing:.12em}.seat-login-brand-desc{display:none}.seat-login-capability-list{margin-top:18px;gap:8px}.seat-login-capability-item{padding:8px 0}.seat-login-capability-text span{display:none}.seat-login-brand-foot{margin-top:16px}.seat-login-stage{align-items:flex-start;padding:24px 16px 40px}.seat-login-panel{width:100%;padding:28px 22px 22px}}
@media (max-width:900px){
  body{overflow-x:hidden;overflow-y:auto}.seat-login{display:none}.seat-mobile-login{--ink:#142433;--muted:#6a7b8c;--line:rgba(20,36,51,.1);--surface:rgba(255,255,255,.86);--accent:#1a6fad;--accent-deep:#0e4d7a;position:relative;min-height:100vh;min-height:100dvh;display:flex;justify-content:center;overflow-x:hidden;overflow-y:auto;font-family:"Space Grotesk","Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);background:#c5d4e2;box-sizing:border-box}.seat-mobile-sky{position:absolute;inset:0 auto;width:min(100%,430px);left:50%;transform:translateX(-50%);overflow:hidden;background:linear-gradient(180deg,#12324a,#1d4f6d 38%,#7fa4bc 68%,#d5e2ed);pointer-events:none}.seat-mobile-orb{position:absolute;border-radius:50%;filter:blur(40px);opacity:.55}.seat-mobile-orb-a{width:280px;height:280px;top:-8%;right:-18%;background:radial-gradient(circle,rgba(140,205,235,.75),transparent 70%)}.seat-mobile-orb-b{width:220px;height:220px;top:18%;left:-20%;background:radial-gradient(circle,rgba(60,130,175,.55),transparent 72%)}.seat-mobile-horizon{position:absolute;left:0;right:0;bottom:0;height:46%;background:linear-gradient(180deg,transparent,rgba(232,240,246,.55) 40%,#e8f0f6)}.seat-mobile-content{position:relative;z-index:1;width:100%;max-width:430px;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:stretch;padding:12px 20px;box-sizing:border-box}.seat-mobile-brand{flex-shrink:0;width:100%;text-align:center;padding-top:20px;padding-bottom:4px}.seat-mobile-kicker{margin:0 0 8px;font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:#d6e8f2c7}.seat-mobile-title{margin:0;max-width:100%;font-family:"Noto Serif SC","Songti SC",serif;font-size:clamp(30px,8.5vw,40px);font-weight:900;line-height:1.2;letter-spacing:.08em;color:#fff;text-shadow:0 8px 28px rgba(8,28,44,.28)}.seat-mobile-subtitle{margin:8px 0 0;font-family:"Noto Serif SC","Songti SC",serif;font-size:15px;font-weight:600;letter-spacing:.16em;color:#c7dff0}.seat-mobile-desc{margin:12px auto 0;max-width:22em;font-size:13px;line-height:1.65;color:#dceaf4e0}.seat-mobile-capability-grid{list-style:none;margin:16px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px;text-align:left}.seat-mobile-capability-grid li{padding:10px 12px;border-radius:12px;background:#ffffff1a;border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(8px)}.seat-mobile-capability-grid strong{display:block;font-size:13px;font-weight:700;color:#f3f8fc}.seat-mobile-capability-grid span{display:block;margin-top:4px;font-size:11px;line-height:1.4;color:#d6e8f2bf}.seat-mobile-form{flex:0 0 auto;width:100%;max-width:400px;margin:clamp(40px,9vh,72px) auto 0;padding:18px 16px 16px;box-sizing:border-box;border-radius:22px;background:var(--surface);border:1px solid rgba(255,255,255,.7);box-shadow:0 18px 40px #12283c24,inset 0 1px #ffffffd9;backdrop-filter:blur(16px)}.seat-mobile-field-stack{display:flex;flex-direction:column;gap:10px}.seat-mobile-field-stack input{width:100%;box-sizing:border-box;height:52px;padding:0 16px;border:1px solid var(--line);border-radius:14px;background:#f4f8fb;color:var(--ink);font-size:16px;font-family:inherit;outline:none}.seat-mobile-field-stack input::placeholder{color:#8ea0b0}.seat-mobile-field-stack input:focus{background:#fff;border-color:#1a6fad73;box-shadow:0 0 0 4px #1a6fad1a}.seat-mobile-submit{width:100%;height:52px;margin-top:14px;border:none;border-radius:14px;background:linear-gradient(135deg,var(--accent),var(--accent-deep));color:#fff;font-size:16px;font-weight:700;letter-spacing:.2em;font-family:inherit;box-shadow:0 12px 26px #0e4d7a47;cursor:pointer}.seat-mobile-submit:disabled{opacity:.72;cursor:not-allowed}.seat-mobile-meta{flex-shrink:0;margin:14px 0 0;text-align:center;font-size:12px;letter-spacing:.08em;color:#283e5273}.seat-mobile-form #mobile-notice{margin:8px 0 0;color:#b23b3b;font-size:12px;text-align:center}.seat-mobile-form #mobile-notice:empty{display:none}
}
@media (max-width:900px) and (max-height:700px){.seat-mobile-content{padding-top:8px}.seat-mobile-title{font-size:28px}.seat-mobile-desc{margin-top:8px;font-size:12px}.seat-mobile-capability-grid{margin-top:12px;gap:6px}.seat-mobile-capability-grid li{padding:8px 10px}.seat-mobile-capability-grid span{display:none}.seat-mobile-form{margin-top:32px;padding:14px}.seat-mobile-field-stack input,.seat-mobile-submit{height:48px}}
