:root{
  --reg-blue:#315fdb;
  --reg-blue-deep:#294fb8;
  --reg-ink:#172033;
  --reg-muted:#6d7889;
  --reg-line:rgba(48,66,94,.14);
  --reg-surface:#fbfcfe;
  --reg-bg:#e9eef5;
  --reg-serif:"Noto Serif SC","Songti SC","STSong",serif;
  --reg-sans:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;
  --reg-mono:"JetBrains Mono","SFMono-Regular",Consolas,monospace;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%}
body.registration-page{height:100dvh;overflow:hidden;color:var(--reg-ink);font-family:var(--reg-sans);background:
  linear-gradient(rgba(43,62,92,.035) 1px,transparent 1px),
  linear-gradient(90deg,rgba(43,62,92,.03) 1px,transparent 1px),
  var(--reg-bg);background-size:52px 52px}
body.registration-page::before{content:"";position:fixed;z-index:0;right:-12vw;bottom:-26vh;width:58vw;height:58vw;border:1px solid rgba(47,95,215,.09);border-radius:50%;box-shadow:0 0 0 90px rgba(47,95,215,.025),0 0 0 180px rgba(47,95,215,.018);pointer-events:none}
body.registration-page::after{opacity:.025}
button,input{font:inherit}
.registration-home{position:fixed;z-index:10;left:28px;top:23px;display:flex;align-items:center;gap:10px;color:var(--reg-ink);text-decoration:none}
.registration-home>img{width:29px;height:29px}.registration-home span,.registration-home b,.registration-home small{display:block}.registration-home b{font-family:var(--reg-serif);font-size:13px;line-height:1.25}.registration-home small{color:var(--reg-muted);font-size:10px;line-height:1.25}
.registration-layout{position:relative;z-index:1;width:min(860px,calc(100% - 40px));height:min(600px,calc(100dvh - 104px));min-height:540px;margin:52px auto;display:grid;grid-template-columns:285px minmax(0,1fr);overflow:hidden;border:1px solid rgba(48,66,94,.13);border-radius:14px;background:var(--reg-surface);box-shadow:0 28px 70px rgba(35,52,78,.14)}
.registration-brand{position:relative;overflow:hidden;padding:38px 31px;color:var(--reg-ink);border-right:1px solid rgba(49,95,219,.11);background:#edf2fb}
.registration-brand::before{content:"";position:absolute;right:-105px;bottom:-105px;width:270px;height:270px;border:1px solid rgba(49,95,219,.12);border-radius:50%;box-shadow:0 0 0 44px rgba(49,95,219,.028),0 0 0 88px rgba(49,95,219,.018)}
.registration-brand::after{content:"";position:absolute;left:0;right:0;bottom:0;height:34%;background:linear-gradient(transparent,rgba(49,95,219,.045));pointer-events:none}
.registration-brand>*{position:relative;z-index:1}
.registration-brand-mark{width:38px;height:38px;margin-bottom:47px;display:grid;place-items:center;border:1px solid rgba(49,95,219,.1);border-radius:10px;color:#315fdb;background:rgba(255,255,255,.72);font:750 10px/1 var(--reg-mono);letter-spacing:-.04em}
.registration-eyebrow{margin:0 0 16px;color:var(--reg-blue);font-family:var(--reg-mono);font-size:9px;font-weight:600;letter-spacing:.16em}
.registration-brand h1{margin:0 0 18px;font-family:var(--reg-serif);font-size:38px;font-weight:900;line-height:1.16;letter-spacing:-.04em}.registration-brand h1 em{color:var(--reg-blue);font-style:normal}
.registration-brand-copy{margin:0;color:#647188;font-size:12px;line-height:1.75}
.registration-types{display:grid;grid-template-columns:repeat(2,1fr);gap:0;margin:30px 0 0;padding:0;border-top:1px solid rgba(49,95,219,.12);list-style:none}
.registration-types li{padding:9px 0;border-bottom:1px solid rgba(49,95,219,.1);color:#536178;font-size:11px}.registration-types li:nth-child(even){padding-left:14px;border-left:1px solid rgba(49,95,219,.1)}
.registration-form{align-self:center;width:min(420px,calc(100% - 60px));margin:auto}
.registration-form header{margin-bottom:22px}.registration-form h2{margin:0 0 6px;font-family:var(--reg-serif);font-size:27px;letter-spacing:-.025em}.registration-form header span{color:var(--reg-muted);font-size:12px}
.registration-field{margin-bottom:13px}.registration-field label{display:block;margin-bottom:6px;color:#435066;font-size:12px;font-weight:650}.registration-field label small{margin-left:5px;color:#8e98a8;font-size:10px;font-weight:500}
.registration-field input{width:100%;height:43px;padding:0 13px;border:1px solid rgba(50,69,99,.17);border-radius:7px;outline:none;color:var(--reg-ink);background:#f5f7fa;transition:border-color .18s,box-shadow .18s,background .18s}.registration-field input::placeholder{color:#9aa4b3}.registration-field input:focus{border-color:rgba(47,95,215,.58);background:#fff;box-shadow:0 0 0 3px rgba(47,95,215,.08)}
.registration-code-row{display:grid;grid-template-columns:minmax(0,1fr) 108px;gap:8px}.registration-code-button{border:1px solid rgba(47,95,215,.18);border-radius:7px;color:var(--reg-blue);background:rgba(47,95,215,.055);font-size:11px;font-weight:700;cursor:pointer}.registration-code-button:disabled{opacity:.55;cursor:not-allowed}
.registration-password{position:relative}.registration-password input{padding-right:61px}.registration-eye{position:absolute;right:6px;top:6px;height:31px;padding:0 9px;border:0;color:#748096;background:transparent;font-size:11px;cursor:pointer}
.registration-key-field{margin-top:3px}
.registration-submit{width:100%;height:44px;margin-top:9px;border:0;border-radius:7px;color:#fff;background:var(--reg-blue);box-shadow:0 10px 22px rgba(47,95,215,.18);font-weight:750;cursor:pointer;transition:background .18s}.registration-submit:hover{background:var(--reg-blue-deep)}.registration-submit:disabled{opacity:.58;cursor:not-allowed}
.registration-consent{display:grid;grid-template-columns:16px minmax(0,1fr);align-items:start;gap:9px;margin:3px 0 0;padding:9px 10px;border:1px solid rgba(49,95,219,.10);border-radius:8px;color:var(--reg-muted);background:rgba(49,95,219,.025);cursor:pointer;transition:border-color .18s,background .18s}
.registration-consent:hover,.registration-consent:focus-within{border-color:rgba(49,95,219,.22);background:rgba(49,95,219,.045)}
.registration-consent input[type="checkbox"]{width:15px;height:15px;min-height:0;margin:1px 0 0;accent-color:var(--reg-blue);cursor:pointer}
.registration-consent-copy{display:grid;gap:3px;min-width:0;text-align:left}
.registration-consent-title{color:#536178;font-size:11px;line-height:1.45;white-space:nowrap}
.registration-consent-note{color:#8a95a6;font-size:10px;line-height:1.45}
.registration-consent-copy a{display:inline;color:var(--reg-blue);font-weight:700;text-decoration:none;white-space:nowrap}
.registration-consent-copy a:hover{text-decoration:underline;text-underline-offset:2px}
.registration-foot{margin-top:14px;text-align:center;color:var(--reg-muted);font-size:11px}.registration-foot a{color:var(--reg-blue);font-weight:700;text-decoration:none}
html:not(.theme-light){--reg-ink:#e8edf5;--reg-muted:#9ba6b6;--reg-line:rgba(255,255,255,.1);--reg-surface:#151c28;--reg-bg:#0d131d}
html:not(.theme-light) body.registration-page{background:linear-gradient(rgba(232,237,245,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(232,237,245,.02) 1px,transparent 1px),var(--reg-bg);background-size:52px 52px}
html:not(.theme-light) .registration-home{color:#edf2f8}
html:not(.theme-light) .registration-layout{border-color:rgba(255,255,255,.1);box-shadow:0 30px 74px rgba(0,0,0,.34)}
html:not(.theme-light) .registration-brand{color:#edf2f8;border-right-color:rgba(109,150,255,.11);background:#111a29}
html:not(.theme-light) .registration-brand::before{border-color:rgba(109,150,255,.12);box-shadow:0 0 0 44px rgba(109,150,255,.025),0 0 0 88px rgba(109,150,255,.016)}
html:not(.theme-light) .registration-brand::after{background:linear-gradient(transparent,rgba(109,150,255,.035))}
html:not(.theme-light) .registration-brand-mark{border-color:rgba(109,150,255,.13);background:rgba(255,255,255,.05)}
html:not(.theme-light) .registration-eyebrow,html:not(.theme-light) .registration-brand h1 em{color:#91afff}
html:not(.theme-light) .registration-brand-copy{color:#9ba8bb}
html:not(.theme-light) .registration-types{border-top-color:rgba(255,255,255,.09)}
html:not(.theme-light) .registration-types li{color:#b8c2d0;border-color:rgba(255,255,255,.075)}
html:not(.theme-light) .registration-field label{color:#bdc6d3}
html:not(.theme-light) .registration-field input{color:#edf2f8;background:rgba(255,255,255,.045);border-color:rgba(255,255,255,.1)}
html:not(.theme-light) .registration-field input:focus{background:rgba(255,255,255,.065);border-color:#6d96ff}
html:not(.theme-light) .registration-consent{border-color:rgba(109,150,255,.13);background:rgba(109,150,255,.04)}
html:not(.theme-light) .registration-consent:hover,html:not(.theme-light) .registration-consent:focus-within{border-color:rgba(109,150,255,.25);background:rgba(109,150,255,.07)}
html:not(.theme-light) .registration-consent-title{color:#c2cad7}
html:not(.theme-light) .registration-consent-note{color:#8f9bad}
@media(max-height:700px) and (min-width:741px){.registration-layout{height:calc(100dvh - 74px);min-height:0;margin:37px auto}.registration-brand{padding-block:26px}.registration-brand-mark{margin-bottom:30px}.registration-types{margin-top:20px}.registration-form header{margin-bottom:15px}.registration-field{margin-bottom:9px}.registration-field input{height:39px}.registration-submit{height:41px}.registration-foot{margin-top:10px}}
@media(max-height:560px) and (min-width:741px){.registration-layout{height:calc(100dvh - 40px);margin:20px auto}.registration-brand{padding:22px 28px}.registration-brand-mark{display:none}.registration-eyebrow{margin-bottom:10px}.registration-brand h1{margin-bottom:12px;font-size:32px}.registration-brand-copy{line-height:1.55}.registration-types{display:none}.registration-form header{margin-bottom:9px}.registration-form h2{margin-bottom:2px;font-size:23px}.registration-field{margin-bottom:6px}.registration-field label{margin-bottom:3px}.registration-field input{height:35px}.registration-code-row{grid-template-columns:minmax(0,1fr) 100px}.registration-submit{height:37px;margin-top:1px}.registration-foot{margin-top:6px}}
@media(max-width:740px){
  body.registration-page{height:auto;min-height:100svh;overflow-y:auto;background:radial-gradient(86% 38% at 50% 0,rgba(49,95,219,.10),transparent 72%),#f6f8fc;background-size:auto}
  body.registration-page::before,body.registration-page::after{display:none}
  body.registration-page .atelier-wordmark{position:absolute;left:clamp(34px,calc((100vw - 390px)/2 + 20px),56px);top:calc(28px + env(safe-area-inset-top,0px));display:block;transform:none;text-align:left}
  body.registration-page .atelier-wordmark__mark{display:none}
  body.registration-page .atelier-wordmark b strong{display:inline-block;position:relative;color:#315fdb;font-size:16px;font-weight:850;letter-spacing:.48em;transform:none}
  body.registration-page .atelier-wordmark b strong::before{content:"◆";position:absolute;left:-11px;top:-7px;color:#7ea3ee;font-size:5px;line-height:1;letter-spacing:0}
  body.registration-page .atelier-wordmark::after{content:"一簇灵感星火，落地即成好戏";display:block;margin-top:9px;color:#66748a;font-size:9px;letter-spacing:.12em;white-space:nowrap}
  .registration-layout{width:100%;height:auto;min-height:100svh;margin:0;padding:calc(83px + env(safe-area-inset-top,0px)) 14px calc(22px + env(safe-area-inset-bottom,0px));display:block;overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none}
  .registration-brand{display:none}
  .registration-form{width:100%;max-width:390px;margin:0 auto;padding:23px 20px 18px;border:1px solid rgba(122,145,187,.18);border-radius:25px;background:rgba(255,255,255,.86);box-shadow:0 22px 56px rgba(38,55,91,.10);backdrop-filter:blur(18px)}
  .registration-form header{margin-bottom:18px}.registration-form h2{margin-bottom:5px;font-family:var(--reg-sans);font-size:22px;font-weight:760;letter-spacing:.01em}.registration-form header span{font-size:11px}
  .registration-field{margin-bottom:11px}.registration-field label{margin-bottom:5px;font-size:11px;font-weight:650}
  .registration-field input{height:44px;padding:0 13px;border-radius:11px;font-size:14px!important;background:rgba(255,255,255,.72)}
  .registration-code-row{grid-template-columns:minmax(0,1fr) 104px;gap:8px}.registration-code-button{min-height:44px;border-radius:11px;font-size:11px}
  .registration-code-row>*{min-width:0}
  .registration-eye{top:3px;height:38px;font-size:10px}.registration-submit{height:46px;margin-top:9px;border-radius:12px;font-size:14px;box-shadow:0 12px 24px rgba(49,95,219,.18)}.registration-foot{margin-top:14px;font-size:11px}
  .registration-consent{grid-template-columns:17px minmax(0,1fr);gap:9px;padding:9px 10px;border-radius:11px}
  .registration-consent input[type="checkbox"]{width:16px;height:16px}
  .registration-consent-title{font-size:10.5px}
  .registration-consent-note{font-size:9.5px}
  html:not(.theme-light) body.registration-page{background:radial-gradient(90% 42% at 50% 0,rgba(109,150,255,.11),transparent 72%),#0d131d;background-size:auto}
  html:not(.theme-light) .registration-form{background:#171f2c;border-color:rgba(255,255,255,.09);box-shadow:0 20px 48px rgba(0,0,0,.28)}
  html:not(.theme-light) body.registration-page .atelier-wordmark::after{color:#9aa8ba}
}
@media(max-width:360px){.registration-layout{padding-inline:10px}.registration-form{padding:20px 17px 16px}.registration-code-row{grid-template-columns:minmax(0,1fr) 96px}.registration-consent-title{white-space:normal}}
@media(prefers-reduced-motion:reduce){.registration-submit{transition:none}}
