/* ============ DASHBOARD · NetZero Terminal ============ */
.wrap-wide{width:min(1400px,calc(100% - 40px));margin-inline:auto}
.dash-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:26px}
.dash-title{font-family:var(--f-display);font-size:clamp(1.9rem,3.6vw,2.9rem);text-transform:uppercase;letter-spacing:.04em}
.dash-meta{display:flex;align-items:center;gap:16px;flex-wrap:wrap;font-size:.72rem;letter-spacing:.14em}
.dash-clock{color:var(--cyan);font-size:.95rem;letter-spacing:.18em;text-shadow:0 0 12px rgba(0,210,211,.5)}
.dash-kpis{margin-bottom:22px}
.dash-tabs{margin-bottom:22px}

.dpanel{display:flex;flex-direction:column;gap:18px;animation:panelIn .5s var(--ease)}
.dpanel.hidden{display:none}
@keyframes panelIn{from{opacity:0;transform:translateY(14px)}}

.dgrid-2-1{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:18px}
.dgrid-1-2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.7fr);gap:18px}
@media(max-width:1020px){.dgrid-2-1,.dgrid-1-2{grid-template-columns:1fr}}

.dcard{position:relative;border-radius:var(--r-md);border:1px solid var(--line-2);background:linear-gradient(155deg,rgba(13,22,19,.72),rgba(7,11,10,.88));padding:20px 22px;backdrop-filter:blur(10px)}
.dcard-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px;flex-wrap:wrap}
.dcard-head h3{font-size:1.02rem;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-2);font-weight:600}
.legend{display:flex;gap:8px;flex-wrap:wrap}
.legend .chip{padding:4px 11px;font-size:.66rem}
.center-legend{justify-content:center;margin-top:12px}
.center-col{display:flex;flex-direction:column}
.ch-lg{width:100%;height:300px}
.ch-md{width:100%;height:260px}
.ch-donut{width:100%;height:240px}
.ch-gauge{width:100%;height:210px}

/* feeds */
.dfeed{height:300px;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;font-size:.76rem;line-height:2.1}
.dfeed div{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:0;transform:translateY(8px);animation:feedIn .5s var(--ease) forwards}
.dfeed .ft{color:var(--ink-4);margin-right:9px}
.dfeed .up{color:var(--neon)}.dfeed .down{color:var(--crit)}
@keyframes feedIn{to{opacity:1;transform:none}}

/* system insight rows */
.sys-rows{display:flex;flex-direction:column;gap:18px;font-size:.78rem}
.sys-rows>div{display:grid;grid-template-columns:1fr auto;gap:6px 12px;align-items:center;color:var(--ink-3)}
.sys-rows b{color:var(--cloud);font-weight:500}
.sys-rows .pbar{grid-column:1/-1}

/* farmer */
.farmer-profile .fp-top{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.fp-top h3{font-size:1.25rem;letter-spacing:.03em}
.fp-top .badge{margin-left:auto}
.fp-avatar{width:54px;height:54px;border-radius:14px;display:grid;place-items:center;font-size:1.1rem;color:var(--neon);background:rgba(57,255,20,.08);border:1px solid rgba(57,255,20,.35)}
.fp-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}
.fp-stats>div{display:flex;flex-direction:column;gap:3px;padding:12px 14px;border-radius:11px;background:rgba(248,249,250,.04);border:1px solid var(--line-2)}
.fp-stats span{font-family:var(--f-mono);font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3)}
.fp-stats b{font-size:1.15rem;color:var(--cloud)}
.fp-wallet{padding:16px;border-radius:12px;border:1px solid rgba(57,255,20,.25);background:linear-gradient(135deg,rgba(57,255,20,.07),rgba(0,210,211,.04))}
.fp-bal{font-family:var(--f-display);font-size:1.9rem;margin:6px 0 12px;color:var(--cloud)}
.tree-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.tree-ph{position:relative;aspect-ratio:1.5;border-radius:12px;overflow:hidden;border:1px solid var(--line-2);padding:10px;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;
  background:
    radial-gradient(60% 70% at 30% 20%,hsl(var(--h1) 65% 22% / .9),transparent 70%),
    radial-gradient(70% 60% at 75% 70%,hsl(var(--h2) 60% 16% / .9),transparent 72%),
    linear-gradient(160deg,#0c1a12,#07100b)}
.tree-ph::after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(0,210,211,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(0,210,211,.08) 1px,transparent 1px);background-size:22px 22px;opacity:.5}
.tree-ph p{font-size:.6rem;letter-spacing:.16em;color:var(--ink-2);z-index:1}
.tree-ph .badge{z-index:1}

/* corporate */
.check-list{list-style:none;display:flex;flex-direction:column;gap:13px}
.check-list li{position:relative;padding-left:34px;color:var(--ink-2);font-size:.92rem}
.check-list li::before{content:"";position:absolute;left:0;top:2px;width:20px;height:20px;border-radius:7px;border:1px solid var(--line-2);background:rgba(248,249,250,.04)}
.check-list li.done::before{border-color:rgba(57,255,20,.5);background:rgba(57,255,20,.1)}
.check-list li.done::after{content:"";position:absolute;left:5px;top:7px;width:10px;height:6px;border-left:2px solid var(--neon);border-bottom:2px solid var(--neon);transform:rotate(-45deg)}
.cert-card .cert-strip{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px;padding:12px 14px;border-radius:10px;background:rgba(0,210,211,.06);border:1px dashed rgba(0,210,211,.3);font-size:.72rem;color:var(--ink-2);letter-spacing:.06em}

/* verification pipeline */
.pipe{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.pipe-step{position:relative;padding:16px 14px;border-radius:12px;border:1px solid var(--line-2);background:rgba(248,249,250,.03)}
.pipe-step b{display:block;font-family:var(--f-head);font-size:.9rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2)}
.pipe-step span{font-family:var(--f-mono);font-size:.62rem;letter-spacing:.1em;color:var(--ink-4)}
.pipe-step.done{border-color:rgba(0,210,211,.35);background:rgba(0,210,211,.06)}
.pipe-step.done b{color:var(--cyan)}
.pipe-step.active{border-color:rgba(57,255,20,.5);background:rgba(57,255,20,.07);box-shadow:0 0 24px rgba(57,255,20,.1)}
.pipe-step.active b{color:var(--neon)}
.pipe-step.active::after{content:"";position:absolute;top:10px;right:10px;width:7px;height:7px;border-radius:50%;background:var(--neon);box-shadow:0 0 10px var(--neon);animation:ping 1.6s infinite}
@media(max-width:900px){.pipe{grid-template-columns:1fr 1fr}}

/* ai risk */
.risk-rows{display:flex;flex-direction:column;gap:12px;margin-top:14px;font-size:.76rem}
.risk-rows>div{display:flex;justify-content:space-between;gap:10px;color:var(--ink-3);border-bottom:1px dashed rgba(248,249,250,.08);padding-bottom:9px}
.risk-rows b{font-weight:500}

/* saas */
.plan-usage{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.plan-usage>div{display:flex;flex-direction:column;gap:9px}
.plan-usage p{font-size:.66rem;letter-spacing:.14em}
@media(max-width:760px){.plan-usage{grid-template-columns:1fr}}
