:root{--paper:#fff7e3;--card:#fffdf8;--ink:#2b2c49;--muted:#5c5e78;--line:#d9c48a;--teal:#02ae8d;--gold:#8f6a00;--font-ui:14px;--font-note:12px;--font-title:20px;--font-brand:24px;--font-display:28px}
*{box-sizing:border-box}body.account-page{margin:0;color:var(--ink);background:var(--paper);font:var(--font-ui)/1.65 system-ui,-apple-system,"PingFang SC","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button,a{ -webkit-tap-highlight-color:transparent }button{cursor:pointer}svg{width:24px;height:24px;flex:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--teal);outline-offset:4px}
.portal-wrap{min-height:100svh;display:grid;place-items:center;padding:40px 24px}.portal{width:100%;max-width:680px;background:var(--card);border:1px solid var(--line);border-radius:28px;padding:36px;box-shadow:0 20px 70px #2b2c4908}.portal.is-form{max-width:460px}.portal-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:34px}.portal-brand{margin:0;font-size:var(--font-note);letter-spacing:.15em;color:var(--muted);font-weight:600}.portal-home{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line);border-radius:50%;color:var(--muted)}.portal-home:hover{background:var(--paper);color:var(--ink)}.portal h1{font-size:var(--font-display);line-height:1.3;margin:0 0 8px;font-weight:600;letter-spacing:-.025em}.portal-sub{margin:0 0 30px;color:var(--muted)}.portal-sub strong{font-weight:500;color:var(--ink)}.portal-products{display:grid;gap:12px}.portal-product{display:flex;align-items:center;gap:18px;min-height:90px;padding:20px;border:1px solid #d9c48a80;border-radius:16px;background:white;transition:background .2s,border-color .2s,transform .2s}.portal-product:hover{background:var(--paper);border-color:var(--line);transform:translateY(-1px)}.portal-product .product-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#02ae8d12;color:var(--teal)}.portal-product:nth-child(2) .product-icon{color:var(--gold);background:#d9c48a28}.portal-product:nth-child(3) .product-icon{color:var(--ink);background:#2b2c490a}.portal-product strong{font-size:var(--font-title);font-weight:600}.portal-product>.arrow{margin-left:auto;color:var(--muted);width:18px;height:18px}.portal-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px;padding-top:24px;border-top:1px solid #d9c48a80}.portal-actions form{margin:0}.portal-action{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;padding:12px 16px;border:1px solid #d9c48a80;border-radius:12px;background:transparent;color:var(--muted);font-size:var(--font-ui)}.portal-action:hover{background:var(--paper);color:var(--ink)}.portal-action svg{width:18px;height:18px}.portal-form{display:grid;gap:20px}.portal-field{display:grid;gap:8px;color:var(--ink)}.portal-field input,.portal-field select{width:100%;min-width:0;padding:12px 14px;border:1px solid #d9c48a80;border-radius:10px;background:white;color:var(--ink);outline-offset:2px}.portal-primary{width:100%;padding:13px 18px;border:0;border-radius:11px;background:var(--ink);color:white;font-weight:600;font-size:var(--font-ui)}.portal-primary:hover{background:#40415e}.portal-links{margin-top:24px;text-align:center;font-size:var(--font-note);color:var(--muted)}.portal-links a{text-decoration:underline;text-underline-offset:4px}.portal-error{padding:12px 14px;margin:0;border-radius:10px;background:#d9c48a22;color:var(--gold);font-size:var(--font-note)}.portal-foot{margin:26px 0 0;color:var(--muted);font-size:var(--font-note);text-align:center}.portal-note{color:var(--muted);font-size:var(--font-note);margin:0}
@media(max-width:560px){.portal-wrap{padding:24px 16px;align-items:center}.portal{padding:24px 20px;border-radius:22px}.portal-top{margin-bottom:26px}.portal-product{padding:16px 14px;gap:12px;min-height:80px}.portal-product strong{font-size:var(--font-ui)}.portal-product .product-icon{width:40px;height:40px;border-radius:12px}.portal-actions{gap:10px}.portal-action{padding:12px 8px}.portal h1{font-size:var(--font-brand)}}
@media(prefers-reduced-motion:reduce){.portal-product{transition:none}}
