/* REV Mobile Visual Identity v4 — white surfaces + blue actions.
   Keep primary UI blue and backgrounds white; reserve red/amber for semantic states. */
@font-face{
  font-family:'Vazirmatn';
  src:url('https://mojtabaalimi64-cloud.github.io/rev/Vazirmatn%5Bwght%5D.woff2') format('woff2');
  font-weight:100 900;font-display:swap;
}
:root{
  color-scheme:light;
  --teal:#0e8bd0;          /* primary action blue */
  --teal-dark:#1557D4;     /* pressed / gradient end */
  --teal-deep:#1744A0;     /* deep gradient start */
  --teal-soft:#E9F5FC;     /* icon chips, soft fills */
  --teal-softer:#F3F9FC;   /* hero card wash */
  --ink:#14293b;
  --muted:#7e93a6;
  --line:#e4edf3;
  --bg:#FFFFFF;
  --surface:#ffffff;
  --green:#0e8bd0; --green-soft:#E9F5FC;
  --red:#df5454;   --red-soft:#fdecec;
  --amber:#f0a02c; --amber-soft:#fdf3e0;
  --radius:18px;
  --shadow:0 10px 26px rgba(36,107,253,.10);
  --shadow-sm:0 3px 12px rgba(20,41,59,.06);
}
*{box-sizing:border-box}
html{background:var(--bg)}
body{
  margin:0;background:var(--bg);color:var(--ink);
  font:15px/1.7 'Vazirmatn',Vazir,Tahoma,sans-serif;
  -webkit-font-smoothing:antialiased;
}
a{color:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent}
button{font:inherit;cursor:pointer;touch-action:manipulation}
.wrap{width:min(560px,100% - 32px);margin-inline:auto}

