/* v816/v817: Agenda pribadi di Menfess (Tahap 1; Tahap 2 menambah kegiatan rutin). Awalan mfa-. Warna dari token --ds-* sehingga mode gelap ikut otomatis. */
html.mfa-kunci{overflow:hidden}
/* v829: kartu Agenda di Menfess, tampilan baru (perombakan desain, tahap 1 dari 5). Datar: tanggal sebagai tipografi (bukan stiker miring), "garis hari" satu warna per status, satu baris "berikutnya". Semua warna dari token --ds-* sehingga mode gelap ikut. */
#menfess .mfa-bar{margin:0 0 18px}
#menfess .mfa-buka{position:relative;display:flex;align-items:stretch;width:100%;min-height:96px;padding:0;border:0;border-radius:20px;background:var(--ds-kertas,#fff);color:var(--ds-teks,#2B1330);font:inherit;text-align:left;cursor:pointer;box-shadow:0 1px 2px rgba(43,19,48,.06),0 12px 28px -16px rgba(43,19,48,.28);transition:background-color .15s ease;-webkit-tap-highlight-color:transparent}
#menfess .mfa-buka:active{background:color-mix(in srgb,var(--ds-pink,#FF1D86) 7%,var(--ds-kertas,#fff))}
#menfess .mfa-buka:focus-visible{outline:3px solid var(--ds-pink,#FF1D86);outline-offset:3px}
@media(hover:hover) and (pointer:fine){#menfess .mfa-buka:hover{background:color-mix(in srgb,var(--ds-pink,#FF1D86) 4%,var(--ds-kertas,#fff))}#menfess .mfa-buka:hover .mfa-buka-pan{color:var(--ds-link,#B80D68);transform:translateX(2px)}}
/* tanggal: hari, angka besar (satu-satunya huruf tampilan di kartu), bulan; garis tipis memisahkannya dari isi */
#menfess .mfa-buka-ic{flex:none;width:72px;margin:14px 0;padding:0 4px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border-right:1px solid var(--ds-garis,#F3C9DE)}
#menfess .mfa-tgl-hr,#menfess .mfa-tgl-bln{font-style:normal;font-weight:700;font-size:calc(11.5px*var(--sh,1));line-height:1.2;color:var(--ds-teks-samar,#6D5873)}
#menfess .mfa-tgl-no{font-family:var(--ds-huruf-judul,inherit);font-weight:400;font-size:calc(36px*var(--sh,1));line-height:1;color:var(--ds-link,#B80D68);font-variant-numeric:tabular-nums}
#menfess .mfa-buka-teks{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:6px;padding:14px 40px 14px 16px}
#menfess .mfa-buka-jd{display:block;font-weight:800;font-size:calc(15px*var(--sh,1));line-height:1.2}
#menfess .mfa-buka small{display:block;color:var(--ds-teks-samar,#6D5873);font-size:calc(12.5px*var(--sh,1));line-height:1.35}
#menfess .mfa-buka small.mfa-ringkas{color:var(--ds-teks-redup,#5E4A63)}
/* garis hari: satu segmen per kegiatan, warna menurut status (bukan warna kegiatan) */
#menfess .mfa-prog{display:flex;gap:3px}
#menfess .mfa-prog:empty{display:none}
#menfess .mfa-prog i{flex:1;min-width:8px;height:5px;border-radius:99px;background:color-mix(in srgb,var(--ds-teks,#2B1330) 14%,transparent)}
#menfess .mfa-prog i.st-selesai{background:var(--ds-ok,#1E9E5A)}
#menfess .mfa-prog i.st-jalan{background:var(--ds-emas-dalam,#C98600)}
#menfess .mfa-prog i.st-lewat{background:var(--ds-bahaya,#D8294B)}
/* baris berikutnya: jam (angka rata) + judul satu baris, lalu keterangan status; hitungan terlewat di ujung kanan keterangan */
#menfess .mfa-prog,#menfess .mfa-next{max-width:420px}
#menfess .mfa-next{display:flex;flex-direction:column;gap:1px;line-height:1.35}
#menfess .mfa-next:empty{display:none}
#menfess .mfa-nx-a{display:flex;align-items:baseline;gap:8px;min-width:0;font-size:calc(13.5px*var(--sh,1))}
#menfess .mfa-nx-jam{flex:none;font-weight:800;font-variant-numeric:tabular-nums}
#menfess .mfa-nx-jd{min-width:0;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#menfess .mfa-nx-ket{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:calc(12px*var(--sh,1))}
#menfess .mfa-nx-lb{font-style:normal;font-weight:700;color:var(--ds-teks-samar,#6D5873)}
#menfess .mfa-nx-lb.mfa-nx-tunggal{font-size:calc(13px*var(--sh,1))}
#menfess .mfa-nx-lb.st-jalan{color:var(--ds-awas-teks,#7A5200)}
#menfess .mfa-nx-lb.st-kosong{color:var(--ds-link,#B80D68)}
#menfess .mfa-nx-lb.st-selesai{color:var(--ds-ok-teks,#0F6B3A)}
#menfess .mfa-nx-b{margin-left:auto;flex:none;font-weight:700;color:var(--ds-bahaya-teks,#B3142F)}
/* panah masuk dan lencana pengingat */
#menfess .mfa-buka-pan{position:absolute;top:50%;right:12px;width:20px;height:20px;margin-top:-10px;display:grid;place-items:center;color:var(--ds-teks-samar,#6D5873);transition:transform .15s ease,color .15s ease}
#menfess .mfa-buka-pan svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
#menfess .mfa-lencana-hari{position:absolute;top:10px;right:36px;display:inline-flex;align-items:center;gap:4px;padding:2px 9px 2px 7px;border-radius:999px;background:var(--ds-pink-tipis,#FFF1F8);color:var(--ds-link,#B80D68);font-size:calc(11.5px*var(--sh,1));font-weight:800;line-height:1.5;white-space:nowrap}
#menfess .mfa-lencana-hari svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:380px){#menfess .mfa-buka-ic{width:60px}#menfess .mfa-tgl-no{font-size:calc(30px*var(--sh,1))}#menfess .mfa-buka-teks{padding-left:12px;padding-right:34px}}
@media(prefers-reduced-motion:reduce){#menfess .mfa-buka,#menfess .mfa-buka-pan{transition:none}}
@media(forced-colors:active){#menfess .mfa-buka{border:1px solid CanvasText}#menfess .mfa-prog i{forced-color-adjust:none}}
html[data-tema=gelap] #menfess .mfa-buka{box-shadow:none}
/* status kegiatan di lembar, titik bulan, dan chip minggu */
.mfa-st{display:inline-block;margin:2px 0 0 6px;padding:1px 9px;border-radius:99px;font-size:calc(11.5px*var(--sh,1));font-weight:800}
.mfa-st-nanti{background:color-mix(in srgb,var(--ds-teks,#2B1330) 9%,transparent);color:var(--ds-teks-redup,#5E4A63)}
.mfa-st-jalan{background:var(--ds-pink-tombol,#D10D70);color:#fff}
.mfa-st-lewat{background:#D8294B;color:#fff}
.mfa-st-selesai{background:#1E7F4E;color:#fff}
.mfa-item.st-jalan{background:color-mix(in srgb,var(--c) 13%,var(--ds-kertas,#fff))}
.mfa-item.st-lewat{background:color-mix(in srgb,#D8294B 10%,var(--ds-kertas,#fff))}
.mfa-item.st-lewat .mfa-cek span{border-color:#D8294B}
.mfa-item.st-selesai{opacity:.85}
.mfa-pk-chip.st-lewat{color:#D8294B;font-weight:700}
html[data-tema=gelap] .mfa-pk-chip.st-lewat{color:#FF8CA0}





.mfa-isi{min-width:0}
.mfa-judul{display:block;font-weight:800;overflow-wrap:anywhere}
.mfa-item.sel .mfa-judul{text-decoration:line-through;opacity:.6}
.mfa-jam{display:inline-block;margin-top:2px;padding:1px 8px;border-radius:var(--ds-s-bulat,999px);font-size:calc(12px*var(--sh,1));font-weight:700;background:var(--ds-pink-tipis,#FFF1F8);color:var(--ds-link,#B80D68)}
.mfa-cat{margin:4px 0 0;color:var(--ds-teks-redup,#5E4A63);font-size:calc(13px*var(--sh,1));white-space:pre-wrap;overflow-wrap:anywhere}
.mfa-aksi{display:flex;gap:6px;margin-top:6px}
.mfa-aksi button{min-height:34px;padding:0 12px;border-radius:var(--ds-s-bulat,999px);border:1.5px solid var(--ds-garis,#F3C9DE);background:transparent;color:var(--ds-teks-redup,#5E4A63);font:inherit;font-size:calc(12.5px*var(--sh,1));font-weight:700;cursor:pointer}
.mfa-aksi .mfa-hapus{color:var(--ds-bahaya-teks,#B3142F)}
.mfa-tambah,.mfa-simpan{width:100%;min-height:var(--ds-tap,44px);border-radius:14px;border:0;background:var(--ds-pink-tombol,#D10D70);color:#fff;font:inherit;font-weight:800;cursor:pointer}
.mfa-tambah:disabled,.mfa-simpan:disabled{opacity:.6;cursor:default}
.mfa-batal{min-height:var(--ds-tap,44px);padding:0 16px;border-radius:14px;border:1.5px solid var(--ds-garis,#F3C9DE);background:transparent;color:var(--ds-teks,#2B1330);font:inherit;font-weight:700;cursor:pointer}

.mfa-form{display:flex;flex-direction:column;gap:10px}
.mfa-form label{display:flex;flex-direction:column;gap:4px;font-size:calc(12.5px*var(--sh,1));font-weight:700;color:var(--ds-teks-redup,#5E4A63)}
.mfa-form input,.mfa-form textarea,.mfa-form select{font:inherit;font-weight:500;font-size:max(16px,calc(14px*var(--sh,1)));color:var(--ds-teks,#2B1330);background:var(--ds-kertas,#fff);border:1.5px solid var(--ds-garis,#F3C9DE);border-radius:12px;padding:10px 12px;min-height:var(--ds-tap,44px);width:100%;box-sizing:border-box}
.mfa-form textarea{resize:vertical;min-height:84px}
.mfa-form input:focus,.mfa-form textarea:focus,.mfa-form select:focus{outline:none;border-color:var(--ds-pink,#FF1D86);box-shadow:var(--ds-fokus)}
.mfa-baris{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mfa-jamwrap{display:flex;gap:6px}
.mfa-jamwrap input{flex:1;min-width:0}
.mfa-cnt{align-self:flex-end;font-size:calc(11.5px*var(--sh,1));color:var(--ds-teks-samar,#6D5873);font-weight:600}
.mfa-pilih{display:flex;flex-wrap:wrap;gap:8px}
.mfa-pilih button{width:var(--ds-tap,44px);height:var(--ds-tap,44px);border-radius:14px;border:2px solid transparent;cursor:pointer;display:grid;place-items:center;padding:0;font:inherit}
.mfa-pilih.warna button{background:var(--c)}
.mfa-pilih.warna button[aria-pressed="true"]{border-color:var(--ds-teks,#2B1330);box-shadow:0 0 0 2px var(--ds-kertas,#fff) inset}
.mfa-pilih.ikon button{background:var(--ds-kertas,#fff);border-color:var(--ds-garis,#F3C9DE);color:var(--ds-teks-redup,#5E4A63)}
.mfa-pilih.ikon button[aria-pressed="true"]{border-color:var(--c,var(--ds-pink,#FF1D86));color:var(--c,var(--ds-pink,#FF1D86));background:var(--ds-pink-tipis,#FFF1F8);background:color-mix(in srgb,var(--c,var(--ds-pink,#FF1D86)) 16%,transparent)}
.mfa-pilih svg{width:22px;height:22px}
.mfa-tombol{display:flex;gap:8px;margin-top:2px}
.mfa-tombol .mfa-simpan{flex:1;width:auto}

.mfa-w0{--c:#FF1D86}.mfa-w1{--c:#F26B00}.mfa-w2{--c:#C98600}.mfa-w3{--c:#1E9E5A}.mfa-w4{--c:#0E8F94}.mfa-w5{--c:#5B6CFF}.mfa-w6{--c:#9B4DFF}.mfa-w7{--c:#6D5873}
html[data-tema="gelap"] .mfa-w7{--c:#B9A3BF}

/* v817: kegiatan rutin */
.mfa-rutin{display:inline-block;margin:2px 0 0 6px;padding:1px 8px;border-radius:var(--ds-s-bulat,999px);font-size:calc(12px*var(--sh,1));font-weight:700;border:1.5px solid var(--ds-garis,#F3C9DE);color:var(--ds-teks-redup,#5E4A63)}
.mfa-cakup{display:block;color:var(--ds-teks-samar,#6D5873);font-size:calc(12px*var(--sh,1))}
.mfa-form select{width:100%;box-sizing:border-box}
.mfa-minggu{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}
.mfa-minggu button[data-w]{min-width:var(--ds-tap,44px);min-height:var(--ds-tap,44px);padding:0 6px;border-radius:14px;border:2px solid var(--ds-garis,#F3C9DE);background:var(--ds-kertas,#fff);color:var(--ds-teks,#2B1330);font:inherit;font-weight:700;font-size:calc(13px*var(--sh,1));cursor:pointer}
.mfa-minggu button[aria-pressed="true"]{background:var(--ds-pink-tombol,#D10D70);border-color:var(--ds-pink-tombol,#D10D70);color:#fff}
.mfa-minggu button:focus-visible{outline:none;box-shadow:var(--ds-fokus)}
.mfa-pilihan{display:flex;flex-direction:column;gap:8px}
.mfa-simpan.mfa-bahaya{background:var(--ds-bahaya-teks,#B3142F)}
.mfa-pk{display:flex;flex-direction:column;gap:6px}
.mfa-pk-hari{display:flex;align-items:flex-start;gap:10px;width:100%;min-height:52px;padding:8px 10px;text-align:left;border-radius:14px;border:1.5px solid transparent;background:var(--ds-kertas,#fff);color:var(--ds-teks,#2B1330);font:inherit;cursor:pointer}
.mfa-pk-hari:focus-visible{outline:none;box-shadow:var(--ds-fokus)}
.mfa-pk-hari.ini{border-color:var(--ds-pink,#FF1D86)}
.mfa-pk-hari.pilih{border-color:var(--ds-pink-tombol,#D10D70);background:var(--ds-pink-tipis,#FFF1F8);box-shadow:inset 0 0 0 1px var(--ds-pink-tombol,#D10D70)}
.mfa-pk-tgl{flex:none;width:38px;text-align:center}
.mfa-pk-tgl small{display:block;font-size:calc(11.5px*var(--sh,1));font-weight:700;color:var(--ds-teks-samar,#6D5873)}
.mfa-pk-tgl b{display:block;font-size:calc(17px*var(--sh,1));line-height:1.2}
.mfa-pk-isi{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px;align-self:center}
.mfa-pk-chip{display:block;position:relative;padding-left:14px;font-size:calc(13px*var(--sh,1));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mfa-pk-chip i{position:absolute;left:0;top:50%;width:8px;height:8px;margin-top:-4px;border-radius:50%;background:var(--c,var(--ds-pink,#FF1D86))}
.mfa-pk-chip.sel{text-decoration:line-through;opacity:.6}
.mfa-pk-kosong{font-size:calc(12.5px*var(--sh,1));color:var(--ds-teks-samar,#6D5873)}

/* v825 (5c): tombol bagikan ke Menfess */
.mfa-bagikan{width:100%;min-height:var(--ds-tap,44px);margin-top:8px;border-radius:14px;border:1.5px solid var(--ds-pink,#FF1D86);background:transparent;color:var(--ds-pink-teks,#C00E6E);font:inherit;font-weight:800;cursor:pointer}
.mfa-bagikan:focus-visible{outline:none;box-shadow:var(--ds-fokus)}
.mfa-bagikan-ket{margin:6px 0 0;text-align:center;color:var(--ds-teks-redup,#5E4A63);font-size:calc(13px*var(--sh,1))}
html[data-tema="gelap"] .mfa-bagikan{color:#FF8FD4}


/* ================================================================
   v831: LEMBAR AGENDA LAYAR PENUH, SATU LAYAR TANPA SCROLL DI DESKTOP.
   Latar aurora (pink, emas, ungu), kartu kaca, kalender petak berwarna menurut kepadatan, cincin tuntas per hari, garis waktu 24 jam + celah luang, ketik cepat, hitungan hari tuntas beruntun.
   ================================================================ */
.mfa-lembar{--kaca:color-mix(in srgb,var(--ds-kertas,#fff) 66%,transparent);--tepi:color-mix(in srgb,#fff 55%,transparent);position:fixed;inset:0;z-index:9000;color:var(--ds-teks,#2B1330);overflow:hidden;animation:mfa-masuk .26s var(--ds-ease,cubic-bezier(.22,1,.36,1));
  background:radial-gradient(60% 55% at 92% -8%,color-mix(in srgb,var(--ds-pink,#FF1D86) 30%,transparent),transparent 70%),radial-gradient(46% 52% at -6% 108%,color-mix(in srgb,var(--ds-emas,#FFC738) 38%,transparent),transparent 70%),radial-gradient(36% 42% at 58% 52%,color-mix(in srgb,#9B4DFF 11%,transparent),transparent 70%),var(--ds-latar,#FFF8F1)}
html[data-tema="gelap"] .mfa-lembar{--tepi:rgba(255,255,255,.09)}
@keyframes mfa-masuk{from{opacity:0;transform:translateY(28px) scale(.985)}to{opacity:1;transform:none}}
.mfa-kotak{position:relative;box-sizing:border-box;width:100%;height:100%;display:flex;flex-direction:column;overflow-y:auto;overscroll-behavior:contain;color:inherit;font-size:calc(14px*var(--sh,1));font-family:var(--ds-huruf,inherit);-webkit-overflow-scrolling:touch}

/* kepala: judul + kendali + hitungan beruntun + tutup, satu baris di desktop */
.mfa-atas{position:sticky;top:0;z-index:5;flex:none;box-sizing:border-box;width:100%;display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;padding:calc(12px + env(safe-area-inset-top,0px)) max(clamp(14px,3vw,40px),calc((100% - 1680px)/2 + clamp(14px,3vw,40px))) 8px}
.mfa-judul-atas{flex:1 1 0;min-width:0;order:1}
.mfa-kicker{max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mfa-kicker{display:inline-flex;align-items:center;gap:6px;font-size:calc(10.5px*var(--sh,1));font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ds-teks-samar,#6D5873)}
.mfa-kicker svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.mfa-atas h3{margin:0;display:flex;align-items:baseline;flex-wrap:wrap;gap:0 .35em;font-family:var(--ds-huruf,inherit);font-weight:800;font-size:clamp(30px,5.2vw,46px);line-height:1.05;letter-spacing:-.035em;color:var(--ds-teks,#2B1330)}
.mfa-atas h3.mfa-pekan{font-size:clamp(22px,3.6vw,32px)}
.mfa-thn{font-weight:300;color:var(--ds-pink,#FF1D86);letter-spacing:-.02em}
.mfa-ctl{order:2;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.mfa-nav{display:flex;align-items:center;gap:6px}
.mfa-streak{order:3;display:inline-flex;align-items:center;gap:6px;padding:6px 14px 6px 10px;border-radius:999px;background:linear-gradient(135deg,#FFC738,#FF8A2B);color:#3A1A00;box-shadow:0 8px 18px -8px rgba(255,138,43,.7)}
.mfa-streak svg{width:18px;height:18px;fill:#fff;stroke:#3A1A00;stroke-width:1.6;stroke-linejoin:round}
.mfa-streak b{font-size:calc(17px*var(--sh,1));font-weight:800;font-variant-numeric:tabular-nums;line-height:1}
.mfa-streak small{font-size:calc(11px*var(--sh,1));font-weight:800;opacity:.8}
.mfa-tutup{order:4}
.mfa-ikon-btn{flex:none;min-width:var(--ds-tap,44px);min-height:var(--ds-tap,44px);padding:0;border-radius:50%;border:1px solid var(--tepi);background:var(--kaca);backdrop-filter:blur(14px) saturate(1.3);-webkit-backdrop-filter:blur(14px) saturate(1.3);color:var(--ds-teks,#2B1330);font:inherit;cursor:pointer;display:grid;place-items:center;transition:transform .15s var(--ds-ease,ease),background-color .15s,box-shadow .15s}
.mfa-ikon-btn svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round}
.mfa-ikon-btn:active{transform:scale(.92)}
@media(hover:hover) and (pointer:fine){.mfa-ikon-btn:hover:not(:disabled){background:var(--ds-pink-tipis,#FFF1F8);box-shadow:0 0 0 2px var(--ds-pink,#FF1D86)}}
.mfa-tutup{background:var(--ds-teks,#2B1330);border-color:transparent;color:var(--ds-latar,#FFF8F1)}
@media(hover:hover) and (pointer:fine){.mfa-tutup:hover:not(:disabled){background:var(--ds-pink-tombol,#D10D70);box-shadow:none}}
.mfa-ikon-btn:focus-visible,.mfa-hari:focus-visible,.mfa-aksi button:focus-visible,.mfa-cek:focus-visible,.mfa-pilih button:focus-visible,.mfa-tambah:focus-visible,.mfa-simpan:focus-visible,.mfa-batal:focus-visible,.mfa-ini:focus-visible,.mfa-celah:focus-visible,.mfa-cepat-kirim:focus-visible{outline:none;box-shadow:var(--ds-fokus)}
.mfa-mode{display:inline-grid;grid-template-columns:1fr 1fr;gap:2px;width:auto;margin:0;padding:3px;border-radius:999px;background:var(--kaca);box-shadow:inset 0 0 0 1px var(--tepi);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.mfa-mode button{border:0;background:transparent;color:var(--ds-teks-redup,#5E4A63);font:inherit;font-weight:800;font-size:calc(13px*var(--sh,1));min-height:38px;padding:0 16px;border-radius:999px;cursor:pointer;transition:background-color .2s,color .2s}
.mfa-mode button[aria-pressed=true]{background:var(--ds-teks,#2B1330);color:var(--ds-latar,#FFF8F1)}
.mfa-mode button:focus-visible{outline:none;box-shadow:var(--ds-fokus)}
.mfa-ini{min-height:38px;padding:0 16px;border-radius:999px;border:1.5px solid var(--ds-pink,#FF1D86);background:transparent;color:var(--ds-link,#B80D68);font:inherit;font-size:calc(13px*var(--sh,1));font-weight:800;cursor:pointer}
@media(hover:hover) and (pointer:fine){.mfa-ini:hover{background:var(--ds-pink-tipis,#FFF1F8)}}

.mfa-badan{position:relative;box-sizing:border-box;flex:1 0 auto;width:100%;max-width:1680px;margin:0 auto;padding:4px clamp(14px,3vw,40px) calc(24px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;gap:16px}
.mfa-kiri,.mfa-kanan{min-width:0}
.mfa-kiri{display:flex;flex-direction:column}

/* kalender bulan: petak berwarna menurut kepadatan, cincin tuntas, judul kegiatan di dalam sel */
.mfa-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:auto repeat(var(--br,6),minmax(54px,auto));gap:6px;padding:12px;border-radius:30px;background:var(--kaca);border:1px solid var(--tepi);backdrop-filter:blur(18px) saturate(1.3);-webkit-backdrop-filter:blur(18px) saturate(1.3);box-shadow:0 18px 40px -24px rgba(43,19,48,.35)}
.mfa-grid.geser-k{animation:mfa-gk .24s var(--ds-ease,ease)}
.mfa-grid.geser-b{animation:mfa-gb .24s var(--ds-ease,ease)}
@keyframes mfa-gk{from{opacity:.2;transform:translateX(26px)}to{opacity:1;transform:none}}
@keyframes mfa-gb{from{opacity:.2;transform:translateX(-26px)}to{opacity:1;transform:none}}
.mfa-nama{text-align:center;font-size:calc(11px*var(--sh,1));font-weight:800;letter-spacing:.05em;color:var(--ds-teks-samar,#6D5873);padding:2px 0 4px}
.mfa-nama.akhir{color:var(--ds-link,#B80D68)}
.mfa-hari,.mfa-kosong{position:relative;box-sizing:border-box;min-width:0;min-height:0}
.mfa-hari{border:0;border-radius:18px;background:color-mix(in srgb,var(--ds-pink,#FF1D86) var(--hp,0%),color-mix(in srgb,var(--ds-kertas,#fff) 82%,transparent));box-shadow:inset 0 0 0 1px var(--tepi);color:var(--ds-teks,#2B1330);font:inherit;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:4px;padding:8px 4px 6px;cursor:pointer;overflow:hidden;transition:transform .15s var(--ds-ease,ease),box-shadow .15s}
.mfa-no{display:grid;place-items:center;min-width:28px;height:28px;border-radius:50%;font-weight:800;font-size:calc(15px*var(--sh,1));font-variant-numeric:tabular-nums;line-height:1}
.mfa-hari.akhir .mfa-no{color:var(--ds-link,#B80D68)}
.mfa-hari.lalu:not(.ini) .mfa-no{color:var(--ds-teks-samar,#6D5873);font-weight:700}
.mfa-hari.ini{background:linear-gradient(145deg,var(--ds-pink,#FF1D86),var(--ds-pink-dalam,#C00E6E));color:#fff;box-shadow:0 12px 24px -12px rgba(255,29,134,.8)}
.mfa-hari.ini .mfa-no{color:#fff}
@media(hover:hover) and (pointer:fine){.mfa-hari:hover{transform:translateY(-2px);box-shadow:0 10px 22px -12px rgba(43,19,48,.45)}}
.mfa-hari.pilih{box-shadow:0 0 0 2.5px var(--ds-teks,#2B1330),0 14px 26px -12px rgba(43,19,48,.55)}
.mfa-kosong{display:flex;justify-content:center;padding-top:14px;font-size:calc(14px*var(--sh,1));font-weight:600;color:var(--ds-teks-samar,#6D5873);opacity:.35;pointer-events:none}
.mfa-cn{position:absolute;top:9px;right:9px;width:15px;height:15px;border-radius:50%;background:conic-gradient(var(--ds-ok,#1E9E5A) var(--p,0%),color-mix(in srgb,var(--ds-teks,#2B1330) 16%,transparent) 0)}
.mfa-cn::after{content:"";position:absolute;inset:3.5px;border-radius:50%;background:color-mix(in srgb,var(--ds-kertas,#fff) 88%,transparent)}
.mfa-cn.tuntas{background:var(--ds-ok,#1E9E5A)}.mfa-cn.tuntas::after{inset:4px;background:#fff;border-radius:50%;clip-path:polygon(0 55%,30% 100%,100% 8%,86% 0,30% 72%,14% 44%)}
.mfa-hari.ini .mfa-cn{background:conic-gradient(#fff var(--p,0%),rgba(255,255,255,.35) 0)}.mfa-hari.ini .mfa-cn::after{background:var(--ds-pink-dalam,#C00E6E)}
.mfa-hari.ini .mfa-cn.tuntas{background:#fff}.mfa-hari.ini .mfa-cn.tuntas::after{background:var(--ds-ok,#1E9E5A)}
.mfa-titik{display:flex;gap:3px;height:7px;align-items:center}
.mfa-titik i{width:7px;height:7px;border-radius:50%;background:var(--c,var(--ds-pink,#FF1D86));box-shadow:0 0 0 1.5px color-mix(in srgb,var(--ds-kertas,#fff) 70%,transparent)}
.mfa-mini{display:none}

/* kolom kanan */
.mfa-panel{box-sizing:border-box;margin:0;padding:16px;border:1px solid var(--tepi);border-radius:30px;background:var(--kaca);backdrop-filter:blur(18px) saturate(1.3);-webkit-backdrop-filter:blur(18px) saturate(1.3);box-shadow:0 18px 40px -24px rgba(43,19,48,.35);display:flex;flex-direction:column;gap:12px}
.mfa-tgl{display:flex;align-items:center;gap:14px;margin:0}
.mfa-tgl-besar{flex:none;width:66px;padding:8px 0 7px;border-radius:20px;display:flex;flex-direction:column;align-items:center;gap:1px;background:var(--ds-teks,#2B1330);color:var(--ds-latar,#FFF8F1)}
.mfa-tgl-besar.ini{background:linear-gradient(150deg,var(--ds-pink,#FF1D86),var(--ds-pink-dalam,#C00E6E));color:#fff}
.mfa-tgl-besar small{font-size:calc(10px*var(--sh,1));font-weight:800;letter-spacing:.06em;text-transform:uppercase;opacity:.85}
.mfa-tgl-besar b{font-family:var(--ds-huruf-judul,inherit);font-weight:400;font-size:calc(34px*var(--sh,1));line-height:1;font-variant-numeric:tabular-nums}
.mfa-tgl-ket{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.mfa-tgl-ket b{font-size:calc(16px*var(--sh,1));font-weight:800;line-height:1.25}
.mfa-tgl-ket small{color:var(--ds-teks-samar,#6D5873);font-size:calc(12.5px*var(--sh,1));font-weight:600}
.mfa-cincin{flex:none;position:relative;width:48px;height:48px;border-radius:50%;background:conic-gradient(var(--ds-ok,#1E9E5A) var(--p,0%),color-mix(in srgb,var(--ds-teks,#2B1330) 12%,transparent) 0);display:grid;place-items:center}
.mfa-cincin::before{content:"";position:absolute;inset:6px;border-radius:50%;background:color-mix(in srgb,var(--ds-kertas,#fff) 92%,transparent)}
.mfa-cincin i{position:relative;font-style:normal;font-size:calc(11px*var(--sh,1));font-weight:800;font-variant-numeric:tabular-nums}
/* denyut langsung: sedang berjalan / berikutnya */
.mfa-live{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:16px;font-weight:700;font-size:calc(13px*var(--sh,1));line-height:1.3;background:color-mix(in srgb,var(--ds-teks,#2B1330) 7%,transparent)}
.mfa-live i{flex:none;width:9px;height:9px;border-radius:50%;background:var(--ds-teks-samar,#6D5873)}
.mfa-live span{min-width:0;overflow-wrap:anywhere}
.mfa-live.st-jalan{background:color-mix(in srgb,var(--ds-pink,#FF1D86) 14%,transparent);color:var(--ds-link,#B80D68)}
.mfa-live.st-jalan i{background:var(--ds-pink,#FF1D86);animation:mfa-ping 1.6s ease-out infinite}
.mfa-live.st-nanti i{background:var(--ds-emas-dalam,#C98600)}
.mfa-live.st-lewat{background:var(--ds-bahaya-muda,#FFE1E7);color:var(--ds-bahaya-teks,#B3142F)}.mfa-live.st-lewat i{background:var(--ds-bahaya,#D8294B)}
.mfa-live.st-selesai{background:var(--ds-ok-muda,#DDF5E8);color:var(--ds-ok-teks,#0F6B3A)}.mfa-live.st-selesai i{background:var(--ds-ok,#1E9E5A)}
@keyframes mfa-ping{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--ds-pink,#FF1D86) 60%,transparent)}100%{box-shadow:0 0 0 9px transparent}}
/* garis waktu */
.mfa-g-wrap{display:flex;flex-direction:column;gap:8px}
.mfa-garis{position:relative;height:42px}
.mfa-g-rel{position:absolute;left:0;right:0;top:8px;height:16px;border-radius:99px;background:color-mix(in srgb,var(--ds-teks,#2B1330) 9%,transparent)}
.mfa-g-blok{position:absolute;top:-2px;height:20px;border-radius:8px;background:var(--c,var(--ds-pink,#FF1D86));box-shadow:0 4px 10px -4px var(--c,var(--ds-pink,#FF1D86));min-width:8px}
.mfa-g-blok.sel{opacity:.38;box-shadow:none}
.mfa-g-skrg{position:absolute;top:-6px;width:3px;height:28px;margin-left:-1.5px;border-radius:3px;background:var(--ds-teks,#2B1330)}
.mfa-g-skrg::before{content:"";position:absolute;top:-4px;left:50%;width:9px;height:9px;margin-left:-4.5px;border-radius:50%;background:var(--ds-teks,#2B1330);border:2px solid var(--ds-kertas,#fff)}
.mfa-g-skala{position:absolute;left:0;right:0;top:28px;height:12px;font-size:calc(10px*var(--sh,1));font-weight:700;color:var(--ds-teks-samar,#6D5873)}
.mfa-g-skala span{position:absolute;transform:translateX(-50%);font-variant-numeric:tabular-nums}
.mfa-g-skala span:first-child{transform:none}.mfa-g-skala span:last-child{transform:translateX(-100%)}
.mfa-celah{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:40px;padding:0 14px;border-radius:14px;border:1.5px dashed color-mix(in srgb,var(--ds-pink,#FF1D86) 55%,transparent);background:transparent;color:var(--ds-link,#B80D68);font:inherit;font-size:calc(12.5px*var(--sh,1));cursor:pointer}
.mfa-celah b{font-weight:800}.mfa-celah span{font-weight:600;opacity:.85}
@media(hover:hover) and (pointer:fine){.mfa-celah:hover{background:var(--ds-pink-tipis,#FFF1F8)}}

/* daftar kegiatan */
.mfa-daftar{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;list-style:none}
.mfa-item{position:relative;display:grid;grid-template-columns:40px minmax(0,1fr) 40px;column-gap:12px;align-items:start;padding:11px 6px 10px 12px;border:0;border-radius:20px;background:color-mix(in srgb,var(--c,var(--ds-pink,#FF1D86)) 11%,color-mix(in srgb,var(--ds-kertas,#fff) 70%,transparent))}
.mfa-item .mfa-lencana{grid-column:1;grid-row:1}.mfa-item .mfa-isi{grid-column:2;grid-row:1}.mfa-item .mfa-cek{grid-column:3;grid-row:1}
.mfa-lencana{flex:none;width:40px;height:40px;border-radius:14px;display:grid;place-items:center;color:#fff;background:var(--c,var(--ds-pink,#FF1D86))}
.mfa-lencana svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.mfa-cek{flex:none;width:var(--ds-tap,44px);height:var(--ds-tap,44px);margin:-3px 0 0;border:0;background:transparent;cursor:pointer;display:grid;place-items:center;padding:0;border-radius:50%}
.mfa-cek span{width:28px;height:28px;border-radius:50%;border:2.5px solid var(--c,var(--ds-pink,#FF1D86));display:grid;place-items:center;color:#fff;background:transparent;transition:background-color .15s,transform .2s var(--ds-ease,ease)}
.mfa-cek:active span{transform:scale(.86)}
.mfa-cek span svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;opacity:0}
.mfa-item.sel .mfa-cek span{background:var(--c,var(--ds-pink,#FF1D86))}.mfa-item.sel .mfa-cek span svg{opacity:1}
.mfa-judul{font-size:calc(15px*var(--sh,1));line-height:1.3}
.mfa-isi>*{vertical-align:middle}
.mfa-jam{margin:3px 4px 0 0;font-variant-numeric:tabular-nums;background:var(--ds-teks,#2B1330);color:var(--ds-latar,#FFF8F1);letter-spacing:.02em}
.mfa-aksi{margin-top:8px}
.mfa-aksi button{min-height:30px;padding:0 11px}
.mfa-info{margin:0;padding:18px 16px;border:0;border-radius:20px;display:flex;flex-direction:column;align-items:center;gap:3px;text-align:center;color:var(--ds-teks-samar,#6D5873);background:color-mix(in srgb,var(--ds-pink,#FF1D86) 8%,transparent)}
.mfa-info b{color:var(--ds-teks,#2B1330);font-size:calc(15px*var(--sh,1))}
.mfa-info button{margin-top:8px}
.mfa-muat{animation:mfa-denyut 1.2s ease-in-out infinite}
@keyframes mfa-denyut{50%{opacity:.5}}

/* ketik cepat */
.mfa-cepat{display:flex;flex-direction:column;gap:8px;position:sticky;bottom:calc(10px + env(safe-area-inset-bottom,0px));z-index:3}
.mfa-cepat-pv{display:flex;flex-wrap:wrap;gap:6px}
.mfa-cepat-pv[hidden]{display:none}
.mfa-chip{display:inline-flex;align-items:center;gap:5px;min-height:26px;padding:0 10px;border-radius:999px;font-size:calc(12px*var(--sh,1));font-weight:800;background:var(--ds-kertas,#fff);color:var(--ds-teks,#2B1330);box-shadow:0 2px 8px -3px rgba(43,19,48,.35),inset 0 0 0 1px var(--tepi);animation:mfa-pop .18s var(--ds-ease,ease)}
.mfa-chip-g{background:transparent;box-shadow:none;color:var(--ds-teks-samar,#6D5873);font-weight:700}
.mfa-chip-ik{background:var(--c,var(--ds-pink,#FF1D86));color:#fff;box-shadow:none}
.mfa-chip svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
@keyframes mfa-pop{from{transform:scale(.8);opacity:0}to{transform:none;opacity:1}}
.mfa-cepat-bar{display:flex;align-items:center;gap:6px;padding:6px;border-radius:999px;background:var(--ds-kertas,#fff);box-shadow:0 14px 30px -12px rgba(43,19,48,.45),inset 0 0 0 1.5px var(--tepi)}
.mfa-cepat-in{flex:1;min-width:0;height:44px;border:0;background:transparent;color:var(--ds-teks,#2B1330);font:inherit;font-weight:600;font-size:max(16px,calc(14.5px*var(--sh,1)));padding:0 6px 0 14px}
.mfa-cepat-in:focus{outline:none}
.mfa-cepat-bar:focus-within{box-shadow:0 14px 30px -12px rgba(255,29,134,.55),0 0 0 2.5px var(--ds-pink,#FF1D86)}
.mfa-cepat-kirim{flex:none;width:44px;height:44px;border-radius:50%;border:0;background:linear-gradient(135deg,var(--ds-pink,#FF1D86),var(--ds-pink-tombol,#D10D70));color:#fff;cursor:pointer;display:grid;place-items:center;padding:0;transition:transform .15s var(--ds-ease,ease)}
.mfa-cepat-kirim svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.mfa-cepat-kirim:active{transform:scale(.9)}
.mfa-cepat .mfa-tambah{width:auto;min-height:44px;padding:0 14px;border-radius:999px;border:0;background:color-mix(in srgb,var(--ds-teks,#2B1330) 9%,transparent);color:var(--ds-teks,#2B1330);font:inherit;font-weight:800;font-size:calc(13px*var(--sh,1));display:flex;align-items:center;gap:6px;cursor:pointer}
.mfa-cepat .mfa-tambah svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round}
.mfa-cepat .mfa-tambah:disabled{opacity:.5;cursor:default}
.mfa-simpan{width:100%;min-height:54px;border-radius:999px;border:0;background:linear-gradient(135deg,var(--ds-pink,#FF1D86),var(--ds-pink-tombol,#D10D70));color:#fff;font:inherit;font-weight:800;font-size:calc(15px*var(--sh,1));cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px}
.mfa-simpan:disabled{opacity:.6}
.mfa-bagikan{min-height:36px;margin:0;border-radius:999px;border:0;background:transparent;color:var(--ds-link,#B80D68);font:inherit;font-weight:800;font-size:calc(12.5px*var(--sh,1));cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.mfa-bagikan-ket{display:none}

/* formulir dan layar pilihan */
.mfa-badan.mfa-satu{max-width:760px}
.mfa-satu .mfa-form{padding:20px 18px;border-radius:30px;background:var(--kaca);border:1px solid var(--tepi);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 18px 40px -24px rgba(43,19,48,.35);gap:14px}
.mfa-form input,.mfa-form textarea,.mfa-form select{border-radius:16px}
.mfa-satu .mfa-tombol{position:sticky;bottom:calc(8px + env(safe-area-inset-bottom,0px));z-index:3;padding:8px;margin:6px -8px -8px;border-radius:999px;background:color-mix(in srgb,var(--ds-kertas,#fff) 88%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.mfa-batal{border-radius:999px}

/* tampilan minggu */
.mfa-pk{gap:8px}
.mfa-pk-hari{min-height:64px;padding:10px 14px 10px 10px;border-radius:20px;background:var(--kaca);box-shadow:inset 0 0 0 1px var(--tepi)}
.mfa-pk-hari.ini .mfa-pk-tgl b{background:var(--ds-pink-tombol,#D10D70);color:#fff}
.mfa-pk-tgl{width:46px}
.mfa-pk-tgl b{width:36px;height:36px;margin:2px auto 0;border-radius:50%;display:grid;place-items:center;font-size:calc(17px*var(--sh,1))}
.mfa-pk-hari.pilih{background:color-mix(in srgb,var(--ds-pink,#FF1D86) 13%,var(--ds-kertas,#fff));box-shadow:inset 0 0 0 2px var(--ds-pink,#FF1D86)}
@media(hover:hover) and (pointer:fine){.mfa-pk-hari:hover{background:var(--ds-pink-tipis,#FFF1F8)}}

/* HP: ctl memenuhi baris sendiri */
@media(max-width:699px){
  .mfa-cn{display:none}
  .mfa-cepat{padding:14px 0 4px;margin-top:-8px;background:linear-gradient(to bottom,transparent,color-mix(in srgb,var(--ds-latar,#FFF8F1) 94%,transparent) 28%)}
  .mfa-judul-atas{order:1}.mfa-streak{order:2;padding:5px 11px 5px 8px}.mfa-streak small{display:none}.mfa-tutup{order:3}
  .mfa-ctl{order:5;flex:1 1 100%;display:grid;grid-template-columns:1fr;gap:8px}
  .mfa-mode{width:100%}.mfa-mode button{padding:0}
  .mfa-nav{justify-content:space-between}
  .mfa-grid{padding:8px;gap:4px;border-radius:26px}
}
/* layar lebar */
@media(min-width:700px){
  .mfa-grid{grid-template-rows:auto repeat(var(--br,6),minmax(86px,1fr))}
  .mfa-hari{align-items:stretch;gap:6px;padding:9px 9px 7px}
  .mfa-no{align-self:flex-start;min-width:30px;height:30px}
  .mfa-titik{display:none}
  .mfa-mini{display:flex;flex-direction:column;gap:3px;min-width:0;text-align:left}
  .mfa-mini span{display:block;padding:2px 7px;border-radius:8px;border-left:3px solid var(--c,var(--ds-pink,#FF1D86));background:color-mix(in srgb,var(--c,var(--ds-pink,#FF1D86)) 16%,var(--ds-kertas,#fff));color:var(--ds-teks,#2B1330);font-size:calc(11.5px*var(--sh,1));font-weight:700;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .mfa-mini span.sel{text-decoration:line-through;opacity:.55}
  .mfa-mini em{font-style:normal;font-size:calc(11px*var(--sh,1));font-weight:800;opacity:.8;padding-left:4px}
}
/* desktop: SATU LAYAR, tanpa scroll. Kalender mengisi tinggi; daftar kegiatan menggulir di dalam kartunya bila banyak. */
@media(min-width:960px){
  .mfa-kotak:not(.mfa-sub){overflow:hidden}
  .mfa-kotak:not(.mfa-sub) .mfa-badan:not(.mfa-satu){flex:1 1 0;min-height:0;display:grid;grid-template-columns:minmax(0,1.7fr) minmax(380px,1fr);grid-template-rows:minmax(0,1fr);gap:20px;padding-bottom:20px}
  .mfa-kotak:not(.mfa-sub) .mfa-kiri,.mfa-kotak:not(.mfa-sub) .mfa-kanan{min-height:0}
  .mfa-kotak:not(.mfa-sub) .mfa-kiri>.mfa-grid{flex:1;min-height:0;grid-template-rows:auto repeat(var(--br,6),minmax(0,1fr))}
  .mfa-kotak:not(.mfa-sub) .mfa-kiri>.mfa-pk{flex:1;min-height:0;display:grid;grid-template-rows:repeat(7,minmax(0,1fr));overflow:hidden}
  .mfa-kotak:not(.mfa-sub) .mfa-pk-hari{min-height:0;overflow:hidden}
  .mfa-kotak:not(.mfa-sub) .mfa-kanan{display:flex;flex-direction:column}
  .mfa-kotak:not(.mfa-sub) .mfa-panel{flex:1;min-height:0}
  .mfa-kotak:not(.mfa-sub) .mfa-daftar{flex:1 1 0;min-height:0;overflow-y:auto;padding-right:2px;scrollbar-width:thin}
  .mfa-kotak:not(.mfa-sub) .mfa-info{flex:1 1 auto}
  .mfa-cepat{position:static}
  .mfa-nav{gap:8px}
}
@media(min-width:960px) and (max-height:800px){.mfa-mini span:nth-child(n+2){display:none}.mfa-atas h3{font-size:34px}.mfa-hari{padding:7px 7px 5px}.mfa-grid{padding:8px;gap:5px}}
@media(min-width:960px) and (max-height:640px){.mfa-mini{display:none}.mfa-titik{display:flex}.mfa-garis{display:none}}
@media(max-width:380px){.mfa-tgl-besar{width:58px}.mfa-tgl-besar b{font-size:calc(30px*var(--sh,1))}.mfa-cincin{width:42px;height:42px}.mfa-no{min-width:26px;height:26px;font-size:calc(14px*var(--sh,1))}.mfa-cepat .mfa-tambah span{display:none}.mfa-cepat .mfa-tambah{padding:0 12px}}
@media(prefers-reduced-motion:reduce){.mfa-lembar,.mfa-grid,.mfa-chip,.mfa-live i{animation:none!important}.mfa-ikon-btn,.mfa-hari,.mfa-cek span,.mfa-cepat-kirim{transition:none}}
@media(forced-colors:active){.mfa-hari.pilih,.mfa-pk-hari.pilih{outline:3px solid Highlight}.mfa-hari.ini{outline:2px solid CanvasText}.mfa-cincin,.mfa-cn{forced-color-adjust:none}}

/* ================================================================
   v832: AGENDA MINIMALIS-FUTURISTIK. Satu aksen (pink), garis rambut 1px, tanpa kartu kaca/warna-warni, angka dan label kecil bergaya mono.
   Hanya yang penting tampil: tanggal terpilih, satu baris "berikutnya", daftar kegiatan datar, ketik cepat. Tombol Ubah/Hapus muncul saat disorot.
   Blok ini menimpa gaya v831 di atasnya (nama kelas sama, hanya tampilan berubah). Semua warna dari token --ds-* sehingga mode gelap ikut.
   ================================================================ */
.mfa-lembar{--kaca:transparent;--tepi:color-mix(in srgb,var(--ds-teks,#2B1330) 12%,transparent);--aksen:var(--ds-pink,#FF1D86);--mono:ui-monospace,"SF Mono",SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;--sekat:color-mix(in srgb,var(--ds-kertas,#fff) 70%,transparent);
  background:radial-gradient(52% 42% at 100% 0%,color-mix(in srgb,var(--aksen) 12%,transparent),transparent 72%),radial-gradient(color-mix(in srgb,var(--ds-teks,#2B1330) 14%,transparent) 1px,transparent 1.5px) 0 0/24px 24px,var(--ds-latar,#FFF8F1)}
html[data-tema="gelap"] .mfa-lembar{--tepi:rgba(255,255,255,.12)}

/* kepala: judul + kendali yang tenang */
.mfa-kicker{font-family:var(--mono);font-size:calc(10px*var(--sh,1));font-weight:600;letter-spacing:.18em}
.mfa-atas h3{font-weight:600;letter-spacing:-.045em}
.mfa-thn{font-weight:200;color:var(--aksen)}
.mfa-ikon-btn{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border:1px solid var(--tepi);color:var(--ds-teks,#2B1330)}
.mfa-ikon-btn.mfa-tutup{background:transparent;color:var(--ds-teks,#2B1330)}
@media(hover:hover) and (pointer:fine){.mfa-ikon-btn:hover:not(:disabled),.mfa-ikon-btn.mfa-tutup:hover:not(:disabled){background:transparent;border-color:var(--aksen);box-shadow:0 0 18px -6px var(--aksen)}}
.mfa-mode{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none;border:1px solid var(--tepi)}
.mfa-mode button{font-size:calc(12.5px*var(--sh,1))}
.mfa-ini{border:1px solid var(--tepi);color:var(--ds-link,#B80D68)}
@media(hover:hover) and (pointer:fine){.mfa-ini:hover{background:transparent;border-color:var(--aksen)}}
.mfa-streak{background:transparent;box-shadow:none;border:1px solid color-mix(in srgb,var(--aksen) 45%,transparent);color:var(--ds-link,#B80D68);padding:5px 12px 5px 9px}
.mfa-streak svg{fill:var(--aksen);stroke:none}
.mfa-streak small{display:none}
.mfa-streak b{font-family:var(--mono);font-size:calc(14px*var(--sh,1))}

/* kalender bulan: tanpa kartu; sel = garis rambut; hari ini = satu-satunya yang menyala */
.mfa-grid{background:transparent;border:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;padding:0;gap:6px}
.mfa-nama{font-family:var(--mono);font-size:calc(10px*var(--sh,1));font-weight:600;letter-spacing:.16em;text-transform:uppercase}
.mfa-hari{background:transparent;box-shadow:inset 0 0 0 1px var(--tepi);border-radius:16px;transition:box-shadow .15s ease,background-color .15s ease}
.mfa-no{font-family:var(--mono);font-weight:600;font-size:calc(13px*var(--sh,1))}
.mfa-cn{display:none}
.mfa-hari.ini{background:color-mix(in srgb,var(--aksen) 7%,transparent);color:var(--ds-teks,#2B1330);box-shadow:inset 0 0 0 1px var(--aksen),0 0 26px -10px var(--aksen)}
.mfa-hari.ini .mfa-no{background:var(--aksen);color:#fff}
@media(hover:hover) and (pointer:fine){.mfa-hari:hover{transform:none;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--aksen) 60%,transparent)}.mfa-hari.ini:hover{box-shadow:inset 0 0 0 1px var(--aksen),0 0 26px -8px var(--aksen)}}
.mfa-hari.pilih:not(.ini){box-shadow:inset 0 0 0 1.5px var(--ds-teks,#2B1330)}
.mfa-hari.pilih.ini{box-shadow:inset 0 0 0 1.5px var(--aksen),0 0 30px -6px var(--aksen)}
.mfa-titik i{box-shadow:0 0 6px -1px var(--c,var(--aksen))}
.mfa-kosong{opacity:.28;font-family:var(--mono);font-size:calc(13px*var(--sh,1))}
@media(min-width:700px){
  .mfa-mini span{padding:0 0 0 6px;border-radius:0;background:none;border-left:2px solid var(--c,var(--aksen));font-weight:600;color:var(--ds-teks-redup,#5E4A63)}
  .mfa-mini em{font-family:var(--mono);opacity:.55;padding-left:8px}
}

/* panel hari terpilih: satu kolom tenang */
.mfa-panel{padding:22px;gap:16px;border-radius:24px;background:var(--sekat);border:1px solid var(--tepi);box-shadow:none;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.mfa-tgl{position:relative;gap:16px;padding-bottom:16px}
.mfa-tgl-besar,.mfa-tgl-besar.ini{width:auto;padding:0;border-radius:0;align-items:flex-start;background:none;color:var(--ds-teks,#2B1330)}
.mfa-tgl-besar small{font-family:var(--mono);font-size:calc(10px*var(--sh,1));letter-spacing:.18em;opacity:.65}
.mfa-tgl-besar b{font-size:calc(54px*var(--sh,1));font-weight:200;letter-spacing:-.05em;line-height:.95}
.mfa-tgl-besar.ini b{color:var(--aksen);text-shadow:0 0 30px color-mix(in srgb,var(--aksen) 42%,transparent)}
.mfa-tgl-ket b{font-size:calc(15px*var(--sh,1));font-weight:700}
.mfa-tgl-ket small{font-family:var(--mono);font-size:calc(11.5px*var(--sh,1));font-weight:500}
/* cincin jadi satu garis tipis di bawah kepala panel */
.mfa-cincin{position:absolute;left:0;right:0;bottom:0;width:auto;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--aksen) var(--p,0%),color-mix(in srgb,var(--ds-teks,#2B1330) 13%,transparent) 0)}
.mfa-cincin::before,.mfa-cincin i{display:none}
/* satu baris "berikutnya" tanpa kotak */
.mfa-live,.mfa-live.st-jalan,.mfa-live.st-nanti,.mfa-live.st-lewat,.mfa-live.st-selesai,.mfa-live.st-kosong{padding:0;border-radius:0;background:none;gap:10px;font-size:calc(13px*var(--sh,1));font-weight:600;color:var(--ds-teks-redup,#5E4A63)}
.mfa-live.st-jalan{color:var(--ds-link,#B80D68)}
.mfa-live.st-lewat{color:var(--ds-bahaya-teks,#B3142F)}
.mfa-live.st-selesai{color:var(--ds-ok-teks,#0F6B3A)}
.mfa-live span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mfa-live i{box-shadow:0 0 8px currentColor}
/* garis waktu setipis benang */
.mfa-garis{height:34px}
.mfa-g-rel{top:8px;height:2px;border-radius:2px;background:color-mix(in srgb,var(--ds-teks,#2B1330) 18%,transparent)}
.mfa-g-blok{top:-4px;height:10px;border-radius:99px;min-width:10px;box-shadow:0 0 12px -2px var(--c,var(--aksen))}
.mfa-g-skrg{top:-7px;height:16px;width:2px;margin-left:-1px;background:var(--aksen);box-shadow:0 0 10px var(--aksen)}
.mfa-g-skrg::before{top:-3px;width:7px;height:7px;margin-left:-3.5px;border:0;background:var(--aksen)}
.mfa-g-skala{top:18px;font-family:var(--mono);font-weight:500;opacity:.75}
.mfa-celah{min-height:28px;padding:0;border:0;border-radius:0;justify-content:flex-start;gap:12px;font-family:var(--mono);font-size:calc(12px*var(--sh,1))}
.mfa-celah::after{content:"+ isi";margin-left:auto;padding:3px 10px;border-radius:99px;border:1px solid color-mix(in srgb,var(--aksen) 50%,transparent);font-size:calc(11px*var(--sh,1));font-weight:700}
@media(hover:hover) and (pointer:fine){.mfa-celah:hover{background:transparent}.mfa-celah:hover::after{background:var(--ds-pink-tipis,#FFF1F8)}}

/* daftar kegiatan: baris datar bergaris rambut, bukan kartu warna */
.mfa-daftar{gap:0}
.mfa-item,.mfa-item.st-jalan,.mfa-item.st-lewat{border-radius:0;background:none}
.mfa-item{grid-template-columns:32px minmax(0,1fr) 22px;column-gap:12px;padding:14px 0;border-top:1px solid var(--tepi)}
.mfa-item:first-child{border-top:0}
.mfa-item .mfa-cek{grid-column:1;width:44px;height:44px;margin:-10px -12px 0 -8px}
.mfa-item .mfa-isi{grid-column:2}
.mfa-item .mfa-lencana{grid-column:3;width:22px;height:22px;border-radius:0;background:none;color:var(--c,var(--aksen));margin-top:1px}
.mfa-lencana svg{width:18px;height:18px;stroke-width:1.8}
.mfa-cek span{width:22px;height:22px;border-width:1.5px}
.mfa-cek span svg{width:14px;height:14px}
.mfa-item.sel .mfa-cek span{box-shadow:0 0 14px -3px var(--c,var(--aksen))}
.mfa-judul{font-weight:700}
.mfa-jam{padding:0;margin:3px 10px 0 0;border-radius:0;background:none;color:var(--ds-teks-redup,#5E4A63);font-family:var(--mono);font-size:calc(12.5px*var(--sh,1));font-weight:600;letter-spacing:0}
.mfa-st{margin:3px 10px 0 0;padding:0;border-radius:0;background:none;font-size:calc(12px*var(--sh,1));font-weight:700}
.mfa-st::before{content:"";display:inline-block;width:6px;height:6px;margin-right:5px;border-radius:50%;background:currentColor;vertical-align:1px}
.mfa-st-nanti,.mfa-st-selesai{display:none}
.mfa-st-jalan{background:none;color:var(--ds-link,#B80D68)}
.mfa-st-lewat{background:none;color:var(--ds-bahaya-teks,#B3142F)}
.mfa-rutin{margin:3px 10px 0 0;padding:0;border:0;border-radius:0;font-size:calc(12px*var(--sh,1));font-weight:600;color:var(--ds-teks-samar,#6D5873)}
.mfa-cat{margin:5px 0 0;font-size:calc(13px*var(--sh,1));color:var(--ds-teks-samar,#6D5873)}
/* Ubah / Hapus: tautan teks yang tenang; di mouse baru muncul saat baris disorot */
.mfa-aksi{gap:16px;margin-top:8px}
.mfa-aksi button{min-height:28px;padding:0;border:0;border-radius:0;background:none;font-size:calc(12.5px*var(--sh,1));font-weight:700;color:var(--ds-teks-samar,#6D5873);text-decoration:underline;text-underline-offset:3px}
.mfa-aksi .mfa-hapus{color:var(--ds-bahaya-teks,#B3142F)}
@media(hover:hover) and (pointer:fine){
  .mfa-aksi{position:absolute;top:10px;right:0;margin:0;padding:2px 0 2px 28px;opacity:0;transition:opacity .15s ease;background:linear-gradient(90deg,transparent,var(--ds-kertas,#fff) 28px)}
  .mfa-item{position:relative}.mfa-item .mfa-isi{position:static}
  .mfa-item:hover .mfa-aksi,.mfa-item:focus-within .mfa-aksi{opacity:1}
}
.mfa-info{background:none;border:1px dashed var(--tepi);border-radius:18px;padding:22px 16px}

/* ketik cepat: satu garis bercahaya saat aktif */
.mfa-cepat-bar{padding:5px;background:transparent;box-shadow:none;border:1px solid var(--tepi);transition:border-color .15s ease,box-shadow .15s ease}
.mfa-cepat-bar:focus-within{box-shadow:0 0 0 1px var(--aksen),0 0 28px -8px var(--aksen);border-color:var(--aksen)}
.mfa-cepat-in{font-weight:500}
.mfa-cepat-kirim{width:40px;height:40px;background:var(--aksen);box-shadow:0 0 18px -6px var(--aksen)}
.mfa-cepat .mfa-tambah{background:transparent;color:var(--ds-teks-redup,#5E4A63);min-height:40px;padding:0 12px 0 8px;font-weight:700}
@media(hover:hover) and (pointer:fine){.mfa-cepat .mfa-tambah:hover:not(:disabled){color:var(--ds-teks,#2B1330)}}
.mfa-chip{box-shadow:inset 0 0 0 1px var(--tepi);background:transparent;font-family:var(--mono);font-weight:600}
.mfa-chip-ik{box-shadow:none;background:var(--c,var(--aksen));font-family:inherit}
.mfa-bagikan{align-self:center;font-weight:600;color:var(--ds-teks-samar,#6D5873);text-decoration:none;border-bottom:1px solid var(--tepi);border-radius:0;min-height:30px}
@media(hover:hover) and (pointer:fine){.mfa-bagikan:hover{color:var(--ds-link,#B80D68);border-color:var(--aksen)}}

/* tampilan minggu: satu baris per hari, tanggal tidak lagi terpotong */
.mfa-pk{gap:6px}
.mfa-pk-hari{align-items:center;min-height:56px;padding:6px 16px 6px 14px;border-radius:16px;background:transparent;box-shadow:inset 0 0 0 1px var(--tepi);gap:16px}
.mfa-pk-tgl{width:auto;min-width:76px;display:flex;align-items:center;gap:10px;text-align:left}
.mfa-pk-tgl small{display:block;width:30px;font-family:var(--mono);font-size:calc(10.5px*var(--sh,1));font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.mfa-pk-tgl b{width:34px;height:34px;margin:0;font-family:var(--mono);font-size:calc(15px*var(--sh,1));line-height:1}
.mfa-pk-hari.ini{box-shadow:inset 0 0 0 1px var(--aksen),0 0 22px -10px var(--aksen);background:color-mix(in srgb,var(--aksen) 6%,transparent)}
.mfa-pk-hari.ini .mfa-pk-tgl b{background:var(--aksen)}
.mfa-pk-hari.pilih:not(.ini){background:transparent;box-shadow:inset 0 0 0 1.5px var(--ds-teks,#2B1330)}
.mfa-pk-hari.pilih.ini{box-shadow:inset 0 0 0 1.5px var(--aksen),0 0 26px -8px var(--aksen)}
@media(hover:hover) and (pointer:fine){.mfa-pk-hari:hover{background:transparent;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--aksen) 60%,transparent)}}
.mfa-pk-isi{flex-direction:row;flex-wrap:wrap;gap:4px 16px}
.mfa-pk-chip{padding-left:13px;font-weight:600}
.mfa-pk-kosong{opacity:.6}

/* formulir dan pilihan: kartu tipis yang sama */
.mfa-satu .mfa-form{background:var(--sekat);border:1px solid var(--tepi);box-shadow:none;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:24px}
.mfa-form input,.mfa-form textarea,.mfa-form select{background:transparent;border:1px solid var(--tepi);border-radius:14px}
.mfa-form input:focus,.mfa-form textarea:focus,.mfa-form select:focus{border-color:var(--aksen);box-shadow:0 0 0 1px var(--aksen),0 0 22px -8px var(--aksen)}
.mfa-satu .mfa-tombol{background:var(--sekat);box-shadow:inset 0 0 0 1px var(--tepi)}
.mfa-simpan{background:var(--aksen);box-shadow:0 0 22px -8px var(--aksen)}
.mfa-batal{border:1px solid var(--tepi)}
@media(max-width:699px){
  .mfa-panel{padding:18px;border-radius:22px}
  .mfa-item{padding:12px 0}
  .mfa-pk-hari{min-height:52px;gap:12px}
  .mfa-pk-isi{gap:2px 12px}
}
@media(prefers-reduced-motion:reduce){.mfa-cepat-bar,.mfa-hari,.mfa-aksi{transition:none}}
/* v832 (susulan): bilah ketik cepat tak tembus pandang saat melayang di HP; kendali HP satu baris */
.mfa-cepat-bar{background:color-mix(in srgb,var(--ds-kertas,#fff) 92%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
@media(max-width:699px){
  .mfa-ctl{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px}
  .mfa-mode{width:auto}.mfa-mode button{padding:0 14px}
  .mfa-nav{justify-content:flex-end;gap:4px}
  .mfa-ini{padding:0 12px}
}
@media(max-width:360px){.mfa-mode button{padding:0 10px}.mfa-ini{padding:0 8px}}
/* v832 (susulan): baris tanggal/jam di formulir tidak meluber di HP */
.mfa-baris>*{min-width:0}.mfa-form input[type=date],.mfa-form input[type=time]{min-width:0}
@media(max-width:699px){.mfa-baris{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}.mfa-jamwrap .mfa-ikon-btn{min-width:40px;min-height:40px;width:40px;height:40px}}

/* ================================================================
   v833: SATU TAMPILAN (Bulan + Minggu digabung), HURUF SATSETWATWET (Plus Jakarta Sans + Lilita One untuk angka/judul), WARNA PALET SATSETWATWET
   (pink, emas, ungu, biru, hijau, jingga). Menimpa v832: tetap ringan, tapi hidup. Jalur pekan 7 hari di atas panel menggantikan tampilan Minggu.
   ================================================================ */
.mfa-lembar{--mono:var(--ds-huruf,inherit);--judul:var(--ds-huruf-judul,var(--ds-huruf,inherit));--aksen:var(--ds-pink,#FF1D86);--tepi:color-mix(in srgb,var(--ds-pink,#FF1D86) 14%,color-mix(in srgb,var(--ds-teks,#2B1330) 6%,transparent));--sekat:color-mix(in srgb,var(--ds-kertas,#fff) 74%,transparent);font-variant-numeric:tabular-nums;
  background:radial-gradient(60% 55% at 96% -6%,color-mix(in srgb,var(--ds-pink,#FF1D86) 32%,transparent),transparent 70%),radial-gradient(46% 52% at -6% 106%,color-mix(in srgb,var(--ds-emas,#FFC738) 40%,transparent),transparent 70%),radial-gradient(36% 42% at 58% 48%,color-mix(in srgb,#9B4DFF 15%,transparent),transparent 70%),radial-gradient(color-mix(in srgb,var(--ds-teks,#2B1330) 8%,transparent) 1px,transparent 1.5px) 0 0/24px 24px,var(--ds-latar,#FFF8F1)}
html[data-tema="gelap"] .mfa-lembar{--tepi:rgba(255,143,212,.2);--sekat:color-mix(in srgb,var(--ds-kertas,#241531) 70%,transparent)}

/* kepala */
.mfa-kicker{font-weight:800;letter-spacing:.1em}
.mfa-atas h3{font-family:var(--judul);font-weight:400;letter-spacing:-.01em;font-size:clamp(32px,5.2vw,50px)}
.mfa-atas h3.mfa-pekan{font-family:var(--judul)}
.mfa-thn{font-weight:400;color:var(--aksen)}
.mfa-ikon-btn{background:var(--sekat);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.mfa-ikon-btn.mfa-tutup{background:var(--ds-teks,#2B1330);color:var(--ds-latar,#FFF8F1);border-color:transparent}
@media(hover:hover) and (pointer:fine){.mfa-ikon-btn:hover:not(:disabled){background:var(--ds-pink-tipis,#FFF1F8)}.mfa-ikon-btn.mfa-tutup:hover:not(:disabled){background:var(--ds-pink-tombol,#D10D70);box-shadow:none}}
.mfa-ini{background:var(--ds-pink-tipis,#FFF1F8);border:1.5px solid var(--aksen);font-weight:800}
@media(hover:hover) and (pointer:fine){.mfa-ini:hover{background:var(--aksen);color:#fff}}
.mfa-streak{background:linear-gradient(135deg,#FFC738,#FF8A2B);border:0;color:#3A1A00;box-shadow:0 8px 18px -8px rgba(255,138,43,.7)}
.mfa-streak svg{fill:#fff;stroke:#3A1A00;stroke-width:1.6}
.mfa-streak b{font-family:var(--judul);font-weight:400;font-size:calc(17px*var(--sh,1))}

/* kalender: sel berwarna menurut kegiatan, pekan terpilih diberi bingkai lembut */
.mfa-nama{font-family:inherit;font-weight:800;letter-spacing:.06em;font-size:calc(11px*var(--sh,1))}
.mfa-hari{background:color-mix(in srgb,var(--ds-kertas,#fff) 76%,transparent);box-shadow:inset 0 0 0 1px var(--tepi);border-radius:18px}
.mfa-hari.ada{background:color-mix(in srgb,var(--c) 15%,color-mix(in srgb,var(--ds-kertas,#fff) 78%,transparent))}
.mfa-hari.pekan:not(.ini){box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--aksen) 40%,transparent)}
.mfa-no{font-family:var(--judul);font-weight:400;font-size:calc(17px*var(--sh,1))}
.mfa-hari.akhir .mfa-no{color:var(--ds-link,#B80D68)}
.mfa-hari.ini{background:linear-gradient(145deg,var(--ds-pink,#FF1D86),var(--ds-pink-dalam,#C00E6E));color:#fff;box-shadow:0 14px 26px -12px rgba(255,29,134,.85)}
.mfa-hari.ini .mfa-no{background:rgba(255,255,255,.22);color:#fff}
.mfa-hari.pilih:not(.ini){box-shadow:0 0 0 2.5px var(--aksen),0 12px 22px -12px rgba(255,29,134,.6)}
.mfa-hari.pilih.ini{box-shadow:0 0 0 2.5px var(--ds-teks,#2B1330),0 14px 26px -10px rgba(255,29,134,.8)}
@media(hover:hover) and (pointer:fine){.mfa-hari:hover{transform:translateY(-2px);box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--aksen) 55%,transparent),0 10px 20px -12px rgba(43,19,48,.45)}.mfa-hari.ini:hover{box-shadow:0 16px 28px -12px rgba(255,29,134,.9)}}
.mfa-titik i{width:8px;height:8px;box-shadow:0 0 0 1.5px color-mix(in srgb,var(--ds-kertas,#fff) 75%,transparent)}
@media(min-width:700px){
  .mfa-mini span{padding:2px 7px;border-radius:8px;border-left:3px solid var(--c,var(--aksen));background:color-mix(in srgb,var(--c,var(--aksen)) 22%,var(--ds-kertas,#fff));color:var(--ds-teks,#2B1330);font-weight:700}
  .mfa-mini em{font-family:inherit;opacity:.8;padding-left:4px;font-weight:800}
  .mfa-mini span:nth-child(2){display:none}
}
@media(min-width:700px) and (min-height:720px){.mfa-mini span:nth-child(2){display:block}}

/* panel */
.mfa-panel{background:var(--sekat);border:1px solid var(--tepi);border-radius:30px;padding:16px;gap:12px;box-shadow:0 18px 40px -24px rgba(43,19,48,.35);backdrop-filter:blur(16px) saturate(1.3);-webkit-backdrop-filter:blur(16px) saturate(1.3)}
/* jalur pekan: 7 hari sekilas, ketuk untuk pindah hari */
.mfa-sp{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.mfa-sp-h{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:0;padding:7px 2px 6px;border:0;border-radius:16px;background:color-mix(in srgb,var(--ds-kertas,#fff) 80%,transparent);box-shadow:inset 0 0 0 1px var(--tepi);color:var(--ds-teks,#2B1330);font:inherit;cursor:pointer;transition:transform .15s var(--ds-ease,ease),box-shadow .15s}
.mfa-sp-h small{font-size:calc(10.5px*var(--sh,1));font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ds-teks-samar,#6D5873)}
.mfa-sp-h b{font-family:var(--judul);font-weight:400;font-size:calc(19px*var(--sh,1));line-height:1.1}
.mfa-sp-t{display:flex;gap:3px;height:7px;align-items:center}
.mfa-sp-t i{width:7px;height:7px;border-radius:50%;background:var(--c,var(--aksen))}
.mfa-sp-h.ini{background:linear-gradient(145deg,var(--ds-pink,#FF1D86),var(--ds-pink-dalam,#C00E6E));box-shadow:0 10px 20px -10px rgba(255,29,134,.8);color:#fff}
.mfa-sp-h.ini small{color:rgba(255,255,255,.85)}
.mfa-sp-h.ini .mfa-sp-t i{box-shadow:0 0 0 1.5px rgba(255,255,255,.7)}
.mfa-sp-h.pilih:not(.ini){background:var(--ds-pink-tipis,#FFF1F8);box-shadow:inset 0 0 0 2px var(--aksen)}
.mfa-sp-h.pilih.ini{outline:2.5px solid var(--ds-teks,#2B1330);outline-offset:1px}
.mfa-sp-h:focus-visible{outline:none;box-shadow:var(--ds-fokus)}
@media(hover:hover) and (pointer:fine){.mfa-sp-h:hover{transform:translateY(-2px)}}
/* tanggal terpilih: lencana berwarna */
.mfa-tgl{padding-bottom:12px;gap:14px}
.mfa-tgl-besar,.mfa-tgl-besar.ini{width:66px;padding:8px 0 7px;border-radius:20px;align-items:center;background:linear-gradient(150deg,#9B4DFF,#5B6CFF);color:#fff}
.mfa-tgl-besar.ini{background:linear-gradient(150deg,var(--ds-pink,#FF1D86),var(--ds-pink-dalam,#C00E6E))}
.mfa-tgl-besar small{font-family:inherit;font-weight:800;letter-spacing:.06em;opacity:.9}
.mfa-tgl-besar b,.mfa-tgl-besar.ini b{font-family:var(--judul);font-weight:400;font-size:calc(34px*var(--sh,1));letter-spacing:0;line-height:1;color:#fff;text-shadow:none}
.mfa-tgl-ket b{font-size:calc(16px*var(--sh,1));font-weight:800}
.mfa-tgl-ket small{font-family:inherit;font-size:calc(12.5px*var(--sh,1));font-weight:700}
.mfa-cincin{height:4px;background:linear-gradient(90deg,var(--ds-pink,#FF1D86),var(--ds-emas,#FFC738) var(--p,0%),color-mix(in srgb,var(--ds-teks,#2B1330) 12%,transparent) var(--p,0%))}
/* baris langsung kembali berwarna */
.mfa-live,.mfa-live.st-kosong{padding:10px 14px;border-radius:16px;background:color-mix(in srgb,var(--ds-teks,#2B1330) 7%,transparent);font-weight:700}
.mfa-live.st-jalan{background:color-mix(in srgb,var(--ds-pink,#FF1D86) 14%,transparent);color:var(--ds-link,#B80D68)}
.mfa-live.st-nanti{background:var(--ds-awas-muda,#FFF1CC);color:var(--ds-awas-teks,#7A5200)}
.mfa-live.st-nanti i{background:var(--ds-emas-dalam,#C98600)}
.mfa-live.st-lewat{background:var(--ds-bahaya-muda,#FFE1E7);color:var(--ds-bahaya-teks,#B3142F)}
.mfa-live.st-selesai{background:var(--ds-ok-muda,#DDF5E8);color:var(--ds-ok-teks,#0F6B3A)}
.mfa-live span{white-space:normal}
.mfa-live i{box-shadow:none}
/* garis waktu berwarna */
.mfa-garis{height:40px}
.mfa-g-rel{top:8px;height:14px;border-radius:99px;background:color-mix(in srgb,var(--ds-teks,#2B1330) 9%,transparent)}
.mfa-g-blok{top:-3px;height:20px;border-radius:8px;box-shadow:0 4px 10px -4px var(--c,var(--aksen))}
.mfa-g-skrg{top:-6px;height:26px;width:3px;margin-left:-1.5px;background:var(--ds-teks,#2B1330);box-shadow:none}
.mfa-g-skrg::before{top:-4px;width:9px;height:9px;margin-left:-4.5px;border:2px solid var(--ds-kertas,#fff);background:var(--ds-teks,#2B1330)}
.mfa-g-skala{top:27px;font-family:inherit;font-weight:700;opacity:.9}
.mfa-celah{min-height:38px;padding:0 14px;border:1.5px dashed color-mix(in srgb,var(--aksen) 55%,transparent);border-radius:14px;justify-content:space-between;font-family:inherit;font-size:calc(12.5px*var(--sh,1))}
.mfa-celah::after{content:none}
@media(hover:hover) and (pointer:fine){.mfa-celah:hover{background:var(--ds-pink-tipis,#FFF1F8)}}
.mfa-celah span::after{content:" · isi"}
/* kegiatan: kartu berwarna ringan dengan ikon solid */
.mfa-daftar{gap:8px}
.mfa-item,.mfa-item.st-jalan,.mfa-item.st-lewat{border-radius:20px;border-top:0;background:color-mix(in srgb,var(--c,var(--aksen)) 13%,color-mix(in srgb,var(--ds-kertas,#fff) 72%,transparent))}
.mfa-item.st-lewat{background:color-mix(in srgb,#D8294B 11%,color-mix(in srgb,var(--ds-kertas,#fff) 72%,transparent))}
.mfa-item{grid-template-columns:38px minmax(0,1fr) 40px;column-gap:12px;padding:11px 6px 10px 12px;position:relative}
.mfa-item .mfa-lencana{grid-column:1;width:38px;height:38px;border-radius:13px;background:var(--c,var(--aksen));color:#fff;margin:0}
.mfa-item .mfa-isi{grid-column:2}
.mfa-item .mfa-cek{grid-column:3;width:44px;height:44px;margin:-3px 0 0}
.mfa-lencana svg{width:21px;height:21px;stroke-width:2}
.mfa-cek span{width:28px;height:28px;border-width:2.5px}
.mfa-cek span svg{width:17px;height:17px}
.mfa-item.sel .mfa-cek span{box-shadow:none}
.mfa-jam{padding:1px 9px;margin:3px 6px 0 0;border-radius:99px;background:color-mix(in srgb,var(--c,var(--aksen)) 26%,transparent);color:var(--ds-teks,#2B1330);font-family:inherit;font-weight:800;font-size:calc(12px*var(--sh,1))}
.mfa-rutin{padding:1px 9px;margin:3px 6px 0 0;border-radius:99px;background:color-mix(in srgb,var(--ds-teks,#2B1330) 7%,transparent);color:var(--ds-teks-redup,#5E4A63);font-weight:700}
.mfa-st{margin:3px 6px 0 0}
@media(hover:hover) and (pointer:fine){
  .mfa-aksi{top:9px;right:54px;padding:3px 6px;gap:2px;border-radius:99px;background:var(--ds-kertas,#fff);box-shadow:0 4px 14px -6px rgba(43,19,48,.4)}
  .mfa-aksi button{padding:0 9px;text-decoration:none}
}
.mfa-info{background:color-mix(in srgb,var(--ds-pink,#FF1D86) 8%,transparent);border:0}
/* ketik cepat */
.mfa-cepat-bar{background:var(--ds-kertas,#fff);border:0;box-shadow:0 14px 30px -12px rgba(43,19,48,.4),inset 0 0 0 1.5px var(--tepi);backdrop-filter:none;-webkit-backdrop-filter:none}
.mfa-cepat-bar:focus-within{box-shadow:0 14px 30px -12px rgba(255,29,134,.55),0 0 0 2.5px var(--aksen)}
.mfa-cepat-kirim{background:linear-gradient(135deg,var(--ds-pink,#FF1D86),var(--ds-pink-tombol,#D10D70));box-shadow:none}
.mfa-cepat .mfa-tambah{background:var(--ds-awas-muda,#FFF1CC);color:var(--ds-awas-teks,#7A5200)}
@media(hover:hover) and (pointer:fine){.mfa-cepat .mfa-tambah:hover:not(:disabled){color:var(--ds-awas-teks,#7A5200);filter:brightness(.97)}}
.mfa-chip{background:var(--ds-kertas,#fff);font-family:inherit}
.mfa-bagikan{color:var(--ds-link,#B80D68);border:0;text-decoration:underline;text-underline-offset:3px}
/* formulir */
.mfa-satu .mfa-form{background:var(--sekat);border-radius:30px;box-shadow:0 18px 40px -24px rgba(43,19,48,.35)}
.mfa-form input,.mfa-form textarea,.mfa-form select{background:var(--ds-kertas,#fff);border:1.5px solid var(--ds-garis,#F3C9DE)}
.mfa-simpan{background:linear-gradient(135deg,var(--ds-pink,#FF1D86),var(--ds-pink-tombol,#D10D70));box-shadow:none}
.mfa-satu .mfa-tombol{box-shadow:none}
.mfa-batal{border:1.5px solid var(--ds-garis,#F3C9DE)}

/* HP: tetap satu layar (kalender + hari terpilih); jalur pekan disembunyikan karena kalender sudah memperlihatkan pekannya */
@media(max-width:699px){
  .mfa-sp,.mfa-garis,.mfa-g-wrap{display:none}
  .mfa-atas{gap:6px 10px}
  .mfa-ctl{order:5;flex:1 1 100%;display:flex;gap:8px}
  .mfa-nav{flex:1;gap:8px}.mfa-nav .mfa-ini{flex:1}
  .mfa-grid{grid-template-rows:auto repeat(var(--br,6),minmax(40px,1fr));gap:4px}
  .mfa-hari{padding:5px 2px 4px;border-radius:14px}
  .mfa-no{font-size:calc(15px*var(--sh,1));min-width:26px;height:26px}
  .mfa-badan:not(.mfa-satu){gap:10px}
  .mfa-panel{padding:14px;border-radius:24px;gap:10px;min-height:300px}
  .mfa-tgl-besar,.mfa-tgl-besar.ini{width:56px;padding:6px 0 5px}.mfa-tgl-besar b{font-size:calc(28px*var(--sh,1))}
  .mfa-daftar{max-height:max(130px,calc(100dvh - 560px));overflow-y:auto}
  .mfa-cepat{position:static;padding:0;margin:0;background:none}
  .mfa-item{padding:9px 4px 8px 10px}
}
/* desktop pendek: jalur pekan tetap, garis waktu disembunyikan agar daftar punya ruang */
@media(min-width:960px) and (max-height:720px){.mfa-garis,.mfa-g-wrap{display:none}.mfa-sp-h{padding:5px 2px}}
@media(prefers-reduced-motion:reduce){.mfa-sp-h{transition:none}}
.mfa-live.st-jalan,.mfa-live.st-nanti,.mfa-live.st-lewat,.mfa-live.st-selesai,.mfa-live.st-kosong{padding:10px 14px;border-radius:16px}
/* v833 (susulan): HP benar-benar satu layar pada layar tinggi; layar pendek tetap bisa digulir */
@media(max-width:699px){
  .mfa-atas{padding-top:calc(8px + env(safe-area-inset-top,0px));padding-bottom:4px}
  .mfa-atas h3{font-size:clamp(28px,8vw,34px)}
  .mfa-ctl .mfa-ikon-btn{min-height:38px;min-width:38px}.mfa-ctl .mfa-ini{min-height:38px}
  .mfa-nav .mfa-ini{flex:0 1 auto;margin:0 auto;padding:0 22px}
  .mfa-grid{grid-template-rows:auto repeat(var(--br,6),minmax(34px,1fr));gap:3px}
  .mfa-badan{gap:8px;padding-bottom:calc(14px + env(safe-area-inset-bottom,0px))}
  .mfa-panel{min-height:0;padding:12px;gap:8px}
  .mfa-tgl{gap:12px;padding-bottom:10px}
  .mfa-tgl-besar,.mfa-tgl-besar.ini{width:50px;padding:5px 0 4px;border-radius:16px}.mfa-tgl-besar b{font-size:calc(24px*var(--sh,1))}.mfa-tgl-besar small{font-size:calc(9px*var(--sh,1))}
  .mfa-tgl-ket b{font-size:calc(14.5px*var(--sh,1))}
  .mfa-live,.mfa-live.st-jalan,.mfa-live.st-nanti,.mfa-live.st-lewat,.mfa-live.st-selesai,.mfa-live.st-kosong{padding:7px 12px;border-radius:14px}
  .mfa-daftar{max-height:max(96px,calc(100dvh - 650px))}
  .mfa-item{padding:8px 4px 7px 10px}.mfa-item .mfa-lencana{width:34px;height:34px}
  .mfa-cepat-bar{padding:4px}.mfa-cepat-in{height:40px}
  .mfa-bagikan{min-height:26px}
}

/* ================================================================
   v834: Agenda desktop, layar PENDEK (laptop, skala Windows 125-150%): tidak ada lagi tulisan terpotong.
   Masalah v833: di tinggi <= 640 px judul kegiatan di kalender disembunyikan (hanya titik) dan daftar di panel kanan menyusut sampai kartunya terpotong.
   Perbaikan: panel kanan dipadatkan (tanggal besar yang kembar dengan kalender disembunyikan, jalur pekan dan kepala dirampingkan), daftar diberi tinggi minimal,
   panel menggulir utuh bila masih kurang, dan kalender tetap menampilkan satu judul kegiatan per hari (+N) alih-alih hanya titik. Blok ini menimpa v829-v833 di atasnya.
   ================================================================ */
/* kalender: semua kotak seragam dan tenang (tanpa bingkai pink beda-beda); hanya hari ini dan hari terpilih yang menonjol */
.mfa-hari:not(.ini):not(.pilih){box-shadow:inset 0 0 0 1px var(--tepi)}
.mfa-hari.pekan:not(.ini):not(.pilih){background:color-mix(in srgb,var(--aksen) 6%,color-mix(in srgb,var(--ds-kertas,#fff) 76%,transparent))}
@media(min-width:960px) and (max-height:760px){
  .mfa-garis,.mfa-g-wrap{display:none}
  .mfa-kotak:not(.mfa-sub) .mfa-panel{padding:12px;gap:8px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
  .mfa-kotak:not(.mfa-sub) .mfa-panel>*{flex-shrink:0}
  .mfa-kotak:not(.mfa-sub) .mfa-panel>.mfa-daftar{flex:1 0 auto;min-height:132px}
  .mfa-sp{gap:4px}
  .mfa-sp-h{padding:4px 2px 4px;border-radius:12px}
  .mfa-sp-t{display:none}
  .mfa-sp-h b{font-size:calc(17px*var(--sh,1))}
  .mfa-tgl{padding-bottom:8px;gap:10px}
  .mfa-tgl-besar,.mfa-tgl-besar.ini{display:none}
  .mfa-tgl-ket b{font-size:calc(16px*var(--sh,1))}
  .mfa-live,.mfa-live.st-jalan,.mfa-live.st-nanti,.mfa-live.st-lewat,.mfa-live.st-selesai,.mfa-live.st-kosong{padding:6px 12px}
  .mfa-item{padding:9px 6px 8px 10px}
  .mfa-bagikan{min-height:24px}
  .mfa-hari{padding:6px 6px 4px;gap:3px}
  .mfa-no{min-width:26px;height:26px;font-size:calc(14px*var(--sh,1))}
}
/* kalender di layar pendek: tetap satu judul kegiatan per hari (+N), bukan hanya titik */
@media(min-width:960px) and (max-height:640px) and (min-height:421px){
  .mfa-mini{display:flex}
  .mfa-titik{display:none}
  .mfa-mini span:nth-child(n+2){display:none}
  .mfa-mini span{font-size:calc(10.5px*var(--sh,1));padding:1px 5px;line-height:1.3}
  .mfa-mini em{font-size:calc(10px*var(--sh,1));padding-left:2px}
}

/* ================================================================
   v835: KARTU AGENDA di Menfess dibuat menonjol dan modern (dulu kartu putih polos yang menyatu dengan latar, kesan jadul).
   Kartu gradien pink-ungu searah banner Menfess, bulatan emas dekoratif, ubin tanggal putih, garis hari berwarna terang, tombol "Buka" putih di kanan.
   Struktur DOM tidak berubah; hanya gaya. Menimpa v829 di atasnya.
   ================================================================ */
#menfess .mfa-bar{margin:0 0 20px}
#menfess .mfa-buka{overflow:hidden;isolation:isolate;min-height:112px;border-radius:26px;color:#fff;
  background:radial-gradient(120% 140% at 100% 0%,#FF3FA0 0%,rgba(255,63,160,0) 55%),linear-gradient(135deg,#D10D70 0%,#8A0B68 52%,#3F0F55 100%);
  box-shadow:0 18px 36px -18px rgba(209,13,112,.75),0 2px 0 rgba(255,255,255,.18) inset;
  transition:transform .18s var(--ds-ease,ease),box-shadow .18s ease}
#menfess .mfa-buka::before{content:"";position:absolute;z-index:-1;right:-34px;top:-46px;width:140px;height:140px;border-radius:50%;background:var(--ds-emas,#FFC738);opacity:.95}
#menfess .mfa-buka::after{content:"";position:absolute;z-index:-1;right:96px;bottom:-62px;width:120px;height:120px;border-radius:50%;background:rgba(255,255,255,.12)}
#menfess .mfa-buka:active{background:radial-gradient(120% 140% at 100% 0%,#FF3FA0 0%,rgba(255,63,160,0) 55%),linear-gradient(135deg,#B00C61 0%,#760A5A 52%,#350D49 100%);transform:scale(.99)}
@media(hover:hover) and (pointer:fine){#menfess .mfa-buka:hover{background:radial-gradient(120% 140% at 100% 0%,#FF3FA0 0%,rgba(255,63,160,0) 55%),linear-gradient(135deg,#D10D70 0%,#8A0B68 52%,#3F0F55 100%);transform:translateY(-2px);box-shadow:0 24px 40px -18px rgba(209,13,112,.85),0 2px 0 rgba(255,255,255,.18) inset}
  #menfess .mfa-buka:hover .mfa-buka-pan{color:var(--ds-link,#B80D68);transform:translateX(3px)}}
#menfess .mfa-buka:focus-visible{outline:3px solid var(--ds-emas,#FFC738);outline-offset:3px}
/* ubin tanggal */
#menfess .mfa-buka-ic{width:78px;margin:16px 0 16px 16px;padding:8px 4px 9px;border:0;border-radius:20px;background:#fff;gap:0;box-shadow:0 10px 20px -12px rgba(0,0,0,.55)}
#menfess .mfa-tgl-hr,#menfess .mfa-tgl-bln{color:var(--ds-link,#B80D68);font-size:calc(11px*var(--sh,1));font-weight:800;letter-spacing:.06em;text-transform:uppercase}
#menfess .mfa-tgl-no{font-size:calc(38px*var(--sh,1));color:#8A0B68;margin:2px 0 1px}
/* isi */
#menfess .mfa-buka-teks{gap:5px;padding:14px 150px 14px 18px}
#menfess .mfa-buka-jd{font-family:var(--ds-huruf-judul,inherit);font-weight:400;font-size:calc(22px*var(--sh,1));letter-spacing:.01em;color:#fff}
#menfess .mfa-buka small,#menfess .mfa-buka small.mfa-ringkas{color:rgba(255,255,255,.92);font-weight:600;font-size:calc(13px*var(--sh,1))}
#menfess .mfa-prog i{height:6px;background:rgba(255,255,255,.3)}
#menfess .mfa-prog i.st-selesai{background:#7DF2B2}
#menfess .mfa-prog i.st-jalan{background:#FFD24D}
#menfess .mfa-prog i.st-lewat{background:#FF9DB3}
#menfess .mfa-nx-jam,#menfess .mfa-nx-jd{color:#fff}
#menfess .mfa-nx-a.st-jalan .mfa-nx-jam{color:#FFD24D}
#menfess .mfa-nx-lb{color:rgba(255,255,255,.85)}
#menfess .mfa-nx-lb.st-jalan{color:#FFD24D}
#menfess .mfa-nx-lb.st-kosong{color:#fff;text-decoration:underline;text-underline-offset:3px}
#menfess .mfa-nx-lb.st-selesai{color:#8FF5BC}
#menfess .mfa-nx-b{color:#FFC2D0}
/* tombol Buka (kanan) */
#menfess .mfa-buka-pan{top:auto;right:16px;bottom:16px;width:44px;height:44px;margin:0;border-radius:50%;background:#fff;color:#B80D68;box-shadow:0 10px 18px -10px rgba(0,0,0,.6)}
#menfess .mfa-buka-pan svg{width:20px;height:20px}
@media(min-width:700px){
  #menfess .mfa-buka-pan{right:20px;bottom:auto;top:50%;margin-top:-22px;width:auto;padding:0 18px 0 20px;gap:6px;display:inline-flex;align-items:center;border-radius:999px}
  #menfess .mfa-buka-pan::before{content:"Buka";font-weight:800;font-size:calc(14px*var(--sh,1))}
}
/* lencana pengingat */
#menfess .mfa-lencana-hari{top:10px;right:14px;background:#fff;color:#B80D68;box-shadow:0 6px 12px -8px rgba(0,0,0,.6)}
@media(min-width:700px){#menfess .mfa-lencana-hari{top:12px;right:auto;left:auto;right:20px}}
@media(max-width:699px){#menfess .mfa-buka-teks{padding-right:70px}#menfess .mfa-buka::before{right:-46px;top:-58px}}
@media(max-width:380px){#menfess .mfa-buka-ic{width:64px;margin-left:12px}#menfess .mfa-buka-teks{padding-left:12px}#menfess .mfa-buka-jd{font-size:calc(19px*var(--sh,1))}}
@media(forced-colors:active){#menfess .mfa-buka::before,#menfess .mfa-buka::after{display:none}}
html[data-tema=gelap] #menfess .mfa-buka{box-shadow:0 18px 36px -18px rgba(0,0,0,.7)}
