@font-face{font-family:Nunito;src:url(assets/nunito.woff2);font-display:swap}@font-face{font-family:Lilita;src:url(assets/lilita.woff2);font-display:swap}@font-face{font-family:Chinese;src:url(assets/login-chinese.woff2);font-display:swap}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.65 Nunito,Chinese,'Microsoft YaHei',sans-serif;min-height:100dvh}button,input,select{font:inherit;color:inherit}button,select{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid var(--action);outline-offset:4px}button{border:0;touch-action:manipulation}button:disabled{opacity:.6;cursor:wait}a{color:inherit;text-decoration:none}header{max-width:1160px;margin:auto;padding:24px 32px;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{display:flex;align-items:center;gap:12px;font:24px/1 Lilita}.brand img{object-fit:contain}.brand small{display:block;font-size:15px;margin-top:7px}select{border:0;border-radius:20px;background:#fff9;min-height:48px;padding:8px 15px}main{max-width:1100px;margin:40px auto 24px;padding:0 32px;display:grid;grid-template-columns:1.12fr 1fr;gap:70px;align-items:center}.greeting{text-align:center}.eyebrow{font:800 14px/1.4 Nunito,sans-serif;letter-spacing:1.7px;color:var(--muted)}h1{font:36px/1.4 Chinese,sans-serif;margin:22px 0 0}h2{font:29px/1.4 Chinese,sans-serif;margin:16px 0 12px}html[lang=en] h1,html[lang=en] h2{font-family:Lilita}.name{font:70px/1.15 Lilita;margin:2px 0 4px}.bunny-scene{height:310px;position:relative;display:flex;justify-content:center;align-items:center}.bunny-scene:before{content:'';position:absolute;bottom:4px;width:270px;height:46px;border-radius:50%;background:var(--leaf-soft);opacity:.4;filter:blur(12px)}.bunny{object-fit:contain;position:relative;max-height:100%;animation:sway 5s ease-in-out infinite}.letter{position:absolute;font:48px/1 Lilita;padding:18px;border-radius:24px;box-shadow:var(--shadow-press);z-index:1}.a{left:8%;top:40px;background:var(--rose-soft);transform:rotate(-12deg)}.b{right:3%;top:95px;background:var(--leaf-soft);transform:rotate(10deg)}.c{left:15%;bottom:10px;background:#f9cd4b80;transform:rotate(7deg)}.greeting-note{color:var(--muted);margin:20px 0 0}.login-card{background:linear-gradient(145deg,#fffdf7 0%,#fbd0da70 60%,#c2d9b145 100%);border-radius:36px;box-shadow:var(--shadow-float);padding:40px}.login-card>p{color:var(--muted);margin:0 0 26px}label{display:block;font-weight:800;margin:18px 0 8px}input:not([type=checkbox]){width:100%;min-height:56px;border:0;background:#fffdf9;border-radius:16px;padding:12px 16px}input::placeholder{color:var(--muted)}.password-field{position:relative}.password-field input{padding-right:76px}.password-field button{position:absolute;right:3px;top:4px;min-width:64px;min-height:48px;border-radius:14px;background:transparent;font-size:15px;font-weight:800}.remember{display:flex;align-items:center;gap:12px;min-height:44px;font-size:14px;font-weight:600;cursor:pointer}.remember input{width:21px;height:21px;accent-color:var(--action);flex-shrink:0}#login-status{font-size:14px;min-height:24px;margin:10px 0}.enter{width:100%;min-height:60px;border-radius:22px;background:var(--action);color:var(--paper);font-size:20px;font-weight:800;box-shadow:0 8px 24px #4d683a20;transition:background .15s,transform .15s}.enter:hover{background:var(--action-hover)}.enter:active{transform:scale(.98)}.login-card .private-note{text-align:center;font-size:14px;margin:22px 0 0}footer{text-align:center;font:14px Nunito;color:var(--muted);padding:30px 20px max(24px,env(safe-area-inset-bottom))}@keyframes sway{50%{transform:translateY(-7px) rotate(1deg)}}@media(max-width:900px){main{gap:30px}.login-card{padding:30px}.letter{font-size:38px;padding:14px}.a{left:0}.b{right:0}}@media(max-width:700px){header{padding:16px 20px}.brand{font-size:20px}.brand img{width:48px;height:48px}.brand small{font-size:13px}main{display:block;margin:12px auto 0;padding:0 20px;max-width:480px}.greeting>.eyebrow,.greeting-note,.letter{display:none}h1{font-size:25px;margin:0}.name{font-size:46px}.bunny-scene{height:170px;margin:-6px 0 -6px}.bunny{width:170px;height:186px}.bunny-scene:before{width:160px;height:25px}.login-card{padding:26px;border-radius:28px}h2{font-size:25px;margin-top:10px}.login-card>p{font-size:15px;margin-bottom:18px}.eyebrow{font-size:12px}footer{padding-top:24px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
