:root{color-scheme:light;--ink:#193749;--muted:#687b86;--orange:#d75422;--orange-dark:#af3c17;--line:#e3e9e7;--paper:#f7f8f6}
*{box-sizing:border-box}
html{min-width:320px}
body{margin:0;min-height:100vh;background:var(--paper);color:var(--ink);font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;-webkit-font-smoothing:antialiased}
.page-glow{position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 60% 60% at 7% 48%,#edf6f3 0,transparent 75%),radial-gradient(ellipse 45% 70% at 95% 8%,#fff2e7 0,transparent 75%)}
.page-wrap{display:flex;flex-direction:column;max-width:1440px;min-height:100vh;margin:auto;padding:0 clamp(24px,6vw,92px)}
.site-header{display:flex;align-items:center;justify-content:space-between;min-height:104px;border-bottom:1px solid rgba(27,61,72,.08)}
.logo-lockup{position:relative;width:210px;overflow:hidden;border-radius:5px}.logo-lockup img{display:block;width:100%;height:auto;object-fit:contain}
.logo-lockup::after{content:"";position:absolute;inset:-35% auto -35% -45%;width:30%;transform:skewX(-21deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.8),transparent);animation:logo-sweep 3s ease-in-out infinite;pointer-events:none}
.header-label{border:1px solid #dde7e4;border-radius:999px;padding:9px 14px;color:#59727b;background:rgba(255,255,255,.68);font-size:12px;letter-spacing:.08em}
.ai-design-entry{display:inline-flex;align-items:center;flex-wrap:wrap;justify-content:center;gap:8px;min-height:44px;padding:10px 16px;border-radius:10px;background:#17654b;color:#fff;text-decoration:none;font-size:15px;font-weight:700}.ai-design-entry small{font-size:11px;font-weight:400}.ai-design-entry:focus-visible{outline:3px solid #d75422;outline-offset:3px}@media(max-width:520px){.ai-design-entry{max-width:136px;padding:9px 12px;gap:2px}.ai-design-entry small{display:block;width:100%;text-align:center}}
.login-shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,408px);align-items:center;gap:clamp(32px,7vw,116px);flex:1;width:100%;max-width:1120px;margin:auto;padding:44px 0 64px}
.login-brand{position:relative;min-height:555px;padding-top:34px}
.eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 22px;color:#aa653e;font-size:12px;font-weight:700;letter-spacing:.2em}.eyebrow-mark{width:20px;height:2px;border-radius:4px;background:var(--orange)}
.login-brand h1{margin:0;font-size:clamp(38px,4.6vw,68px);font-weight:750;letter-spacing:-.055em;line-height:1.25}.login-brand h1 .hero-line--quote{color:var(--orange-dark)}
.hero-line{position:relative;display:block;width:max-content;max-width:100%;white-space:nowrap}.hero-line--print{color:var(--ink)}.hero-reveal{display:inline-block;clip-path:inset(0 100% 0 0);animation:hero-print-reveal 1.12s steps(7,end) .12s both}.hero-line--print::after{content:"";position:absolute;top:53%;left:0;width:.13em;height:.13em;border-radius:50%;background:var(--orange);box-shadow:0 0 0 .07em rgba(215,84,34,.13);transform:translate(-50%,-50%);pointer-events:none;animation:hero-cursor-travel 1.12s steps(7,end) .12s both,hero-cursor-fade .28s ease 1.35s forwards}
.hero-line--quote{isolation:isolate}.hero-lift{display:inline-block;animation:hero-quote-enter .92s cubic-bezier(.2,.78,.24,1) .88s both}.hero-line--quote::after{content:"";position:absolute;z-index:-1;right:2%;bottom:.06em;left:1%;height:.19em;border-radius:999px;background:linear-gradient(90deg,rgba(232,119,64,.32),rgba(247,196,134,.14) 72%,transparent);transform:scaleX(0);transform-origin:left center;pointer-events:none;animation:hero-quote-underline .74s cubic-bezier(.24,.8,.24,1) 1.28s both}
.login-copy{margin:21px 0 0;color:var(--muted);font-size:17px;line-height:1.7}
.flow-note{display:flex;align-items:center;gap:12px;margin-top:27px;color:#72848d;font-size:13px;letter-spacing:.04em}.flow-note i{width:24px;height:1px;background:#bed0d1}
.paper-scene{position:relative;width:min(460px,100%);height:258px;margin-top:30px;perspective:800px}
.paper-sheet{position:absolute;width:215px;height:185px;border:1px solid rgba(52,82,88,.11);border-radius:15px;box-shadow:0 20px 45px rgba(32,68,80,.11);transform-origin:center;animation:paper-float 6s ease-in-out infinite}
.paper-sheet-back{top:28px;left:14%;transform:rotate(-14deg);background:#e9f2f0;animation-delay:-1.5s}.paper-sheet-back span:first-child{display:block;width:65%;height:10px;margin:31px 0 0 23px;border-radius:5px;background:#bed1d0}.paper-sheet-back span:last-child{display:block;width:45%;height:10px;margin:15px 0 0 23px;border-radius:5px;background:#d4e3df}
.paper-sheet-mid{top:31px;left:29%;transform:rotate(8deg);background:#fffdf6;animation-delay:-3s}.paper-sheet-mid span{display:block;width:67%;height:9px;margin:24px 0 0 23px;border-radius:5px;background:#d4dfce}.paper-sheet-mid span:nth-child(2){width:45%}.paper-sheet-mid span:nth-child(3){width:58%}
.paper-sheet-front{top:64px;left:23%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;transform:rotate(-2deg);background:linear-gradient(140deg,#ed6430,#d94a18);color:#fff;box-shadow:0 25px 45px rgba(194,72,28,.22);animation-delay:-.5s}.paper-sheet-front b{font-family:Georgia,serif;font-size:100px;font-weight:400;line-height:.95}.paper-sheet-front small{font-size:8px;font-weight:700;letter-spacing:.2em;text-align:center;line-height:1.4;opacity:.78}
.paper-spark{position:absolute;width:7px;height:7px;border-radius:50%;background:#d78d68;opacity:.7;animation:spark 3s ease-in-out infinite}.paper-spark-one{top:42px;left:79%}.paper-spark-two{top:212px;left:12%;animation-delay:-1s}
.login-card{position:relative;display:flex;flex-direction:column;align-items:center;width:100%;min-height:530px;padding:31px 35px 29px;border:1px solid rgba(255,255,255,.95);border-radius:27px;background:rgba(255,255,255,.94);box-shadow:0 24px 75px rgba(39,70,79,.11),0 1px 3px rgba(39,70,79,.05);backdrop-filter:blur(12px);animation:card-enter .6s ease-out both}.login-card::before{content:"";position:absolute;inset:0 0 auto;height:3px;border-radius:27px 27px 0 0;background:linear-gradient(90deg,#d75422,#e9976f,#ceded8)}
.card-header{display:flex;align-items:center;align-self:stretch;gap:10px}.card-icon{display:flex;flex-direction:column;justify-content:center;gap:4px;width:29px;height:29px;padding-left:7px;border-radius:8px;background:var(--orange)}.card-icon span{width:15px;height:2px;border-radius:2px;background:#fff;transform:rotate(-10deg)}.card-icon span:nth-child(2){width:12px}.card-icon span:nth-child(3){width:9px}.card-kicker{margin:0;color:#6e818a;font-size:12px;letter-spacing:.08em}
.login-card h2{align-self:stretch;margin:31px 0 4px;font-size:27px;letter-spacing:-.03em}.card-intro{align-self:stretch;margin:0;color:var(--muted);font-size:14px;line-height:1.6}
.qr-frame{width:250px;max-width:100%;margin-top:24px;padding:9px;border:1px solid #e9edeb;border-radius:19px;background:#fff;box-shadow:0 7px 23px rgba(28,69,77,.06)}.qr-box{display:grid;place-items:center;width:100%;aspect-ratio:1;border-radius:11px;background:linear-gradient(140deg,#f5f8f7,#fff);color:#81919a;text-align:center;font-size:13px;overflow:hidden}.qr-box img{display:block;width:100%;height:100%;object-fit:contain}
.login-status{display:flex;align-items:center;justify-content:center;gap:8px;min-height:28px;margin:16px 0 0;color:#557b6e;text-align:center;font-size:13px;line-height:1.5}.login-status::before{content:"";flex:none;width:7px;height:7px;border-radius:50%;background:#49a27a;box-shadow:0 0 0 4px #e9f5ef}.login-status[data-state="loading"]::before,.login-status[data-state="retrying"]::before{background:#d98a4b;box-shadow:0 0 0 4px #fff0e4;animation:status-pulse 1.6s ease-in-out infinite}.login-status[data-state="expired"],.login-status[data-state="error"]{color:#a5492c}.login-status[data-state="expired"]::before,.login-status[data-state="error"]::before{background:#d75422;box-shadow:0 0 0 4px #faede7}
#renewLogin{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:48px;margin-top:15px;border:1px solid #e7cbbf;border-radius:12px;background:#fff9f5;color:#ad421d;font:inherit;font-size:14px;font-weight:700;cursor:pointer;transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease}#renewLogin:hover{transform:translateY(-1px);border-color:#d75422;background:#fff2e9;box-shadow:0 7px 16px rgba(193,71,29,.11)}#renewLogin:focus-visible{outline:3px solid #e7a28a;outline-offset:3px}#renewLogin:active{transform:translateY(0)}#renewLogin span:first-child{font-size:22px;font-weight:400;line-height:1}
.card-footnote{margin:19px 0 0;color:#96a1a5;font-size:11px;line-height:1.4}
.mobile-login-help{display:none}.login-resume-hint{margin:10px 0 0;color:#a5492c;font-size:12px;line-height:1.6;text-align:center}.login-resume-hint[hidden]{display:none}
@media(max-width:670px){.mobile-login-help{display:block;align-self:stretch;margin:12px 0 0;padding:10px 12px;border:1px solid #e3e9e7;border-radius:10px;background:#f7f8f6;color:#687b86;font-size:12px;line-height:1.7}}
footer{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:65px;border-top:1px solid rgba(27,61,72,.08);color:#88989e;font-size:11px}footer a{color:inherit;text-decoration:none}footer a:hover{text-decoration:underline}footer a:focus-visible{outline:2px solid #d75422;outline-offset:3px}
@keyframes logo-sweep{0%,72%{left:-45%}100%{left:130%}}@keyframes paper-float{0%,100%{translate:0 0}50%{translate:0 -7px}}@keyframes spark{0%,100%{opacity:.28;scale:.8}50%{opacity:.85;scale:1.15}}@keyframes status-pulse{0%,100%{box-shadow:0 0 0 4px #fff0e4}50%{box-shadow:0 0 0 7px rgba(255,240,228,0)}}@keyframes card-enter{from{opacity:0;transform:translateY(13px)}to{opacity:1;transform:translateY(0)}}
@keyframes hero-print-reveal{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}@keyframes hero-cursor-travel{from{left:0}to{left:100%}}@keyframes hero-cursor-fade{from{opacity:1}to{opacity:0}}@keyframes hero-quote-enter{from{opacity:0;transform:translateY(.26em);filter:blur(6px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}@keyframes hero-quote-underline{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(max-width:850px){.login-shell{grid-template-columns:minmax(0,1fr) minmax(300px,370px);gap:28px}.login-brand{min-height:475px}.paper-scene{scale:.85;transform-origin:left top}.login-brand h1{font-size:clamp(35px,5vw,48px)}}
@media(max-width:670px){.page-wrap{padding:0 20px}.site-header{min-height:76px}.logo-lockup{width:160px}.header-label{font-size:11px;padding:7px 10px}.login-shell{grid-template-columns:1fr;max-width:410px;gap:26px;padding:30px 0 45px}.login-brand{min-height:auto;padding:0}.login-brand h1{font-size:39px}.login-copy{font-size:14px;margin-top:13px}.flow-note{margin-top:16px;font-size:12px}.paper-scene{display:none}.login-card{min-height:auto;padding:26px 24px 24px;border-radius:22px}.login-card h2{margin-top:24px}.qr-frame{width:230px;margin-top:19px}footer{min-height:56px}}
@media(max-width:380px){.page-wrap{padding:0 16px}.logo-lockup{width:145px}.login-brand h1{font-size:34px}.login-card{padding:24px 18px}.qr-frame{width:220px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
@media(prefers-reduced-motion:reduce){.hero-reveal{clip-path:none}.hero-line--print::after,.hero-line--quote::after{display:none}.hero-lift{opacity:1;transform:none;filter:none}}
