  :root{
    --green:#58cc02; --green-dark:#46a302; --green-light:#d7ffb8;
    --orange:#ff9600; --orange-dark:#e08600; --orange-light:#ffe8cc;
    --blue:#1cb0f6; --blue-dark:#1899d6; --blue-light:#ddf4ff;
    --purple:#ce82ff; --purple-dark:#a568cc;
    --red:#ff4b4b;
    --gold:#ffc800; --gold-light:#fff0c2;
    --bg:#ffffff; --bg-2:#f7f7f7;
    --card:#ffffff; --line:#e5e5e5; --line-2:#d7d7d7;
    --text:#3c3c3c; --text-2:#4b4b4b; --muted:#afafaf; --muted-2:#777777;
    --sans:'Nunito',system-ui,sans-serif;
    --quran:'Amiri Quran','Amiri',serif;
    --ayah-size:1.85rem;
  }
  *{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}
  html{scroll-behavior:smooth}
  body{font-family:var(--sans);background:var(--bg);color:var(--text);line-height:1.5;min-height:100vh;overflow-x:hidden;font-weight:500}
  button{font-family:var(--sans);color:inherit;background:none;border:none;cursor:pointer;font-weight:700}
  a{color:inherit;text-decoration:none}
  svg.ic{display:block;flex:0 0 auto}

  /* ================= SHELL ================= */
  .shell{display:grid;grid-template-columns:256px 1fr;min-height:100vh}
  aside{position:sticky;top:0;height:100vh;background:var(--bg);border-right:2px solid var(--line);
    display:flex;flex-direction:column;padding:24px 16px;z-index:30}
  .logo{display:flex;align-items:center;gap:10px;padding:4px 12px 26px}
  .logo-name{font-weight:900;font-size:1.5rem;letter-spacing:-.02em;color:var(--green)}
  .logo-name em{font-style:normal;color:var(--orange)}
  nav{display:flex;flex-direction:column;gap:6px}
  .nav-item{display:flex;align-items:center;gap:14px;padding:12px 14px;border-radius:12px;
    font-size:.9rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--text-2);
    border:2px solid transparent;transition:background .15s;width:100%;text-align:left}
  .nav-item:hover{background:var(--bg-2)}
  .nav-item.active{background:var(--blue-light);border-color:#84d8ff;color:var(--blue-dark)}
  .nav-ic{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff}
  .nav-ic.c-green{background:var(--green)} .nav-ic.c-blue{background:var(--blue)}
  .nav-ic.c-orange{background:var(--orange)} .nav-ic.c-purple{background:var(--purple)}
  .nav-ic.c-gray{background:#9aa3a7}
  .nav-ic.c-yellow{background:var(--gold);color:#7a5b00}
  .side-bottom{margin-top:auto;display:flex;flex-direction:column;gap:12px}
  .side-streak{display:flex;align-items:center;gap:12px;background:var(--bg);border:2px solid var(--line);
    border-radius:16px;padding:12px 16px}
  .side-streak svg{color:var(--orange)}
  .side-streak .n{font-weight:900;font-size:1.2rem}
  .side-streak .l{font-size:.72rem;color:var(--muted-2);font-weight:700}
  .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:800;font-size:.92rem;
    letter-spacing:.05em;text-transform:uppercase;border-radius:16px;padding:14px 22px;transition:filter .15s,transform .05s;
    box-shadow:0 4px 0 rgba(0,0,0,.18)}
  .btn:active{transform:translateY(3px);box-shadow:0 1px 0 rgba(0,0,0,.18)}
  .btn.green{background:var(--green);color:#fff;box-shadow:0 4px 0 var(--green-dark)}
  .btn.green:hover{filter:brightness(1.06)}
  .btn.blue{background:var(--blue);color:#fff;box-shadow:0 4px 0 var(--blue-dark)}
  .btn.orange{background:var(--orange);color:#fff;box-shadow:0 4px 0 var(--orange-dark)}
  .btn.white{background:#fff;color:var(--blue);border:2px solid var(--line);box-shadow:0 4px 0 var(--line-2)}
  .btn.small{padding:10px 16px;font-size:.8rem;border-radius:12px}

  .main{padding:34px 48px 140px;min-width:0;max-width:1500px;margin:0;width:100%}
  .view{animation:viewIn .4s cubic-bezier(.2,.7,.3,1)}
  @keyframes viewIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
  .page-head{margin-bottom:24px}
  .page-head h1{font-weight:900;font-size:1.8rem;letter-spacing:-.02em;color:var(--text)}
  .page-head p{color:var(--muted-2);font-size:.95rem;margin-top:4px}

  .card{background:var(--card);border:2px solid var(--line);border-radius:16px}

