:root{
  --bg:#fff5fa; --kad:#ffffff; --tinta:#3b2b45; --lembut:#8b7a95;
  --garis:#f3dfeb; --utama:#e8489a; --ungu:#a855f7; --pagi:#ffb03a;
  --petang:#a855f7; --kerja:#22b8cf; --siap:#22c55e; --emas:#f7b500;
  --radius:22px;
}
@media (prefers-color-scheme:dark){
  :root{ --bg:#1a1424; --kad:#241a30; --tinta:#f7edff; --lembut:#b9a7c9;
         --garis:#3a2c4a; --utama:#ff8fc7; }
}
*{box-sizing:border-box}
html{overflow-x:hidden}
body{
  margin:0; background:var(--bg); color:var(--tinta);
  font-family:"Nunito","Segoe UI",system-ui,-apple-system,sans-serif;
  padding:0 0 96px; -webkit-tap-highlight-color:transparent; overflow-x:hidden;
}
h1,h2,.tajuk,.btn-main,.cip,.nabi-hari-nama,.tab-btn{
  font-family:"Baloo 2","Nunito",system-ui,sans-serif}

/* bintang latar belakang lembut */
.bintang{position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.5;
  background-image:
    radial-gradient(circle at 12% 18%, rgba(255,255,255,.9) 0 2px, transparent 3px),
    radial-gradient(circle at 82% 12%, rgba(255,255,255,.8) 0 2px, transparent 3px),
    radial-gradient(circle at 68% 42%, rgba(255,255,255,.7) 0 2px, transparent 3px),
    radial-gradient(circle at 24% 68%, rgba(255,255,255,.8) 0 2px, transparent 3px);
}

header{
  position:sticky; top:0; z-index:5; color:#fff;
  padding:18px 16px; border-radius:0 0 28px 28px;
  background:linear-gradient(135deg,#ff8fc7 0%,#c084fc 55%,#8b7bff 100%);
  box-shadow:0 8px 24px rgba(232,72,154,.28);
  overflow-x:hidden;
}
.head-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.head-row>div{min-width:0}
h1{margin:0;font-size:1.45rem;font-weight:800;letter-spacing:-.01em;overflow-wrap:anywhere;
  text-shadow:0 2px 6px rgba(120,40,90,.25)}
.tarikh{opacity:.95;font-size:.86rem;margin-top:2px;font-weight:600}
.btn-edit{background:rgba(255,255,255,.25);color:#fff;border:2px solid rgba(255,255,255,.55);
  border-radius:999px;width:44px;height:44px;flex:0 0 44px;font-size:1.1rem;cursor:pointer}
.btn-edit.aktif{background:#fff;color:var(--utama)}

.hari-bar{display:flex;gap:6px;margin-top:14px;overflow-x:auto;padding-bottom:2px}
.cip{flex:1 1 auto;min-width:44px;padding:9px 6px;border-radius:14px;cursor:pointer;
  background:rgba(255,255,255,.22);color:#fff;border:2px solid transparent;
  font-weight:700;font-size:.88rem;white-space:nowrap}
.cip.kini{border-color:rgba(255,255,255,.85)}
.cip.pilih{background:#fff;color:var(--utama);box-shadow:0 3px 10px rgba(0,0,0,.12)}
.cip-kini{flex:0 0 auto;font-size:.78rem;padding:9px 10px}

.progress-wrap{margin-top:14px}
.progress{height:14px;background:rgba(255,255,255,.3);border-radius:999px;overflow:hidden}
.bar{height:100%;width:0;border-radius:999px;transition:width .4s ease;
  background:linear-gradient(90deg,#ffe066,#ffd43b,#fcc419)}
.progress-teks{font-size:.82rem;margin-top:6px;font-weight:700;opacity:.97}

main{position:relative;z-index:1;max-width:720px;margin:0 auto;padding:16px 14px 0;
  overflow-x:hidden}
.tab-isi{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
.tab-isi[hidden]{display:none}
.kad{min-width:0;background:var(--kad);border-radius:var(--radius);padding:16px 15px 12px;
  box-shadow:0 4px 16px rgba(180,90,150,.10);border:2px solid var(--garis)}
.kad-kepala{margin-bottom:10px}
.kad h2{margin:0;font-size:1.15rem;font-weight:700}
.kad-nota{font-size:.76rem;color:var(--lembut);margin-top:3px;line-height:1.4}
.kad-tajuk-kecil{font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
  color:var(--utama)}
.kad.pagi{border-left:8px solid var(--pagi)}
.kad.petang{border-left:8px solid var(--petang)}
.kad.kerja{border-left:8px solid var(--kerja)}
.kad.sunyi{opacity:.8}


/* ===== tab bawah ===== */
.tab-bar{position:fixed;left:50%;transform:translateX(-50%);bottom:14px;z-index:30;
  display:flex;gap:6px;background:var(--kad);padding:7px;border-radius:999px;
  box-shadow:0 8px 26px rgba(180,90,150,.28);border:2px solid var(--garis)}
.tab-btn{display:flex;flex-direction:column;align-items:center;gap:1px;border:none;
  background:none;color:var(--lembut);font-size:.72rem;font-weight:700;cursor:pointer;
  padding:8px 18px;border-radius:999px;font-family:inherit}
.tab-btn span{font-size:1.25rem;line-height:1}
.tab-btn.pilih{background:linear-gradient(135deg,#ff8fc7,#c084fc);color:#fff}

.raikan{position:fixed;left:50%;bottom:86px;transform:translateX(-50%);
  background:linear-gradient(135deg,#51cf66,#22b8cf);color:#fff;padding:12px 22px;
  border-radius:999px;font-weight:800;box-shadow:0 8px 24px rgba(34,197,94,.4);z-index:25}
footer{text-align:center;color:var(--lembut);font-size:.74rem;padding:18px 10px 8px}

/* ===== jalur + butang kemaskini ===== */
.jalur-kemaskini{position:fixed;left:0;right:0;top:0;z-index:40;border:none;cursor:pointer;
  padding:11px 14px;font-family:"Baloo 2","Nunito",sans-serif;font-weight:800;font-size:.92rem;
  color:#5a3d00;background:linear-gradient(135deg,#ffe066,#ffd43b);
  box-shadow:0 4px 14px rgba(0,0,0,.18)}
.jalur-kemaskini[hidden]{display:none}
.kaki-versi{display:flex;align-items:center;justify-content:center;gap:10px;
  flex-wrap:wrap;margin-top:8px}
.btn-kemaskini{background:var(--kad);border:2px solid var(--garis);border-radius:999px;
  padding:8px 16px;font-weight:700;font-size:.8rem;cursor:pointer;color:var(--tinta);
  font-family:inherit}
.btn-kemaskini:disabled{opacity:.6;cursor:default}

/* ===== butang header + kaki akaun (dikongsi semua halaman) ===== */
.head-btn{display:flex;gap:8px;align-items:center;flex:0 0 auto}
.kaki-akaun{margin-top:6px}
.kaki-akaun a{color:var(--utama);font-weight:700}
