:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#202c32;background:#f6f7f9;font-synthesis:none;font-weight:400;line-height:1.5}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border:1px solid transparent;border-radius:10px;background:transparent;color:inherit;padding:9px 12px}button:hover{background:#e9eeed}button:disabled{opacity:.35;cursor:default}button:focus-visible,a:focus-visible{outline:3px solid #72b9a5;outline-offset:3px}input:focus,textarea:focus{outline:2px solid #65a993;outline-offset:1px}.primary,.fab{background:#246c57;color:#fff;box-shadow:0 2px 3px #123d2810}.primary:hover,.fab:hover{background:#195440}.topbar{height:88px;background:#fff;border-bottom:1px solid #e7eaed;display:flex;align-items:center;justify-content:space-between;padding:0 max(6%,calc((100vw - 1080px)/2));gap:20px}.brand{display:flex;align-items:center;gap:6px;text-decoration:none;color:#273832;font-size:21px;letter-spacing:-.7px;font-weight:500}.brand strong{font-weight:750}.brand-icon{background:#266c58;color:#fff;width:36px;height:36px;border-radius:10px;display:grid;place-items:center;margin-right:8px}.local{font-size:12px;color:#6b7775;display:flex;align-items:center;gap:8px}.local i{height:6px;width:6px;background:#43866d;border-radius:50%}main{max-width:1080px;margin:auto;padding:45px 24px 20px;min-height:calc(100dvh - 88px)}h1{font-size:34px;letter-spacing:-1.3px;line-height:1.25;margin:7px 0 10px;overflow-wrap:anywhere}h2,h3{overflow-wrap:anywhere}p{margin:8px 0}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:#6c8a7d}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.home-heading{margin-bottom:30px}.home-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.subtitle{color:#748078;font-size:14px}.count{display:inline-grid;place-items:center;margin-left:12px;vertical-align:middle;border:1px solid #dfe5e1;border-radius:8px;font-size:13px;letter-spacing:0;min-width:29px;height:27px;color:#6b7872;font-weight:500}.home-tools{display:flex;gap:12px;margin-bottom:24px}.search{display:flex;align-items:center;gap:10px;border:1px solid #e1e5e7;border-radius:10px;padding:0 14px;background:#fff;color:#89928e;min-height:48px}.home-tools .search{flex:1}.search input{width:100%;border:0;background:transparent;min-height:46px;outline:none;font-size:14px;color:#263a32}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.card{border:1px solid #e1e6e4;background:#fff;border-radius:15px;box-shadow:0 2px 3px #1b332505;overflow:hidden;transition:transform .15s,box-shadow .15s}.card:hover{transform:translateY(-2px);box-shadow:0 6px 18px #1b332509}.card-open{display:block;text-align:left;padding:24px;width:100%;border-radius:0}.card-open:hover{background:#fdfefd}.card-top{display:flex;align-items:center;justify-content:space-between;color:#98a49e}.list-icon{width:43px;height:43px;background:#edf4ef;border-radius:12px;display:grid;place-items:center;color:#407e67}.card h2{font-size:18px;font-weight:650;line-height:1.4;min-height:50px;margin:20px 0}.progress-label{display:flex;justify-content:space-between;gap:8px;color:#79837e;font-size:12px}.progress-label strong{color:#447b66;font-weight:600}.meter{height:6px;border-radius:10px;background:#edf0ee;margin-top:10px;overflow:hidden}.meter i{display:block;height:100%;background:#458c71;border-radius:10px;transition:width .2s}.card-footer{border-top:1px solid #eef1ef;margin-top:24px;padding-top:14px;color:#89938e;font-size:11px;display:flex;justify-content:space-between;gap:10px}.card-footer span{color:#6a8577}.all-tasks{max-width:820px;margin-top:20px}.all-task-row{display:flex;align-items:center;gap:9px;min-height:68px;padding:6px 14px;background:#fff;border:1px solid #e0e6e2;border-radius:12px;margin-bottom:9px}.all-task-open{flex:1;display:block;text-align:left;padding:8px 4px;overflow:hidden}.all-task-open strong,.all-task-open span{display:block;overflow-wrap:anywhere}.all-task-open strong{font-size:14px;font-weight:600}.all-task-open span{margin-top:3px;color:#7d8a82;font-size:11px}.hint{margin:36px 0;color:#89958d;display:flex;justify-content:center;align-items:center;gap:14px;font-size:12px}.hint strong{color:#617669;font-weight:550}.fab{position:fixed;right:max(24px,calc((100vw - 1120px)/2));bottom:calc(26px + env(safe-area-inset-bottom));width:60px;height:60px;border-radius:20px;box-shadow:0 6px 22px #215a4633;z-index:2}.empty{background:#fff;border:1px dashed #d7e1db;border-radius:16px;text-align:center;padding:48px 20px}.empty-icon{color:#4e826b;background:#edf4ef;width:80px;height:80px;border-radius:23px;display:grid;place-items:center;margin:0 auto 22px}.empty h2{font-size:21px;margin:8px}.empty p{color:#7a857e;font-size:14px;margin:12px 0 24px}.flow{display:flex;justify-content:center;align-items:center;gap:10px;font-size:10px;color:#8b9890;margin-top:36px}footer{border-top:1px solid #e4e9e5;margin-top:50px;padding-top:20px;color:#98a29b;font-size:9px;letter-spacing:1.5px;display:flex;justify-content:space-between;padding-bottom:70px}footer span{letter-spacing:0;font-size:11px}.back{padding-left:0;color:#718377;font-size:13px;margin-bottom:20px}.list-progress{max-width:480px;margin:24px 0}.toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:20px 0}.toolbar>button:not(.primary){border-color:#dfe6e1}.danger{color:#a65151}.selected{background:#e2eee7}.filters{display:flex;gap:5px;margin:20px 0}.filters button{font-size:13px;color:#7a867d;min-height:40px}.filters .active{background:#e2eee7;color:#28654b;font-weight:600}.task-section{background:#fff;border:1px solid #e0e6e2;border-radius:13px;margin:18px 0;overflow:hidden}.section-heading{display:flex;align-items:center;justify-content:space-between;padding:12px 15px;border-bottom:1px solid #edf0ed;gap:8px}.section-heading h2{font-size:12px;text-transform:uppercase;letter-spacing:1px;margin:0;color:#587263}.section-heading h2 span{font-size:10px;background:#f1f4f1;padding:3px 7px;border-radius:5px;margin-left:10px;color:#94a197}.row-actions,.reorder{display:flex}.row-actions button,.reorder button{padding:9px;min-width:44px;color:#8b9a90}.task-row{display:flex;gap:8px;align-items:center;min-height:66px;padding:5px 14px}.task-group+.task-group{border-top:1px solid #edf0ed}input[type=checkbox]{appearance:none;flex:none;width:22px;height:22px;border:1.5px solid #b9c9be;border-radius:6px;background:#fff;cursor:pointer;margin:10px 4px;position:relative}input[type=checkbox]:checked{background:#3c8065;border-color:#3c8065}input[type=checkbox]:checked:after{content:"✓";color:#fff;position:absolute;top:-2px;left:4px;font-size:17px}.task-title{flex:1;display:block;text-align:left;font-size:14px;font-weight:500;padding:10px 6px;overflow-wrap:anywhere}.task-title small{display:block;font-size:10px;font-weight:400;color:#9ca69e;margin-top:3px}.completed .task-title,.completed>span,.completed{color:#73867b}.completed .task-title,.completed>span{text-decoration:line-through;text-decoration-color:#b6c4b9}.subtask-row{display:flex;align-items:center;gap:10px;font-size:13px;padding:0 18px 0 49px;min-height:44px;overflow-wrap:anywhere}.subtask-row input{width:19px;height:19px}.add-inline{color:#658873;font-size:13px;justify-content:flex-start;margin:8px 10px}.add-section{border:1px dashed #bacfc0;width:100%;color:#5f7d69;margin-top:5px}.empty-section{font-size:13px;color:#829286;padding:18px}.loading{max-width:700px;padding:50px 24px}.error{background:#fff1ec;padding:16px;border-radius:10px;color:#a5412e;margin-bottom:24px}dialog{border:1px solid #dce5df;border-radius:18px;width:min(550px,calc(100% - 28px));padding:25px;color:#263b2f;box-shadow:0 20px 90px #0c28193b;max-height:calc(100dvh - 28px - var(--safe-area-inset-top, env(safe-area-inset-top, 0px)) - var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)));overflow:auto;overscroll-behavior:contain;scroll-padding-block:16px}dialog::backdrop{background:#142c2359;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:22px}.modal-heading h2{margin:0;font-size:22px;letter-spacing:-.5px}form label{display:block;font-size:13px;font-weight:550;margin:17px 0}form input,textarea{display:block;width:100%;padding:12px 14px;border:1px solid #d8e1da;border-radius:9px;margin-top:8px;background:#fafcfb;color:#304639}textarea{resize:vertical;font-family:ui-monospace,monospace;font-size:13px;line-height:1.7}.form-help{color:#88958b;font-size:12px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:25px;position:sticky;bottom:-1px;background:#fff;padding-block:8px}.destructive{background:#ac4545;color:#fff}.detail-title{display:flex;gap:12px;align-items:center}.detail-title h3{font-size:20px;margin:5px 0}.detail-subtask{display:flex;align-items:center;gap:7px;border-bottom:1px solid #edf0ed;font-size:14px}.detail-subtask span{flex:1;overflow-wrap:anywhere}.toast{position:fixed;bottom:100px;left:50%;transform:translate(-50%);background:#234d3a;color:#fff;padding:14px 22px;border-radius:12px;box-shadow:0 6px 30px #17312530;z-index:10;width:max-content;max-width:90%;font-size:14px}h4{font-size:12px;letter-spacing:1px;text-transform:uppercase;color:#7c8e80}@media(min-width:800px){.sections,.add-section{max-width:820px}.list-progress{max-width:600px}}@media(max-width:800px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar{padding:0 24px}}@media(max-width:540px){.topbar{height:72px;padding:env(safe-area-inset-top) 20px 0}.brand{font-size:19px}.local{font-size:0;gap:0}.local i{height:8px;width:8px}.desktop-new{display:none}.home-actions{justify-content:flex-start}main{padding:30px 18px 20px;min-height:calc(100dvh - 72px)}h1{font-size:29px}.eyebrow{font-size:9px;letter-spacing:1.5px}.cards{grid-template-columns:1fr;gap:15px}.card-open{padding:20px}.card h2{min-height:0;margin:16px 0 20px}.card-footer{margin-top:19px}.home-heading{margin-bottom:25px}.empty{padding:40px 14px}.empty h2{font-size:19px}.hint{justify-content:flex-start;font-size:11px;margin:26px 4px}.section-heading{padding:10px}.section-heading h2{font-size:11px}.row-actions button,.reorder button{padding:7px}.task-row{padding-left:10px;padding-right:7px}.task-title{font-size:14px}.subtask-row{padding-left:43px}.toolbar{gap:5px}.toolbar button{font-size:12px}footer span{display:none}dialog{padding:20px}.flow{gap:6px;font-size:9px}.detail-subtask{gap:3px}.detail-subtask button{padding:8px}.detail-subtask span{font-size:13px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}.shell{padding-top:var(--safe-area-inset-top, env(safe-area-inset-top, 0px));padding-left:var(--safe-area-inset-left, env(safe-area-inset-left, 0px));padding-right:var(--safe-area-inset-right, env(safe-area-inset-right, 0px));padding-bottom:var( --safe-area-inset-bottom, env(safe-area-inset-bottom, 0px) )}.saving{color:#587263;font-size:13px}.loading{padding-top:calc(50px + var(--safe-area-inset-top, env(safe-area-inset-top, 0px)))}.fab{bottom:calc(26px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))}@media(max-width:540px){.topbar{padding:0 20px}}.sync-settings{overflow-wrap:anywhere}.sync-settings dl{display:grid;grid-template-columns:1fr 1fr;gap:10px}.sync-settings dd{margin:0;font-weight:600}.sync-settings form{display:grid;gap:14px;margin-block:20px}.sync-settings>button{margin:8px 8px 0 0}.sync-settings p{line-height:1.5}.consent-page{min-height:100vh;display:grid;place-items:center;padding:28px 18px;background:#f4f7f5}.consent-card{width:min(100%,520px);padding:32px;border:1px solid #dce6df;border-radius:18px;background:#fff;box-shadow:0 16px 44px #1c3a271a}.consent-brand{display:flex;align-items:center;gap:8px;margin-bottom:28px;font-size:19px}.consent-shield{color:#287649}.consent-card h1{margin:12px 0;font-size:clamp(24px,6vw,32px)}.consent-card p,.consent-card li{line-height:1.55}.consent-form{display:grid;gap:16px;margin-top:24px}.consent-form label{display:grid;gap:7px;font-weight:600}.consent-form input{width:100%}.consent-access{margin:24px 0 16px;padding:18px;border-radius:12px;background:#f2f7f3}.consent-access h2{margin:0 0 10px;font-size:16px}.consent-access .consent-tools-title{margin-top:18px}.consent-access ul{margin:0;padding-left:22px}.consent-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}@media(max-width:540px){.consent-page{align-items:start;padding:12px}.consent-card{padding:24px 20px}.consent-actions{flex-direction:column-reverse}.consent-actions button{width:100%}}
