:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#e8eef2;background:#0e1720;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:default}.shell{max-width:1100px;margin:auto;padding:24px 20px 100px}.top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:25px}.brand{font-size:12px;letter-spacing:2px;text-transform:uppercase;color:#92aeac}.top h1{font-size:27px;margin:3px 0}.muted{color:#95a8b7}.small{font-size:12px}.nav{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:23px}.nav button,.tabs button{border:1px solid #2c3a46;color:#c5d3db;background:#17232e;padding:11px 15px;border-radius:12px}.nav button.active,.tabs button.active{background:#27695f;border-color:#419182;color:white}.grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.panel{border:1px solid #2d3e4b;background:#15212c;border-radius:18px;padding:21px;margin-bottom:17px}.panel h2,.panel h3{margin:0 0 13px}.panel h2{font-size:19px}.panel h3{font-size:16px}.kicker{text-transform:uppercase;color:#77c7b3;letter-spacing:1.5px;font-weight:700;font-size:11px}.quote{font-size:24px;line-height:1.35;margin:12px 0}.prompt{color:#c1d0d8;line-height:1.6}.button{display:inline-flex;gap:7px;align-items:center;justify-content:center;border:0;background:#3e9985;color:white;border-radius:10px;padding:10px 14px;font-weight:600}.button.secondary{background:#263846;color:#e0e9ed;border:1px solid #405464}.button.danger{background:#6b3740}.button.slim{padding:7px 10px;font-size:12px}.buttonrow{display:flex;gap:8px;flex-wrap:wrap}.field{margin:13px 0}.field label{display:block;font-size:13px;font-weight:650;margin-bottom:7px;color:#d5e0e5}input,textarea,select{width:100%;background:#0f1a23;color:#edf4f7;border:1px solid #3a4c59;border-radius:10px;padding:11px 12px;outline:none}textarea{min-height:87px;resize:vertical}input:focus,textarea:focus,select:focus{border-color:#6bbcae}.moods{display:flex;flex-wrap:wrap;gap:8px}.moods button{background:#22323d;color:#cfdde4;border:1px solid #354957;border-radius:10px;padding:8px 11px}.moods button.selected{background:#286859;border-color:#68baaa;color:white}.check{display:flex;gap:10px;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid #293945}.check:last-child{border-bottom:0}.check input[type=checkbox]{width:20px;height:20px;accent-color:#4baf92}.check .left{display:flex;gap:11px;align-items:center;flex:1}.check .right{white-space:nowrap;font-size:12px;color:#99b0bd}.progress{height:8px;border-radius:99px;background:#2b3e49;overflow:hidden;margin-top:8px}.fill{height:100%;background:#4cb498;border-radius:99px}.item{padding:13px 0;border-bottom:1px solid #2a3d49}.item:last-child{border-bottom:0}.split{display:flex;align-items:center;justify-content:space-between;gap:12px}.stat{font-size:28px;font-weight:750;margin:8px 0}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.statbox{background:#1b2e39;border-radius:12px;padding:15px}.days{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.day{padding:11px 2px;text-align:center;background:#1d2e39;border-radius:10px;border:1px solid #314551;color:#dae6ea}.day.selected{background:#28695f;border-color:#5cbaa5}.day small{display:block;font-size:10px;color:#9ab3c0}.day strong{display:block;margin-top:5px}.habitrow{display:grid;grid-template-columns:minmax(90px,1fr) repeat(7,minmax(27px,40px)) 46px;gap:5px;align-items:center;margin:13px 0}.tickday{height:33px;border-radius:8px;background:#243641;border:1px solid #36505c;color:#96abba}.tickday.done{background:#266654;color:#d5fff0;border-color:#428b75}.reviewline{margin:18px 0}.reviewline .split{font-size:14px}.tabs{display:flex;gap:8px;margin-bottom:20px}.notice{font-size:13px;border:1px solid #6b5837;background:#30291e;color:#f1d8a7;padding:12px 14px;border-radius:11px;margin-bottom:20px;line-height:1.5}.tag{background:#243944;color:#a9d4c7;border-radius:30px;font-size:11px;padding:5px 9px}.empty{color:#9aafbc;padding:15px 0}.searchhit{border-bottom:1px solid #30414e;padding:14px 0}.searchhit p{color:#bccbd3;margin:5px 0;white-space:pre-wrap;overflow-wrap:anywhere}.footer{margin-top:25px;color:#849daa;font-size:12px}.modalback{position:fixed;inset:0;background:#060c10dc;display:flex;align-items:center;justify-content:center;padding:16px;z-index:10}.modal{width:100%;max-width:510px;max-height:92vh;overflow:auto;padding:22px;border-radius:19px;background:#172631;border:1px solid #42535d}.modal h2{margin:0 0 15px}.hidden{display:none!important}a{color:#82d5c5}hr{border:0;border-top:1px solid #334752;margin:18px 0}@media(max-width:720px){.shell{padding:16px 12px 90px}.grid{grid-template-columns:1fr}.panel{padding:16px}.quote{font-size:21px}.stats{grid-template-columns:repeat(2,1fr)}.top h1{font-size:23px}.nav{display:grid;grid-template-columns:repeat(5,1fr)}.nav button{font-size:11px;padding:10px 3px}.habitrow{grid-template-columns:minmax(75px,1fr) repeat(7,minmax(20px,1fr)) 34px;gap:3px}.habitrow .small{font-size:10px}.tickday{height:30px}.day{padding:9px 1px}}

