@import url('https://fonts.googleapis.com/css2?family=Fredoka:wght@500;600;700&display=swap');
:root{
  --bg:#070c14;
  --bg2:#0a101b;
  --panel:#111823;
  --panel2:#252b38;
  --muted:#9a9aa0;
  --muted2:#5e626c;
  --text:#ffffff;
  --cyan:#05e7f4;
  --cyan2:#0098a7;
  --purple:#a442c7;
  --blue:#425d86;
  --danger:#ff6b7a;
  --success:#0fdc93;
  --radius:28px;
  --shadow:0 18px 70px rgba(0,0,0,.45);
}
*{box-sizing:border-box}
html,body{min-height:100%;margin:0;background:var(--bg);color:var(--text);font-family:'Fredoka',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;letter-spacing:.3px}
body{display:flex;justify-content:center;overflow-x:hidden}
a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer;border:0}img{max-width:100%}.center{text-align:center}.muted{color:var(--muted)}
.phone{width:min(100vw,430px);min-height:100vh;background:linear-gradient(180deg,#070c14 0%,#080e17 72%,#07131a 100%);position:relative;overflow:hidden;padding:32px 20px 108px}.auth-body .phone{padding-bottom:48px}.gradient-text{background:linear-gradient(90deg,var(--cyan),#30a8ff,var(--purple));-webkit-background-clip:text;background-clip:text;color:transparent}.alert{padding:12px 15px;border-radius:16px;margin:10px 0;font-weight:700}.alert.danger,.toast.danger{background:rgba(255,107,122,.16);border:1px solid rgba(255,107,122,.42);color:#ffb6be}.alert.success{background:rgba(15,220,147,.15);border:1px solid rgba(15,220,147,.42);color:#a6ffd8}.toast{position:fixed;top:16px;left:50%;transform:translateX(-50%);width:min(390px,calc(100vw - 28px));z-index:50;padding:12px 14px;border-radius:15px;text-align:center}.btn{border-radius:18px;padding:13px 24px;font-weight:800;color:#071018}.btn.primary{background:linear-gradient(180deg,#08f0ff,#0dd7e7);box-shadow:0 0 22px rgba(5,231,244,.18)}.btn.wide{width:100%}.ghost{background:transparent;color:#b8b8bf;font-weight:800;padding:14px 20px}.link{display:block;color:var(--cyan);font-weight:800;margin-top:14px}
/* Auth */
.auth-screen{display:flex;flex-direction:column;justify-content:center;gap:18px}.brand-block{text-align:center;margin:20px 0 36px}.login-logo{width:190px;height:190px;object-fit:contain;margin-bottom:4px}.brand-title{font-size:42px;font-weight:700;line-height:1}.login-form{display:flex;flex-direction:column;gap:16px}.field{width:100%;border:1.5px solid transparent;background:#131823;color:#fff;border-radius:20px;padding:19px 18px;outline:none;font-size:18px;font-weight:700;box-shadow:inset 0 0 0 1px rgba(255,255,255,.02)}.field::placeholder{color:#9b9aa0}.field:focus{border-color:rgba(5,231,244,.55);box-shadow:0 0 20px rgba(5,231,244,.12)}.field.outline{border-color:#9aa0aa;background:transparent;border-radius:6px}.small-field{padding:13px 14px;border-radius:14px}.password-row{position:relative}.password-row .field{padding-right:60px}.eye-btn{position:absolute;right:13px;top:50%;transform:translateY(-50%);background:transparent;color:#b9b9bd;font-size:22px}.forgot{color:var(--cyan);font-weight:800;text-align:right;margin-top:-8px}.login-btn{height:62px;border-radius:24px;background:linear-gradient(90deg,#2e455f,#263a55);color:#aeb0b6;letter-spacing:4px;margin-top:22px}.divider{display:flex;align-items:center;gap:12px;color:#c5c5c9;margin:10px 0}.divider span{height:1px;flex:1;background:#2a303b}.google-btn{height:58px;border-radius:22px;background:#12151b;border:1.5px solid #31333a;color:#fff;font-size:17px;font-weight:800;display:flex;justify-content:center;align-items:center;gap:15px}.google-g{font-size:26px;color:#fff;background:linear-gradient(90deg,#4285f4,#34a853,#fbbc05,#ea4335);-webkit-background-clip:text;background-clip:text;color:transparent}.register-link{text-align:center;color:#02e8f5;font-size:18px;font-weight:800}.register-link a{color:var(--cyan)}.auth-panel h1{text-align:center}.auth-logo{display:block;width:140px;margin:38px auto 12px}
/* App base */
.screen{display:none;min-height:calc(100vh - 140px);padding:4px 0 24px}.screen.active{display:block}.home-header{display:flex;align-items:flex-start;justify-content:space-between;margin-top:20px}.home-header h1,.page-title,.profile-top h1,.settings-head h1{font-size:30px;margin:0 0 4px;font-weight:700}.home-header p,.page-subtitle{font-size:18px;color:#77797f;margin:0;font-weight:700}.icon-only{background:transparent;color:#b9bbc2;font-size:28px}.level-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;margin:34px 0 26px}.level-pill{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#783087,#442157);border:1px solid rgba(176,73,199,.35);font-weight:800;color:#b4a4b9}.xp-track{height:9px;background:#12161e;border-radius:30px;overflow:hidden}.xp-track i{display:block;height:100%;background:linear-gradient(90deg,var(--cyan),var(--purple));border-radius:inherit}.level-row b{color:#62656b}.glow-card{position:relative;border:1px solid rgba(5,231,244,.42);background:linear-gradient(120deg,#101823,#003f43 130%);border-radius:26px;box-shadow:inset 0 0 35px rgba(5,231,244,.07),0 0 15px rgba(5,231,244,.08)}.focus-card{min-height:146px;display:grid;grid-template-columns:48px 1fr 95px;gap:10px;padding:24px 18px;align-items:center}.check-icon{width:38px;height:38px;border-radius:10px;background:#043a42;color:var(--cyan);display:grid;place-items:center;font-size:22px}.focus-card h3{color:#008d98;font-size:18px;margin:0 0 8px}.focus-card h2{font-size:25px;margin:0 0 8px}.focus-card p{margin:0;color:#a7a7ad;font-size:17px}.card-ill.small{width:80px;justify-self:end}.section-title{font-size:28px;margin:32px 0 18px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.service-card{min-height:105px;border-radius:20px;background:linear-gradient(180deg,#171c27,#111720);border:1px solid rgba(255,255,255,.06);box-shadow:inset 0 0 18px rgba(255,255,255,.02);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;color:#d6d6d8}.service-icon{font-size:28px}.stats-card{height:238px;background:#111720;border:1px solid #242a35;border-radius:30px;padding:25px 26px}.stats-card h3{font-size:24px;margin:0 0 4px}.stats-card p{color:#aaaab0;font-size:17px;margin:0}.bar-chart{display:flex;align-items:flex-end;justify-content:space-between;height:128px;margin-top:22px}.bar-col{height:120px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:10px;color:#777a82;font-size:13px}.bar-col i{display:block;width:17px;background:linear-gradient(180deg,var(--purple),var(--cyan));border-radius:20px 20px 6px 6px;min-height:7px}.quick-menu{position:fixed;right:max(0px,calc((100vw - 430px)/2));bottom:185px;width:106px;background:#232833;border:1px solid #353a45;border-radius:13px 0 0 13px;padding:14px 8px;display:none;z-index:22}.quick-menu.open{display:block}.quick-menu button{display:flex;flex-direction:column;align-items:center;gap:9px;background:transparent;color:#fff;font-weight:800;font-size:12px;margin:0 0 18px;width:100%}.quick-menu button:last-child{margin-bottom:0}.quick-menu span{width:55px;height:55px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(180deg,var(--cyan),#02a7c0);color:#071018;font-size:22px}.quick-menu button:nth-child(2) span{background:linear-gradient(180deg,#ba55d8,#691678);color:#fff}.floating-add{position:fixed;right:max(24px,calc((100vw - 430px)/2 + 24px));bottom:134px;width:72px;height:72px;border-radius:50%;background:linear-gradient(145deg,var(--cyan),#025866);font-size:37px;color:#051017;z-index:19}.bottom-nav{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);width:min(390px,calc(100vw - 32px));height:70px;background:rgba(16,21,30,.92);border:1.5px solid #2d323b;border-radius:34px;box-shadow:0 -8px 38px rgba(0,0,0,.35);display:grid;grid-template-columns:1fr 1fr 84px 1fr 1fr;align-items:center;z-index:20}.nav-item{display:flex;flex-direction:column;align-items:center;gap:4px;color:#555962;font-weight:800;font-size:12px}.nav-item span{font-size:25px}.nav-item.active{color:var(--cyan)}.nav-add{width:70px;height:70px;border-radius:50%;background:radial-gradient(circle at 40% 25%,#425d86,#182231 64%);border:2px solid #075f74;color:white;font-size:36px;justify-self:center;transform:translateY(-20px);box-shadow:0 10px 32px rgba(143,55,173,.45)}.nav-add.open{background:radial-gradient(circle at 40% 25%,#0deaff,#a846cb);border-color:#8defff}.nav-add.open::before{content:'×';font-size:38px}.nav-add.open{font-size:0}
/* Agenda */
.agenda-title-row{display:flex;justify-content:space-between;align-items:center;margin:58px 0 28px}.agenda-title-row h1{font-size:28px;letter-spacing:3px;margin:0 0 9px}.agenda-title-row p{margin:0;color:#0097a5;font-weight:800;font-size:13px;letter-spacing:2px}.month-nav{display:flex;background:#242a35;border:1px solid #373e4d;border-radius:14px;overflow:hidden}.month-nav a{font-size:34px;padding:11px 20px;border-right:1px solid #3a404c}.month-nav a:last-child{border-right:0}.calendar-card{background:#121822;border:1px solid #222936;border-radius:29px;padding:24px 25px 28px}.weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:18px 16px;text-align:center}.weekdays{color:#666a73;margin-bottom:26px}.day{height:38px;border-radius:50%;display:grid;place-items:center;font-size:21px;font-weight:800}.day.today{background:var(--cyan);color:#061015}.agenda-row{display:flex;align-items:center;justify-content:space-between;margin:28px 0}.agenda-row h2{font-size:28px;margin:0}.agenda-row span{background:#003b41;color:var(--cyan);border-radius:10px;padding:13px;font-weight:800}.agenda-empty{margin-top:55px}.agenda-empty img{width:170px}
/* Tasks / progress */
.page-title{margin:36px 0 22px}.pill-tabs{display:flex;gap:14px;margin-bottom:20px}.pill-tabs .tab{background:#11161f;color:#666a70;padding:17px 24px;border-radius:25px;font-weight:800;font-size:17px}.pill-tabs .tab.active{background:var(--cyan);color:#061016}.task-pane{display:none}.task-pane.active{display:block}.task-list.compact{display:grid;gap:11px}.task-item{display:flex;align-items:center;gap:13px;background:#111720;border:1px solid #222936;border-radius:18px;padding:14px 14px;margin:11px 0}.task-item.is-done{opacity:.72}.task-main{flex:1}.task-item b{font-size:17px}.task-item p{margin:4px 0 0;color:#8e9097}.task-check,.mini-btn{width:39px;height:39px;border-radius:14px;background:#073e48;color:var(--cyan);font-size:21px;font-weight:800;border:1px solid rgba(5,231,244,.35)}.delete-x{background:transparent;color:#858891;font-size:25px}.empty-state{text-align:center;color:#aaaab0;margin-top:155px}.empty-state img{width:215px;opacity:.9}.empty-state h3{font-size:24px;margin:12px 0 8px}.empty-state p{font-size:18px;color:#4a4061}.habit-empty{margin-top:190px}.habit-empty img{width:220px}.habit-list{margin-top:30px;display:grid;gap:13px}.habit-card{display:grid;grid-template-columns:54px 1fr auto auto;align-items:center;gap:11px;background:#111720;border:1px solid #222936;border-radius:21px;padding:15px}.habit-icon{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;background:#252b38;border:1px solid #747981;font-size:25px}.done-badge{width:38px;height:38px;border-radius:50%;background:var(--cyan);display:grid;place-items:center;color:#061016;font-weight:900}.habit-card p{margin:4px 0 0;color:#8e9097}.page-subtitle{margin-top:-14px}
/* Profile */
.profile-top{display:flex;justify-content:center;align-items:center;position:relative;margin:36px 0 28px}.settings-gear{position:absolute;right:14px;font-size:31px}.avatar-ring{width:128px;height:128px;border-radius:50%;border:5px solid #4a4b51;margin:0 auto;display:grid;place-items:center;padding:8px}.avatar-ring div{width:100%;height:100%;border-radius:50%;background:#252b36;display:grid;place-items:center;font-size:51px;color:#bbb}.profile-name{text-align:center;font-size:29px;margin:18px 0 4px}.profile-note{text-align:center;color:#b1b1b7;font-size:18px;margin:0 0 26px}.sync-banner{border:1px solid rgba(5,231,244,.38);background:#003238;border-radius:0 0 28px 28px;padding:0 28px 28px;text-align:center;margin:0 0 20px}.sync-banner h2{font-size:25px;margin:-1px 0 22px}.sync-banner p{font-size:17px;color:#c2c2c8;line-height:1.8}.profile-edit{display:flex;gap:10px;margin-bottom:15px}.profile-edit .field{flex:1}.profile-menu{display:grid;gap:14px}.profile-menu a{min-height:65px;border-radius:16px;background:#252b36;display:grid;grid-template-columns:36px 1fr auto;align-items:center;padding:0 20px;font-size:21px}.profile-menu span{font-size:34px;color:#c5c7ce}.settings-head{display:flex;align-items:center;gap:18px;margin:38px 0 58px}.settings-head a{font-size:46px;line-height:.8}.cyan-label{color:var(--cyan);letter-spacing:1px}.settings-card{height:101px;border-radius:25px;background:#151b26;border:1px solid #252b35;display:grid;grid-template-columns:68px 1fr auto;align-items:center;gap:16px;padding:0 20px}.round-cyan{width:56px;height:56px;border-radius:50%;background:#0a101b;color:var(--cyan);display:grid;place-items:center;font-size:27px}.settings-card h2{margin:0;font-size:25px}.settings-card p{margin:8px 0 0;color:#a4a4aa}.settings-card span{font-size:36px;color:#a0a3aa}
/* Modals */
.modal{position:fixed;inset:0;background:rgba(0,0,0,.64);display:none;place-items:center;padding:20px;z-index:100}.modal.show{display:grid}.modal-card{width:min(335px,100%);background:#252b38;border-radius:28px;border:1.5px solid rgba(5,231,244,.4);box-shadow:var(--shadow);padding:30px 24px;position:relative}.modal-close{position:absolute;right:24px;top:22px;background:transparent;color:#a5a6ad;font-size:40px}.modal-card h2{font-size:31px;margin:0 0 24px}.task-new-card,.habit-new-card{width:min(338px,100%)}.stack{display:grid;gap:16px}.dual{display:grid;grid-template-columns:1fr 1fr;gap:13px}.select-like{height:54px;border-radius:14px;background:#333947;color:#fff;display:flex;align-items:center;gap:8px;padding:0 12px;font-weight:800;overflow:hidden}.select-like input{width:100%;background:transparent;color:#fff;border:0;outline:0}.form-label{font-size:17px;color:#b2b2b8;font-weight:800}.segmented{display:flex;gap:10px;flex-wrap:wrap}.segmented label input,.icon-picker input{display:none}.segmented label span{display:block;padding:15px 18px;border-radius:23px;background:#343a47;color:#bfbfc4;font-weight:800}.segmented label input:checked+span{background:var(--cyan);color:#061016}.segmented.two label span{padding-inline:25px}.icon-picker{display:flex;gap:12px}.icon-picker span{width:52px;height:52px;border-radius:50%;border:2px solid #828791;background:#303641;display:grid;place-items:center;font-size:24px}.icon-picker input:checked+span{border-color:var(--cyan);box-shadow:0 0 15px rgba(5,231,244,.25);background:#12424c}.modal-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-top:12px}.focus-modal-card h4{margin:0;color:var(--cyan);font-size:18px}.focus-modal-card h2{margin:4px 0 28px}.timer-ring{width:180px;height:180px;border-radius:50%;border:13px solid var(--cyan);display:grid;place-items:center;margin:0 auto 26px;box-shadow:0 0 28px rgba(5,231,244,.15)}.timer-ring span{font-size:42px;font-weight:800}.focus-modal-card p{text-align:center;color:#c5c5cb;font-size:18px;margin:0 0 28px}.focus-actions{display:grid;grid-template-columns:1fr 2fr;gap:14px}.reset-btn{border-radius:20px;background:#282e3a;border:1px solid #4b515d;color:#fff;font-size:30px}.focus-actions .btn{height:58px;border-radius:19px}
/* Admin */
.admin-shell{max-width:1280px;width:100%;padding:28px;background:var(--bg);min-height:100vh}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.admin-header h1{font-size:34px;margin:0}.admin-header p{color:#93969e;margin:4px 0 0}.admin-grid{display:grid;gap:20px}.admin-card{background:#151b26;border:1px solid #27303d;border-radius:22px;padding:20px;overflow:auto}.admin-card h2{margin-top:0}.admin-form,.admin-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px;margin-bottom:10px}.admin-form input,.admin-form select,.admin-form textarea,.admin-row input,.admin-row select,.admin-row textarea{background:#0e141e;border:1px solid #303846;border-radius:10px;color:#fff;padding:10px}.admin-row{border-top:1px solid #27303d;padding-top:10px}.admin-row button,.inline-delete button{background:#303846;color:#fff;border-radius:10px;padding:10px}.inline-delete{text-align:right;margin:-5px 0 12px}.inline-delete button{background:#582431;color:#ffd3d8}
@media (max-width:380px){.phone{padding-left:16px;padding-right:16px}.bottom-nav{width:calc(100vw - 24px)}.focus-card{grid-template-columns:40px 1fr 70px}.service-grid{gap:10px}.pill-tabs .tab{padding:14px 17px}.modal-card{padding:26px 20px}.login-logo{width:160px;height:160px}}

/* Update v2: halaman utama publik, tombol aktif, font & ikon lebih besar */
html,body{font-size:17px}.btn{font-size:18px}.icon-only{font-size:32px}.home-header h1,.page-title,.profile-top h1,.settings-head h1{font-size:34px;line-height:1.1}.home-header p,.page-subtitle{font-size:20px}.section-title{font-size:31px}.focus-card h3{font-size:20px}.focus-card h2{font-size:28px}.focus-card p{font-size:18px}.service-card{appearance:none;border:1px solid rgba(255,255,255,.06);cursor:pointer;font:inherit}.service-card:active,.landing-feature:active,.settings-button:active{transform:scale(.98)}.service-icon{font-size:34px}.service-card b{font-size:16px}.nav-item{font-size:13px}.nav-item span{font-size:29px}.quick-menu{width:120px}.quick-menu button{font-size:13px}.quick-menu span{width:62px;height:62px;font-size:27px}.floating-add{width:78px;height:78px;font-size:42px}.field{font-size:20px}.profile-menu a{font-size:23px;grid-template-columns:42px 1fr auto}.profile-menu a::first-letter{font-size:28px}.settings-card{width:100%;text-align:left;color:#fff;font:inherit}.settings-button{cursor:pointer}.modal-card{width:min(360px,100%)}.modal-card h2{font-size:33px}.info-modal-card p{font-size:19px;line-height:1.6;color:#d4d5dc}.info-modal-card .field{margin:10px 0 14px}.task-item b,.habit-card b{font-size:20px}.task-item p,.habit-card p{font-size:16px}.task-check,.mini-btn{width:44px;height:44px;font-size:24px}.delete-x{font-size:31px}.pill-tabs .tab{font-size:19px}.timer-ring{width:195px;height:195px}.timer-ring span{font-size:48px}

/* Landing page */
.landing-screen{padding-bottom:40px}.landing-hero{text-align:center;padding:24px 0 18px}.landing-logo{width:145px;height:145px;object-fit:contain;margin:0 auto 4px;display:block}.landing-hero h1{font-size:54px;line-height:1;margin:0}.landing-hero p{font-size:20px;color:#c9cbd2;line-height:1.45;margin:12px 14px 20px}.landing-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 4px}.btn.secondary{background:#171d28;color:#fff;border:1.5px solid #303846;display:grid;place-items:center}.landing-preview-card{margin-top:18px}.landing-feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.landing-feature{min-height:142px;border-radius:22px;background:linear-gradient(180deg,#171d28,#111720);border:1px solid rgba(5,231,244,.18);box-shadow:inset 0 0 18px rgba(5,231,244,.03);padding:16px;display:flex;flex-direction:column;gap:8px}.landing-feature span{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;background:#073e48;color:var(--cyan);font-size:28px}.landing-feature b{font-size:19px;line-height:1.08}.landing-feature small{color:#aeb1b8;font-size:14px;line-height:1.35}.landing-bottom-card{margin-top:22px;background:#151b26;border:1px solid #27303d;border-radius:28px;padding:24px;text-align:center}.landing-bottom-card h2{font-size:27px;margin:0 0 8px}.landing-bottom-card p{color:#b6b8c0;font-size:18px;line-height:1.5;margin:0 0 20px}

/* Extra information screens */
.info-list{display:grid;gap:15px}.info-list.compact-info{margin-top:16px}.info-card{background:#151b26;border:1px solid #27303d;border-radius:22px;padding:18px;display:grid;grid-template-columns:58px 1fr;gap:14px;align-items:center}.info-card span{width:54px;height:54px;border-radius:18px;background:#0a101b;color:var(--cyan);display:grid;place-items:center;font-size:30px}.info-card h2{font-size:22px;margin:0 0 5px}.info-card p{color:#b9bbc2;line-height:1.48;margin:0;font-size:17px}.about-card{text-align:center;padding:26px 22px;margin-bottom:18px}.about-logo{width:125px;height:125px}.about-card h2{font-size:42px;margin:0}.about-card p{color:#d2d3da;font-size:18px;line-height:1.6}.review-card{background:#151b26;border:1px solid #27303d;border-radius:26px;padding:24px;display:grid;gap:16px}.review-card h2{font-size:26px;margin:0}.stars{font-size:42px;color:var(--cyan);letter-spacing:4px;text-shadow:0 0 16px rgba(5,231,244,.26)}

@media (max-width:380px){html,body{font-size:16px}.home-header h1,.page-title,.profile-top h1,.settings-head h1{font-size:31px}.landing-hero h1{font-size:48px}.landing-logo{width:130px;height:130px}.landing-feature{min-height:134px;padding:14px}.landing-feature b{font-size:17px}.landing-feature small{font-size:13px}.service-icon{font-size:31px}.nav-item span{font-size:27px}.floating-add{width:72px;height:72px}}
