/* MaheHub Roaming — frontend (desktop + mobile) */
:root{
  --mhr-primary:#0b1f3a;
  --mhr-navy:#123056;
  --mhr-accent:#f5c518;
  --mhr-gold:#e8b80e;
  --mhr-bg:#eef3f9;
  --mhr-card:#fff;
  --mhr-text:#0b1f3a;
  --mhr-muted:#64748b;
  --mhr-line:#dbe3ef;
  --mhr-ok:#16a34a;
  --mhr-warn:#f59e0b;
  --mhr-danger:#dc2626;
  --mhr-radius:16px;
  --mhr-shadow:0 10px 30px rgba(11,31,58,.08);
  --mhr-font:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
}
.mhr-app{font-family:var(--mhr-font);color:var(--mhr-text);background:var(--mhr-bg);max-width:1280px;margin:0 auto;padding:0 0 96px;position:relative;border-radius:20px;overflow:hidden;box-shadow:var(--mhr-shadow)}
.mhr-app *,.mhr-app *::before,.mhr-app *::after{box-sizing:border-box}
.mhr-topbar{display:flex;align-items:center;gap:16px;background:linear-gradient(90deg,var(--mhr-primary),var(--mhr-navy));color:#fff;padding:12px 20px;min-height:64px}
.mhr-logo{display:flex;align-items:center;gap:8px;color:#fff;text-decoration:none;min-width:160px}
.mhr-logo-text{font-weight:800;font-size:20px;letter-spacing:.2px;display:flex;gap:0}
.mhr-gold{color:var(--mhr-accent)}
.mhr-logo small{display:block;font-size:10px;opacity:.85;font-weight:500;margin-left:4px}
.mhr-desk-nav{display:flex;gap:18px;margin-left:24px;flex:1}
.mhr-desk-nav a{color:#fff;text-decoration:none;font-size:14px;opacity:.9}
.mhr-desk-nav a:hover,.mhr-desk-nav a.is-on{opacity:1;color:var(--mhr-accent)}
.mhr-top-user{display:flex;align-items:center;gap:10px;margin-left:auto}
.mhr-bell{background:transparent;border:0;color:#fff;cursor:pointer}
.mhr-avatar{width:36px;height:36px;border-radius:50%;background:var(--mhr-accent);color:var(--mhr-primary);display:flex;align-items:center;justify-content:center;font-weight:800}
.mhr-user-meta{display:flex;flex-direction:column;line-height:1.2;font-size:12px}
.mhr-user-meta span{opacity:.75}
.mhr-hamburger{display:none;flex-direction:column;gap:4px;background:transparent;border:0;padding:6px;cursor:pointer}
.mhr-hamburger span{width:18px;height:2px;background:#fff;display:block}
.mhr-hero{margin:16px 20px 8px;border-radius:18px;padding:28px 32px;background:linear-gradient(100deg,#14325c 0%,#1c4a7a 45%,#c9783a 100%);color:#fff;display:flex;justify-content:space-between;align-items:flex-end;min-height:110px;position:relative;overflow:hidden}
.mhr-hero h1{margin:0 0 6px;font-size:28px}
.mhr-hero p{margin:0;opacity:.92;max-width:520px}
.mhr-hero-script{font-family:Georgia,serif;font-style:italic;color:var(--mhr-accent);font-size:18px}
.mhr-steps{list-style:none;display:flex;gap:8px;padding:8px 20px 4px;margin:0;overflow:auto}
.mhr-steps li{display:flex;align-items:center;gap:8px;color:var(--mhr-muted);font-size:13px;white-space:nowrap;position:relative;flex:1}
.mhr-steps li span{width:28px;height:28px;border-radius:50%;background:#d7dee8;color:#475569;display:flex;align-items:center;justify-content:center;font-weight:700}
.mhr-steps li.is-active span,.mhr-steps li.is-done span{background:var(--mhr-primary);color:#fff}
.mhr-steps li.is-active{color:var(--mhr-primary);font-weight:700}
.mhr-steps li.is-done{color:var(--mhr-ok)}
.mhr-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px;padding:12px 20px 24px;align-items:start}
.mhr-panel{background:var(--mhr-card);border-radius:var(--mhr-radius);padding:22px;box-shadow:var(--mhr-shadow);min-height:360px}
.mhr-panel h2{margin:0 0 6px;font-size:22px}
.mhr-sub{color:var(--mhr-muted);margin:0 0 18px}
.mhr-info{background:#eef6ff;border:1px solid #cfe0f5;border-radius:12px;padding:12px 14px;margin:0 0 16px;font-size:13px;color:#1e3a5f}
.mhr-warnbox{background:#fff8e6;border:1px solid #f5d56e;border-radius:12px;padding:12px 14px;margin:12px 0;font-size:13px}
.mhr-grid{display:grid;gap:12px}
.mhr-grid-4{grid-template-columns:repeat(4,1fr)}
.mhr-grid-2{grid-template-columns:repeat(2,1fr)}
.mhr-op{border:1px solid var(--mhr-line);border-radius:14px;padding:16px 12px;background:#fff;text-align:center;cursor:pointer;position:relative;min-height:150px}
.mhr-op:hover{border-color:#9bb6d6}
.mhr-op.is-on{border:2px solid var(--mhr-navy);box-shadow:0 0 0 3px rgba(18,48,86,.12)}
.mhr-op.is-off{opacity:.45;cursor:not-allowed}
.mhr-op img,.mhr-op-logo{width:72px;height:48px;object-fit:contain;margin:8px auto 10px;display:block}
.mhr-op-logo{font-weight:800;font-size:18px;display:flex;align-items:center;justify-content:center;border-radius:8px;color:#fff}
.mhr-op-logo.gp{background:#0096d6}
.mhr-op-logo.robi{background:#e31c23}
.mhr-op-logo.airtel{background:#ed1c24}
.mhr-op-logo.bl{background:#f58220;color:#111}
.mhr-op small{display:block;color:var(--mhr-muted);margin-top:4px}
.mhr-check{position:absolute;top:8px;right:8px;width:22px;height:22px;border-radius:50%;background:var(--mhr-navy);color:#fff;display:none;align-items:center;justify-content:center;font-size:12px}
.mhr-op.is-on .mhr-check{display:flex}
.mhr-conn{border-radius:14px;padding:16px;border:1px solid var(--mhr-line);cursor:pointer;text-align:left}
.mhr-conn h3{margin:0 0 8px;display:flex;justify-content:space-between}
.mhr-conn ul{margin:0;padding-left:18px;color:#334155;font-size:14px}
.mhr-conn.prepaid{background:#ecfdf3}
.mhr-conn.postpaid{background:#eef5ff}
.mhr-conn.is-on{border:2px solid var(--mhr-navy)}
.mhr-field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px;font-size:14px}
.mhr-field input,.mhr-field select,.mhr-field textarea{border:1px solid var(--mhr-line);border-radius:10px;padding:11px 12px;font:inherit;width:100%;background:#fff}
.mhr-field input:focus,.mhr-field select:focus,.mhr-field textarea:focus{outline:2px solid rgba(18,48,86,.25);border-color:var(--mhr-navy)}
.mhr-drop{border:2px dashed #b9c9dc;border-radius:12px;padding:22px;text-align:center;color:var(--mhr-muted);background:#f8fbff;cursor:pointer}
.mhr-drop.is-on{border-color:var(--mhr-ok);background:#f0fdf4;color:var(--mhr-ok)}
.mhr-pkg{border:1px solid var(--mhr-line);border-radius:14px;padding:14px;display:flex;justify-content:space-between;align-items:center;gap:10px;background:#fff}
.mhr-pkg.is-on,.mhr-pkg.is-feat{border:2px solid var(--mhr-accent);background:#fff8dc}
.mhr-pkg b{display:block;font-size:15px}
.mhr-pkg .price{font-size:20px;color:var(--mhr-primary)}
.mhr-badge{display:inline-block;background:var(--mhr-accent);color:#111;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700}
.mhr-toggle{display:flex;background:#e8eef6;border-radius:999px;padding:4px;gap:4px;margin:8px 0 14px}
.mhr-toggle button{flex:1;border:0;background:transparent;padding:8px;border-radius:999px;cursor:pointer;font-weight:600}
.mhr-toggle button.is-on{background:var(--mhr-primary);color:#fff}
.mhr-navbtns{display:flex;justify-content:space-between;gap:12px;margin-top:16px}
.mhr-btn{border:0;border-radius:12px;padding:12px 18px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:8px;justify-content:center;text-decoration:none}
.mhr-btn[disabled]{opacity:.45;cursor:not-allowed}
.mhr-btn-primary{background:var(--mhr-primary);color:#fff}
.mhr-btn-ghost{background:#e8eef6;color:var(--mhr-primary)}
.mhr-btn-gold{background:linear-gradient(180deg,#ffe36b,#f5c518);color:#111;width:100%;margin-top:12px;font-size:15px}
.mhr-card{background:#fff;border-radius:var(--mhr-radius);padding:16px;box-shadow:var(--mhr-shadow)}
.mhr-aside{position:sticky;top:16px}
.mhr-summary-card dl{margin:0}
.mhr-summary-card dt{color:var(--mhr-muted);font-size:12px;margin-top:10px}
.mhr-summary-card dd{margin:2px 0 0;font-weight:700}
.mhr-total{font-size:26px;font-weight:800;margin-top:12px;color:var(--mhr-primary)}
.mhr-gw{display:flex;align-items:center;gap:10px;border:1px solid var(--mhr-line);border-radius:10px;padding:10px;margin-bottom:8px;cursor:pointer}
.mhr-gw.is-on{border-color:var(--mhr-navy);background:#f4f8ff}
.mhr-gw i{width:28px;height:28px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-style:normal;font-weight:800;font-size:10px;color:#fff}
.mhr-gw .bk{background:#e2136e}.mhr-gw .ng{background:#ed1c24}.mhr-gw .rk{background:#8a2be2}.mhr-gw .bn{background:#0b1f3a}.mhr-gw .wl{background:#0ea5e9}
.mhr-bottomnav{display:none}
.mhr-mob-summary{display:none}
.mhr-skeleton{padding:40px;text-align:center;color:var(--mhr-muted)}
.mhr-error{color:var(--mhr-danger);font-size:12px;margin-top:4px}
.mhr-checklist{list-style:none;padding:0;margin:0 0 16px}
.mhr-checklist li{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--mhr-line);font-size:14px}
.mhr-ok{color:var(--mhr-ok);font-weight:700}
.mhr-search{position:relative}
.mhr-search-list{position:absolute;left:0;right:0;background:#fff;border:1px solid var(--mhr-line);border-radius:10px;max-height:240px;overflow:auto;z-index:5;display:none}
.mhr-search-list button{display:block;width:100%;text-align:left;border:0;background:#fff;padding:8px 10px;cursor:pointer}
.mhr-search-list button:hover{background:#f1f5f9}
.mhr-dash-root{padding:16px 20px 32px}
.mhr-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}
.mhr-kpi{background:#fff;border-radius:14px;padding:14px;box-shadow:var(--mhr-shadow)}
.mhr-kpi span{display:block;color:var(--mhr-muted);font-size:12px}
.mhr-stepper{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}
.mhr-stepper i{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:#e8eef6;font-style:normal;font-size:12px}
.mhr-stepper i.on{background:var(--mhr-accent)}
.mhr-stepper i.done{background:#bbf7d0}
.mhr-table{width:100%;border-collapse:collapse;font-size:13px}
.mhr-table th,.mhr-table td{border-bottom:1px solid var(--mhr-line);padding:10px;text-align:left}
.mhr-status{display:inline-block;padding:3px 8px;border-radius:999px;color:#fff;font-size:11px;font-weight:700}
.mhr-fab{position:fixed;right:18px;bottom:88px;background:#16a34a;color:#fff;padding:10px 14px;border-radius:999px;text-decoration:none;font-weight:700;z-index:20}
.mhr-track-card{max-width:480px;margin:24px auto}
.mhr-login-gate{text-align:center;padding:40px}
@media (max-width:1023px){
  .mhr-desk-nav,.mhr-user-meta,.mhr-hero-script{display:none}
  .mhr-hamburger{display:flex}
  .mhr-layout{grid-template-columns:1fr;padding-bottom:140px}
  .mhr-aside{display:none}
  .mhr-hero{padding:18px;min-height:80px}
  .mhr-hero h1{font-size:20px}
  .mhr-grid-4{grid-template-columns:repeat(2,1fr)}
  .mhr-steps b{display:none}
  .mhr-bottomnav{display:flex;position:sticky;bottom:0;background:#fff;border-top:1px solid var(--mhr-line);justify-content:space-around;padding:8px 0 calc(8px + env(safe-area-inset-bottom));z-index:30}
  .mhr-bottomnav button{border:0;background:transparent;font-size:11px;color:var(--mhr-muted);display:flex;flex-direction:column;align-items:center;gap:2px}
  .mhr-bottomnav button.is-active{color:var(--mhr-primary);font-weight:700}
  .mhr-mob-summary{display:block;position:sticky;bottom:58px;z-index:25;padding:0 12px}
  .mhr-mob-summary>button{width:100%;display:flex;justify-content:space-between;background:var(--mhr-primary);color:#fff;border:0;border-radius:12px 12px 0 0;padding:10px 14px;font-weight:700}
  .mhr-mob-summary-body{display:none;background:#fff;padding:10px 14px;border:1px solid var(--mhr-line)}
  .mhr-mob-summary.open .mhr-mob-summary-body{display:block}
  .mhr-kpis{grid-template-columns:1fr 1fr}
  .mhr-app{border-radius:0}
}
@media (max-width:420px){
  .mhr-op{min-height:130px;padding:12px 8px}
  .mhr-panel{padding:16px}
}