/* Version 2 — uplifting daylight palette */
:root{color:#253b35;background:#f6f7ef;color-scheme:light}
body{background:linear-gradient(155deg,#fff9e9 0%,#f5f7ee 42%,#ecf7f0 100%);min-height:100vh}
.brand{color:#557e67}.muted,.empty{color:#647b71}.top h1{color:#245541}
.panel{background:#ffffff;border-color:#dde9df;box-shadow:0 6px 24px rgba(37,85,60,.055)}
.nav button,.tabs button{background:#ffffff;color:#456257;border-color:#dce8df}
.nav button.active,.tabs button.active{background:#278963;color:#fff;border-color:#278963}
.kicker{color:#248361}.quote{color:#21543d;font-weight:650}.prompt{color:#536c60}
.button{background:#278963;color:#fff}.button.secondary{background:#e9f6ee;color:#246348;border-color:#c7e3d0}.button.danger{background:#a64d4d}
.field label{color:#39554a}input,textarea,select{background:#fcfefb;color:#283f35;border-color:#cdded2}
input:focus,textarea:focus,select:focus{border-color:#29966a;box-shadow:0 0 0 3px #d9f3df}
.moods button{background:#f3f8f0;color:#48685a;border-color:#dce9de}.moods button.selected{background:#2b946b;border-color:#2b946b;color:#fff}
.check,.item,.searchhit{border-bottom-color:#e2ebe3}.check .right{color:#688073}
.progress{background:#e2eee3}.fill{background:linear-gradient(90deg,#33a278,#92bd65)}
.statbox,.day{background:#eef7ee;border-color:#d6e8d8;color:#365f47}.day.selected{background:#d4f2dd;border-color:#4bab78;color:#164d37}.day small{color:#587563}
.tickday{background:#edf5ee;border-color:#d1e5d5;color:#668271}.tickday.done{background:#2d9b70;border-color:#2d9b70;color:white}
.notice{background:#fff7df;border-color:#ead9a9;color:#765e29}.tag{background:#e6f5e9;color:#28734c}
.modal{background:#fffefa;border-color:#d2e2d5}.modalback{background:#234634a8}a{color:#23825e}hr{border-top-color:#dfeae0}
.inspiration{background:linear-gradient(125deg,#fff9e9,#eef9ed);border-color:#e9dcae}.deepread{border-top:1px solid #d7e5d7;margin-top:16px;padding-top:10px;line-height:1.75;color:#465f52}.deepread p{margin:12px 0}
/* Connected version */
.authbox{max-width:460px;margin:8vh auto}.loginhead{text-align:center;padding:20px 0}.status{font-size:12px;color:#577666}.alert{padding:13px;border-radius:12px;background:#fff1dc;border:1px solid #efd5a1;color:#755726;margin:12px 0}.error{background:#fff0ed;border-color:#e4b6ae;color:#9c3434}.good{background:#e9f7ec;border-color:#acdaba;color:#276947}.top .button{white-space:nowrap}.rowactions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.monthlist{font-size:13px;color:#60796a}.deepread{max-width:74ch}.wide{width:100%}@media(max-width:520px){.top{align-items:flex-start}.top h1{font-size:22px}.shell{padding:14px 12px 90px}.button{font-size:13px}}
body[data-theme="sunrise"]{background:linear-gradient(145deg,#fff3de,#fffcf3 56%,#fbead6)}body[data-theme="sunrise"] .nav button.active,body[data-theme="sunrise"] .button:not(.secondary){background:#ba7834}body[data-theme="sunrise"] .quote{color:#9b622c}
body[data-theme="coastal"]{background:linear-gradient(145deg,#e9f7f4,#f9fcfd 55%,#e8f2f9)}body[data-theme="coastal"] .nav button.active,body[data-theme="coastal"] .button:not(.secondary){background:#428fa0}body[data-theme="coastal"] .quote{color:#2b7382}
