@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap");:root{--bg:#080d0b;--panel:#111a16;--panel2:#17231c;--green:#00e676;--green2:#0aa95a;--text:#edf7f0;--muted:#91a49a;--line:#26372e;--red:#ff7474}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;background:radial-gradient(ellipse at 10% 0,#10251a 0,transparent 35%),var(--bg);color:var(--text);font:15px/1.5 DM Sans,system-ui,sans-serif;min-height:100vh}button,input{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}.shell{max-width:1180px;margin:auto;padding:24px 22px 32px}.topbar{justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:18px}.brand,.topbar{display:flex;align-items:center}.brand{gap:11px;text-decoration:none;color:var(--text);font:700 23px Space Grotesk,sans-serif;letter-spacing:-.7px}.brandIcon{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:var(--green);color:#06100a;font-size:24px;box-shadow:0 0 30px #00e67622}.brand small{display:block;font:700 8px DM Sans,sans-serif;letter-spacing:1.5px;color:var(--muted);margin-top:1px}.green{color:var(--green)}.topActions{display:flex;gap:8px}.btn{border:1px solid transparent;border-radius:10px;padding:10px 14px;font-weight:700;transition:.15s}.btn.primary{background:var(--green);color:#06100a}.btn.primary:hover{background:#39f895}.btn.ghost{background:#101914;color:var(--text);border-color:var(--line)}.btn.ghost:hover{border-color:var(--green)}.full{width:100%}.hero{display:flex;justify-content:space-between;align-items:end;gap:20px;padding:32px 0 24px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.8px;color:var(--green);text-transform:uppercase}.hero h1{font:700 clamp(29px,5vw,46px)/1.12 Space Grotesk,sans-serif;letter-spacing:-1.7px;margin:8px 0}.hero p{margin:0;color:var(--muted)}.heroBadge{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:8px;padding-bottom:5px}.liveDot{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 12px var(--green)}.card{background:linear-gradient(145deg,#121b16,#0e1511);border:1px solid var(--line);border-radius:18px;box-shadow:0 14px 50px #00000016}.message{background:#162a1d;border:1px solid #245a39;color:#b9ffd2;border-radius:10px;padding:12px 14px;margin:0 0 16px;overflow-wrap:anywhere}.auth{display:grid;grid-template-columns:1fr 1fr;grid-gap:30px;gap:30px;padding:25px}.auth h2{font:700 24px Space Grotesk;margin:0 0 6px}.auth p,.muted{color:var(--muted)}.authFields{display:grid;grid-gap:12px;gap:12px}.authFields label{display:grid;grid-gap:6px;gap:6px;font-size:12px;color:var(--muted)}input{min-width:0;background:#0a100c;border:1px solid var(--line);border-radius:9px;color:var(--text);padding:12px;outline:none}input:focus{border-color:var(--green);box-shadow:0 0 0 3px #00e67612}.linkButton{border:0;background:transparent;color:var(--muted);padding:5px}.linkButton strong{color:var(--green)}.stats{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:12px;gap:12px;margin-bottom:14px}.stat{padding:17px}.stat>span{font-size:11px;font-weight:700;letter-spacing:.7px;text-transform:uppercase;color:var(--muted);display:block}.stat strong{display:block;font:700 32px Space Grotesk;color:var(--green);margin:8px 0 4px}.stat small{font-size:11px;color:var(--muted)}.progress{height:6px;border-radius:99px;background:#26352b;overflow:hidden}.barTrack i,.progress i{display:block;height:100%;border-radius:99px;background:var(--green);box-shadow:0 0 12px #00e6762a}.grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);grid-gap:14px;gap:14px}.calendarCard,.habitsCard,.progressCard{padding:20px}.sectionHead{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px}.sectionHead h2{font:600 18px Space Grotesk;margin:0}.sectionHead .eyebrow{margin-bottom:4px}.addForm{display:flex;gap:8px;margin-bottom:15px}.addForm input{flex:1 1;width:100%}.habitList{display:grid;grid-gap:8px;gap:8px}.habitRow{display:flex;align-items:center;gap:11px;padding:12px;background:var(--panel2);border:1px solid transparent;border-radius:12px;min-height:52px}.habitRow.isDone{background:#10271a;border-color:#17683b}.check{width:23px;height:23px;flex-shrink:0;border-radius:7px;border:1px solid #45604e;background:#0b120d;color:#05110a;font-weight:900;display:grid;place-items:center;padding:0}.check.checked{background:var(--green);border-color:var(--green)}.habitName{flex:1 1;overflow-wrap:anywhere}.isDone .habitName{color:#9fffc4}.rowActions{display:flex;gap:2px}.iconButton{background:transparent;border:0;color:#8ea196;font-size:17px;padding:4px 7px;border-radius:6px}.iconButton:hover{background:#26372e;color:var(--green)}.iconButton.delete:hover{color:var(--red)}.renameForm{display:flex;gap:5px;flex:1 1;min-width:0}.renameForm input{flex:1 1;width:100%;padding:7px}.miniButton{border:1px solid var(--line);border-radius:6px;background:#0c130e;color:var(--text);font-size:11px;padding:5px}.empty{text-align:center;padding:35px 10px;color:var(--muted)}.empty span{font-size:30px;color:var(--green)}.tip{font-size:12px;color:var(--muted);margin:16px 0 0}.sideColumn{display:grid;align-content:start;grid-gap:14px;gap:14px}.monthNav{display:flex;gap:4px}.monthLabel{text-align:center;text-transform:capitalize;color:var(--muted);font-size:12px;margin:-4px 0 12px}.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:5px;gap:5px}.weekday{text-align:center;font-size:10px;color:var(--muted);padding:4px 0}.day{aspect-ratio:1;position:relative;border:1px solid transparent;border-radius:8px;background:#17231c;color:var(--text);display:grid;place-items:center;padding:0;font-size:12px}.day.selected,.day:hover{border-color:var(--green)}.day.selected{background:#12351f;box-shadow:inset 0 0 0 1px #00e67633}.day.fullDay{background:#07552f}.day i{position:absolute;bottom:4px;width:4px;height:4px;border-radius:50%;background:var(--green)}.day.fullDay i{background:#c3ffdb}.legend{display:flex;gap:14px;flex-wrap:wrap;margin-top:12px;color:var(--muted);font-size:10px}.legend span{display:flex;align-items:center;gap:5px}.legendDot{width:7px;height:7px;border-radius:50%;background:var(--green)}.legendDot.full{background:#07552f;border:1px solid var(--green)}.statBars{display:grid;grid-gap:13px;gap:13px}.barRow>div:first-child{display:flex;justify-content:space-between;gap:10px;font-size:11px;margin-bottom:5px}.barRow span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.barRow b{color:var(--green);font-weight:700}.barTrack{height:6px;background:#26352b;border-radius:99px;overflow:hidden}.export{margin-top:18px}.export:focus-visible,button:focus-visible{outline:2px solid var(--green);outline-offset:2px}footer{display:flex;justify-content:space-between;gap:12px;margin-top:24px;color:#5f7467;font-size:9px;letter-spacing:1.3px}@media(max-width:850px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.grid{grid-template-columns:1fr}.sideColumn{grid-template-columns:1fr 1fr}.hero{align-items:start;flex-direction:column}.auth{grid-template-columns:1fr;gap:10px}}@media(max-width:560px){.shell{padding:15px 12px 24px}.brand{font-size:21px}.brandIcon{width:38px;height:38px}.hero{padding:25px 0 18px}.hero h1{letter-spacing:-1px}.stats{gap:8px}.stat{padding:13px}.stat strong{font-size:28px}.stat>span{font-size:9px}.sideColumn{grid-template-columns:1fr}.calendarCard,.habitsCard,.progressCard{padding:15px}.auth{padding:17px}.addForm{flex-direction:column}.addForm .btn{width:100%}footer{font-size:8px}}