/* Curio 2 个人中心（/account/*，2026-09-30）：和定价页、结账页同一套磨砂底 + 毛玻璃卡片。
   左侧导航 + 右侧内容；页面骨架由 _shared/account-shell.js 画。 */
*{margin:0;padding:0;box-sizing:border-box;}
[hidden]{display:none!important;}
:root{
  --ink:#000; --ink-2:#4F4F4F; --ink-3:#8A8A8A;
  --line:#DBDBDB; --line-soft:#ebebeb;
  --bg:#F4F4F2; --bg-sub:#FAFAFA;
  --glass-bg:rgba(255,255,255,.62); --glass-line:rgba(255,255,255,.85);
  --glass-shadow:0 1px 2px rgba(0,0,0,.04),0 10px 30px rgba(0,0,0,.07);
  --glass-blur:blur(24px) saturate(160%);
  --ok:#2F9E62; --danger:#a32020; --link:#0095F6;
  --sans:'Inter','Inter Fallback',-apple-system,BlinkMacSystemFont,'Segoe UI','PingFang SC','Hiragino Sans GB','Noto Sans SC',sans-serif;
  --mono:'JetBrains Mono','SFMono-Regular',ui-monospace,monospace;
}
html,body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.45;letter-spacing:-0.01em;-webkit-font-smoothing:antialiased;}
body{position:relative;overflow-x:hidden;}
/* 内容少时 footer 贴在窗口底部，不浮在半中间（用户 2026-09-30：积分记录只有一条时 footer 被抬起来） */
body{min-height:100vh;display:flex;flex-direction:column;}
main.ac{flex:1 0 auto;width:100%;}
a{color:inherit;text-decoration:none;}
button{font-family:inherit;cursor:pointer;border:0;background:none;color:inherit;}
:focus-visible{outline:2px solid var(--link);outline-offset:2px;}
html[data-lang="en"] [data-zh]:not([data-en]){display:none !important;}
html[data-lang="zh"] [data-en]:not([data-zh]){display:none !important;}

.aura-clip{position:fixed;inset:0;overflow:hidden;z-index:0;pointer-events:none;}
/* 光晕：预先模糊好的小图（lib/aura.mjs），不再用 CSS filter:blur——iPhone 首次渲染冻住 4–5 秒（2026-09-30 真机对照） */
.aura{position:absolute;inset:-160px;background-size:cover;background-position:center;opacity:.2;}
.nav,main,.ft{position:relative;z-index:1;}
body .ft,body .ft-bar{background:transparent;border-top:0;}
.glass{background:var(--glass-bg);border:1px solid var(--glass-line);box-shadow:var(--glass-shadow);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);}

