.dash-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.8rem;gap:1rem;flex-wrap:wrap}
.dash-head>div{min-width:0}
.dash-head>div:first-child{flex:1 1 320px}
.dash-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:.6rem;flex:1 1 360px;min-width:0;max-width:100%;flex-wrap:wrap}
.dash-head-actions> *{min-width:0}
.dash-head-actions .btn{flex:0 1 auto;max-width:100%;min-width:44px}
.dash-head h1{font-size:1.8rem;font-weight:800}
.dash-head .sub{color:var(--muted);margin-top:.3rem}
.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1rem;margin-bottom:1.8rem}
.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);padding:1.3rem;position:relative;overflow:hidden;transition:all .25s}
.stat-card:hover{border-color:var(--border-l);transform:translateY(-2px)}
.stat-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--gradient);opacity:0;transition:opacity .25s}
.stat-card:hover::before{opacity:1}
.stat-card .sc-icon{width:42px;height:42px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;margin-bottom:.8rem}
.sc-icon.purple{background:var(--primary-soft)}.sc-icon.green{background:var(--success-soft)}
.sc-icon.amber{background:var(--warning-soft)}.sc-icon.rose{background:var(--danger-soft)}
.stat-card .sc-value{font-size:1.7rem;font-weight:800}
.stat-card .sc-label{font-size:.73rem;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-top:.2rem}
.token-hero{background:var(--gradient);border-radius:var(--r);padding:1.6rem;color:#fff;position:relative;overflow:hidden;margin-bottom:1.2rem}
.token-hero::after{content:'';position:absolute;right:-10px;bottom:-20px;font-size:7rem;opacity:.15;transform:rotate(-15deg)}
.token-hero .th-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;opacity:.85}
.token-hero .th-value{font-size:clamp(1.8rem,5vw,2.6rem);font-weight:800;margin:.2rem 0}
.token-hero .th-sub{font-size:.8rem;opacity:.85}
.token-hero .th-btn{margin-top:1rem;display:inline-flex;align-items:center;gap:.4rem;background:rgba(255,255,255,.2);padding:.55rem 1.2rem;border-radius:var(--r-sm);color:#fff;text-decoration:none;font-weight:700;font-size:.85rem;border:1px solid rgba(255,255,255,.25);transition:all .2s}
.token-hero .th-btn:hover{background:rgba(255,255,255,.3);transform:translateY(-1px)}
.qa-list{display:flex;flex-direction:column;gap:.6rem}
.proj-item{display:flex;align-items:center;gap:.9rem;padding:.85rem;border-radius:var(--r-sm);border:1px solid var(--border);background:var(--surface2);margin-bottom:.6rem;transition:all .2s}
.proj-item:hover{border-color:var(--primary);transform:translateX(3px)}
.proj-item .pi-info{flex:1;min-width:0}
.proj-item .pi-name{font-weight:700;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.proj-item .pi-meta{font-size:.72rem;color:var(--muted)}
.pi-status{font-size:.68rem;font-weight:700;padding:.2rem .6rem;border-radius:100px;background:var(--success-soft);color:var(--success)}
.pi-status.pi-generating{background:var(--surface3);color:var(--text2)}
.pi-status.pi-failed{background:var(--danger-soft,rgba(220,38,38,.12));color:var(--danger)}
.pi-status.pi-draft{background:var(--surface3);color:var(--muted)}
.proj-item .pi-spinner{width:12px;height:12px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;display:inline-block;vertical-align:-2px;margin-right:.25rem;animation:pi-spin .7s linear infinite}
@keyframes pi-spin{to{transform:rotate(360deg)}}
.table-wrap{overflow-x:auto}
.tx-table{width:100%;border-collapse:collapse;min-width:560px}
.tx-table th{text-align:left;font-size:.68rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-weight:700;padding:.5rem .6rem;border-bottom:1px solid var(--border)}
.tx-table td{padding:.7rem .6rem;font-size:.85rem;border-bottom:1px solid var(--border)}
.tx-table tr:last-child td{border-bottom:none}
.tx-table .amt{font-weight:700;font-family:var(--mono)}
.tx-table .amt.pos{color:var(--success)}.tx-table .amt.neg{color:var(--danger)}
.tx-badge{display:inline-flex;align-items:center;gap:.3rem;font-size:.72rem;font-weight:600;padding:.15rem .55rem;border-radius:100px;background:var(--surface3);color:var(--text2);white-space:nowrap}

.section-title-wrap{display:flex;align-items:center;gap:.8rem;min-width:0}.section-title-wrap>div{min-width:0}.card-kicker{margin:.18rem 0 0;color:var(--muted);font-size:.72rem;line-height:1.4}.sticker{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:11px;background:var(--primary-soft);border:1px solid var(--border);font-size:1.05rem;flex:0 0 auto}
