:root{--ink:#263126;--muted:#697369;--cream:#f6f2e9;--paper:#fffdf8;--green:#40513b;--sage:#a4b49d;--line:#dedfd6;--danger:#9b3737;--radius:20px;font-family:ui-rounded,-apple-system,BlinkMacSystemFont,"SF Pro Rounded","Segoe UI",sans-serif;color:var(--ink);background:var(--cream)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at top right,#e4eadc,transparent 36rem),var(--cream)}header{position:sticky;top:0;z-index:4;display:flex;align-items:center;justify-content:space-between;padding:calc(14px + env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) 14px max(18px,env(safe-area-inset-left));background:rgba(246,242,233,.91);backdrop-filter:blur(18px);border-bottom:1px solid rgba(64,81,59,.1)}a{color:var(--green);font-weight:700;text-decoration:none}.brand{font-family:Georgia,serif;font-size:1.45rem}nav{display:flex;gap:14px;align-items:center;font-size:.86rem}nav form{margin:0}.link{padding:0;background:none;color:var(--green);font-size:inherit}main{width:min(720px,100%);margin:auto;padding:34px 18px calc(48px + env(safe-area-inset-bottom))}.hero{margin-bottom:24px}.hero h1,.title-row h1{font-family:Georgia,serif;font-size:clamp(2.6rem,12vw,4.6rem);line-height:.98;margin:.15em 0}.hero p{color:var(--muted);max-width:34rem}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.72rem!important;font-weight:800;color:var(--green)!important}.card,.habit,.empty{background:rgba(255,253,248,.92);border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:0 12px 36px rgba(54,66,50,.07)}.auth{max-width:430px;margin:5vh auto}.auth h1,.card h1{font-family:Georgia,serif;font-size:2.4rem;margin:.2em 0}.stack{display:grid;gap:12px}.habit{display:flex;align-items:center;gap:14px}.habit>div{flex:1}.habit h2{font-size:1.05rem;margin:0}.habit p{color:var(--muted);margin:.3rem 0 0}.habit form{margin:0}.habit.done{background:#edf2e8}.habit.done h2{text-decoration:line-through;color:var(--muted)}.habit.inactive{opacity:.62}.check{width:46px;height:46px;border:2px solid var(--sage);border-radius:50%;padding:0;background:transparent;color:white;font-size:1.4rem}.done .check{background:var(--green);border-color:var(--green)}button,.button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;background:var(--green);color:white;padding:13px 20px;font:700 1rem inherit;cursor:pointer}form{display:grid;gap:16px}label{display:grid;gap:7px;font-size:.88rem;font-weight:800}input,textarea{width:100%;border:1px solid var(--line);border-radius:12px;background:white;color:var(--ink);padding:13px;font:1rem inherit}textarea{min-height:100px;resize:vertical}.toggle{display:flex;align-items:center}.toggle input{width:auto}.progress{height:9px;border-radius:99px;background:#dfe4da;overflow:hidden}.progress span{display:block;height:100%;background:var(--green);border-radius:inherit}.date-picker{display:block;margin:0 0 18px}.date-picker label{display:flex;align-items:center;justify-content:flex-end;gap:8px;color:var(--muted)}.date-picker input{width:auto;padding:8px}.people{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.person h2{margin-top:0}.big-number{font:700 3.2rem Georgia,serif!important;color:var(--ink)!important;margin:.2rem 0!important}.big-number small{font-size:1.4rem;color:var(--muted)}.you{font:700 .65rem sans-serif;text-transform:uppercase;background:#e2eadc;padding:4px 7px;border-radius:99px}.title-row{display:flex;align-items:end;justify-content:space-between;margin-bottom:24px}.notice{padding:12px 15px;border-radius:12px}.success{background:#e2efdd}.error{background:#f7dddd;color:var(--danger)}.muted{color:var(--muted);font-size:.86rem}.empty{text-align:center;padding:40px 20px}@media(max-width:560px){nav{gap:9px}nav a:nth-child(3){display:none}.people{grid-template-columns:1fr}.title-row h1{font-size:2.8rem}main{padding-top:24px}}