/* ── 骨架 ── */
.ac{max-width:1200px;margin:0 auto;padding:32px 56px 120px;display:grid;grid-template-columns:232px minmax(0,1fr);gap:32px;align-items:start;}
.ac-side{position:sticky;top:80px;padding:10px;border-radius:16px;display:flex;flex-direction:column;gap:2px;}
.ac-side a,.ac-side button{display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;border-radius:10px;font-size:14.5px;color:var(--ink-2);text-align:left;width:100%;transition:background .15s ease,color .15s ease;}
.ac-side a:hover,.ac-side button:hover{background:rgba(0,0,0,.05);color:#000;}
.ac-side a.on{background:#fff;color:#000;font-weight:600;box-shadow:0 1px 3px rgba(0,0,0,.06);}
.ac-side svg{width:17px;height:17px;flex-shrink:0;}
.ac-side .sep{height:1px;background:rgba(0,0,0,.07);margin:6px 8px;}
.ac-side .out{color:var(--danger);}
.ac-main{min-width:0;display:flex;flex-direction:column;gap:32px;}
.ac-page{display:flex;flex-direction:column;gap:32px;}
.ac-title{display:flex;flex-direction:column;gap:6px;}
.ac-title h1{font-size:30px;font-weight:600;letter-spacing:-0.025em;line-height:1.2;}
.ac-title p{font-size:14.5px;color:var(--ink-2);}

/* ── 通用 ── */
.card{border-radius:16px;padding:24px;}
.sec{display:flex;flex-direction:column;gap:16px;}
.sec-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.sec-head h2{font-size:19px;font-weight:600;letter-spacing:-0.015em;}
.sec-head h2 .n{margin-left:6px;font-size:14px;font-weight:500;color:var(--ink-3);}
.more{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:var(--link);}
.more svg{width:7px;height:12px;transition:transform .18s ease;}
.more:hover svg{transform:translateX(3px);}
.btn-pri,.btn-sec,.btn-danger{height:44px;padding:0 20px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:8px;font-size:14.5px;font-weight:600;letter-spacing:-0.015em;white-space:nowrap;transition:background .15s ease,border-color .15s ease;}
.btn-pri{background:#000;color:#fff;}
.btn-pri:hover{background:#262626;}
.btn-pri:disabled{background:#B8B8B8;cursor:not-allowed;}
.btn-sec{border:1px solid rgba(0,0,0,.12);background:rgba(255,255,255,.75);}
.btn-sec:hover{border-color:#000;background:#fff;}
.btn-danger{border:1px solid rgba(163,32,32,.35);color:var(--danger);background:rgba(255,255,255,.75);}
.btn-danger:hover{background:#fdf0f0;border-color:var(--danger);}
.btn-danger.solid{background:var(--danger);color:#fff;border-color:var(--danger);}
.btn-danger.solid:hover{background:#8a1a1a;}
.btn-danger.solid:disabled{background:#d9a3a3;border-color:#d9a3a3;cursor:not-allowed;}
.muted{color:var(--ink-2);}
.soon{font-size:13px;color:var(--ink-3);}

/* 空状态 */
.empty{padding:36px 24px;border-radius:16px;display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;}
.empty svg{width:28px;height:28px;color:var(--ink-3);}
.empty b{font-size:15.5px;font-weight:600;}
.empty p{font-size:14px;color:var(--ink-2);max-width:32em;}
.empty .btn-pri,.empty .btn-sec{margin-top:6px;}

/* 记录行（概览「最近动态」、积分记录、使用记录共用） */
.rows{border-radius:16px;overflow:hidden;}
.row{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px 20px;border-top:1px solid rgba(0,0,0,.06);}
.row:first-child{border-top:0;}
.row-ic{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.05);}
.row-ic svg{width:18px;height:18px;}
.row-ic.cover{background:#eee center/cover no-repeat;width:52px;height:30px;border-radius:5px;}
.row.has-cover{grid-template-columns:52px minmax(0,1fr) auto;}
.row-main{min-width:0;display:flex;flex-direction:column;gap:3px;}
.row-t{font-size:14.5px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.row-t a{border-bottom:1px solid transparent;}
.row-t a:hover{border-color:currentColor;}
.row-m{font-size:12.5px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.row-side{display:flex;flex-direction:column;align-items:flex-end;gap:3px;text-align:right;}
.delta{font-size:15px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap;}
.delta.plus{color:var(--ok);}
.delta.minus{color:#000;}
.bal-after{font-size:12px;color:var(--ink-3);white-space:nowrap;font-variant-numeric:tabular-nums;}
.tag{display:inline-flex;align-items:center;height:20px;padding:0 7px;border-radius:5px;font-size:11.5px;font-weight:600;background:rgba(0,0,0,.05);color:var(--ink-2);margin-left:8px;vertical-align:1px;}
.tag.gift{background:rgba(217,130,43,.12);color:#A8611A;}

/* 切换（全部 / 充值 / 消费） */
.tabs{display:inline-flex;gap:4px;padding:4px;border-radius:10px;align-self:flex-start;}
.tabs button{height:34px;padding:0 14px;border-radius:7px;font-size:14px;font-weight:500;color:var(--ink-2);}
.tabs button:hover{color:#000;}
.tabs button[aria-pressed="true"]{background:#fff;color:#000;font-weight:600;box-shadow:0 1px 3px rgba(0,0,0,.08);}

/* 表单 */
.field{display:flex;flex-direction:column;gap:8px;padding:18px 0;border-top:1px solid rgba(0,0,0,.06);}
.field:first-of-type{border-top:0;padding-top:0;}
.field label,.field .lbl{font-size:13px;color:var(--ink-2);}
.field .val{font-size:15px;}
.field-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;}
.input{height:44px;min-width:0;flex:1;max-width:360px;padding:0 14px;border-radius:8px;border:1px solid rgba(0,0,0,.14);background:rgba(255,255,255,.85);font:inherit;font-size:15px;color:#000;}
.input:focus{outline:none;border-color:#000;box-shadow:0 0 0 1px #000;}
.note{font-size:13px;color:var(--ink-3);}
.note.ok{color:var(--ok);}
.note.err{color:var(--danger);}

/* 确认框 */
.dlg{position:fixed;inset:0;z-index:500;background:rgba(0,0,0,.4);display:flex;align-items:center;justify-content:center;padding:24px;}
.dlg-card{width:100%;max-width:440px;background:#fff;border-radius:16px;padding:28px;box-shadow:0 24px 60px rgba(0,0,0,.25);display:flex;flex-direction:column;gap:14px;}
.dlg-card h2{font-size:20px;font-weight:600;letter-spacing:-0.02em;}
.dlg-card p{font-size:14.5px;color:var(--ink-2);line-height:1.6;}
.dlg-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:6px;}

@media (max-width:900px){
  .ac{grid-template-columns:minmax(0,1fr);padding:16px 16px 72px;gap:20px;}
  /* 手机：左侧导航变成顶部一行可横滑的标签 */
  .ac-side{position:static;flex-direction:row;overflow-x:auto;scrollbar-width:none;padding:6px;border-radius:12px;gap:4px;}
  .ac-side::-webkit-scrollbar{display:none;}
  /* 右边淡出 = 还能往右滑（「账号设置」「退出登录」在屏幕外）；末尾垫一段，滑到底时最后一项不被淡掉 */
  .ac-side{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 28px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 28px),transparent);}
  .ac-side::after{content:"";flex:0 0 22px;}
  .ac-side a,.ac-side button{width:auto;flex-shrink:0;height:36px;padding:0 12px;font-size:14px;}
  .ac-side .sep{width:1px;height:20px;margin:8px 2px;}
  .ac-side svg{display:none;}
  .ac-title h1{font-size:24px;}
  .card{padding:20px;}
  .row{padding:12px 14px;gap:12px;}
}
