.auth-wrap{background:radial-gradient(120% 90% at 85% -10%, #fbf3e9 0%, #fbf3e900 55%), var(--paper);justify-content:center;align-items:center;min-height:100vh;padding:40px 22px;display:flex}.auth-card{background:var(--card);border:1px solid var(--rule);width:100%;max-width:420px;box-shadow:var(--shadow);border-radius:18px;padding:36px 34px}.auth-card.wide{max-width:480px}.auth-eyebrow{font-family:var(--font-mono), monospace;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-line);margin-bottom:12px;font-size:11px}.auth-card h1{font-family:var(--font-display), serif;letter-spacing:-.01em;margin-bottom:8px;font-size:28px;font-weight:800;line-height:1.1}.auth-card .sub{color:var(--ink-soft);margin-bottom:22px;font-size:15px}.auth-form{flex-direction:column;gap:14px;display:flex}.auth-field label{color:var(--ink-soft);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.auth-field input{width:100%;font-family:var(--font-body), serif;border:1px solid var(--rule);color:var(--ink);background:#fff;border-radius:10px;padding:12px 14px;font-size:16px}.auth-field input:focus{border-color:var(--gold-line);outline:none;box-shadow:0 0 0 3px #c25e3a1f}.auth-btn{font-family:var(--font-display), serif;background:var(--ink);color:#fff;cursor:pointer;border:none;border-radius:11px;padding:14px;font-size:16px;font-weight:700;transition:background .15s,transform .15s}.auth-btn:hover:not(:disabled){background:#0e2a1f;transform:translateY(-1px)}.auth-btn:disabled{opacity:.55;cursor:default}.auth-btn.accent{background:var(--gold-line)}.auth-btn.accent:hover:not(:disabled){background:#a84e2e}.auth-error{color:#9a3b22;background:#fbeae5;border:1px solid #e7c3b6;border-radius:10px;padding:11px 14px;font-size:14px}.auth-success{color:#3c5a36;background:#eef4ec;border:1px solid #cfe0c8;border-radius:10px;margin-bottom:18px;padding:12px 14px;font-size:14px}.auth-foot{color:var(--ink-soft);text-align:center;margin-top:20px;font-size:14px}.auth-foot a{color:var(--gold-line);font-weight:600;text-decoration:none}.auth-foot a:hover{text-decoration:underline}.auth-back{font-family:var(--font-mono), monospace;color:var(--ink-soft);margin-bottom:18px;font-size:12px;text-decoration:none;display:inline-block}.auth-back:hover{color:var(--ink)}.pay-summary{border:1px solid var(--rule);background:#fbfaf6;border-radius:12px;margin-bottom:20px;padding:16px 18px}.pay-summary .row{justify-content:space-between;align-items:baseline;font-size:15px;display:flex}.pay-summary .row .price{font-family:var(--font-display), serif;color:var(--ink);font-size:24px;font-weight:800}.pay-summary .note{color:var(--ink-soft);margin-top:6px;font-size:12.5px}.pay-list{gap:9px;margin:0 0 22px;padding:0;list-style:none;display:grid}.pay-list li{color:var(--ink-soft);padding-left:26px;font-size:14.5px;position:relative}.pay-list li:before{content:"✓";color:var(--teal);font-weight:700;position:absolute;top:0;left:0}.pay-dev{border-top:1px dashed var(--rule);margin-top:16px;padding-top:16px}.pay-dev button{width:100%;font-family:var(--font-mono), monospace;border:1px dashed var(--rule);color:var(--ink-soft);cursor:pointer;background:#fff;border-radius:9px;padding:10px;font-size:12.5px}.logout-line{text-align:center;margin-top:18px}.logout-line button{color:var(--ink-soft);cursor:pointer;background:0 0;border:none;font-size:13px;text-decoration:underline}
