.profile-setup-banner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:12px 14px;border:1px solid #cfe1fa;border-radius:14px;background:linear-gradient(105deg,#edf7ff,#f7f4ff)}.profile-setup-banner>span{padding:6px 8px;border-radius:999px;color:#0b69c8;background:#fff;font-size:8px;font-weight:760;letter-spacing:.08em}.profile-setup-banner strong{display:block;font-size:10px}.profile-setup-banner p{margin:3px 0 0;color:#717179;font-size:8px}.profile-setup-banner>b{color:#3376b8;font-size:8px;font-weight:650}.profile-fields.four{grid-template-columns:repeat(4,1fr)}.profile-birthday-priority{border-color:#cfe1fa;background:linear-gradient(105deg,#fff,#f6faff)}.profile-birthday-priority .profile-fields{grid-template-columns:minmax(220px,1fr) 1fr}.profile-birthday-priority .profile-fields:after{content:"生日会以个人事件显示在万年历中，仅当前账号可见。";align-self:end;padding:10px 12px;border-radius:9px;color:#4c75a1;background:#eef6ff;font-size:8px}@media (max-width:900px){.profile-fields.four{grid-template-columns:repeat(2,1fr)}}@media (max-width:700px){.profile-setup-banner{grid-template-columns:1fr}.profile-setup-banner>b{line-height:1.6}.profile-birthday-priority .profile-fields,.profile-fields.four{grid-template-columns:1fr}.profile-birthday-priority .profile-fields:after{align-self:auto}}.cloud-save-status{align-self:flex-start;padding:0;border:0;background:transparent}.cloud-save-status.pending{color:#b7791f}.cloud-save-status.saving{color:var(--blue)}.cloud-save-status.error{color:#d94848;font-weight:650}.toast{z-index:120}.profile-security-section{border-color:#dfe8f3;background:linear-gradient(140deg,#fff,#f7faff)}.profile-security-section .profile-section-title{align-items:center}.security-state{margin-left:auto;padding:5px 8px;border-radius:99px;color:#9b6e28;background:#fff3d9;font-size:7px;font-weight:680}.security-state.configured{color:#277a49;background:#e6f5eb}.security-account-card{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:3px 10px;padding:11px 12px;border:1px solid #e4eaf2;border-radius:12px;background:#f7f9fc}.security-account-card>span{color:#7d7d84;font-size:8px}.security-account-card>strong{font-size:10px}.security-account-card>p{grid-column:1/-1;margin:4px 0 0;color:#7e7e85;font-size:8px;line-height:1.55}.security-block{margin-top:10px;padding:12px;border:1px solid #e4e7ed;border-radius:13px;background:rgba(255,255,255,.86)}.security-block-head{display:flex;align-items:center;justify-content:space-between;gap:14px}.security-block-head span,.security-block-head strong{display:block}.security-block-head strong{font-size:10px}.security-block-head span{margin-top:3px;color:#85858c;font-size:8px}.security-block-head>button{flex:0 0 auto;padding:7px 10px;border:0;border-radius:8px;color:#fff;background:#0879e5;font-size:8px;font-weight:650}.security-block-head>button:disabled{cursor:not-allowed;opacity:.55}.security-password-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.security-confirm-field,.security-password-grid>label{display:flex;flex-direction:column;gap:5px}.security-confirm-field>span,.security-password-grid>label>span{color:#6e6e75;font-size:8px}.profile-security-password{display:flex;align-items:center;border:1px solid #dedee4;border-radius:9px;background:#fafafd}.profile-security-password:focus-within{border-color:#76b4eb;box-shadow:0 0 0 3px rgba(0,113,227,.08)}.profile-security-password>input{min-width:0;flex:1;padding:9px 10px;border:0;outline:0;background:transparent;font-size:9px}.profile-security-password>.auth-password-toggle{display:grid;place-items:center;flex:0 0 29px;width:29px;height:29px;margin-right:3px;padding:0;border:0;border-radius:7px;color:#1775ca;background:#eaf4ff}.profile-security-password .auth-eye-icon{transform:scale(.75)}.security-password-rule{margin:8px 0 0;color:#8a8a91;font-size:7.5px}.security-question-block{background:linear-gradient(135deg,#fff,#faf8ff)}.security-feedback{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:8px;margin-top:10px;padding:9px 10px;border:1px solid #dfe5ed;border-radius:10px;color:#5f6570;background:#f5f7fa;font-size:8px;line-height:1.5}.security-feedback>b{display:grid;place-items:center;width:22px;height:22px;border-radius:7px;color:#356ca5;background:#e5f1fc;font-size:10px}.security-feedback>time{color:#7c838d;font-size:7.5px;white-space:nowrap}.security-feedback.success{border-color:#cae8d5;color:#2f6e49;background:#f1faf4}.security-feedback.success>b{color:#287748;background:#dff3e6}.security-feedback.error{border-color:#f2cece;color:#a13c40;background:#fff3f3}.security-feedback.error>b{color:#b33f42;background:#ffe0e0}.security-question-list{display:grid;gap:7px;margin-top:10px}.security-question-row{display:grid;grid-template-columns:24px 1.45fr 1fr;align-items:center;gap:7px}.security-question-row>b{display:grid;place-items:center;width:24px;height:24px;border-radius:8px;color:#6254bd;background:#ece8ff;font-size:8px}.security-question-row input,.security-question-row select{min-width:0;width:100%;padding:8px 9px;border:1px solid #dedee4;border-radius:9px;outline:0;background:#fafafd;font-size:8.5px}.security-question-row input:focus,.security-question-row select:focus{border-color:#76b4eb;box-shadow:0 0 0 3px rgba(0,113,227,.07)}.security-confirm-field{max-width:360px;margin-top:9px}.profile-signout{padding:9px 13px;border:0;border-radius:99px;color:#b33f42;background:#fff0f0;font-size:9px}@media (max-width:700px){.security-password-grid{grid-template-columns:1fr}.security-question-row{grid-template-columns:24px 1fr}.security-question-row input{grid-column:2}.security-block-head{align-items:flex-start;flex-direction:column}.security-block-head>button{align-self:flex-end}.security-confirm-field{max-width:none}.security-feedback{grid-template-columns:22px 1fr}.security-feedback>time{grid-column:2}.profile-security-section .profile-section-title{align-items:flex-start;flex-wrap:wrap}.security-state{margin-left:36px}}:root{--auth-blue:#0071e3}.auth-page{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(420px,.85fr);background:#f5f5f7;color:#1d1d1f}.auth-page,.auth-story{min-height:100vh;overflow:hidden}.auth-story{flex-direction:column;padding:42px clamp(38px,6vw,96px);background:radial-gradient(circle at 78% 22%,rgba(73,137,255,.17),transparent 33%),linear-gradient(145deg,#fbfbfd,#f1f5fb 55%,#eef2fa)}.auth-brand,.auth-story{position:relative;display:flex}.auth-brand{z-index:2;align-items:center;gap:10px}.auth-brand>span{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;color:white;background:linear-gradient(145deg,#2998ff,#0068d8);box-shadow:0 12px 30px rgba(0,113,227,.24);font-size:20px;font-weight:750}.auth-brand>b{font-size:20px;letter-spacing:-.03em}.auth-brand>small{padding:3px 7px;border:1px solid #cfe3fa;border-radius:99px;color:#2273ba;background:#edf6ff;font-size:10px;font-weight:700}.auth-ambient{position:absolute;inset:0;pointer-events:none}.auth-ambient i{position:absolute;border:1px solid rgba(38,106,206,.1);border-radius:50%;animation:authDrift 12s ease-in-out infinite}.auth-ambient i:first-child{right:-130px;top:15%;width:420px;height:420px}.auth-ambient i:nth-child(2){right:8%;bottom:-220px;width:520px;height:520px;animation-delay:-4s}.auth-ambient i:nth-child(3){left:-100px;top:42%;width:240px;height:240px;animation-delay:-8s}.auth-quote{position:relative;z-index:2;margin:auto 0;max-width:720px;animation:authQuoteIn .72s cubic-bezier(.22,1,.36,1)}.auth-quote>span{color:#1478d4;font-size:11px;font-weight:760;letter-spacing:.18em}.auth-quote blockquote{margin:24px 0 20px;font-size:clamp(38px,4.1vw,70px);font-weight:650;line-height:1.12;letter-spacing:-.055em}.auth-quote cite{color:#77777e;font-size:15px;font-style:normal}.auth-quote-dots{position:relative;z-index:2;display:flex;gap:7px;margin-bottom:25px}.auth-quote-dots button{width:7px;height:7px;padding:0;border:0;border-radius:99px;background:#c7c9cf;transition:.35s}.auth-quote-dots button.active{width:29px;background:#127be0}.auth-story-foot{position:relative;z-index:2;margin:0;color:#8b8b91;font-size:12px}.auth-panel{display:grid;place-items:center;min-height:100vh;padding:42px;background:rgba(255,255,255,.72);backdrop-filter:blur(28px)}.auth-card{width:min(430px,100%);padding:34px;border:1px solid rgba(255,255,255,.9);border-radius:30px;background:rgba(255,255,255,.92);box-shadow:0 35px 90px rgba(39,51,78,.13)}.auth-card-head>span{color:#1978cf;font-size:10px;font-weight:750;letter-spacing:.14em}.auth-card-head h1{margin:9px 0 7px;font-size:34px;letter-spacing:-.045em}.auth-card-head p{margin:0;color:#7b7b82;font-size:13px;line-height:1.6}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin:25px 0 22px;padding:4px;border-radius:13px;background:#f0f0f3}.auth-tabs button{padding:9px;border:0;border-radius:10px;color:#77777d;background:transparent;font-size:13px}.auth-tabs button.active{color:#1d1d1f;background:#fff;box-shadow:0 3px 11px rgba(0,0,0,.08)}.auth-field{display:flex;flex-direction:column;gap:7px;margin-top:15px}.auth-field>span{font-size:12px;font-weight:650}.auth-field>div,.auth-field>input{width:100%;border:1px solid #dedee4;border-radius:13px;background:#fafafd;transition:.2s}.auth-field>input{padding:13px 14px;outline:0}.auth-field>div{display:flex;align-items:center}.auth-field>div:focus-within,.auth-field>input:focus{border-color:#64aaf0;box-shadow:0 0 0 4px rgba(0,113,227,.08)}.auth-field>div input{flex:1;min-width:0;padding:13px 14px;border:0;outline:0;background:transparent}.auth-field>div button{margin-right:6px;padding:7px 8px;border:0;border-radius:8px;color:#1775ca;background:#eaf4ff;font-size:11px}.auth-field small{color:#99999e;font-size:10px}.auth-field small.invalid{color:#d44a4f}.password-rules{display:flex;flex-wrap:wrap;gap:6px;margin-top:11px}.password-rules span{padding:5px 7px;border-radius:99px;color:#8a8a91;background:#f1f1f4;font-size:9px}.password-rules span.done{color:#21824b;background:#e9f6ee}.auth-submit{display:flex;align-items:center;justify-content:center;gap:15px;width:100%;margin-top:24px;padding:14px;border:0;border-radius:14px;color:#fff;background:#0879e5;box-shadow:0 12px 28px rgba(0,113,227,.24);font-size:14px;font-weight:680}.auth-submit:hover{transform:translateY(-1px);background:#0071dc}.auth-submit:disabled{opacity:.6}.auth-submit span{font-size:19px}.auth-security{display:grid;grid-template-columns:auto 1fr;gap:9px;margin-top:18px;padding:11px;border-radius:12px;background:#f5f8fc}.auth-security>span{display:grid;place-items:center;width:27px;height:27px;border-radius:9px;color:#1c75c4;background:#e4f1ff}.auth-security p{margin:0;color:#77777d;font-size:10px;line-height:1.5}.auth-security b{display:block;color:#343439}.auth-alert-backdrop{position:fixed;z-index:200;inset:0;display:grid;place-items:center;padding:20px;background:rgba(20,20,24,.35);backdrop-filter:blur(10px)}.auth-alert{width:min(360px,100%);padding:28px;border:1px solid rgba(255,255,255,.85);border-radius:24px;background:#fff;box-shadow:0 32px 90px rgba(0,0,0,.25);text-align:center;animation:authAlertIn .22s cubic-bezier(.22,1,.36,1)}.auth-alert>span{display:grid;place-items:center;width:42px;height:42px;margin:0 auto 13px;border-radius:13px;color:#bd6320;background:#fff1df;font-size:20px;font-weight:800}.auth-alert h2{margin:0;font-size:20px}.auth-alert p{margin:10px 0 20px;color:#6f6f76;font-size:13px;line-height:1.6}.auth-alert button{padding:10px 20px;border:0;border-radius:99px;color:#fff;background:#0879e5}.auth-loading{min-height:100vh;display:grid;place-content:center;justify-items:center;gap:14px;background:#f5f5f7;color:#77777e}.auth-loader-mark{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;color:#fff;background:#0879e5;box-shadow:0 14px 35px rgba(0,113,227,.25);font-size:24px;font-weight:750;animation:authPulse 1.5s ease-in-out infinite}.auth-loading span{font-size:12px}@keyframes authQuoteIn{0%{opacity:0;transform:translateY(22px);filter:blur(8px)}to{opacity:1;transform:none;filter:none}}@keyframes authDrift{0%,to{transform:translateZ(0)}50%{transform:translate3d(14px,-18px,0)}}@keyframes authAlertIn{0%{opacity:0;transform:scale(.94) translateY(10px)}to{opacity:1;transform:none}}@keyframes authPulse{50%{transform:scale(1.06);box-shadow:0 18px 45px rgba(0,113,227,.35)}}@media(max-width:880px){.auth-page{grid-template-columns:1fr}.auth-story{min-height:38vh;padding:25px}.auth-quote{margin:55px 0 35px}.auth-quote blockquote{font-size:36px}.auth-panel{min-height:62vh;padding:20px}.auth-card{padding:25px}.auth-story-foot{display:none}}@media(prefers-reduced-motion:reduce){.auth-ambient i,.auth-loader-mark,.auth-quote{animation:none}}.auth-preferences{display:grid;gap:9px;margin-top:14px}.auth-preferences label{display:flex;align-items:center;gap:9px;width:max-content;max-width:100%;color:#4c4c52;font-size:11px;line-height:1.35;cursor:pointer}.auth-preferences input{appearance:none;display:grid;place-items:center;width:16px;height:16px;margin:0;border:1px solid #d6d8df;border-radius:5px;background:#fff;box-shadow:inset 0 1px 2px rgba(0,0,0,.04)}.auth-preferences input:checked{border-color:#0879e5;background:#0879e5}.auth-preferences input:checked:after{content:"";width:7px;height:4px;border:2px solid #fff;border-top:0;border-right:0;transform:translateY(-1px) rotate(-45deg)}.auth-forgot-button{justify-self:start;margin-top:1px;padding:0;border:0;color:#0875d5;background:transparent;font-size:11px;font-weight:650}.auth-forgot-button:hover{text-decoration:underline}.auth-recovery-card{width:min(480px,100%)}.auth-recovery-first-field{margin-top:28px}.auth-recovery-questions{max-height:min(520px,58vh);margin-top:20px;padding-right:4px;overflow:auto}.auth-recovery-questions .auth-field:first-child{margin-top:0}.auth-recovery-back{display:block;margin:12px auto 0;padding:7px 12px;border:0;color:#6f6f76;background:transparent;font-size:11px}.auth-recovery-back:hover{color:#0875d5}.auth-recovery-security{margin-top:12px}.auth-recovery-card .auth-field>span{line-height:1.45}.auth-recovery-card .password-rules{margin-bottom:3px}@media(max-width:880px){.auth-recovery-questions{max-height:none}}.auth-alert-dismiss-layer{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:transparent;cursor:default}.auth-alert{position:relative;z-index:1}.auth-field>div button.auth-password-toggle{display:grid;place-items:center;width:38px;height:38px;margin-right:4px;padding:0;border:0;border-radius:10px;color:#70757d;background:transparent;transition:color .2s,background .2s,transform .2s}.auth-field>div button.auth-password-toggle:hover{color:#0879e5;background:#eaf4ff}.auth-field>div button.auth-password-toggle:active{transform:scale(.94)}.auth-field>div button.auth-password-toggle:focus-visible{outline:2px solid #64aaf0;outline-offset:1px}.auth-eye-icon{position:relative;display:block;width:21px;height:14px}.auth-eye-icon:after,.auth-eye-icon:before{position:absolute;content:"";transition:.22s cubic-bezier(.22,1,.36,1)}.auth-eye-icon:before{left:1px;right:1px;top:0;height:9px;border-bottom:2px solid;border-radius:0 0 55% 55%}.auth-eye-icon:after{left:4px;right:4px;top:11px;height:2px;border-radius:99px;background:currentColor;opacity:.35}.auth-password-toggle.is-visible{color:#0879e5!important;background:#eaf4ff!important}.auth-password-toggle.is-visible .auth-eye-icon:before{inset:1px 2px 2px;height:auto;border:2px solid;border-radius:70% 18%;transform:rotate(45deg)}.auth-password-toggle.is-visible .auth-eye-icon:after{left:8px;right:auto;top:4px;width:5px;height:5px;border-radius:50%;background:currentColor;opacity:1}@media (prefers-reduced-motion:reduce){.auth-eye-icon:after,.auth-eye-icon:before,.auth-password-toggle{transition:none}}@media (min-width:861px) and (max-width:1180px){.topbar{padding-inline:18px}.topbar nav{gap:clamp(9px,1.25vw,15px)}.topbar nav button{font-size:11px}.topbar .brand{gap:7px}.topbar .top-actions{gap:8px}}.smart-date{position:relative;display:block;width:100%}.smart-date>input{width:100%;padding-right:43px!important;cursor:pointer;color-scheme:light}.smart-date>input::-webkit-calendar-picker-indicator{position:absolute;inset:0;width:100%;height:100%;cursor:pointer;opacity:0}.smart-date>button{position:absolute;z-index:2;top:50%;right:7px;display:grid;place-items:center;width:30px;height:30px;padding:0;transform:translateY(-50%);border:0;border-radius:9px;color:#0877d8;background:#eaf4ff}.smart-date>button:hover{background:#dceeff}.smart-date>button span{position:relative;width:14px;height:13px;border:1.6px solid;border-radius:3px}.smart-date>button span:before{content:"";position:absolute;top:3px;right:1px;left:1px;border-top:1.5px solid}.smart-date>button span:after{content:"";position:absolute;top:-3px;left:2px;width:2px;height:4px;border-radius:2px;background:currentColor;box-shadow:6px 0 currentColor}