/* ============ AUTH + DASHBOARD STYLES ============ */

/* ===== AUTH PAGES ===== */
.auth-page{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}
.auth-brand{background:radial-gradient(ellipse 60% 50% at 30% 20%,rgba(99,102,241,.22),transparent),radial-gradient(ellipse 40% 40% at 80% 80%,rgba(168,85,247,.16),transparent),var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;justify-content:center;padding:60px}
.auth-brand h2{font-size:clamp(28px,3.5vw,40px);margin:20px 0 14px;max-width:440px}
.auth-brand h2 span{background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.auth-brand>p{color:var(--muted);max-width:400px;margin-bottom:28px}
.auth-feats li{display:flex;gap:12px;align-items:center;margin-bottom:14px;font-size:14.5px}
.auth-feats i{color:var(--green);width:18px;text-align:center}
.auth-stats{display:flex;gap:44px;margin-top:38px}
.auth-stats b{font-family:var(--font-head);font-size:24px;display:block}
.auth-stats span{color:var(--muted);font-size:12.5px}
.auth-form-col{display:flex;align-items:center;justify-content:center;padding:40px 24px}
.auth-card{width:100%;max-width:420px}
.auth-card .logo{display:none;margin-bottom:30px}
.auth-card h1{font-size:28px;margin-bottom:8px}
.auth-card .sub{color:var(--muted);font-size:14.5px;margin-bottom:28px}
.auth-card form{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:30px}
.field{margin-bottom:18px}
.field label{display:block;font-size:13px;font-weight:600;margin-bottom:8px}
.field label span{color:#f87171}
.input-wrap{position:relative}
.input-wrap>i:first-child{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:14px}
.input-wrap input{width:100%;background:var(--surface-2);border:1px solid var(--border);color:var(--text);padding:13px 42px 13px 40px;border-radius:var(--radius-sm);font-size:14.5px;outline:none;font-family:var(--font-body);transition:.2s}
.input-wrap input:focus{border-color:var(--primary)}
.pw-toggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--muted);width:36px;height:36px;cursor:pointer;border-radius:8px;transition:.2s}
.pw-toggle:hover{color:var(--text);background:rgba(255,255,255,.06)}
.f-error{color:#f87171;font-size:12.5px;margin-top:6px;display:none}
.f-error.show{display:block}
.auth-submit{width:100%;justify-content:center;padding:14px;margin-top:6px;font-size:15px}
.auth-alt{text-align:center;font-size:14px;color:var(--muted);margin-top:20px}
.auth-alt a{color:var(--primary);font-weight:600}
.demo-cred{display:flex;gap:12px;background:rgba(99,102,241,.08);border:1px solid rgba(99,102,241,.3);border-radius:var(--radius-sm);padding:13px 16px;font-size:13px;color:#a5b4fc;margin-top:20px;line-height:1.7}
.demo-cred i{margin-top:4px;flex-shrink:0}
.strength{margin-top:10px}
.s-bar{height:5px;background:var(--surface-2);border-radius:99px;overflow:hidden}
.s-fill{height:100%;width:0;border-radius:99px;transition:.3s;background:#f87171}
.s-text{font-size:12px;color:var(--muted);margin-top:6px;display:block}
.terms{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--muted);margin:2px 0 10px}
.terms input{margin-top:3px;accent-color:var(--primary)}
.terms a{color:var(--primary)}

/* ===== NAV (logged-in state) ===== */
.balance-chip{display:inline-flex;align-items:center;gap:7px;background:rgba(34,197,94,.1);border:1px solid rgba(34,197,94,.3);color:var(--green);font-weight:700;font-size:13px;padding:9px 14px;border-radius:99px;font-family:var(--font-head)}
.balance-chip i{font-size:11px}
.user-chip b{max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* ============ SOCIALMART — PREMIUM AUTH + DASHBOARD ============ */

/* ===== PREMIUM SPLIT-SCREEN AUTH ===== */
.auth-page{display:grid;grid-template-columns:1.1fr 1fr;min-height:100vh}
.auth-show{position:relative;overflow:hidden;background:var(--bg);display:flex;flex-direction:column;justify-content:center;padding:64px 56px;border-right:1px solid var(--border)}
.auth-show::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(148,163,184,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(148,163,184,.05) 1px,transparent 1px);background-size:44px 44px;pointer-events:none}
.orb{position:absolute;border-radius:50%;filter:blur(90px);opacity:.35;animation:orbFloat 9s ease-in-out infinite;pointer-events:none}
.orb-1{width:420px;height:420px;background:#6366f1;top:-120px;left:-120px}
.orb-2{width:320px;height:320px;background:#a855f7;bottom:-100px;right:-80px;animation-delay:2.5s}
.orb-3{width:220px;height:220px;background:#22c55e;bottom:22%;left:8%;opacity:.14;animation-delay:5s}
@keyframes orbFloat{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(34px,-28px) scale(1.06)}}
.auth-inner{position:relative;z-index:3}
.auth-inner h2{font-size:clamp(30px,3.4vw,42px);margin:22px 0 14px;max-width:460px}
.auth-inner h2 span{background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.auth-inner>p{color:var(--muted);max-width:420px;margin-bottom:26px}
.auth-feats li{display:flex;gap:13px;align-items:center;margin-bottom:15px;font-size:14.5px}
.auth-feats i{color:var(--green);width:18px;text-align:center}
.auth-stats{display:flex;gap:38px;margin-top:32px}
.auth-stats b{font-family:var(--font-head);font-size:26px;display:block}
.auth-stats span{color:var(--muted);font-size:12.5px}

/* floating glassmorphic order cards */
.float-cards{position:absolute;right:48px;top:16%;z-index:3;display:flex;flex-direction:column;gap:14px}
.f-card{background:rgba(17,26,46,.78);backdrop-filter:blur(14px);border:1px solid rgba(148,163,184,.22);border-radius:14px;padding:13px 16px;display:flex;gap:12px;align-items:center;min-width:252px;animation:cardFloat 7s ease-in-out infinite;box-shadow:0 14px 34px rgba(0,0,0,.4)}
.f-card:nth-child(2){animation-delay:2.3s;margin-right:34px}
.f-card:nth-child(3){animation-delay:4.6s}
@keyframes cardFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
.f-ico{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;font-size:15px;flex-shrink:0}
.f-ico.ok{background:rgba(34,197,94,.15);color:var(--green)}
.f-ico.pur{background:rgba(139,92,246,.15);color:#a78bfa}
.f-ico.gold{background:rgba(245,181,46,.15);color:var(--gold)}
.f-card b{display:block;font-size:13px}
.f-card span{font-size:11.5px;color:var(--muted)}

/* testimonial */
.auth-quote{margin-top:34px;border-left:3px solid var(--primary);padding-left:18px;max-width:400px;position:relative;z-index:3}
.auth-quote p{font-size:14.5px;font-style:italic;line-height:1.7}
.auth-quote span{color:var(--muted);font-size:12.5px;display:block;margin-top:8px}

/* RIGHT form panel */
.auth-panel{display:flex;align-items:center;justify-content:center;padding:48px 32px;background:radial-gradient(ellipse 60% 30% at 50% 0%,rgba(99,102,241,.07),transparent),var(--bg)}
.auth-card{width:100%;max-width:440px}
.auth-head{display:flex;align-items:center;gap:16px;margin-bottom:24px}
.auth-head .p-ico{width:52px;height:52px;font-size:20px;background:var(--grad);border:none}
.auth-head h1{font-size:26px}
.auth-head span{font-size:12.5px;color:var(--muted);display:block}
.auth-form{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:32px;box-shadow:0 24px 60px rgba(0,0,0,.45)}
.field{margin-bottom:17px}
.field label{display:block;font-size:13px;font-weight:600;margin-bottom:8px}
.field label span{color:#f87171}
.input-wrap{position:relative}
.input-wrap>i:first-child{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:14px}
.input-wrap input{width:100%;background:var(--surface-2);border:1px solid var(--border);color:var(--text);padding:13px 42px 13px 40px;border-radius:11px;font-size:14.5px;outline:none;font-family:var(--font-body);transition:.25s}
.input-wrap input:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(99,102,241,.15)}
.pw-toggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--muted);width:36px;height:36px;cursor:pointer;border-radius:8px;transition:.2s}
.pw-toggle:hover{color:var(--text);background:rgba(255,255,255,.06)}
.f-error{color:#f87171;font-size:12.5px;margin-top:6px;display:none}
.f-error.show{display:block}
.auth-row{display:flex;justify-content:space-between;align-items:center;margin:4px 0 16px;font-size:13px}
.auth-row label{display:flex;gap:8px;align-items:center;color:var(--muted);cursor:pointer}
.auth-row input{accent-color:var(--primary)}
.auth-row a{color:var(--primary);font-weight:600}
.auth-submit{width:100%;justify-content:center;padding:14px;margin-top:4px;font-size:15px}
.auth-alt{text-align:center;font-size:14px;color:var(--muted);margin-top:18px}
.auth-alt a{color:var(--primary);font-weight:600}
.demo-cred{display:flex;gap:12px;background:rgba(99,102,241,.08);border:1px solid rgba(99,102,241,.3);border-radius:11px;padding:13px 16px;font-size:12.5px;color:#a5b4fc;margin-top:18px;line-height:1.7}
.demo-cred i{margin-top:3px;flex-shrink:0}
.strength{margin-top:10px}
.s-bar{height:5px;background:var(--surface-2);border-radius:99px;overflow:hidden}
.s-fill{height:100%;width:0;border-radius:99px;transition:.3s}
.s-text{font-size:12px;color:var(--muted);margin-top:6px;display:block}
.terms{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--muted);margin:2px 0 8px}
.terms input{margin-top:3px;accent-color:var(--primary)}
.terms a{color:var(--primary)}
.auth-avatars{display:flex;align-items:center;gap:14px;margin-top:22px}
.av-stack{display:flex}
.av{width:32px;height:32px;border-radius:50%;border:2px solid var(--bg);display:grid;place-items:center;font-size:12px;font-weight:700;color:#fff;margin-left:-8px}
.av:first-child{margin-left:0}
.auth-avatars span{font-size:12.5px;color:var(--muted)}
.auth-avatars b{color:var(--text)}

/* ===== NAV (logged-in) ===== */
.balance-chip{display:inline-flex;align-items:center;gap:7px;background:rgba(34,197,94,.1);border:1px solid rgba(34,197,94,.3);color:var(--green);font-weight:700;font-size:13px;padding:9px 14px;border-radius:99px;font-family:var(--font-head)}
.balance-chip i{font-size:11px}
.user-chip b{max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* ===== DASHBOARD ===== */
.dash-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:10px 0 24px}
.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:22px;transition:.25s}
.stat-card:hover{border-color:var(--border-hover);transform:translateY(-3px)}
.sc-ico{width:42px;height:42px;border-radius:11px;display:grid;place-items:center;font-size:16px;margin-bottom:14px}
.sc-ico.bal{background:rgba(34,197,94,.12);color:var(--green)}
.sc-ico.ord{background:rgba(99,102,241,.15);color:#a5b4fc}
.sc-ico.done{background:rgba(168,85,247,.15);color:#c4b5fd}
.sc-ico.spent{background:rgba(245,181,46,.12);color:var(--gold)}
.stat-card h3{font-size:26px;font-family:var(--font-head)}
.stat-card span{color:var(--muted);font-size:13px}
.dash-layout{display:grid;grid-template-columns:1fr 1.6fr;gap:22px;align-items:start}
.profile-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:26px;text-align:center}
.avatar{width:76px;height:76px;border-radius:50%;background:var(--grad);display:grid;place-items:center;font-size:30px;font-weight:700;font-family:var(--font-head);color:#fff;margin:0 auto 14px}
.profile-card h4{font-size:18px}
.pmail{color:var(--muted);font-size:13.5px;margin:4px 0 14px}
.role-badge{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:700;padding:5px 13px;border-radius:99px;background:rgba(99,102,241,.15);color:#a5b4fc}
.p-meta-row{display:flex;justify-content:space-between;font-size:13.5px;color:var(--muted);padding:11px 0;border-top:1px solid var(--border)}
.p-meta-row b{color:var(--text)}
.fund-box{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:24px;margin-top:20px}
.fund-box h4{font-size:16px;margin-bottom:14px}
.quick-funds{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px}
.qf{background:var(--surface-2);border:1px solid var(--border);color:var(--text);padding:11px 0;border-radius:10px;font-weight:700;font-size:14px;cursor:pointer;font-family:var(--font-head);transition:.2s}
.qf:hover{border-color:var(--border-hover)}
.qf.active{background:var(--grad);border-color:transparent;color:#fff}
.fund-row{display:flex;gap:10px}
.fund-row input{flex:1;background:var(--surface-2);border:1px solid var(--border);color:var(--text);padding:11px 14px;border-radius:10px;font-size:14px;outline:none;font-family:var(--font-body);min-width:0}
.fund-row input:focus{border-color:var(--primary)}
.fund-note{font-size:12px;color:var(--muted);margin-top:10px}
.dash-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:24px;margin-bottom:20px}
.dash-panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:10px}
.dash-panel-head h3{font-size:17px}
.dash-panel-head a{font-size:13px;color:var(--primary);font-weight:600}
.tx-row{display:flex;align-items:center;gap:13px;padding:13px 0;border-top:1px solid var(--border);font-size:13.5px}
.tx-ico{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;font-size:13px;flex-shrink:0}
.tx-ico.plus{background:rgba(34,197,94,.12);color:var(--green)}
.tx-ico.minus{background:rgba(239,68,68,.12);color:#f87171}
.tx-main{flex:1;min-width:0}
.tx-main b{display:block;font-size:13.5px}
.tx-main span{color:var(--muted);font-size:12px}
.tx-amt{font-family:var(--font-head);font-weight:700}
.tx-amt.plus{color:var(--green)}
.tx-amt.minus{color:#f87171}
.dash-logout{width:100%;justify-content:center;margin-top:18px}

/* ===== RESPONSIVE ===== */
@media(max-width:1024px){.float-cards{display:none}.auth-quote{display:none}}
@media(max-width:900px){
  .auth-page{grid-template-columns:1fr}
  .auth-show{padding:36px 28px;border-right:none;border-bottom:1px solid var(--border)}
  .auth-inner h2{font-size:26px}
  .auth-stats{gap:26px}
}


/* ===== AUTH (simple centered card) ===== */
.auth-body{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(ellipse 55% 40% at 50% 0%,rgba(99,102,241,.13),transparent),var(--bg)}
.auth-wrap{width:100%;max-width:420px}
.auth-logo{justify-content:center;margin-bottom:30px;font-size:23px}
.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:34px;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.auth-card h1{font-size:25px;margin-bottom:6px;text-align:center}
.auth-card .sub{color:var(--muted);font-size:14px;margin-bottom:26px;text-align:center}
.field{margin-bottom:16px}
.field label{display:block;font-size:13px;font-weight:600;margin-bottom:8px}
.field label span{color:#f87171}
.input-wrap{position:relative}
.input-wrap>i:first-child{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:14px}
.input-wrap input{width:100%;background:var(--surface-2);border:1px solid var(--border);color:var(--text);padding:13px 42px 13px 40px;border-radius:10px;font-size:14.5px;outline:none;font-family:var(--font-body);transition:.2s}
.input-wrap input:focus{border-color:var(--primary)}
.pw-toggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--muted);width:36px;height:36px;cursor:pointer;border-radius:8px}
.pw-toggle:hover{color:var(--text)}
.f-error{color:#f87171;font-size:12.5px;margin-top:6px;display:none}
.f-error.show{display:block}
.auth-submit{width:100%;justify-content:center;padding:14px;margin-top:8px;font-size:15px}
.auth-alt{text-align:center;font-size:14px;color:var(--muted);margin-top:20px}
.auth-alt a{color:var(--primary);font-weight:600}
.demo-cred{display:flex;gap:12px;background:rgba(99,102,241,.08);border:1px solid rgba(99,102,241,.3);border-radius:10px;padding:13px 16px;font-size:12.5px;color:#a5b4fc;margin-top:20px;line-height:1.7}
.demo-cred i{margin-top:3px;flex-shrink:0}
.strength{margin-top:10px}
.s-bar{height:5px;background:var(--surface-2);border-radius:99px;overflow:hidden}
.s-fill{height:100%;width:0;border-radius:99px;transition:.3s}
.s-text{font-size:12px;color:var(--muted);margin-top:6px;display:block}
.terms{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--muted);margin:2px 0 8px}
.terms input{margin-top:3px;accent-color:var(--primary)}
.terms a{color:var(--primary)}
.auth-back{text-align:center;margin-top:22px;font-size:13.5px}
.auth-back a{color:var(--muted)}
.auth-back a:hover{color:var(--primary)}

/* ===== NAV (logged-in) ===== */
.balance-chip{display:inline-flex;align-items:center;gap:7px;background:rgba(34,197,94,.1);border:1px solid rgba(34,197,94,.3);color:var(--green);font-weight:700;font-size:13px;padding:9px 14px;border-radius:99px;font-family:var(--font-head)}
.balance-chip i{font-size:11px}
.user-chip b{max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

