:root{--utama:#ff5a1f;--utama-tua:#d63c04;--utama-gelap:#a82e00;--utama-latar:#ffd8c4;--utama-pucat:#fff0e6;--lime:#d2f34c;--lime-pucat:#f0fbc4;--lime-tua:#557600;--kuning:#ffd23f;--hijau:#a8ec6a;--biru:#82c8ff;--pink:#ff94bf;--oranye:#ffae55;--lavender:#bea9ff;--tinta:#121212;--redup:#6d6d7a;--abu:#f2f2f5;--garis:#e4e4ea;--putih:#fff;--merah:#d03636;--merah-pucat:#fde4e4;color:var(--tinta);font-family:Bricolage Grotesque,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.45}*{box-sizing:border-box}body{background:var(--utama-latar);margin:0}button,input,select,textarea{font:inherit;color:inherit}button{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--utama);outline-offset:2px}.layar{background:var(--putih);flex-direction:column;max-width:480px;min-height:100vh;margin:0 auto;display:flex;position:relative}@media (width>=560px){.layar{border-radius:40px;min-height:calc(100vh - 48px);margin:24px auto;overflow:clip;box-shadow:0 30px 70px #aa3c0a38}}.halaman{flex:1;padding:24px 20px 28px}h1{letter-spacing:-.02em;margin:0;font-size:30px;font-weight:800;line-height:1.1}h2{letter-spacing:-.01em;margin:0 0 12px;font-size:19px;font-weight:800}.judul-halaman{margin:4px 0 20px;font-size:34px}.judul-bagian{margin:24px 0 12px;font-size:18px}.sub{color:var(--redup);margin:0 0 16px;font-size:15px}.petunjuk{color:var(--redup);margin:6px 0 0;font-size:13px}.tombol{background:var(--utama-tua);color:#fff;cursor:pointer;border:0;border-radius:18px;justify-content:center;align-items:center;gap:8px;min-height:52px;padding:12px 22px;font-size:16px;font-weight:800;display:inline-flex}.tombol:hover{background:var(--utama-gelap)}.tombol:disabled{opacity:.5;cursor:not-allowed}.tombol-putih{color:var(--tinta);background:#fff}.tombol-putih:hover{background:#f4f4ff}.tombol-lime{background:var(--lime);color:var(--tinta)}.tombol-lime:hover{background:#c2e63a}.tombol-garis{background:var(--abu);min-height:44px;color:var(--tinta);cursor:pointer;border:0;border-radius:14px;justify-content:center;align-items:center;gap:6px;padding:8px 16px;font-weight:700;display:inline-flex}.tombol-garis:hover{background:#e7e7ee}.tombol-garis:disabled{opacity:.5;cursor:not-allowed}.panel .tombol-garis,.kartu .tombol-garis,.putih-latar{background:#fff}.tombol-bahaya{color:var(--merah)}.tombol-ikon{background:var(--abu);width:44px;height:44px;color:var(--tinta);cursor:pointer;border:0;border-radius:50%;flex:none;place-items:center;display:grid}.tombol-ikon:hover{background:#e7e7ee}.tombol-ikon:disabled{opacity:.35;cursor:default}.tombol-ikon.putih{background:#ffffffb3}.tautan{color:var(--utama-tua);cursor:pointer;background:0 0;border:0;padding:0;font-weight:700}.form{gap:16px;display:grid}.form-baris{grid-template-columns:1fr 1fr;gap:12px;display:grid}.isian label{margin-bottom:6px;font-size:14px;font-weight:700;display:block}.isian input,.isian select,.isian textarea{background:var(--abu);border:2px solid #0000;border-radius:16px;width:100%;min-height:52px;padding:12px 16px}.isian textarea{resize:vertical}.panel .isian input,.panel .isian textarea,.panel .isian select{background:#fff}.isian input::placeholder,.isian textarea::placeholder{color:#a3a3ae}.isian input:focus,.isian select:focus,.isian textarea:focus{border-color:var(--utama);background:#fff;outline:none}.isian .salah{border-color:var(--merah)}.pesan-salah{color:var(--merah);margin:6px 0 0;font-size:13px}select{background:var(--abu);border:0;border-radius:12px;min-height:40px;padding:6px 12px;font-weight:600}.pilihan-identitas{gap:10px;display:grid}.pilihan-identitas button{text-align:left;background:var(--warna,var(--abu));cursor:pointer;border:2px solid #0000;border-radius:18px;width:100%;padding:16px 18px;font-size:16px;font-weight:700}.pilihan-jenis{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.pilihan-jenis button{background:var(--warna);cursor:pointer;border:2px solid #0000;border-radius:20px;flex-direction:column;align-items:center;gap:8px;padding:16px 6px;font-size:13px;font-weight:700;display:flex}.pilihan-warna{flex-wrap:wrap;gap:10px;display:flex}.pilihan-warna button{background:var(--warna);cursor:pointer;border:3px solid #0000;border-radius:14px;place-items:center;width:44px;height:44px;display:grid}.pilihan-hari{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.pilihan-hari button{background:var(--abu);cursor:pointer;border:0;border-radius:14px;min-height:48px;font-size:14px;font-weight:700}.pilihan-identitas .terpilih,.pilihan-jenis .terpilih,.pilihan-warna .terpilih{border-color:var(--tinta)}.pilihan-identitas .terpilih{background:var(--lime)}.pilihan-hari .terpilih{background:var(--tinta);color:#fff}.info,.berhasil,.galat,.peringatan{border-radius:16px;margin:0;padding:12px 16px;font-size:14px}.info{background:var(--utama-pucat);color:var(--utama-gelap)}.berhasil{background:var(--lime-pucat);color:#2f5508;font-weight:600}.galat{background:var(--merah-pucat);color:var(--merah)}.peringatan{color:#6f4c00;background:#fff1c9}.status{background:var(--abu);color:var(--redup);text-align:center;border-radius:20px;padding:20px}.teks-berhasil{color:var(--lime-tua);font-size:14px;font-weight:700}.panel{background:var(--abu);border-radius:24px;margin-bottom:16px;padding:18px}.judul-baris{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.judul-baris h2{margin:0}.daftar{gap:10px;margin:0;padding:0;list-style:none;display:grid}.kartu{background:var(--abu);border-radius:20px;align-items:flex-start;gap:12px;padding:14px;display:flex}.panel .kartu{background:#fff}.kartu.redup{opacity:.6}.kartu-ikon{background:var(--warna,#fff);border-radius:15px;flex:none;place-items:center;width:46px;height:46px;display:grid}.kartu-isi{flex:1;min-width:0}.kartu-isi strong{font-size:16px}.kartu-isi p{color:var(--redup);overflow-wrap:anywhere;margin:2px 0 0;font-size:14px}.kartu-aksi{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.sambut{background:var(--utama);color:#fff;text-align:center;flex-direction:column;flex:1;padding:56px 28px 28px;display:flex}.sambut h1{font-size:40px;line-height:1.08}.sambut-ilustrasi{flex:1;place-items:center;padding:16px 0;display:grid}.sambut-ilustrasi svg{width:100%;max-width:300px;height:auto}.sambut .tombol{width:100%;min-height:58px}.tautan-putih{color:var(--tinta);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;margin:16px auto 0;padding:6px;font-weight:600;text-decoration:underline}.sambut small{color:#3d1400;margin-top:22px;font-size:12px;display:block}.bar-atas{justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.form-akun .tombol{width:100%;margin-top:4px}.ganti-mode{text-align:center;color:var(--redup);margin:20px 0 0;font-size:15px}.catatan-kaki{text-align:center;color:var(--redup);margin:24px 0 0;font-size:12px}.langkah-ke{color:var(--redup);font-size:14px;font-weight:600}.progres{gap:6px;margin-bottom:24px;display:flex}.progres span{background:var(--abu);border-radius:99px;flex:1;height:8px}.progres span.isi{background:var(--utama)}.sapaan{color:var(--redup);margin:0 0 6px;font-weight:700}.onboarding h1{margin-bottom:8px}.ringkas-rencana{background:var(--lime);border-radius:22px;margin-top:18px;padding:18px}.ringkas-rencana p{margin:6px 0 0;font-size:15px}.kalimat{font-size:14px}.aksi-langkah{gap:10px;margin-top:28px;display:flex}.aksi-langkah .tombol{flex:1}.aksi-langkah .tombol-garis{border-radius:18px;min-height:52px;padding:0 22px}.header-beranda{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.sapa small{font-size:19px;font-weight:700;display:block}.sapa h1{font-size:40px}.identitas-pill{background:var(--utama-pucat);color:var(--utama-gelap);border-radius:16px;margin:14px 0 20px;padding:8px 14px;font-size:14px;font-weight:700;display:inline-block}.minggu-strip{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.hari-pill{background:var(--abu);cursor:pointer;border:0;border-radius:16px;flex-direction:column;align-items:center;padding:10px 0;font-size:18px;font-weight:800;line-height:1.1;display:flex}.hari-pill small{margin-top:2px;font-size:12px;font-weight:600}.hari-pill.ada-sesi{background:var(--lime)}.hari-pill.hari-ini{background:var(--tinta);color:#fff}.hari-pill.dipilih:not(.hari-ini){box-shadow:inset 0 0 0 2px var(--tinta)}.hari-pill:disabled{color:#b9b9c3;cursor:default;background:#f8f8fa}.grid-habit{grid-template-columns:1fr 1fr;gap:12px;display:grid}.tile{background:var(--warna);border-radius:24px;flex-direction:column;justify-content:space-between;gap:18px;min-height:160px;padding:14px;display:flex;position:relative}.tile-buka{z-index:1;border-radius:inherit;cursor:pointer;background:0 0;border:0;position:absolute;inset:0}.tile-atas{justify-content:space-between;align-items:flex-start;display:flex}.tile-ikon{place-items:center;display:grid}.tile .cek{z-index:2;border:2px solid var(--tinta);cursor:pointer;background:0 0;border-radius:50%;place-items:center;width:30px;height:30px;padding:0;display:grid;position:relative}.tile .cek:hover{background:#ffffff80}.tile strong{font-size:17px;line-height:1.2;display:block}.tile small{opacity:.8;margin-top:2px;font-size:13px;display:block}.tile.tercatat{background:var(--abu);color:var(--redup)}.tile.tercatat .cek{background:var(--tinta);border-color:var(--tinta);color:#fff}.tile.tercatat .cek-bolos{color:var(--redup);background:#fff;border-color:#c5c5cf}.tile-streak{align-items:center;gap:3px;margin-top:8px;font-size:13px;font-weight:700;display:inline-flex}.lencana{background:#ffffffbf;border-radius:999px;margin-bottom:6px;padding:3px 9px;font-size:11px;font-weight:800;display:inline-block}.daftar-libur{gap:8px;display:grid}.baris-libur{background:var(--abu);border-radius:18px;align-items:center;gap:12px;padding:10px 14px 10px 10px;display:flex}.baris-libur .kartu-ikon{border-radius:13px;width:40px;height:40px}.baris-libur p{color:var(--redup);margin:0;font-size:13px}.sheet-latar{z-index:50;background:#1e0e0673;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{width:100%;max-width:480px;max-height:92vh;padding:10px 20px calc(24px + env(safe-area-inset-bottom));background:#fff;border-radius:30px 30px 0 0;gap:14px;animation:.22s ease-out naik;display:grid;overflow:auto}@keyframes naik{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.sheet{animation:none}}.sheet-pegangan{background:var(--garis);border-radius:99px;width:44px;height:5px;margin:0 auto}.sheet-kepala{background:var(--warna);border-radius:24px;padding:16px 18px 18px}.sheet-kepala .bar-atas{margin-bottom:14px}.sheet-kepala h2{margin:0 0 4px;font-size:24px}.sheet-kepala p{margin:0;font-size:15px}.sheet-angka{gap:8px;margin-top:14px;display:flex}.sheet-angka span{background:#ffffffb3;border-radius:999px;align-items:center;gap:4px;padding:6px 12px;font-size:13px;font-weight:700;display:inline-flex}.mini{margin:0;font-size:15px}.tombol-status{gap:10px;display:grid}.detail-ringkas{color:var(--redup);margin:0;font-size:14px}.nav-bawah{z-index:10;padding:10px 12px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--garis);background:#fff;justify-content:space-around;align-items:center;display:flex;position:sticky;bottom:0}.nav-bawah button{color:#a4a4b0;cursor:pointer;background:0 0;border:0;border-radius:16px;place-items:center;width:52px;height:52px;display:grid}.nav-bawah button.aktif{color:var(--tinta)}.nav-bawah .nav-tambah{background:var(--utama);color:#fff;border-radius:50%;width:58px;height:58px;box-shadow:0 8px 20px #ff5a1f73}.nav-bawah .nav-tambah:hover{background:var(--utama-tua)}.avatar{background:var(--lime);width:36px;height:36px;color:var(--tinta);border-radius:50%;place-items:center;font-size:14px;font-weight:800;display:grid}.aktif .avatar{box-shadow:0 0 0 2px #fff, 0 0 0 4px var(--tinta)}.avatar.besar{background:#fff;flex:none;width:64px;height:64px;font-size:24px}.tracker-habit{background:var(--abu);border-radius:24px;margin-bottom:14px;padding:16px}.tracker-judul{align-items:center;gap:10px;margin-bottom:12px;display:flex}.tracker-judul .kartu-ikon{border-radius:13px;width:40px;height:40px}.tracker-judul p{color:var(--redup);margin:0;font-size:13px}.grid-tracker{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.grid-label{text-align:center;color:var(--redup);font-size:11px;font-weight:700}.sel{aspect-ratio:1;min-height:34px;color:var(--redup);cursor:pointer;background:#fff;border:0;border-radius:12px;padding:0;font-size:13px;font-weight:700}.sel:disabled{cursor:default}.sel-penuh{background:var(--lime);color:var(--tinta)}.sel-mini{background:var(--lime-pucat);color:var(--lime-tua);box-shadow:inset 0 0 0 2px var(--lime)}.sel-bolos{color:#a1306c;background:#fbdcec}.sel-terlewat{color:#a1306c;background:#fff;box-shadow:inset 0 0 0 2px #f4b9d7}.sel-menunggu,.sel-nanti{color:var(--tinta);background:#fff}.sel-libur{color:#c3c3cc;background:0 0}.sel-sebelum{color:#d4d4dc;background:0 0}.sel-hari-ini{outline:2px solid var(--tinta);outline-offset:1px}.legenda{color:var(--redup);flex-wrap:wrap;gap:12px;margin:4px 0 24px;font-size:12px;display:flex}.legenda span{align-items:center;gap:5px;display:inline-flex}.legenda i{border-radius:5px;width:14px;height:14px;display:inline-block}.ringkasan{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.ringkasan div{text-align:center;border-radius:20px;padding:14px 10px}.ringkasan div:first-child{background:var(--kuning)}.ringkasan div:nth-child(2){background:var(--hijau)}.ringkasan div:nth-child(3){background:var(--biru)}.ringkasan strong{font-size:28px;font-weight:800;line-height:1.1;display:block}.ringkasan small{font-size:12px;font-weight:600}.target{background:#fff;border-radius:99px;height:12px;margin-top:16px;overflow:hidden}.target span{background:var(--utama);border-radius:99px;height:100%;display:block}.pesan-rekap{margin:12px 0 0;font-size:15px}.tengah{text-align:center}.tengah small{color:var(--redup);font-size:13px;font-weight:600;display:block}.opsional{color:var(--redup);font-size:14px;font-weight:500}.profil{background:var(--kuning);border-radius:24px;align-items:center;gap:14px;margin-bottom:20px;padding:18px;display:flex}.profil strong{font-size:19px}.profil p{overflow-wrap:anywhere;margin:0;font-size:14px}.menu{padding:6px}.baris-menu{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:18px;align-items:center;gap:12px;width:100%;padding:14px 12px;font-weight:700;display:flex}.baris-menu:hover{background:#fff}.baris-menu span{flex:1}@media (width<=380px){.sapa h1{font-size:34px}.ringkasan strong{font-size:22px}.hari-pill{font-size:16px}}
