/* Account dashboard (/profile) and public profile cards. Logic: account-app.js. */
body.is-account main{max-width:1180px}
.account{--acc:#e9d3a1;--acc-soft:#e9d3a11f;--acc-line:#e9d3a140;--line:#d7e1ee1c;--card:linear-gradient(150deg,#1b1d3f8c,#0a0c1dcc);--muted:#a7b2c6;animation:acc-in .5s cubic-bezier(.16,1,.3,1)}
.account[data-accent=platinum]{--acc:#d7e1ee;--acc-soft:#d7e1ee1c;--acc-line:#d7e1ee40}
.account[data-accent=amethyst]{--acc:#b9a2ff;--acc-soft:#b9a2ff1f;--acc-line:#b9a2ff45}
.account[data-accent=azure]{--acc:#7cc4ff;--acc-soft:#7cc4ff1c;--acc-line:#7cc4ff45}
.account[data-accent=rose]{--acc:#f2a7c3;--acc-soft:#f2a7c31c;--acc-line:#f2a7c345}
.account[data-accent=mint]{--acc:#8fe3c4;--acc-soft:#8fe3c41c;--acc-line:#8fe3c445}
@keyframes acc-in{from{opacity:0;transform:translateY(12px)}}

/* Covers (shared by dashboard hero and public card) */
[data-cover] .acc-cover{position:absolute;inset:0 0 auto;height:150px;border-radius:inherit;border-bottom-left-radius:0;border-bottom-right-radius:0;background:radial-gradient(ellipse at 20% 0%,#5b3fd066,transparent 60%),radial-gradient(ellipse at 85% 30%,#1d4fd055,transparent 55%),linear-gradient(120deg,#1a1440,#0d1030);-webkit-mask:linear-gradient(#000 40%,#0000);mask:linear-gradient(#000 40%,#0000)}
[data-cover=aurora] .acc-cover{background:linear-gradient(115deg,#0d3b4f,#1f6f73 30%,#4b2f8f 65%,#14123a)}
[data-cover=champagne] .acc-cover{background:radial-gradient(ellipse at 30% 0%,#f3e2b866,transparent 60%),linear-gradient(120deg,#5a4526,#1d1730)}
[data-cover=graphite] .acc-cover{background:linear-gradient(120deg,#3a4250,#161a22)}
[data-cover=sunset] .acc-cover{background:linear-gradient(120deg,#7b2d4f,#c0634a 45%,#2a1640)}

/* Avatars: photo or initials on a gradient preset */
.acc-avatar{display:grid;place-items:center;flex:none;border-radius:50%;overflow:hidden;color:#141225;font-weight:650;background:var(--avatar-bg,linear-gradient(135deg,#f3e2b8,#a88a55));box-shadow:0 0 0 3px #0a0c1d,0 0 0 5px var(--acc-line,#e9d3a140)}
.acc-avatar img{width:100%;height:100%;object-fit:cover}
.acc-avatar[data-style="2"]{--avatar-bg:linear-gradient(135deg,#d7e1ee,#6c7a92)}
.acc-avatar[data-style="3"]{--avatar-bg:linear-gradient(135deg,#c9b6ff,#5b3fd0)}
.acc-avatar[data-style="4"]{--avatar-bg:linear-gradient(135deg,#a8e1ff,#1d6fd0)}
.acc-avatar[data-style="5"]{--avatar-bg:linear-gradient(135deg,#ffd0df,#c0507a)}
.acc-avatar[data-style="6"]{--avatar-bg:linear-gradient(135deg,#c4f5df,#2f8f6e)}
.acc-avatar-xl{width:104px;height:104px;font-size:40px}
.acc-avatar-lg{width:88px;height:88px;font-size:34px}

/* Hero */
.acc-hero{position:relative;display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:end;padding:96px 32px 28px;border:1px solid var(--line);border-radius:28px;background:var(--card);overflow:hidden}
.acc-hero>*:not(.acc-cover){position:relative}
.acc-role{margin:0 0 6px;font-size:12px;letter-spacing:.06em;color:var(--acc)}
.acc-id h1{margin:0;font-size:clamp(26px,3.4vw,36px);letter-spacing:-.8px;overflow-wrap:anywhere}
.acc-handle{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:6px 0 0;color:var(--muted);font-size:14px}
.acc-dot{width:3px;height:3px;border-radius:50%;background:currentColor}
.acc-chip{padding:2px 8px;border-radius:999px;font-size:12px;border:1px solid var(--line)}
.acc-chip.ok{color:#abd6bd;border-color:#abd6bd40}.acc-chip.warn{color:#f3c98b;border-color:#f3c98b40}
.acc-bio{margin:10px 0 0;color:#cfd7e4;max-width:56ch;overflow-wrap:anywhere}
.acc-bio:empty{display:none}
.acc-hero-side{display:grid;gap:14px;justify-items:end}
.acc-meter{width:240px}
.acc-meter-head{display:flex;justify-content:space-between;font-size:13px;color:var(--muted)}
.acc-meter-head b{color:var(--acc)}
.acc-meter-track{height:6px;margin-top:8px;border-radius:999px;background:#ffffff10;overflow:hidden}
.acc-meter-track i{display:block;height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,var(--acc-line),var(--acc));transition:width .6s cubic-bezier(.16,1,.3,1)}
#acc-complete-hint{margin:8px 0 0;font-size:12px;color:var(--muted)}
.acc-hero-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.acc-hero-actions .primary,.acc-hero-actions .ghost{display:inline-flex;align-items:center;width:auto;padding:10px 16px;font-size:13px;border-radius:12px;text-decoration:none}
.ghost{border:1px solid var(--line);background:#ffffff08;color:#d7e1ee;font:inherit;cursor:pointer}
.ghost:hover{border-color:var(--acc-line);color:#fff}

/* Layout: tabs + panels */
.acc-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:24px;margin-top:24px;align-items:start}
.acc-nav{position:sticky;top:20px;display:grid;gap:4px;padding:8px;border:1px solid var(--line);border-radius:20px;background:var(--card)}
.acc-nav button{display:flex;align-items:center;gap:2px;padding:11px 12px;border:1px solid transparent;border-radius:12px;background:none;color:var(--muted);font:inherit;font-size:14px;text-align:left;cursor:pointer;transition:background .25s,color .25s,border-color .25s}
.acc-nav button:hover{color:#fff;background:#ffffff08}
.acc-nav button[aria-selected=true]{color:#fff;background:var(--acc-soft);border-color:var(--acc-line)}
.acc-nav button[aria-selected=true] .ico{color:var(--acc)}
.acc-panel{animation:acc-panel .35s cubic-bezier(.16,1,.3,1)}
@keyframes acc-panel{from{opacity:0;transform:translateY(8px)}}
.acc-panel h2{margin:0;font-size:26px;letter-spacing:-.5px}
.acc-lead{margin:6px 0 18px;color:var(--muted)}
.acc-lead a{color:var(--acc)}

/* Cards and controls */
.acc-card{display:grid;gap:16px;margin:0 0 16px;padding:24px;border:1px solid var(--line);border-radius:22px;background:var(--card);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.acc-card h3{margin:0;font-size:18px}
.acc-card-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}
.acc-card.unavailable{opacity:.55}
.acc-card .acc-unavailable{margin:0;padding:10px 12px;border-radius:12px;border:1px dashed var(--line);font-size:13px;color:var(--muted)}
.acc-field{display:grid;gap:7px;margin:0;font-size:13px;color:#c3cfdd}
.acc-field input,.acc-field textarea{width:100%;margin:0;padding:12px 14px;border:1px solid #bed1e726;border-radius:12px;background:#07101b80;color:#f1f5fa;font:inherit;font-size:15px;resize:vertical;transition:border-color .2s,box-shadow .2s}
.acc-field input:focus,.acc-field textarea:focus{outline:none;border-color:var(--acc-line);box-shadow:0 0 0 3px var(--acc-soft)}
.acc-field input[readonly]{color:var(--muted)}
.acc-field input[type=range]{padding:0;accent-color:var(--acc)}
.acc-label{margin:0 0 8px;font-size:13px;color:#c3cfdd;padding:0}
.acc-hint{font-size:12px;line-height:1.5;color:var(--muted);margin:0}
.acc-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.acc-row.end{justify-content:flex-end}
.acc-grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:end}
.acc-grid2>.acc-btn{justify-self:start}
.acc-stack{display:grid;gap:14px}
.acc-btn{display:inline-flex;align-items:center;justify-content:center;gap:0;padding:11px 16px;border:1px solid var(--acc-line);border-radius:12px;background:var(--acc-soft);color:#fff;font:inherit;font-size:14px;cursor:pointer;text-decoration:none;transition:background .2s,border-color .2s,transform .15s}
.acc-btn:hover{background:color-mix(in srgb,var(--acc) 22%,transparent)}
.acc-btn:active{transform:scale(.97)}
.acc-btn.ghost{background:#ffffff06;border-color:var(--line);color:#d7e1ee}
.acc-btn.primary{background:var(--acc);border-color:var(--acc);color:#141225;font-weight:600}
.acc-btn.danger{background:#f7a8ad14;border-color:#f7a8ad55;color:#f7a8ad}
.acc-btn:disabled{opacity:.45;cursor:not-allowed}
.acc-kv{display:flex;flex-wrap:wrap;gap:10px;margin:0;color:var(--muted)}
.acc-kv b{color:#fff;font-weight:500;overflow-wrap:anywhere}
.acc-copy{display:flex;gap:8px}
.acc-copy input{flex:1;min-width:0;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:#07101b80;color:#d7e1ee;font:inherit;font-size:14px}

/* Avatar editor and swatches */
.acc-avatar-editor{display:flex;gap:20px;align-items:flex-start}
.acc-swatches{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 0;padding:0;border:0}
.acc-swatches label{position:relative;cursor:pointer}
.acc-swatches input,.acc-choice-grid input{position:absolute;opacity:0;pointer-events:none}
.acc-swatches span{display:block;width:30px;height:30px;border-radius:50%;box-shadow:0 0 0 2px #0a0c1d;transition:box-shadow .2s,transform .2s}
.acc-swatches input:checked+span{box-shadow:0 0 0 2px #0a0c1d,0 0 0 4px var(--acc)}
.acc-swatches input:focus-visible+span,.acc-choice-grid input:focus-visible+span{outline:2px solid var(--acc);outline-offset:3px}
.acc-choice-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;margin:0;padding:0;border:0}
.acc-choice-grid legend{margin-bottom:10px}
.acc-choice-grid label{position:relative;cursor:pointer}
.acc-choice-grid span{display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:14px;font-size:13px;color:#d7e1ee;transition:border-color .2s,background .2s}
.acc-choice-grid span::before{content:'';display:block;height:34px;border-radius:9px;background:var(--swatch)}
.covers span::before{height:56px}
.acc-choice-grid input:checked+span{border-color:var(--acc);background:var(--acc-soft)}

/* Switches */
.acc-toggle-row{display:grid;gap:4px}
.acc-switch{display:inline-flex;align-items:center;gap:12px;font-size:15px;cursor:pointer;width:max-content;max-width:100%}
.acc-switch input{position:absolute;opacity:0;pointer-events:none}
.acc-switch-ui{position:relative;flex:none;width:44px;height:26px;border-radius:999px;background:#ffffff14;border:1px solid var(--line);transition:background .25s,border-color .25s}
.acc-switch-ui::after{content:'';position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#d7e1ee;transition:transform .3s cubic-bezier(.16,1,.3,1),background .25s}
.acc-switch input:checked+.acc-switch-ui{background:var(--acc-soft);border-color:var(--acc)}
.acc-switch input:checked+.acc-switch-ui::after{transform:translateX(18px);background:var(--acc)}
.acc-switch input:focus-visible+.acc-switch-ui{outline:2px solid var(--acc);outline-offset:3px}
.acc-switch input:disabled+.acc-switch-ui{opacity:.6}

/* Lists: sessions, events, orders */
.acc-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}
.acc-list li{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:14px;border:1px solid var(--line);border-radius:14px;background:#ffffff04}
.acc-list.compact li{padding:10px 12px}
.acc-list strong{display:block;font-size:14px;font-weight:500}
.acc-list small{display:block;margin-top:3px;font-size:12px;color:var(--muted)}
.acc-list .empty{justify-content:center;color:var(--muted);font-size:14px}
.acc-segment{display:inline-flex;padding:4px;gap:4px;border-radius:12px;border:1px solid var(--line);background:#0003;width:max-content}
.acc-segment button{padding:9px 18px;border:0;border-radius:9px;background:none;color:var(--muted);font:inherit;cursor:pointer}
.acc-segment button[aria-pressed=true]{background:var(--acc-soft);color:#fff;box-shadow:inset 0 0 0 1px var(--acc-line)}
.acc-segment button:disabled{cursor:not-allowed}
.acc-devices{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.acc-devices .device-row{padding:14px;border:1px solid var(--line);border-radius:14px;background:#ffffff04}
.acc-devices strong{display:block}.acc-devices small{display:block;margin-top:4px;color:var(--muted);overflow-wrap:anywhere}
.acc-discount{border-style:dashed;border-color:var(--acc-line)}
.acc-discount p{margin:0;color:var(--muted)}
.acc-discount b{font-size:28px;color:var(--acc)}
.acc-danger{border-color:#f7a8ad33}
.acc-strength{display:grid;gap:6px;font-size:12px;color:var(--muted)}
.acc-strength .acc-meter-track{margin:0}
#email-slots{margin:4px 0 12px}

/* Save bar and toast */
.acc-savebar{position:fixed;left:50%;bottom:20px;z-index:20;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;width:min(640px,calc(100% - 32px));padding:12px 12px 12px 18px;translate:-50% 0;border:1px solid var(--acc-line);border-radius:18px;background:#0f1028f0;box-shadow:0 18px 50px #0009;backdrop-filter:blur(16px);animation:acc-bar .4s cubic-bezier(.16,1,.3,1)}
.acc-savebar span{display:inline-flex;align-items:center;font-size:14px}
.acc-savebar .ico{color:var(--acc)}
@keyframes acc-bar{from{opacity:0;translate:-50% 20px}}
.acc-toast{position:fixed;right:20px;bottom:20px;z-index:21;max-width:min(380px,calc(100% - 40px));margin:0;padding:12px 16px;border-radius:14px;border:1px solid var(--line);background:#0f1028f2;color:#e8edf6;font-size:14px;box-shadow:0 12px 40px #0008;opacity:0;translate:0 10px;pointer-events:none;transition:opacity .3s,translate .3s}
.acc-toast.show{opacity:1;translate:0 0}
.acc-toast.error{border-color:#f7a8ad55;color:#f7c2c6}
.account:has(.acc-savebar:not([hidden])) .acc-toast{bottom:96px}

/* Dialogs */
.acc-dialog{width:min(480px,calc(100% - 32px));padding:26px;border:1px solid #d7e1ee24;border-radius:24px;background:linear-gradient(150deg,#1b1c3f,#0b0d20);color:#e8edf6;box-shadow:0 30px 90px #000a}
.acc-dialog::backdrop{background:#02030acc;backdrop-filter:blur(8px)}
.acc-dialog h2{margin:0 0 6px;font-size:22px}
#avatar-canvas{display:block;width:100%;max-width:280px;aspect-ratio:1;margin:16px auto;border-radius:20px;background:#07101b;cursor:grab;touch-action:none}
#avatar-canvas:active{cursor:grabbing}
#avatar-canvas:focus-visible{outline:2px solid #e9d3a1;outline-offset:3px}
.acc-dialog .acc-field{margin-bottom:16px}

/* Public profile card */
.public-card{position:relative;max-width:520px;margin:0 auto;padding:110px 32px 32px;border:1px solid #d7e1ee1c;border-radius:28px;background:linear-gradient(150deg,#1b1d3f8c,#0a0c1dcc);text-align:center;overflow:hidden;--acc-line:#e9d3a140}
.public-card>*:not(.acc-cover){position:relative}
.public-card .acc-avatar{margin:0 auto 14px}
.public-card .acc-role{color:#e9d3a1}
.public-card h1{margin:0}
.public-card .acc-handle{justify-content:center}
.public-card .acc-bio{margin:12px auto 0}
.public-card .primary{display:inline-block;width:auto;margin-top:22px;padding:12px 20px}

@media(max-width:900px){
.acc-hero{grid-template-columns:auto 1fr;padding:90px 22px 22px}
.acc-hero-side{grid-column:1/-1;justify-items:stretch}
.acc-meter{width:auto}
.acc-hero-actions{justify-content:flex-start}
.acc-layout{grid-template-columns:1fr}
.acc-nav{position:static;display:flex;overflow-x:auto;scrollbar-width:none;padding:6px}
.acc-nav button{flex:none}
}
@media(max-width:600px){
.acc-hero{grid-template-columns:1fr;text-align:left}
.acc-avatar-xl{width:84px;height:84px;font-size:32px}
.acc-grid2,.acc-devices{grid-template-columns:1fr}
.acc-avatar-editor{flex-direction:column}
.acc-card{padding:18px}
}
@media(prefers-reduced-motion:reduce){.account,.acc-panel,.acc-savebar{animation:none}.acc-switch-ui::after,.acc-meter-track i{transition:none}}

/* No backdrop blur over the animated starfield (it re-blurs every frame on 4K) */
.acc-card,.acc-hero,.acc-nav,.public-card{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:linear-gradient(150deg,#1a1c3df2,#0b0d20f7)}