/* ---------- header ---------- */
.app-header{
  position:sticky;top:0;z-index:5;
  background:rgba(255,255,255,.92);backdrop-filter:blur(12px);
  border-bottom:1px solid var(--line);
}
.app-header .top{height:64px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.greet{display:flex;align-items:center;gap:11px;min-width:0}
.greet .hello{font-size:16px;font-weight:850;line-height:1.4}
.greet .sub{font-size:11px;color:var(--muted);margin-top:1px}
.avatar{
  width:42px;height:42px;flex:0 0 42px;border-radius:50%;
  border:2px solid var(--teal-soft);background:var(--teal-softer);
  display:grid;place-items:center;color:var(--teal);overflow:hidden;padding:0;
}
.avatar img{display:block;width:100%;height:100%;object-fit:cover}
.avatar svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.icon-btn{
  width:42px;height:42px;border-radius:50%;border:1px solid var(--line);
  background:#fff;display:grid;place-items:center;color:var(--ink);position:relative;
}
.icon-btn svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.icon-btn .dot{position:absolute;top:9px;left:11px;width:8px;height:8px;border-radius:50%;background:var(--red);border:2px solid #fff}

/* ---------- hero card ---------- */
.hero-card{
  margin-top:18px;padding:22px 18px;border-radius:22px;color:#fff;
  background:linear-gradient(140deg,var(--teal-deep),var(--teal) 60%,#3B82F6);
  box-shadow:var(--shadow);position:relative;overflow:hidden;
}
.hero-card::after{
  content:"";position:absolute;left:-40px;top:-40px;width:170px;height:170px;border-radius:50%;
  background:rgba(255,255,255,.10);
}
.hero-card .bolt{
  width:52px;height:52px;border-radius:16px;background:rgba(255,255,255,.16);
  display:grid;place-items:center;font-size:26px;margin-bottom:12px;
}
.hero-card h1{font-size:21px;margin:0 0 4px;font-weight:900}
.hero-card p{margin:0 0 16px;font-size:12.5px;color:#d9edf4}
.btn-light{
  display:flex;align-items:center;justify-content:center;gap:8px;
  min-height:50px;padding:12px 16px;border-radius:14px;border:0;
  background:#fff;color:var(--teal-deep);font-size:15px;font-weight:850;width:100%;
  box-shadow:0 4px 14px rgba(0,0,0,.12);
}
.btn-light:active{transform:translateY(1px)}
.btn-primary{
  display:flex;align-items:center;justify-content:center;gap:8px;
  min-height:50px;padding:12px 16px;border-radius:14px;border:0;
  background:linear-gradient(135deg,var(--teal),var(--teal-dark));color:#fff;
  font-size:15px;font-weight:850;width:100%;box-shadow:0 6px 16px rgba(36,107,253,.35);
}
.btn-primary:active{transform:translateY(1px);background:var(--teal-dark)}

/* ---------- sections & cards ---------- */
.section{margin-top:24px}
.section-head{display:flex;align-items:center;justify-content:space-between;margin:0 2px 12px}
.section-head h2{font-size:16px;margin:0;font-weight:900}
.section-head a{font-size:12px;color:var(--teal);font-weight:800}
.card{
  background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  box-shadow:var(--shadow-sm);
}
.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.quick-card{
  background:var(--surface);border:1px solid var(--line);border-radius:16px;
  padding:14px 8px;display:flex;flex-direction:column;align-items:center;gap:8px;
  text-align:center;box-shadow:var(--shadow-sm);
}
.quick-card:active{background:var(--teal-softer)}
.quick-card .ico{
  width:46px;height:46px;border-radius:14px;background:var(--teal-soft);color:var(--teal);
  display:grid;place-items:center;font-size:22px;
}
.quick-card .ico svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.quick-card b{font-size:12px;font-weight:800}
.quick-card small{font-size:10.5px;color:var(--muted);line-height:1.5}
.list-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-sm)}
.row-item{display:flex;align-items:center;gap:12px;padding:13px 14px;border-bottom:1px solid var(--line)}
.row-item:last-child{border-bottom:0}
.row-item:active{background:var(--teal-softer)}
.row-item .ico{
  width:42px;height:42px;flex:0 0 42px;border-radius:13px;background:var(--teal-soft);color:var(--teal);
  display:grid;place-items:center;font-size:20px;
}
.row-item .copy{flex:1;min-width:0}
.row-item .copy b{display:block;font-size:13px;font-weight:800}
.row-item .copy small{display:block;color:var(--muted);font-size:11px;margin-top:2px}
.row-item .chev{color:#a9bac7;font-size:20px}

/* ---------- bottom nav (mockup style: white bar, teal active) ---------- */
.bottom-nav{
  position:fixed;z-index:10;bottom:0;left:0;right:0;background:#fff;
  border-top:1px solid var(--line);
  padding:8px 10px calc(8px + env(safe-area-inset-bottom));
  box-shadow:0 -6px 22px rgba(20,41,59,.07);
}
.bottom-nav .tabs{width:min(560px,100%);margin:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:4px}
.bottom-nav a{
  min-height:52px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;
  color:#93a5b5;font-size:10.5px;border-radius:12px;font-weight:700;
}
.bottom-nav a svg{width:23px;height:23px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.bottom-nav a.active{color:var(--teal);font-weight:900}
.bottom-nav a.active svg{stroke-width:2.1}
.bottom-nav a:active{background:var(--teal-softer)}
body.has-bottom-nav{padding-bottom:calc(84px + env(safe-area-inset-bottom))}

/* ---------- metrics / pills ---------- */
.metrics{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.metric{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:13px 12px;box-shadow:var(--shadow-sm);min-width:0}
.metric small{display:block;color:var(--muted);font-size:11px}
.metric strong{display:block;font-size:21px;margin-top:2px;font-variant-numeric:tabular-nums}
.metric .unit{font-size:10px;color:var(--muted);font-weight:500}
.pill{font-size:10px;font-weight:800;border-radius:99px;padding:4px 10px;white-space:nowrap}
.pill.green{background:var(--green-soft);color:var(--green)}
.pill.red{background:var(--red-soft);color:var(--red)}
.pill.teal{background:var(--teal-soft);color:var(--teal-dark)}
.status{font-size:11.5px;color:var(--muted);margin-top:10px;min-height:20px}
.empty{padding:20px 14px;text-align:center;font-size:12.5px;color:var(--muted);line-height:1.9}

footer.app-foot{text-align:center;color:#9aa9b8;font-size:10.5px;padding:26px 0 8px}

@media(min-width:700px){
  body{background:#FFFFFF}
  .app-shell{max-width:560px;margin:18px auto;background:var(--bg);min-height:calc(100vh - 36px);
    border:1px solid var(--line);border-radius:22px;overflow:hidden;position:relative}
  .bottom-nav{position:sticky;margin-top:14px;border-top:1px solid var(--line);border-radius:0 0 22px 22px}
  body.has-bottom-nav{padding-bottom:0}
}
/* never follow the OS into dark mode — the mockup is a light design */
@media(prefers-color-scheme:dark){
  :root{color-scheme:light}
  html,body{background:var(--bg);color:var(--ink)}
}
