.modal-bg{--bg-soft:#eef3f7;--ink:#0b1320;--ink-soft:#4e545c;--muted:#5b6478;--line:#dce3eb;--line-2:#c8d2dd;--red:#dc2626;--primary-500:#4aafc6;--primary-600:#3897b0;--primary-700:#2a7b92;position:fixed;inset:0;z-index:120;background:rgba(15,32,53,.55);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:none;align-items:center;justify-content:center;padding:20px}.modal-bg.open{display:flex;animation:ef-fade .25s ease both}@keyframes ef-fade{0%{opacity:0}to{opacity:1}}.account-modal-wrap{position:relative;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0 16px;width:100%;max-width:444px}.account-close{position:absolute;top:16px;right:32px;background:#fff;border:1px solid var(--line);width:32px;height:32px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;color:var(--muted);transition:background-color .15s,color .15s;flex:0 0 auto;z-index:2}.account-close:hover{background:var(--bg-soft);color:var(--ink)}.account-close svg{width:11px;height:11px;display:block}.account-modal{position:relative;background:#fff;border:1px solid var(--line);border-radius:32px;padding:32px 24px 24px;width:100%;display:flex;flex-direction:column;align-items:center;gap:16px}.account-modal-icon{position:absolute;left:50%;top:-32px;transform:translateX(-50%);width:64px;height:64px;border-radius:999px;background:#fff;padding:16px;display:grid;place-items:center;color:var(--primary-700)}.account-modal-icon svg{width:32px;height:32px;display:block}.account-modal h2{margin:0;font-size:26px;font-weight:700;letter-spacing:.02em;color:var(--ink-soft);text-align:center}.account-modal .sub{margin:0;font-size:17px;font-weight:400;line-height:1.4;color:var(--muted);text-align:center;width:100%}.account-modal .field{display:flex;flex-direction:column;gap:8px;align-items:stretch;width:100%}.account-modal .field label{font-size:18px;font-weight:700;color:var(--ink);line-height:normal}.account-modal .field input{height:52px;padding:14px;background:#fff;border:1px solid var(--line);border-radius:14px;font-size:18px;font-weight:500;color:var(--ink);width:100%;outline:none;transition:border-color .15s,box-shadow .15s}.account-modal .field input::placeholder{color:var(--ink);opacity:.3;font-weight:400}.account-modal .field input:focus{border-color:var(--primary-500);box-shadow:0 0 0 3px rgba(74,175,198,.15)}.account-modal .field input.invalid{border-color:var(--red)}.account-modal .btn-pill{display:flex;align-items:center;justify-content:center;gap:16px;padding:12px 16px;border-radius:999px;font-size:20px;font-weight:500;letter-spacing:.015em;width:100%;cursor:pointer;transition:background .15s,border-color .15s,opacity .15s}.account-modal .btn-primary{background:var(--primary-500);color:#fff;border:0;box-shadow:none}.account-modal .btn-primary:hover{background:var(--primary-600)}.account-modal .btn-primary:disabled{background:var(--line-2);cursor:not-allowed;opacity:.7}.account-modal .btn-primary svg{width:8px;height:14px}.account-modal .btn-ghost{background:#fff;color:var(--muted);border:1px solid var(--line)}.account-modal .btn-ghost:hover{background:var(--bg-soft)}.account-modal .or-divider{display:flex;align-items:center;gap:10px;width:100%}.account-modal .or-divider:after,.account-modal .or-divider:before{content:"";flex:1 0;height:1px;background:var(--line)}.account-modal .or-divider span{font-size:17px;font-weight:400;color:var(--muted);white-space:nowrap}.account-modal .terms{display:block;margin:0;font-size:13px;font-weight:400;color:var(--muted);text-align:center;line-height:1.4;max-width:280px}.account-modal .terms a{display:inline;color:var(--muted);text-decoration:underline;font-weight:400}.account-modal .input-wrap{position:relative;width:100%}.account-modal .input-wrap input{padding-right:48px}.account-modal .pass-toggle{position:absolute;top:50%;right:8px;transform:translateY(-50%);width:36px;height:36px;border-radius:10px;background:transparent;border:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;color:var(--muted);transition:color .15s,background .15s}.account-modal .pass-toggle:hover{color:var(--ink);background:var(--bg-soft)}.account-modal .pass-toggle svg{width:20px;height:20px;display:block}.account-modal .field .hint{margin:2px 0 0;font-size:13px;font-weight:400;line-height:1.4;color:var(--muted)}.account-modal .warn.block{margin:0;width:100%;font-size:14px;font-weight:500;color:var(--red);text-align:center;line-height:normal;display:none}.account-modal .warn.block.show{display:block}.account-modal .btn-google{background:#fff;color:var(--ink);border:1px solid var(--line);gap:10px;font-size:18px;font-weight:600}.account-modal .btn-google:hover{background:var(--bg-soft)}.account-modal .btn-google svg{flex:0 0 auto}@media (max-width:760px){.account-modal h2{font-size:20px}.modal-bg{align-items:flex-end;padding:16px}.account-modal-wrap{max-width:none;padding:0;width:100%;align-items:stretch;gap:0;animation:ef-sheet-up .32s cubic-bezier(.2,.8,.25,1) forwards}.account-modal{border-radius:32px;padding:32px 20px 24px;gap:12px}.account-close{top:16px;right:16px;width:32px;height:32px;z-index:2}.account-modal .field{margin-bottom:-4px}}@keyframes ef-sheet-up{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}