:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif;color:#253d36;background:#f5f7f2;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #b4ca66;outline-offset:3px}main{max-width:1040px;margin:auto;padding:30px 34px}header{display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:10px;align-items:center;text-decoration:none;font-weight:700;color:inherit;letter-spacing:1px}.logo{display:grid;place-items:center;background:#294f40;color:#e9f0c7;width:36px;height:36px;border-radius:12px;font-size:20px}.local{font-size:11px;color:#718477;background:#e9eee4;padding:7px 11px;border-radius:20px}.welcome{position:relative;padding:50px 0 32px;overflow:hidden}.eyebrow{font-size:10px;letter-spacing:2px;color:#829184;font-weight:600}h1{font-size:42px;line-height:1.4;font-weight:650;letter-spacing:1px;margin:15px 0 12px}h1 span{color:#96af54}.welcome p{color:#7e8b80;font-size:14px}.date-pill{margin-top:23px;font-size:12px;color:#5d735f}.decoration{position:absolute;right:70px;top:38px;font-size:180px;color:#dce5b9;transform:rotate(15deg)}.overview{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #e0e6db;border-bottom:1px solid #e0e6db;padding:22px 0;margin-bottom:30px}.overview>div{padding-left:26px;border-left:1px solid #dfe6d9}.overview>div:first-child{padding-left:0;border:0}.label{display:block;font-size:12px;color:#829080;margin-bottom:9px}strong{font-size:29px;font-weight:600}small{font-size:12px;color:#89957f;font-weight:400}.workspace{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}.card{background:#fff;border:1px solid #e6eadd;border-radius:22px;padding:26px;box-shadow:0 5px 20px #314f3310}.section-top{display:flex;align-items:center;justify-content:space-between;gap:8px}h2{font-size:21px;margin:8px 0 0;font-weight:600}.text-button{background:none;border:none;color:#72816a;font-size:11px;padding:8px 0}.month-nav{display:flex;align-items:center;justify-content:space-between;margin:25px 0 14px}.month-nav button{border:1px solid #e7ebdf;background:#fafbf7;border-radius:10px;width:32px;height:32px;font-size:23px;color:#5f735b}h3{font-size:15px;font-weight:600}.weekdays,.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.weekdays{font-size:11px;text-align:center;color:#98a18f;margin-bottom:12px}.calendar button{position:relative;aspect-ratio:1;border:1px solid transparent;border-radius:11px;background:#f4f5f0;color:#7a8673;font-size:13px;padding:0}.calendar button.complete{background:#e0eddd;color:#416c40}.calendar button.incomplete{background:#fae6e0;color:#bd6252}.calendar button.selected{outline:2px solid #345744;outline-offset:2px;font-weight:700}.calendar button.today:after{content:'';position:absolute;bottom:4px;left:calc(50% - 2px);width:4px;height:4px;border-radius:50%;background:currentColor}.legend{display:flex;justify-content:center;flex-wrap:wrap;gap:14px;margin-top:26px;font-size:10px;color:#84907c}.legend span{display:flex;align-items:center;gap:5px}i{width:7px;height:7px;border-radius:50%;display:inline-block}.green{background:#9dbf91}.red{background:#df9e8f}.neutral{background:#dce1d3}.count-badge{font-size:12px;background:#eef2e4;color:#6e8253;border-radius:9px;padding:7px 10px}.progress{margin-top:24px;height:6px;border-radius:9px;background:#f0f3e9;overflow:hidden}.progress>div{height:100%;background:#9db86e;transition:width .25s}.progress-caption{font-size:11px;color:#8b9882;margin:10px 0 22px}.tasks{list-style:none;padding:0;margin:0 0 24px}.task{display:flex;align-items:center;gap:11px;padding:14px 0;border-bottom:1px solid #eef1e8}.task label{display:flex;align-items:center;gap:11px;flex:1;min-width:0;cursor:pointer;font-size:14px;line-height:1.6;overflow-wrap:anywhere}.task input{accent-color:#52764b;width:20px;height:20px;flex-shrink:0;margin:0}.task.done .task-text{text-decoration:line-through;color:#9ca792}.delete{border:none;background:none;color:#a6ad9f;font-size:18px;min-width:32px;min-height:36px}.delete:hover{color:#b65343}.empty{text-align:center;padding:24px 10px 30px;color:#94a187;font-size:13px;line-height:1.9}.empty .empty-icon{display:block;font-size:34px;color:#bbca9e;margin-bottom:8px}#addForm>label{font-size:12px;color:#65775b}.input-row{display:flex;gap:8px;margin-top:10px}.input-row input{min-width:0;flex:1;background:#f7f9f2;border:1px solid #e6ebdb;border-radius:11px;padding:13px 12px;font-size:13px;color:#344d38}.input-row button{width:45px;border:0;border-radius:11px;background:#2f5643;color:#f1f5df;font-size:24px}.form-note{font-size:10px;color:#a0aa95}footer{display:flex;align-items:center;gap:16px;padding:30px 0 8px;color:#8e9a85;font-size:11px}footer>span{margin-right:auto}footer button{border:none;background:none;color:#75836c;font-size:11px;padding:8px 0}.storage-note{font-size:10px;color:#a0a995;margin-top:0;line-height:1.8}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#294f40;color:white;border-radius:12px;padding:12px 20px;font-size:13px;opacity:0;pointer-events:none;transition:opacity .2s;max-width:90%;z-index:10}.toast.show{opacity:1}@media(max-width:700px){main{padding:22px 20px 30px}.welcome{padding-top:35px}h1{font-size:32px}.decoration{font-size:110px;right:0;top:50px;opacity:.65}.workspace{grid-template-columns:1fr;gap:18px}.overview{margin-bottom:22px;padding:18px 0}.overview>div{padding-left:18px}strong{font-size:26px}.card{padding:23px;border-radius:20px}.calendar{gap:9px}.calendar button{max-height:50px}.welcome p{font-size:13px}footer{gap:14px;flex-wrap:wrap}footer span{flex-basis:100%;margin-bottom:-6px}.storage-note{margin-top:8px}}
:root .countdown{background:#2f5643;color:#f4f5df;border-radius:22px;padding:28px 30px;margin:0 0 28px;overflow:hidden}.countdown .eyebrow{color:#c6d5ae}.countdown-main{font-size:24px;font-weight:600;line-height:1.3;margin-top:10px}.countdown-main strong{font-size:88px;letter-spacing:-3px;font-variant-numeric:tabular-nums;color:#dbeaa0;vertical-align:baseline;margin:0 8px}.countdown p{font-size:12px;color:#c4d0bd;margin:10px 0 0}@media(max-width:700px){:root .countdown{padding:24px 20px}.countdown-main{font-size:19px}.countdown-main strong{font-size:68px;margin:0 4px}}@media(max-width:360px){.countdown-main{font-size:16px}.countdown-main strong{font-size:54px}}

[hidden]{display:none!important}.login-overlay{position:fixed;inset:0;background:#f5f7f2;z-index:100;display:grid;place-items:center;padding:24px;overflow:auto}.login-card{width:min(100%,400px);background:white;padding:34px;border-radius:24px;border:1px solid #e6eadd}.login-card .logo{margin-bottom:28px}.login-card h2{font-size:28px;line-height:1.5;margin:14px 0}.login-card p{font-size:12px;line-height:1.8;color:#829080}.login-card label{display:block;font-size:12px;margin-top:24px}.login-card input{display:block;width:100%;border:1px solid #dce5d2;border-radius:10px;padding:12px;margin:9px 0 16px}.login-card button{width:100%;background:#2f5643;color:white;border:0;border-radius:10px;padding:13px}.login-card button:disabled{opacity:.6}#syncMessage{color:#a84a3a;min-height:22px}

.icp-footer{text-align:center;padding:16px 0 8px;font-size:11px;color:#84907c}.icp-footer a{color:inherit;text-decoration:none}.icp-footer a:hover{text-decoration:underline}.login-content{width:min(100%,400px)}
