@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-ext-wght-normal-BOFOeGcA.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-wght-normal-Xz1IZZA0.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,d09GMgABAAAAAAn4ABMAAAAAEwQAAAmOAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGjQbgnQcLj9IVkFSgQEGYD9TVEFUgQIAgQovahEICok0h0ULIAAwhzoBNgIkAzwEIAWHJgeBDgwHG6QQUdRKTmoBFD8K42bniObKrG3LZFcMWZzFmrjTFhQ6TVTqPJcInrfrvzq3b2PGn1wwMiNYGTy9ViREYARlL1zAGcPdPqBt3gNWrfKthv4xnM+b9caw+wmjgEUVRjHXhS6jgCK6zf5HiWQacJpGdAgdrbV6g/Rf1BfxRqZVQnrxRVWSJb6RLFnyu0elilmjeoSQCKnxsmwLaddUMjnksriSYuuPl06EAl7KfAiWQjCUETz0zNZ3EII94CDQtzkMfZ/9IkkY8tZRZTDky5ZVwBAM+GYpdd4ZVAWYImnLkiTg48l79gGx3D+VBtLeyg8u7bJAd4uo0pFuQBFysE9C95l0W4Fkiao6GfrDbu77lVU7wk9cV3uqOsXmQiMkhVKl1ugjzUAJBSIkkVWHijkpkVSyUFsgVBuJMA0N+ZnXtyUv5yMigGdfQRmwL1AAjQ3YXG6iIFNSUdPQo8+AISPGAltBMDQRAtyf4ZspLlZkpyOVoMZPvFGWzvk8p5SUC/NWPMj6T2/Yas2EdlON5GkfdkeFwVGjta825H89NIenlLWAPAp5h1KDtRhCaAQWMsFKtEvOKpIhgLHlXPARokkgEGEOAkqxJRQpKYq4ezahIiLHP6hZpqMbV0pUF2vdvEimLEQ/iIUYLgYWs0VXGVlLTOPdaPmFfCC/XrtzqVo1ez7vz6+Kd2+7o11ZJ+4MreLbB5BKVGxobAq4jZYalZ5aX2CKJiwUuc9GNJyi4M8bGyKcdjSRrG4JohdF8buJfmQefbYYREnMFsOoiNliFDVxmRgL0XUmUMLqzW0A4gCQAhWGYCQpFNukwXhIkPMsbRI19ewtw8Cp2Wj/Ro5cM2OTAbJAvZ/L4opBXb9+UHscYuOKM/W8isgwN26Exexjizmfnlp9dE3hOSqdZ/F5QqbckIlPb+oKfXxd6hftJ7Sm/uyPYpONza84CRlMNk/uhOrLpyf53982++zRkXNu3g3VF8qFbx1+7fbHZ9DrB3VXWNSmhnT2vrwS1+1Z+kHGBaZIhnnvuLBTNDeA340D1DWu5/jEa9pVfl6+Jij+yo3EELNixXCLjr173Q5eDP7Y7/L4iQFHbjpaJLFoP4cCsYP6sAPL7gMHNg53yYjqxqTDrYqLDl5DzW/eTLjYxCvucprjI3yl2ykKowKUC2Ox2FJLFo6Fa1HBWLC2jMCIIBEmklkYhmkpmBhTm/LCvJAH5oGcMKcgFEP1xUdho8ANPa6RFD99/PN60fjj9eXy2Eex4B5MpmRapXidzFk1p4uLk3+hn6jAP9ovJcXPPwk8o/0ltizbdbnTprvx4PSxT0VZ3Xc772aN7RflgbXRYwc3hLNO+k878nxGwfuVM8m8Gs7WEoVGWLHwSpx4vNSHBCMNqJ4m15Kp/TfHHVkQd++eY7PGN4W5byTs+6Ft8Ozvb/D60btv37de8ER0mS3P/0sLW84qGjEVkwztPzz06eGUWwKLwPb0D/WFd3vltl2aP276KpM0JNz6AfnAnZ5ADlF2zVyZ2OkxHSMxWPMnSZLbbDR3F1UjPVqp4d68da13F1YZujdWw7271iecO2l9+/4p47Oztjck355/75wFOI+VdGDqbNGs+ISgxg3iB2jb2r+b0CWsNLHIM4sdv8SDSFBP/Oromz6FNCWw2iMTxV0R8QLyBTkpe0j5+pSSJOOTB5Mck/gh3IopuNQnhKj02t3FL80gGbEh89SZcwTxcYt5cZT/nMnB3uXfPy8BSpVMBuRx+ZhACGzDBmwHsJRAjhotOnzuj2wDz3ug2wOUAY2NgZln9/TK/enG/oE4rO1wxvGUFMAxsZ0qNjRC7hl9d17e7imbgDt6uJXhUobDg7v3RX/yRCKxgMhfyiKcZfbpk0wmCcdQlIAOHeakXLvCNt++WfKiozNqSZxxJotn+c0a7DdPsx7DPYgKIDxwwYUZDg9aJbxocTjcwovr9WAsVV32mQoiiIOCHc60Oltst9qCQYuCqN1yHo0Kj60OgI2OqmiuBUWrNA0NDhYCDcdpmMrs1fZZ0xdTzMr1HdPtIHstYhqaPDDA5YxUDx7J4fJiisBSDI/L6G/bn34GNy8Q2g044ZTulAdFLb0tI6NNxfj3DzLjWiNGxje1pz7aXOcNV68lDPEd2SXl6VfBuwmHzdf1gxFy1HvA7pD8I2BnnmyGw852Cg5XbgIdEEGE5UCzen5jTlG6JCU5iajlxVcsXvbcS0SAcg1dcesWJLVK8+hYHOYQ+Pjy+EyVGXP0aPTFagrV9E03hCQvYx+g47KGq+1GsLj8uBIyihNw33YUe8PNC4BOJ3Lm1AglLV3nCuvUdIP+v15tVGbWIwgxLVpPkfpthCGpTKG+oA/DQfsKKvxhScqaN6FuElAUtTKv2UYgOmQegsN/n7njHUju8wM4VTcm+Q8xfX9SFwjTzdVqu95UOWSIGOabH8OGBEba//8Yxl3GcPdP/dMBOoSX/0z5SZmBoLbaPs+9asaMpb36yknKaw6FqWZa6A5vDa02mhkOba1q6KtLV208xrkwmW5C4VD6n2fvRjADy2qDYYnNy+H10Fq0LMbNzS863gkO7iQ8eC48/Ny5m59tOcEso3u7Qg3yrqDL6eKXwJAuWnhylfbWrRObe66rzX59+XDtzusnL66dI/86ArmtLlzED860Ef3bFPV78OX/zFTA11fcBn2Vntb7qiGBSgLBHyuv/uEaqqoTgSpOyjlzh86me1Vriv7i9rLPLvtghWmSnblRbAsBJL/4dScSQTBxOivHMO5QvBBY0iheJvfwWLxLOGzYKZyM4zVc2Cll46zEpeUV4MqGEWZj22SdOxhGAjgs9AEnfT+RoiMfcDb0GS5NncKVxju4Nt/mRk13O9Gz3FLct5oCD6wkwUNrCfHIUg6SMf8LwQGyVaBUqpLPW5BaMpRshEpl8nS1qw5dgnzlik8QBXmdy5UrIH74heTKZKMSilQso4hsRiGraQZRzxpNGqlEJMsXuAU7GlcR8mWSykUpVkWGyIf0a8v4qEQp5CtGsMiZa+4ESYQy+WilCiguHzxMXO54ogShooTV2bj2z1zL6DYSoImoQ8lFUWxMLBNQQgLkV2tHYgUoIbkuREz+fJHKxxWBcnvu3KQppFCxLkguB1NyVSp/TknRvNwYlCdbblWu3ze6owHdWluhE5tgQ6ej2SV65CijijoaRfSiH4Nqz1OpfEW+WeI/oU0ly60zkV9YzOQSYtZVEGYmrysTZAJkY4qZtIBD9/LYTIK7Nww3vMiYBwA=) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-cyrillic-wght-normal-Dvxsihut.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-greek-wght-normal-DL7QRZyv.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-vietnamese-wght-normal-usUDDRr7.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-ext-wght-normal-Ch3YOpNY.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-wght-normal-DHIcAJRg.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{font-family:DM Sans Variable,system-ui,sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none;--bg: #f6f5f1;--surface: #fff;--ink: #263d35;--muted: #5d6862;--line: #e7e9e2;--green: #275747;--soft: #eef1e9;--accent: #dce9bf;--warning: #a54e38;--shadow: 0 8px 32px #213b2f05}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;touch-action:manipulation}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer;border:0;border-radius:9px;min-height:44px;background:var(--green);color:var(--on-primary);padding:11px 17px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:13px;font-weight:600}button:disabled{opacity:.5;cursor:not-allowed}button:hover{filter:brightness(.96)}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--green);outline-offset:2px}.secondary{color:var(--ink);background:var(--surface);border:1px solid var(--line)}.small{font-size:12px;padding:8px 12px}.backup-export{min-height:36px;padding:7px 14px;font-size:12.5px;margin:6px 0 30px}@media(pointer:coarse){.backup-export{min-height:44px}}.text-button{background:none;color:var(--green);padding:5px 0;min-height:44px;font-size:12px}.icon-button{padding:10px;background:none;color:var(--muted);width:44px;min-width:44px}.button-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.sidebar{position:fixed;inset:0 auto 0 0;overflow-y:auto;width:238px;padding:32px 22px 20px;background:var(--c-bg-f0f1e9);border-right:1px solid var(--c-bd-e1e4da);display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:10px;color:var(--c-fg-244a3c);text-decoration:none;font-size:24px;font-weight:750;letter-spacing:-1px}.brand-mark{width:40px;height:40px;flex:none;border-radius:12px;overflow:hidden;display:block;box-shadow:0 1px 4px #7a2a4a40}.brand-mark .logo-mark{width:100%;height:100%;display:block}.brand-dot{font-size:11px;color:var(--c-fg-a4b77b);align-self:flex-start;margin-top:8px;margin-left:-5px}.sidebar-caption{font-size:11px;letter-spacing:1.5px;color:var(--muted);margin:50px 10px 15px}.sidebar nav{display:flex;flex-direction:column;gap:5px}.sidebar nav button{justify-content:flex-start;background:transparent;color:var(--c-fg-68786d);font-weight:500;padding:14px 15px;gap:13px;font-size:13px}.sidebar nav button.active{background:var(--c-bg-e0e7d5);color:var(--c-fg-294b39)}.sidebar nav small{margin-left:auto;background:var(--c-bg-f3f6ee);padding:2px 7px;border-radius:5px}.sidebar-bottom{margin-top:auto}.quiet-note{margin:50px 5px 25px;padding:20px 16px 8px;border-radius:10px;background:var(--c-bg-e8eddd);color:var(--c-fg-5b7255);font-size:14px;line-height:1.7;overflow:hidden}.line-art{text-align:right;font-size:90px;font-weight:400;color:var(--c-fg-a3b587);line-height:.9}.sidebar-bottom>p{display:flex;align-items:center;font-size:12px;gap:9px}.avatar{width:29px;height:29px;display:grid;place-items:center;border-radius:50%;background:var(--c-bg-dedfd3)}.personal{margin-left:auto;color:var(--muted);font-size:11px}.sidebar-bottom>small{font-size:11px;color:var(--muted);line-height:1.6;display:block;margin:15px 4px 0}.workspace{margin-left:238px}.topbar{height:75px;padding:0 40px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-size:12px;background:var(--bg)}.topbar>span,.topbar>div{display:flex;align-items:center;gap:15px}.breadcrumb{color:var(--muted)}.sync-label{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:var(--muted)}main{max-width:1400px;padding:25px 40px 20px;margin:0 auto}.setup-banner{display:flex;gap:9px;align-items:center;color:var(--c-fg-6a7667);font-size:12px;padding:0 0 12px}.setup-banner .text-button{margin-left:auto}.page-heading{display:flex;justify-content:space-between;align-items:center;margin:21px 0 30px;gap:18px}.eyebrow{font-size:12px;font-weight:600;letter-spacing:1.4px;color:var(--c-fg-66725f);text-transform:uppercase;margin:0 0 12px}h1,h2,h3{font-family:Manrope Variable,system-ui,sans-serif}h1{font-size:32px;font-weight:650;line-height:1.3;letter-spacing:-1.2px;margin:0 0 12px}h2{font-size:16px;font-weight:650;letter-spacing:-.4px;margin:0}h3{font-size:14px;font-weight:650}.page-heading p:not(.eyebrow){font-size:13px;color:var(--muted);margin:0}.dashboard-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:22px}.card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:23px;box-shadow:var(--shadow)}.section-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px}.section-title .eyebrow{margin:0}.section-title h2{font-size:14px}.subtle-chip{font-size:11px;color:var(--c-fg-7b8871);background:var(--c-bg-f0f3e9);padding:5px 8px;border-radius:5px}.focus-panel{background:var(--c-bg-e8eddf);border:1px solid var(--c-bd-dce4d1);border-radius:14px;padding:25px;position:relative;overflow:hidden}.focus-panel:after{content:"";position:absolute;width:180px;height:180px;border:1px solid var(--c-bd-d0ddbf);border-radius:50%;right:-130px;top:75px;box-shadow:0 0 0 18px var(--c-ring-e0e8d7),0 0 0 19px var(--c-ring-d0ddbf),0 0 0 37px var(--c-ring-e4ebdc),0 0 0 38px var(--c-ring-d0ddbf);pointer-events:none}.focus-panel h2{font-size:27px;line-height:1.35;letter-spacing:-.7px;max-width:85%;margin:19px 0 13px}.focus-panel p:not(.eyebrow){font-size:12px;line-height:1.7;color:var(--c-fg-728268);max-width:87%;margin-bottom:22px}.focus-panel .subtle-chip{background:var(--c-bg-f1f5e9)}.focus-context{font-size:12px;color:var(--c-fg-748568);display:flex;gap:7px;align-items:center;margin-top:27px}.dot{width:6px;height:6px;background:var(--c-bg-8fa570);border-radius:50%}.focus-actions{display:flex;gap:18px}.focus-controls{margin-top:24px;padding-top:16px;border-top:1px solid var(--c-bd-d4dec8);display:flex;gap:22px;font-size:12px;color:var(--c-fg-718166)}.focus-controls select{width:auto;min-height:40px;background:var(--c-bg-f0f4e9);border:0;font-size:12px;margin-left:4px;padding:5px}.goals-preview{padding-bottom:10px;display:flex;flex-direction:column}.goal-intro{text-align:center;flex:1;padding:7px}.orbit{width:65px;height:65px;border:1px solid var(--c-bd-e8eadf);border-radius:50%;display:grid;place-items:center;margin:4px auto 12px;color:var(--c-fg-91a174);box-shadow:0 0 0 9px var(--c-ring-f9faf6)}.goal-intro h3{margin:17px 0 8px}.goal-intro p{font-size:12px;line-height:1.7;color:var(--muted);margin:0}.card-link{justify-content:space-between;background:transparent;border-top:1px solid var(--line);color:var(--muted);border-radius:0;width:100%;font-size:12px;padding:15px 0 5px;margin-top:10px}.goal-mini{background:none;display:block;width:100%;color:var(--ink);padding:10px 0 15px;text-align:left}.goal-mini>div:first-child{display:flex;align-items:center;gap:10px}.goal-mini strong{font-weight:500;font-size:12px}.goal-mini>div>span:last-child{margin-left:auto;color:var(--muted);font-size:12px}.goal-icon{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:9px;background:var(--c-bg-f0f3e9);color:var(--c-fg-7c925b)}.progress-track{height:8px;background:var(--soft);border-radius:10px;overflow:hidden;margin-top:14px}.progress-track i{display:block;height:100%;background:var(--green);transition:width .6s ease;border-radius:10px}.numbers-section{margin:31px 0 25px}.numbers-section .section-title{margin-bottom:13px}.section-title select{width:auto;min-height:34px;font-size:12px;padding:6px 10px}.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:14px}.metric{border:1px solid var(--line);background:var(--surface);border-radius:11px;padding:20px 23px}.metric>span{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--muted)}.metric strong{display:block;font-family:Manrope Variable,sans-serif;font-size:27px;font-weight:650;letter-spacing:-1px;margin:15px 0 8px}.metric small{font-size:12px;color:var(--muted)}.metric-dot{width:6px;height:6px;border-radius:50%}.green{background:var(--c-bg-91a570)}.orange{background:var(--c-bg-c6a17c)}.lower{grid-template-columns:1.15fr 1fr}.count{font-family:DM Sans Variable;font-size:12px;background:var(--soft);border-radius:5px;padding:3px 6px;margin-left:5px;color:var(--muted)}.task-row{display:flex;align-items:center;gap:11px;padding:14px 0;border-bottom:1px solid var(--line)}.task-check{width:23px;height:23px;min-height:23px;border:1px solid var(--c-bd-d9dfd1);padding:2px;border-radius:7px;background:var(--surface);color:var(--green);flex-shrink:0}.task-check:before{content:"";position:absolute;min-width:44px;min-height:44px}.task-text{display:block;text-align:left;color:var(--ink);background:none;min-width:0;flex:1;padding:4px 0}.task-text strong{font-size:14px;font-weight:500;line-height:1.35;display:block;overflow-wrap:anywhere}.task-text small{display:block;font-size:12px;color:var(--muted);margin-top:5px}.task-title{background-image:linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-position:0 58%;background-size:0% 1.5px;-webkit-box-decoration-break:clone;box-decoration-break:clone;transition:background-size .38s cubic-bezier(.3,.7,.2,1)}.is-done .task-title{background-size:100% 1.5px}.is-done .task-text strong{color:var(--muted);transition:color .3s ease}.is-done .task-check{background:var(--soft)}.task-row .icon-button{min-width:40px;width:40px}.reason-line{font-size:12px;color:var(--muted);display:flex;justify-content:space-between;gap:10px;align-items:center}.reason-line .text-button{white-space:nowrap;font-size:12px}.radar-empty{text-align:center;padding:25px 10px;color:var(--muted)}.radar-empty svg{background:var(--c-bg-f0f3e8);padding:8px;border-radius:50%;width:42px;height:42px}.radar-empty h3{font-size:12px;color:var(--ink);margin:12px 0 8px}.radar-empty p{font-size:12px;color:var(--muted)}.empty{text-align:center;padding:40px 20px;color:var(--muted)}.empty h3{color:var(--ink);margin-bottom:10px}.empty p{font-size:12px;line-height:1.8;max-width:400px;margin:0 auto 20px}.empty-icon{display:inline-grid;place-items:center;width:50px;height:50px;background:var(--soft);border-radius:50%;color:var(--c-fg-9cae7f)}.page-footer{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);margin-top:40px;padding:20px 0;border-top:1px solid var(--line)}.goal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.goal-card h2,.project-card h2{margin:20px 0 10px;font-size:20px}.goal-card p,.project-card p,.settings-grid p{font-size:12px;line-height:1.8;color:var(--muted)}.goal-value{display:block;font-size:26px;margin-top:25px}.goal-card>small{font-size:12px;color:var(--muted);display:block;margin:7px 0}.goal-card .button-row,.project-card .button-row{margin-top:22px}.pace{background:var(--soft);padding:10px;border-radius:8px}.project-figures{display:grid;gap:14px;font-size:12px;margin:25px 0}.project-figures span{display:flex;justify-content:space-between;color:var(--muted)}.project-figures b{font-weight:500;color:var(--ink)}.client-list{margin-top:25px}.list-link{display:flex;width:100%;justify-content:space-between;background:none;color:var(--ink);border-top:1px solid var(--line);border-radius:0;padding:16px 0}.list-link small{color:var(--muted);margin-left:auto;margin-right:15px}.tabs{display:flex;gap:5px;margin-bottom:20px}.tabs button{text-transform:capitalize;background:none;color:var(--muted)}.tabs .selected{background:var(--c-bg-e5ebdb);color:var(--c-fg-3b5733)}.balance{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.balance>span{font-size:12px;color:var(--muted)}.balance b{font-size:14px;display:block;margin-top:7px;color:var(--ink)}.balance .overpaid,.balance .overpaid b{color:var(--warning)}.activity-list{margin-top:20px}.activity-list h2{margin-bottom:20px}.activity-row{display:flex;gap:15px;align-items:center;border-top:1px solid var(--line);padding:15px 0}.activity-row>b{font-size:12px}.activity-row>svg{color:var(--muted)}.muted{font-size:12px;color:var(--muted)}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.settings-grid h2{margin-bottom:23px}.settings-grid h3{margin-top:28px}.field{display:flex;flex-direction:column;gap:8px;font-size:12px;color:var(--muted);margin-bottom:18px}.field>span{font-weight:600}.field input,.field select,.field textarea{width:100%}input:not([type=checkbox]),select,textarea{border:1px solid var(--line);border-radius:7px;padding:11px 12px;background:var(--surface);color:var(--ink);min-height:44px;font-size:13px}input[type=checkbox]{accent-color:var(--green);width:17px;height:17px}.working-days{display:flex;gap:8px;flex-wrap:wrap}.working-days label{display:flex;align-items:center;gap:4px;min-height:44px;font-size:12px}.modal-backdrop{position:fixed;z-index:20;inset:0;background:var(--scrim);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;padding:20px}.modal{background:var(--surface);border-radius:18px;width:570px;max-width:100%;max-height:90dvh;overflow:auto;box-shadow:0 30px 100px #10291e33}.modal header{padding:24px 28px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.modal h2{font-size:23px;text-transform:capitalize}.modal form{padding:25px 28px}.modal footer{display:flex;justify-content:flex-end;gap:10px;margin-top:25px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.form-grid .field,.field input,.field select,.field textarea{min-width:0;max-width:100%}.choices{display:flex;gap:6px;flex-wrap:wrap}.choices label{background:var(--soft);border-radius:5px;padding:8px;display:flex;gap:5px;align-items:center;font-size:12px;min-height:44px}.check-label{display:flex;align-items:center;gap:8px;font-size:12px;margin-bottom:20px}.form-note{font-size:12px;line-height:1.7;color:var(--muted)}details{margin:14px 0 20px}summary{font-size:12px;cursor:pointer;min-height:44px;display:flex;align-items:center;color:var(--green)}.error{background:var(--c-bg-f9e9e2);color:var(--c-fg-8b3d29);padding:12px 16px;border-radius:8px;font-size:12px;line-height:1.7}.notice{background:var(--c-bg-e8efda);color:var(--c-fg-446534);padding:12px 16px;border-radius:8px;font-size:12px}.dismissible{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.timer-banner{display:flex;align-items:center;gap:18px;background:var(--c-bg-274f41);color:var(--on-banner);padding:15px 20px;border-radius:11px;margin-bottom:20px}.timer-banner div{flex:1}.timer-banner small{display:block;font-size:12px;margin-top:5px;color:var(--c-fg-c1d0b8)}.timer-banner strong{font-size:13px}.timer-banner button{background:var(--c-bg-e3edcc);color:var(--c-fg-274b37)}.pulse{width:8px;height:8px;border-radius:50%;background:var(--c-bg-d2e4a4)}.conflict{margin:20px 0;padding:20px;border:1px solid var(--line);border-radius:10px}.conflict pre{overflow:auto;max-height:350px;font-size:12px}.conflict button{margin-right:8px}.restore-preview{padding:15px;background:var(--soft);border-radius:8px}.auth{max-width:460px;padding:80px 25px}.auth .brand-mark{width:84px;height:84px;border-radius:22px;margin-bottom:30px;box-shadow:0 4px 14px #7a2a4a47}.auth h1{font-size:29px}.auth>p{font-size:13px;color:var(--muted);margin-bottom:28px}.auth form button{width:100%}.loading{padding:80px;text-align:center;color:var(--muted)}.mobile-nav{display:none}@media(min-width:1500px){main{padding-top:35px}.page-heading{margin-bottom:36px}.focus-panel{padding:30px}.focus-panel h2{font-size:32px}}@media(max-width:1150px){.sidebar{width:198px;padding:28px 15px}.workspace{margin-left:198px}main{padding:22px 25px}.topbar{padding:0 25px}.dashboard-grid{gap:17px}.card{padding:18px}.focus-panel{padding:20px}.metric{padding:18px}.metric strong{font-size:23px}.balance{flex-wrap:wrap}.balance>strong{width:100%}}@media(max-width:820px){.sidebar{width:175px}.workspace{margin-left:175px}.brand{font-size:21px}.sidebar-caption{font-size:11px}.dashboard-grid,.lower,.goal-grid,.settings-grid{grid-template-columns:1fr}.goals-preview{min-height:240px}.metric-grid{gap:8px}.metric{padding:14px 10px}.metric strong{font-size:17px}.metric small{font-size:11px}.topbar .breadcrumb{display:none}.topbar{padding:0 18px}.setup-banner{align-items:flex-start}.setup-banner .text-button{display:none}h1{font-size:28px}.page-heading{align-items:flex-start}.page-heading>.button-row{flex-direction:column}.page-heading>button{white-space:nowrap}.page-footer{gap:15px}}@media(max-width:600px),(max-height:500px)and (orientation:landscape){.sidebar{display:none}.workspace{margin-left:0}.topbar{height:64px;padding:0 18px;padding-top:env(safe-area-inset-top)}.topbar>span{display:none}.topbar>div{justify-content:space-between;width:100%}main{padding:16px 18px 95px}.setup-banner{font-size:12px;line-height:1.6;padding-top:5px}.setup-banner>svg{flex-shrink:0;margin-top:2px}.page-heading{margin:20px 0 25px;flex-wrap:wrap}.page-heading p:not(.eyebrow){font-size:12px}h1{font-size:27px;letter-spacing:-.9px}.eyebrow{font-size:11px}.focus-panel{padding:22px}.focus-panel h2{font-size:28px}.focus-panel p:not(.eyebrow){font-size:12px}.metric-grid{grid-template-columns:1fr}.metric{padding:17px 20px;display:grid;grid-template-columns:1fr 1fr;gap:4px}.metric>span{justify-content:flex-start;gap:10px}.metric strong{grid-column:2;grid-row:1/3;text-align:right;margin:3px 0;font-size:23px}.metric small{grid-column:1}.section-title h2{font-size:13px}.card{padding:20px}.mobile-nav{display:flex;position:fixed;inset:auto 0 0;background:var(--surface);border-top:1px solid var(--line);z-index:10;justify-content:space-around;padding:7px 4px calc(7px + env(safe-area-inset-bottom))}.mobile-nav button{background:none;color:var(--muted);display:flex;flex-direction:column;gap:5px;font-size:11px;padding:6px 8px;min-width:44px}.mobile-nav button.active{color:var(--green);background:var(--soft)}.task-row{gap:8px}.page-footer{font-size:11px}.modal-backdrop{align-items:flex-end;padding:0}.modal{max-height:94dvh;border-radius:18px 18px 0 0}.modal header{padding:20px}.modal form{padding:20px 20px calc(25px + env(safe-area-inset-bottom))}.form-grid{gap:12px}.activity-row{flex-wrap:wrap;gap:10px}.activity-row .task-text{min-width:150px}.balance>span{width:43%;margin-bottom:10px}.timer-banner{padding:12px;gap:10px}.timer-banner>b{font-size:12px}.tabs{overflow:auto}.reason-line{font-size:11px}.settings-grid{gap:20px}}.period-table{width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--line);border-radius:11px;overflow:hidden;margin-bottom:14px;font-size:13px}.period-table caption{text-align:left;font-weight:600;padding:0 0 8px}.period-table th,.period-table td{padding:12px 16px;text-align:right;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}.period-table th:first-child,.period-table td:first-child{text-align:left;color:var(--muted);font-weight:500}.period-table thead th{font-size:12px;color:var(--muted);font-weight:600}.period-table tr:last-child td{border-bottom:0}.table-scroll{overflow-x:auto}.goal-mini .pace-line{display:block;margin-top:8px;font-size:12px;color:var(--muted)}.milestones{margin:12px 0 0;padding:0;list-style:none;font-size:13px}.milestones li{display:flex;justify-content:space-between;gap:8px;padding:6px 0;border-top:1px solid var(--line)}.auth .auth-alt{display:flex;flex-direction:column;gap:8px;margin-top:14px}.timer-clock{font-variant-numeric:tabular-nums}.split-note{display:block;margin-top:4px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.period-table td{white-space:nowrap}@media(max-width:600px),(max-height:500px)and (orientation:landscape){.period-table th,.period-table td{padding:10px 8px;font-size:12px}}.dashboard-grid .card>.section-title+.section-title,.card .muted+.section-title{margin-top:22px}@media(max-height:500px)and (orientation:landscape){main,.topbar{padding-left:max(18px,env(safe-area-inset-left));padding-right:max(18px,env(safe-area-inset-right))}.mobile-nav{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.mobile-nav button{flex-direction:row}}.subtasks{margin-left:34px;border-left:2px solid var(--line);padding-left:12px}.project-figures .overpaid b,.list-link .overpaid{color:var(--warning)}.sidebar nav button{padding:10px 15px}.nav-group{display:flex;flex-direction:column;gap:2px;margin-bottom:10px}.nav-label{margin:4px 15px;font-size:11px;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted)}@media(max-height:900px){.sidebar .quiet-note{display:none}}.tabs{flex-wrap:wrap}.tab-actions{display:flex;justify-content:flex-end;margin-bottom:14px}.inline-field{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--muted)}.inline-field input{width:70px;min-height:36px}.load{margin:6px 0 4px}.load small{display:block;margin-top:8px;font-size:12px;color:var(--muted)}.progress-track i.over{background:var(--c-bg-c99a6b)}.plan-controls{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:12px}.plan-controls .tabs{margin-bottom:0}.date-nav{display:flex;align-items:center;gap:6px;margin-bottom:12px;color:var(--muted);font-size:13px}.plan-controls .date-nav{margin-bottom:0}.plan-day,.review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}.plan-day>.card,.review-grid>.card{margin:0}.planned-row{display:flex;align-items:center;gap:6px}.planned-row>:first-child{flex:1;min-width:0}.planned-row select{width:auto;max-width:140px}.add-row{display:flex;gap:8px;margin-top:12px}.add-row select{flex:1;min-width:0}.timeline{list-style:none;margin:0;padding:0}.timeline li{border-left:3px solid var(--accent);padding-left:12px;margin:8px 0}.timeline li.clash{border-left-color:var(--c-bd-c99a6b)}.timeline .task-text{display:grid;gap:2px;text-align:left}.timeline .task-text span{font-size:14px}.week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;margin:14px 0}.week-day{padding:12px!important;margin:0;min-height:160px}.week-day.is-today{border-color:var(--green)}.week-day-head{background:none;color:var(--ink);padding:0;min-height:32px;width:100%;justify-content:space-between;font-size:13px}.week-day ul{list-style:none;margin:8px 0 0;padding:0;font-size:13px}.week-day li{padding:4px 0;border-top:1px solid var(--line);overflow-wrap:anywhere}.week-day li.block-item{color:var(--muted)}.week-day .load small{font-size:11px}@media(max-width:1150px){.week-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:820px){.plan-day,.review-grid{grid-template-columns:1fr}}.habit-card.is-paused{background:var(--soft);border-style:dashed}.habit-card.is-paused .task-text strong{color:var(--muted)}.habit-score{font-size:13px;color:var(--muted);white-space:nowrap}.habit-week{display:flex;gap:6px;margin:12px 0 16px}.habit-day{flex:1;display:grid;place-items:center;gap:2px;padding:6px 0;border-radius:8px;background:var(--soft);color:var(--muted);font-size:13px}.habit-day.done{background:var(--accent);color:var(--ink)}.habit-day.today{outline:2px solid var(--green)}.habit-day small{font-size:11px}.habit-today{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0;border-top:1px solid var(--line)}.habit-today small{color:var(--muted)}.note-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}.note-card{margin:0;display:flex;flex-direction:column;justify-content:space-between;gap:8px}.note-card .task-text{text-align:left;display:grid;gap:6px}.note-body{white-space:pre-wrap;font-size:14px;color:var(--ink);display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden;margin:0}.journal-entry{flex-direction:column;align-items:flex-start;gap:4px;text-align:left}.add-link{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.add-link .field{flex:1;min-width:220px;margin:0}.link-row{flex-wrap:wrap}.checklist{border:0;padding:0;margin:0 0 14px}.checklist legend{display:flex;align-items:center;gap:6px;padding:0;width:100%}.checklist legend small{margin-left:auto;color:var(--muted)}.checklist .check-label{padding:6px 0;min-height:44px}.review-grid{margin-top:6px}.review-grid h3{font-size:14px;margin:16px 0 6px}.review-goal{display:flex;justify-content:space-between}.plain-list{margin:8px 0 0;padding-left:18px}.template-row{border-top:1px solid var(--line)}.use-template{padding:4px 0 14px}.sheet-backdrop{position:fixed;inset:0;z-index:15;background:var(--scrim-soft)}.more-sheet{position:fixed;left:0;right:0;bottom:0;z-index:16;display:grid;grid-template-columns:repeat(3,1fr);gap:6px;background:var(--surface);border-radius:18px 18px 0 0;padding:14px 12px calc(84px + env(safe-area-inset-bottom));box-shadow:0 -10px 40px #10291e22}.more-sheet button{flex-direction:column;background:var(--soft);color:var(--ink);min-height:72px;font-size:12px}.more-sheet button.active{background:var(--accent)}.search-dialog{align-self:flex-start;margin-top:10vh;padding:10px 14px 14px}.search-input{display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--line);padding-bottom:6px}.search-input input{border:0;flex:1;font-size:17px;background:transparent;color:var(--ink)}.search-input input:focus{outline:none}.search-results{list-style:none;margin:8px 0 0;padding:0;max-height:60dvh;overflow:auto}.search-results button{width:100%;justify-content:flex-start;align-items:flex-start;background:none;color:var(--ink);text-align:left;gap:10px}.search-results button.active{background:var(--soft)}.search-results span{display:grid;gap:2px}.search-results span small{color:var(--muted);font-weight:400}@media(max-width:600px),(max-height:500px)and (orientation:landscape){.search-dialog{margin-top:0;align-self:stretch;border-radius:0;max-height:100dvh}.mobile-nav button{flex:1}}.note-card .task-text,.journal-entry,.timeline .task-text{justify-items:start;justify-content:flex-start;align-items:flex-start;text-align:left}.note-card .text-button{align-self:flex-start}@media(max-width:600px),(max-height:500px)and (orientation:landscape){.mobile-nav{z-index:17}}.note-card strong{font-size:15px}.note-body{font-weight:400}.calendar-heading{font-size:13px;color:var(--muted);margin:16px 0 4px}.timeline.calendar li{border-left-color:var(--c-bd-8fb3c9)}.week-day li.event-item{color:var(--c-fg-4f7891)}.event-line{display:flex;align-items:center;gap:6px;margin:4px 0;font-size:13px;color:var(--c-fg-4f7891)}.tabs.compact{margin:0}.tabs.compact button{min-height:36px;padding:6px 10px}.insight h3{font-size:14px;margin:14px 0 6px}.insight-table{width:100%;border-collapse:collapse;font-size:13px;font-variant-numeric:tabular-nums}.insight-table th,.insight-table td{text-align:right;padding:8px 4px;border-bottom:1px solid var(--line);white-space:nowrap}.insight-table th:first-child{text-align:left;white-space:normal;font-weight:500}.insight-table thead th{color:var(--muted);font-weight:600;font-size:12px}.bar{display:block;height:6px;background:var(--soft);border-radius:6px;overflow:hidden;margin-top:4px}.bar i{display:block;height:100%;background:var(--c-bg-9eaf7b)}.bar.estimate i{background:var(--c-bg-b9c6a0)}.bar.actual i{background:var(--c-bg-6f8f57)}.week-bars,.history-bars{display:flex;align-items:flex-end;gap:6px;height:120px;margin:10px 0 6px}.history-bars{height:64px;gap:3px}.history-bars i{flex:1;background:var(--c-bg-9eaf7b);border-radius:3px 3px 0 0;min-height:2px}.week-bar{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;height:100%;gap:4px}.week-bar .stack{flex:1;width:100%;display:flex;flex-direction:column-reverse;justify-content:flex-start}.week-bar .stack i{display:block;width:100%}.week-bar small{font-size:11px;color:var(--muted);white-space:nowrap}.billable{background:var(--c-bg-6f8f57)}.nonbillable{background:var(--c-bg-c9d4b4)}.legend{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:6px;flex-wrap:wrap}.legend .key{width:10px;height:10px;border-radius:2px;display:inline-block}.estimate-row{display:grid;grid-template-columns:minmax(0,1.4fr) 1fr 1fr auto;gap:8px;align-items:center;font-size:13px;padding:6px 0;border-top:1px solid var(--line)}.estimate-row .bar{margin:0}.forecast{border:1px dashed var(--c-bd-b7a27f);background:transparent;border-radius:10px;padding:10px 12px;display:grid;gap:4px;font-size:13px;margin-bottom:8px}.forecast strong{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--c-fg-8a6f45)}.forecast small{color:var(--muted)}.habit-weeks{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;align-items:center;padding:8px 0;border-top:1px solid var(--line);font-size:13px}.habit-weeks small{grid-column:1 / -1;color:var(--muted)}.habit-weeks .cells{display:flex;gap:4px}.habit-weeks .cells i{width:16px;height:16px;border-radius:4px;background:var(--soft)}.habit-weeks .cells i.some{background:var(--c-bg-dbe5c8)}.habit-weeks .cells i.met{background:var(--c-bg-8fa570)}.habit-weeks .cells i.before{background:transparent;border:1px dashed var(--line)}.legend-item{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.field>.icon-button{align-self:flex-end}.kanban{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:12px 0 20px}@media(max-width:700px){.kanban{grid-template-columns:1fr}}.kanban-col{background:var(--soft);border:1px solid var(--line);border-radius:12px;padding:10px;min-height:120px}.kanban-col.drop{outline:2px solid var(--green)}.kanban-col h3{font-size:13px;margin:2px 4px 10px}.kanban-col .count{color:var(--muted);font-weight:400}.kanban-card{display:grid;grid-template-columns:auto 1fr;gap:2px 6px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:6px 8px;margin-bottom:8px}.kanban-card.dragging{opacity:.35}.kanban-card .card-title{text-align:left;justify-self:start;min-height:36px}.kanban-card .card-meta{grid-column:2;display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px;color:var(--muted)}.kanban-card .card-meta select{min-height:32px;font-size:12px}.drag-handle{touch-action:none;cursor:grab;background:none;border:0;color:var(--muted);min-width:32px;min-height:44px;padding:0}.drop-line{height:3px;border-radius:2px;background:var(--green);margin:0 0 8px}.drag-ghost{position:fixed;pointer-events:none;transform:translate(-20px,-50%);background:var(--surface);border:1px solid var(--green);border-radius:10px;padding:8px 12px;font-size:13px;box-shadow:0 8px 24px #0000002e;z-index:50;max-width:260px}.standup-picks{max-height:360px;overflow:auto;margin-bottom:12px}.plain-list{list-style:none;padding:0;margin:0 0 8px;font-size:13px;line-height:1.8}.commitments li{display:grid;grid-template-columns:110px 1fr auto;gap:10px;align-items:center}.commitments .bar{height:6px;border-radius:3px;background:var(--line);overflow:hidden;display:block}.commitments .bar span{display:block;height:100%;background:var(--green)}.task-check{transition:background .2s ease,border-color .2s ease}.is-done .task-check{background:var(--green);border-color:var(--green);color:var(--surface)}.is-done .task-check svg{animation:tick-in .28s ease-out}@keyframes tick-in{0%{transform:scale(.3);opacity:0}70%{transform:scale(1.2)}}.is-done .task-text strong{transition:opacity .2s ease}.habit-progress{height:6px;border-radius:6px;background:var(--soft);overflow:hidden;margin:2px 0 12px}.habit-progress i{display:block;height:100%;background:var(--green);border-radius:6px;transition:width .4s ease}.habit-card.is-met .habit-score{color:var(--green);font-weight:600}.habit-card .habit-consistency{display:block;margin-top:10px;font-size:12px}button.checked{border-color:var(--green);color:var(--green)}.streak-chip{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;color:var(--c-fg-8a4b1e);background:var(--c-bg-fbeedd);border-radius:999px;padding:4px 9px;white-space:nowrap}.streak-chip small{font-weight:400;color:var(--muted);margin-left:4px}.pop{animation:pop .6s ease-out}.habit-card.pop .habit-day.today{animation:glow .9s ease-out}@keyframes pop{40%{transform:scale(1.025)}}@keyframes glow{0%{box-shadow:0 0 color-mix(in srgb,var(--green) 45%,transparent)}to{box-shadow:0 0 0 12px color-mix(in srgb,var(--green) 0%,transparent)}}.habit-today{flex-wrap:wrap}.habit-today-text{display:flex;align-items:center;flex-wrap:wrap;gap:4px 10px;flex:1;min-width:0}.habit-today-text strong{font-size:14px;font-weight:500}.habit-today.is-met strong{color:var(--green)}.today-strip{display:flex;flex-wrap:wrap;gap:12px;margin:-10px 0 24px}.today-stat{flex:0 1 220px;min-width:0;display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:8px 16px 8px 10px;color:var(--ink);text-align:left}.today-stat strong{display:block;font-size:16px}.today-stat small{color:var(--muted);font-size:12px}.ring{width:38px;height:38px;transform:rotate(-90deg)}.ring circle{fill:none;stroke-width:4}.ring-bg{stroke:var(--soft)}.ring-fg{stroke:var(--green);stroke-linecap:round;transition:stroke-dasharray .5s ease}.ring.full .ring-fg{stroke:var(--c-fill-c9822f)}.goal-figure{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:22px}.goal-figure .goal-value{margin-top:0}.goal-percent{font-size:15px;font-weight:600;color:var(--green)}.goal-card .goal-due{font-weight:500;color:var(--ink);margin:0}.goal-card .goal-notes{margin:6px 0 0}.subtle-chip.achieved{background:var(--c-bg-fbeedd);color:var(--c-fg-8a4b1e);font-weight:600}.goal-card.is-achieved{border-color:var(--c-bd-e6c08f);background:linear-gradient(160deg,var(--c-bg-fffaf1) 0%,var(--surface) 55%)}.goal-card.is-achieved .goal-icon{color:var(--c-fg-a8651f);background:var(--c-bg-fbeedd)}.goal-card.is-achieved .progress-track i{background:var(--c-bg-c9822f)}.milestone-head{margin:18px 0 0;font-weight:600;color:var(--ink)!important}.milestones li{align-items:center;justify-content:flex-start}.milestones li>span:last-child{margin-left:auto;color:var(--muted);font-size:12px}.milestones li .text-button{text-align:left;color:var(--ink);font-weight:400}.milestone-mark{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;border:1.5px solid var(--line);flex-shrink:0}.milestones li.reached .milestone-mark{background:var(--green);border-color:var(--green);color:var(--surface)}.milestones li.reached .text-button{color:var(--muted)}.celebrate-layer{position:fixed;inset:0;z-index:80;pointer-events:none;display:grid;place-items:center;padding:16px}.celebrate-card{pointer-events:auto;max-width:380px;text-align:center;background:var(--surface);border:1px solid var(--c-bd-e6c08f);border-radius:22px;padding:28px 26px 22px;box-shadow:0 24px 60px #213b2f40;animation:rise .5s cubic-bezier(.2,.9,.3,1.2)}.celebrate-card h2{margin:4px 0 8px;font-size:22px}.celebrate-card p{color:var(--muted);font-size:13px;margin:0 0 14px}.celebrate-icon{display:inline-grid;place-items:center;width:64px;height:64px;border-radius:50%;background:var(--c-bg-fbeedd);color:var(--c-fg-a8651f);margin-bottom:12px;animation:spin-in .8s ease-out}@keyframes rise{0%{transform:translateY(24px) scale(.92);opacity:0}}@keyframes spin-in{0%{transform:rotate(-120deg) scale(.4)}}.confetti{position:absolute;inset:0;overflow:hidden}.confetti i{--x: calc((var(--i) * 37) % 100 * 1%);position:absolute;top:-12px;left:var(--x);width:8px;height:12px;border-radius:2px;background:var(--green);opacity:0;animation:fall calc(2.2s + (var(--i) * .07s)) ease-in calc(var(--i) * .04s) forwards}.confetti i:nth-child(3n){background:var(--c-bg-c9822f)}.confetti i:nth-child(3n+1){background:var(--c-bg-a9bf8e);border-radius:50%;width:9px;height:9px}@keyframes fall{0%{opacity:1;transform:translateY(0) rotate(0)}to{opacity:0;transform:translateY(105vh) rotate(540deg)}}.celebrate-toasts{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom));transform:translate(-50%);z-index:70;display:grid;gap:8px;pointer-events:none;width:min(420px,calc(100vw - 32px))}@media(max-width:600px){.today-stat{flex:1 1 0;padding:8px 10px}}@media(max-width:860px){.celebrate-toasts{bottom:calc(92px + env(safe-area-inset-bottom))}}.celebrate-toast{pointer-events:auto;display:flex;align-items:center;gap:10px;background:var(--ink);color:var(--bg);border-radius:14px;padding:8px 8px 8px 14px;font-size:13px;box-shadow:0 10px 30px #0003;animation:rise .35s ease-out}.celebrate-toast span{flex:1}.celebrate-toast .icon-button{color:var(--bg);min-width:32px;min-height:32px}.celebrate-toast.milestone svg:first-child{color:var(--c-fg-f3c79a)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.confetti{display:none}}.goal-mini.is-achieved .goal-icon{background:var(--c-bg-fbeedd);color:var(--c-fg-a8651f)}.goal-mini.is-achieved .progress-track i{background:var(--c-bg-c9822f)}.goal-mini.is-achieved>div>span:last-child{color:var(--c-fg-8a4b1e);font-weight:600}.review-text{margin:0}.review-text>div{padding:12px 0;border-top:1px solid var(--line)}.review-text>div:first-child{border-top:0}.review-text dt{font-size:12px;font-weight:600;color:var(--muted);margin-bottom:4px}.review-text dd{margin:0;font-size:14px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}.review-archive{margin-top:20px}.review-archive h2{display:flex;align-items:center;gap:8px}.archive-item{border-top:1px solid var(--line);padding:10px 0;margin:0}.archive-item summary{cursor:pointer;padding:6px 0;min-height:32px}.archive-item summary small{color:var(--muted)}.shortcuts{width:520px}.shortcuts dl{margin:0;padding:12px 28px 24px}.shortcuts dl>div{display:grid;grid-template-columns:minmax(150px,.9fr) 1.1fr;gap:12px;padding:8px 0;border-top:1px solid var(--line);font-size:13px}.shortcuts dd{margin:0}kbd{font-family:inherit;font-size:12px;background:var(--soft);border:1px solid var(--line);border-bottom-width:2px;border-radius:6px;padding:2px 6px}.shortcuts h2{display:flex;align-items:center;gap:8px;text-transform:none}.status-chip{font-size:12px;font-weight:600;border-radius:999px;padding:3px 10px;background:var(--soft);color:var(--muted);white-space:nowrap}.status-chip.sent{background:var(--c-bg-fbeedd);color:var(--c-fg-8a4b1e)}.status-chip.paid{background:var(--accent);color:var(--c-fg-1f3b2f)}.status-chip.late{background:var(--c-bg-f8e1da);color:var(--c-fg-8f3b26)}.invoice-row{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center}.invoice-row small{color:var(--muted)}.invoice-new{border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin-bottom:12px}.invoice-detail{grid-column:1 / -1}.invoice-actions{margin-top:16px}.text-button.danger{color:var(--warning)}.pre{white-space:pre-line}.invoice-doc{background:#fff;color:#1d2a22;border:1px solid var(--line);border-radius:12px;padding:32px;margin:12px 0;font-size:13px;line-height:1.5}.invoice-doc header{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;border:0;padding:0}.invoice-doc h1{font-size:26px;margin:0 0 8px;text-align:right}.invoice-doc h2{font-size:18px;margin:0 0 4px;text-transform:none}.invoice-doc p{margin:0;color:#1d2a22}.invoice-meta dl{display:grid;grid-template-columns:auto auto;gap:2px 14px;margin:0}.invoice-meta dt{color:#5d6862}.invoice-meta dd{margin:0;text-align:right}.invoice-to{display:grid;gap:2px;margin:28px 0 20px}.invoice-to small{color:#5d6862;text-transform:uppercase;letter-spacing:1px;font-size:11px}.invoice-lines{width:100%;border-collapse:collapse}.invoice-lines th,.invoice-lines td{text-align:left;padding:8px 6px;border-bottom:1px solid #e3e6df}.invoice-lines th{font-size:11px;text-transform:uppercase;letter-spacing:.8px;color:#5d6862}.invoice-lines .num{text-align:right;white-space:nowrap}.invoice-lines tfoot td{border-bottom:0;padding-top:6px;padding-bottom:2px}.invoice-lines tfoot td:first-child{text-align:right;color:#5d6862}.invoice-lines tr.grand td{font-weight:700;font-size:15px;color:#1d2a22;border-top:2px solid #1d2a22;padding-top:8px}.invoice-note{margin-top:14px!important;color:#5d6862!important}.invoice-doc footer{margin-top:28px;padding-top:14px;border-top:1px solid #e3e6df;display:grid;gap:6px}.invoice-ids{font-size:11px;color:#5d6862!important}@media(max-width:600px){.invoice-doc{padding:18px 14px;font-size:12px}.invoice-doc h1{text-align:left}.invoice-lines th:nth-child(3),.invoice-lines td:nth-child(3){display:none}.invoice-doc{overflow-x:auto}.invoice-lines th,.invoice-lines td{padding:8px 3px}.invoice-lines th{letter-spacing:.3px}}.print-root{display:none}@media print{html.printing body>*:not(.print-root){display:none!important}html.printing .print-root{display:block}html.printing body{background:#fff}.print-root .invoice-doc{border:0;padding:0;margin:0;font-size:12px}@page{margin:18mm}}.tag-input{display:flex;flex-wrap:wrap;align-items:center;gap:6px;border:1px solid var(--line);border-radius:9px;background:var(--surface);padding:6px 8px;min-height:44px}.tag-input input{flex:1;min-width:140px;border:0;background:transparent;min-height:30px;padding:0 4px}.tag-input input:focus-visible{outline:none}.tag-input:focus-within{outline:3px solid var(--green);outline-offset:2px}.tag-chip{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:500;color:var(--ink);background:var(--soft);border:1px solid var(--line);border-radius:999px;padding:3px 9px;min-height:0}.tag-chip.small{font-size:11px;padding:1px 7px}button.tag-chip{cursor:pointer;font-weight:500}.tag-remove{min-height:20px;min-width:20px;padding:0;background:none;color:var(--muted);border-radius:50%}.tags{display:flex;flex-wrap:wrap;gap:4px;margin:6px 0}.task-flags{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.flag{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:var(--muted)}.flag.blocked{color:var(--c-fg-8a4b1e)}.tag-filter{margin-left:auto}.tag-filter select{min-height:36px}.inline-field{max-width:100%;min-width:0}.inline-field select{min-width:0;max-width:100%;text-overflow:ellipsis}@media(max-width:700px){.tag-filter{margin-left:0;flex:1 1 100%}.tag-filter select{flex:1}}.tabs{flex-wrap:wrap;align-items:center}.day-schedule{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr);gap:16px;margin-top:8px}@media(max-width:700px){.day-schedule{grid-template-columns:1fr}}.schedule-tray{display:grid;align-content:start;gap:6px}.tray-task{display:flex;align-items:center;gap:4px;font-size:13px;border:1px solid var(--line);border-radius:10px;background:var(--surface);padding:2px 10px 2px 2px}.tray-task small{color:var(--muted)}.schedule-grid{position:relative;border-left:1px solid var(--line);margin-left:44px}.schedule-grid .hour{position:absolute;left:0;right:0;border-top:1px solid var(--line)}.schedule-grid .hour span{position:absolute;left:-46px;top:-8px;font-size:11px;color:var(--muted)}.slot{position:absolute;left:6px;right:4px;border-radius:8px;font-size:12px;overflow:hidden;display:flex;align-items:flex-start;gap:2px}.slot small{padding:3px 8px}.slot.busy{background:repeating-linear-gradient(135deg,var(--soft) 0 6px,transparent 6px 12px);border:1px dashed var(--line);color:var(--muted);left:50%}.slot.block{background:var(--accent);color:var(--c-fg-1f3b2f);border:1px solid var(--green);z-index:1}.slot.block .drag-handle{min-height:24px;min-width:24px;color:var(--c-fg-1f3b2f)}.slot-label{background:none;color:inherit;font-weight:400;padding:3px 4px;min-height:0;text-align:left;justify-content:flex-start;display:block}.slot.dragging{opacity:.35}.slot.preview{background:color-mix(in srgb,var(--green) 15%,transparent);border:2px dashed var(--green);color:var(--ink);z-index:2}.slot.preview.clash{border-color:var(--c-bd-c9822f);background:color-mix(in srgb,var(--c-fill-c9822f) 15%,transparent)}.schedule-grid.has-busy .slot.block{right:50%}.habit-goal{padding:12px 0;border-top:1px solid var(--line)}.habit-goal:first-of-type{border-top:0}.hg-bars{display:grid;gap:6px;margin:10px 0 4px}.hg-row{display:grid;grid-template-columns:150px 1fr auto;gap:10px;align-items:center;font-size:12px}.hg-row .bar{height:8px;border-radius:4px;background:var(--soft);overflow:hidden;display:block}.hg-row .bar i{display:block;height:100%;background:var(--green)}.hg-row:nth-child(2) .bar i{background:var(--c-bg-a3ad9c)}@media(max-width:600px){.hg-row{grid-template-columns:1fr auto}.hg-row .bar{grid-column:1 / -1;order:3}}@media print{html:not(.printing) .sidebar,html:not(.printing) .mobile-nav,html:not(.printing) .topbar,html:not(.printing) .setup-banner,html:not(.printing) .celebrate-layer,html:not(.printing) .celebrate-toasts,html:not(.printing) .plan-controls,html:not(.printing) main button{display:none!important}html:not(.printing) .workspace{margin:0!important;padding:0!important}html:not(.printing) body{background:#fff}html:not(.printing) .card{break-inside:avoid;box-shadow:none}html:not(.printing) details:not([open])>:not(summary){display:block}}.schedule-card{grid-column:1 / -1}.invoice-actions input[type=date]{min-width:150px}.heading-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.group-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:6px;vertical-align:baseline;flex:none}.inline-form{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:12px}.inline-form input:not([type=color]){flex:1 1 180px;min-width:0}.group-list li,.column-list li{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:6px 0}.group-list li input:not([type=color]),.column-list li input{flex:1 1 160px;min-width:0}.group-list input[type=color],.inline-form input[type=color]{width:40px;height:36px;padding:2px;border-radius:8px;flex:none}.board-columns{margin-bottom:14px}.board-kanban{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.kanban-col h3{display:flex;align-items:center;gap:6px}.kanban-col h3 .add-card{margin-left:auto}.kanban-card.is-done .card-title{text-decoration:line-through;color:var(--muted)}.kanban-card .card-badges{grid-column:2 / -1;display:flex;flex-wrap:wrap;gap:4px 6px;margin:0 0 2px}.date-badge{display:inline-flex;align-items:baseline;gap:4px;max-width:100%;padding:2px 9px;border-radius:999px;background:var(--soft);color:var(--ink);font-size:11.5px;line-height:1.5;white-space:nowrap}.date-badge .badge-label{font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.date-badge.late{background:var(--surface);border:1px solid var(--warning);color:var(--warning)}.date-badge.late .badge-label{color:inherit}.kanban-card.is-done .date-badge{background:var(--soft);border-color:transparent;color:var(--muted)}.kanban-card .card-meta{grid-column:1 / -1}.agenda-legend{display:flex;flex-wrap:wrap;gap:14px;font-size:12px;color:var(--muted);margin:4px 0 10px}.agenda-legend span:before{content:"";display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;vertical-align:-1px;background:var(--soft);border:1px solid var(--line)}.agenda-legend .deadline:before{background:var(--warning);border-color:var(--warning)}.agenda-legend .planned:before{background:var(--green);border-color:var(--green)}.agenda-legend .block:before{background:var(--accent);border-color:var(--accent)}.agenda-legend .job:before{background:var(--job);border-color:var(--job)}.agenda-legend .event:before{border-style:dashed}.agenda-month,.agenda-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin-bottom:20px}.agenda-weekday{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);text-align:center}.agenda-day{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:6px;min-height:96px;min-width:0}.agenda-week .agenda-day{min-height:180px}.agenda-day.is-today{border-color:var(--green);box-shadow:inset 0 0 0 1px var(--green)}.agenda-day.other{background:var(--bg)}.agenda-day.other .agenda-day-head{color:var(--muted)}.agenda-day.drop{outline:2px solid var(--green)}.agenda-day-head{background:none;border:0;padding:2px 4px;min-height:24px;font-size:12px;font-weight:700;color:var(--ink);cursor:pointer}.agenda-day ul,.agenda-dayview ul{list-style:none;margin:4px 0 0;padding:0;display:grid;gap:4px}.agenda-item{display:block;width:100%;text-align:left;font-size:12px;line-height:1.3;padding:4px 6px;min-height:28px;border-radius:6px;border:1px solid var(--line);border-left:4px solid var(--green);background:var(--soft);color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;touch-action:none;cursor:grab}.agenda-dayview .agenda-item{white-space:normal;font-size:14px;padding:10px 12px}.agenda-item span{color:var(--muted)}.agenda-item.deadline{border-left-color:var(--warning)}.agenda-item.block{background:var(--accent);color:var(--c-fg-1f3a2f)}.agenda-item.block span{color:var(--c-fg-3d5a4b)}.agenda-item.job{border-left-color:var(--job);background:var(--job-bg);cursor:pointer;touch-action:auto}.agenda-week .agenda-item.job,.agenda-month .agenda-item.job{white-space:normal;overflow-wrap:anywhere}.agenda-item.job.off{font-style:italic}.agenda-item.event{border-style:dashed;border-left-style:dashed;background:transparent;cursor:default;touch-action:auto}.agenda-item.is-done{text-decoration:line-through;color:var(--muted)}.agenda-item.dragging{opacity:.35}.agenda-dayview{display:grid;gap:12px}@media(max-width:900px){.agenda-week{grid-template-columns:1fr}.agenda-week .agenda-day{min-height:0}}@media(max-width:560px){.agenda-month{gap:3px}.agenda-month .agenda-day{padding:3px;min-height:74px}.agenda-month .agenda-item{font-size:10px;padding:2px 3px;min-height:20px}}.agenda-day ul,.agenda-dayview ul{grid-template-columns:minmax(0,1fr)}.agenda-day li{min-width:0}@media(min-width:701px){.board-kanban{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(240px,1fr);overflow-x:auto;align-items:start;padding-bottom:8px}}.burst-layer{position:fixed;inset:0;pointer-events:none;z-index:80;overflow:hidden}.burst-layer i{position:absolute;width:7px;height:10px;border-radius:2px}.task-row.just-done .task-check,.check-label.just-ticked .box{animation:check-pop .42s cubic-bezier(.3,1.6,.5,1)}.task-row.just-done{animation:row-flash .9s ease-out}@keyframes check-pop{0%{transform:scale(.8);box-shadow:0 0 color-mix(in srgb,var(--green) 50%,transparent)}55%{transform:scale(1.22)}to{transform:scale(1);box-shadow:0 0 0 12px color-mix(in srgb,var(--green) 0%,transparent)}}@keyframes row-flash{0%{background:var(--accent)}to{background:transparent}}.check-label.animated{position:relative;cursor:pointer;gap:10px;font-size:14px}.check-label.animated input{position:absolute;opacity:0;width:24px;height:24px;margin:0}.check-label .box{width:22px;height:22px;border-radius:7px;border:1.5px solid var(--c-bd-b9c6a0);background:var(--surface);display:grid;place-items:center;color:transparent;flex:none;transition:background .2s ease,border-color .2s ease,color .2s ease}.check-label.animated input:checked+.box{background:var(--green);border-color:var(--green);color:var(--surface)}.check-label.animated input:focus-visible+.box{outline:3px solid var(--accent);outline-offset:2px}.check-label.animated .box svg{width:14px;height:14px}.check-label.animated .box svg path{stroke-dasharray:24;stroke-dashoffset:24;transition:stroke-dashoffset .3s ease .05s}.check-label.animated input:checked+.box svg path{stroke-dashoffset:0}.check-label .box{pointer-events:none}.check-label .label-text{background-image:linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-position:0 58%;background-size:0% 1.5px;transition:background-size .35s ease,color .3s ease}.check-label.animated input:checked~.label-text{background-size:100% 1.5px;color:var(--muted)}.progress-bar{height:6px;border-radius:6px;background:var(--soft);overflow:hidden}.progress-bar i{display:block;height:100%;width:var(--p, 0%);background:var(--green);border-radius:6px;transition:width .5s cubic-bezier(.3,.7,.2,1)}.progress-bar.complete i{background:linear-gradient(90deg,var(--green),var(--c-bg-6f8f57),var(--green));background-size:200% 100%;animation:shimmer 1.6s ease-out 1}@keyframes shimmer{0%{background-position:100% 0}to{background-position:0 0}}.checklist .progress-bar{margin:4px 0 6px}.complete-note{font-size:12px;color:var(--green);font-weight:600;animation:rise .4s ease-out}.board-progress{display:flex;align-items:center;gap:12px;margin:4px 0 14px;font-size:13px;color:var(--muted)}.board-progress .progress-bar{flex:1}.page-enter{animation:page-in .22s ease-out}@keyframes page-in{0%{opacity:0;transform:translateY(6px)}}.view-enter{animation:view-in .22s ease-out}@keyframes view-in{0%{opacity:0;transform:translate(8px)}}.drag-ghost{transform:translate(-20px,-50%) rotate(2deg) scale(1.04);box-shadow:0 14px 34px #0000003d}.kanban-card{transition:box-shadow .2s ease,transform .2s ease}.kanban-card:hover{box-shadow:0 4px 14px #213b2f1a}.kanban-col{transition:outline-color .15s ease,background .15s ease;outline:2px solid transparent}.kanban-col.drop{background:var(--accent)}.agenda-day{transition:background .15s ease,outline-color .15s ease}.agenda-day.drop{background:var(--accent)}.card-enter{animation:card-in .25s ease-out}@keyframes card-in{0%{opacity:0;transform:translateY(-6px) scale(.97)}}.inline-add{display:flex;gap:6px;margin-bottom:8px}.inline-add input{flex:1;min-width:0}.insights-heading{font-size:18px;margin:26px 0 6px}.insights-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));gap:16px}.insights-grid .wide{grid-column:1 / -1}.insight .section-title{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between}.stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin:8px 0 12px}.stat-tile{background:var(--soft);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:2px}.stat-tile strong{font-size:26px;line-height:1.1}.stat-tile span{font-size:12px;color:var(--muted)}.stat-tile small{font-size:11px;color:var(--muted)}.bar-chart{display:flex;align-items:flex-end;gap:4px;height:160px;margin:6px 0}.bc-col{flex:1;min-width:0;height:100%;display:flex;flex-direction:column;align-items:center;gap:3px}.bc-val{font-size:11px;color:var(--muted);min-height:14px}.bc-track{flex:1;width:100%;display:flex;align-items:flex-end}.bc-track i{display:block;width:100%;height:var(--h);min-height:2px;background:var(--c-bg-9eaf7b);border-radius:4px 4px 0 0;transform-origin:bottom;animation:grow-up .5s cubic-bezier(.3,.7,.2,1) backwards}.bc-track i.hl{background:var(--green)}.bc-col small{font-size:10px;color:var(--muted);white-space:nowrap;min-height:12px}@keyframes grow-up{0%{transform:scaleY(0)}}@keyframes grow-right{0%{transform:scaleX(0)}}.hbars{display:grid;gap:6px;margin:6px 0 10px}.hb-row{display:grid;grid-template-columns:minmax(70px,120px) 1fr auto;gap:8px;align-items:center;font-size:12px}.hb-label{color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hb-track{height:10px;background:var(--soft);border-radius:6px;overflow:hidden}.hb-track i{display:block;height:100%;background:var(--c-bg-9eaf7b);border-radius:6px;transform-origin:left;animation:grow-right .5s cubic-bezier(.3,.7,.2,1) backwards}.hb-value{color:var(--muted);white-space:nowrap;min-width:2ch;text-align:right}.two-col{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}.insight h3{font-size:13px;margin:14px 0 6px}.insight-note{font-size:13px;background:var(--soft);border-radius:10px;padding:10px 12px}.velocity-list{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:10px}.velocity-list li{display:grid;grid-template-columns:minmax(90px,1fr) minmax(70px,110px) auto;grid-template-areas:"n s v" "b b b";gap:4px 10px;align-items:center;font-size:13px}.v-name{grid-area:n;font-weight:600}.v-spark{grid-area:s;height:26px}.v-spark .sparkline{width:100%;height:100%}.v-num{grid-area:v;text-align:right;white-space:nowrap}.v-num small{display:block;color:var(--muted);font-size:11px}.v-bar{grid-area:b;height:4px;background:var(--soft);border-radius:4px;overflow:hidden}.v-bar i{display:block;height:100%;background:var(--green);transform-origin:left;animation:grow-right .5s ease backwards}.chips{display:flex;flex-wrap:wrap;gap:6px}.subtle-chip.warn{color:var(--warning)}.forecast-badge{font-size:10px;letter-spacing:1px;text-transform:uppercase;background:var(--c-bg-fbeedd);color:var(--c-fg-8a4b1e);border-radius:999px;padding:2px 8px;vertical-align:1px;margin-left:6px}.big-line strong{font-size:22px}.big-line span{color:var(--muted);font-size:13px}.risk-list li{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline;padding:4px 0}.risk-list small{color:var(--muted)}.form-note.steps{padding-left:20px;display:grid;gap:4px}:root{--block-gap: 22px}.page-enter>:is(.card,.dashboard-grid,.settings-grid,.goal-grid,.review-grid,.metric-grid,.insights-grid,.plan-day,.board-kanban,.kanban)+:is(.card,.dashboard-grid,.settings-grid,.goal-grid,.review-grid,.metric-grid,.insights-grid,.plan-day,.board-kanban,.kanban){margin-top:var(--block-gap)}@media(max-width:700px){:root{--block-gap: 16px}}@media(min-width:701px){.board-kanban{grid-auto-columns:minmax(200px,1fr);scroll-snap-type:x proximity}.board-kanban>.kanban-col{scroll-snap-align:start}}.kanban-col h3{min-height:44px}.plan-day{align-items:stretch}.dashboard-grid>*,.plan-day>*,.review-grid>*,.settings-grid>*,.goal-grid>*,.insights-grid>*,.page-enter>.card{min-width:0}select,input,textarea{max-width:100%}.tag-filter~.tag-filter{margin-left:0}@media(max-width:700px){.tabs .inline-field{flex:1 1 calc(50% - 6px);justify-content:space-between;margin-left:0}.tabs .inline-field select{flex:1;min-width:0}}.kanban-card{grid-template-columns:auto 1fr auto}.kanban-card .card-title{grid-column:2}.kanban-card .card-meta{grid-column:2 / -1}.kanban-card .card-delete{grid-column:3;color:var(--muted);min-width:36px;min-height:36px}.kanban-card .card-delete:hover,.kanban-card .card-delete[aria-expanded=true]{color:var(--danger)}.card-confirm{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:8px 4px 4px;border-top:1px solid var(--line);margin-top:6px;animation:card-in .2s ease-out}.card-confirm p{flex:1 1 100%;margin:0;font-size:12px;color:var(--ink)}.card-confirm button{min-height:36px;font-size:13px}.card-confirm .danger{background:var(--danger);color:var(--on-danger)}.undo-bar{position:sticky;bottom:76px;display:flex;align-items:center;justify-content:space-between;gap:12px;max-width:460px;margin:14px 0;padding:10px 14px;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);font-size:13px;animation:card-in .2s ease-out}@media(max-width:900px),(pointer:coarse){input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]),select,textarea{font-size:16px!important}}*{scrollbar-width:thin;scrollbar-color:var(--line) transparent}@media(pointer:coarse){body *{scrollbar-width:none}body *::-webkit-scrollbar{display:none}}.job-card .section-title{flex-wrap:wrap;gap:10px}.job-pay{margin:0 0 4px;font-weight:600}.job-week{border:1px solid var(--line);border-radius:10px;padding:12px 14px 4px;margin:0 0 18px;min-width:0}.job-week legend,.shift-mode legend{font-size:12px;font-weight:600;color:var(--muted);padding:0 6px}.job-day{display:grid;grid-template-columns:minmax(104px,1fr) 124px 124px 64px auto;gap:8px;align-items:center;margin-bottom:8px}.job-day .check-label{margin:0}.job-day.off{grid-template-columns:minmax(110px,1fr) auto}.job-day input[type=time],.job-day input[type=number]{padding:8px;width:100%;min-width:0}.job-day small{color:var(--muted);font-size:11px}.shift-mode{border:0;padding:0;margin:0 0 12px}.shift-mode .check-label{margin-bottom:10px}.job-days{display:flex;flex-direction:column}.job-days li{display:grid;grid-template-columns:110px 1fr auto 110px auto;gap:10px;align-items:center;padding:8px 0;border-top:1px solid var(--line);font-size:13px}.job-days li:first-child{border-top:0}.job-days li.is-today{font-weight:600}.job-date{color:var(--muted)}.job-amount{font-variant-numeric:tabular-nums;text-align:right}.job-days .status-chip{justify-self:start}@media(max-width:700px){.job-day{grid-template-columns:1fr 1fr 1fr}.job-day .check-label,.job-day.off .check-label{grid-column:1 / -1}.job-day small{grid-column:1 / -1;margin-top:-4px}.job-days li{grid-template-columns:1fr auto}.job-days li>.job-date{grid-column:1 / -1}}.job-line{display:flex;align-items:center;gap:6px;margin:4px 0;font-size:13px;color:var(--job)}.signout-link{min-height:36px;padding:6px 4px;margin:8px 0 0 2px;color:var(--muted);font-size:12px}.signout-link:hover{color:var(--ink)}.more-sheet button.signout-sheet{grid-column:1 / -1;flex-direction:row;min-height:48px;color:var(--muted);background:transparent;border:1px solid var(--line)}.card h2 svg{vertical-align:-3px;margin-right:4px}.week-nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:4px 0 10px}.week-nav strong{min-width:118px;text-align:center;font-size:14px}.week-nav .small{margin-left:auto}.account-line{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin:4px 0 12px;padding:10px 12px;border:1px solid var(--line);border-radius:12px}.account-line p{margin:0;overflow-wrap:anywhere}.account-line button{min-height:40px}@media(max-width:600px){.week-bars{gap:3px}.week-bar small{font-size:10px}.week-bar:not(:nth-last-child(3n+1)) small{visibility:hidden}.insight-table{font-size:12px}.insight-table th,.insight-table td{white-space:normal;overflow-wrap:anywhere;padding:8px 3px}.insight-table td{min-width:0}.card.insight{overflow-x:auto;max-width:100%}.legend{row-gap:4px}}.page-heading>*{min-width:0;max-width:100%}.heading-actions{min-width:0;max-width:100%}.heading-actions .inline-field{flex:0 1 auto}@media(max-width:600px){.insight-table.stack,.insight-table.stack tbody{display:block}.insight-table.stack thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.insight-table.stack tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 12px;padding:12px 0;border-bottom:1px solid var(--line)}.insight-table.stack.cols-3 tr{grid-template-columns:repeat(3,minmax(0,1fr))}.insight-table.stack th[scope=row]{grid-column:1 / -1;padding:0 0 2px;border:0;text-align:left;font-size:13px;overflow-wrap:anywhere}.insight-table.stack td{display:block;padding:0;border:0;text-align:left;font-size:13px;white-space:normal;overflow-wrap:anywhere}.insight-table.stack td:before{content:attr(data-label);display:block;font-size:11px;font-weight:600;color:var(--muted)}.insight-table.stack td:empty{display:none}.insight-table.stack tr.grand{font-weight:650}}.job-day.off .holiday-toggle{white-space:nowrap}.job-day.off:has(.holiday-toggle){grid-template-columns:minmax(110px,1fr) auto minmax(92px,auto)}.holiday-hours{display:flex;align-items:center;gap:6px;min-width:0}.holiday-hours input{width:72px;min-width:0;padding:8px}.holiday-balance{margin:0 0 8px;font-size:13px}.holiday-balance .over,.form-note.warn{color:var(--warning)}.holiday-list{display:flex;flex-direction:column;margin-top:6px}.holiday-list li{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1.3fr) auto auto;gap:10px;align-items:center;padding:10px 0;border-top:1px solid var(--line);font-size:13px}.holiday-list li:first-child{border-top:0}.holiday-list .holiday-range{font-weight:600}.holiday-list small{display:block;color:var(--muted);font-size:11px;font-weight:400;overflow-wrap:anywhere}.holiday-card .text-button{margin-top:8px}.holiday-list .status-chip{justify-self:start}.job-day .holiday-hours small{white-space:nowrap}@media(max-width:700px){.job-day.off:has(.holiday-toggle){grid-template-columns:minmax(0,1fr) auto}.job-day.off .check-label.holiday-toggle{grid-column:1 / 2}.job-day.off .holiday-hours,.job-day.off .day-note{grid-column:2 / 3;margin:0}.holiday-list li{grid-template-columns:minmax(0,1fr) auto;row-gap:6px}.holiday-list li>.holiday-range,.holiday-list li>span:nth-child(2){grid-column:1 / -1}}.job-day .holiday-hours small{margin:0;grid-column:auto}.agenda-item.job.holiday{font-style:italic}.holiday-fill{background:repeating-linear-gradient(135deg,var(--job) 0 3px,var(--job-bg) 3px 6px)}.goal-card .section-title{align-items:center;gap:8px}.goal-tools{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:4px;min-width:0}.goal-place{min-width:26px;text-align:center;font-size:12px;font-weight:700;color:var(--green)}.goal-move{width:42px;min-width:42px;min-height:42px;padding:8px;color:var(--ink);background:var(--surface);border:1px solid var(--line)}.goal-move:disabled{opacity:.35;cursor:default}.tabs.sentence button{text-transform:none}.projection .section-title{align-items:center;gap:8px}.projection .tabs{margin:8px 0 14px}.projection-total{margin:4px 0 0;font-size:34px;line-height:1.15;font-weight:650;letter-spacing:-.01em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.projection .form-note b{white-space:nowrap}.projection-caption{margin:4px 0 14px;font-size:13px;color:var(--muted)}.projection-split{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:0 0 12px}.projection-split>div{min-width:0;padding:10px 12px;border:1px dashed var(--c-bd-b7a27f);border-radius:10px}.projection-split dt{font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--c-fg-8a6f45)}.projection-split dd{margin:2px 0 0;font-size:18px;font-weight:600;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.projection-split small{display:block;margin-top:2px;font-size:12px;color:var(--muted)}.projection-left{margin:0 0 12px;font-size:13px}.projection-left .text-button{display:inline;min-height:0;padding:0;font-size:13px;text-decoration:underline}.projection-gaps{margin:0 0 12px;padding:10px 12px;border-radius:10px;background:var(--soft);font-size:13px}.projection-gaps p{margin:0 0 4px}.projection-gaps ul{list-style:none;margin:0;padding:0}.projection-gaps li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:2px 0;min-width:0}.projection-gaps li>span{min-width:0;overflow-wrap:anywhere}.projection-gaps small{color:var(--muted)}.projection-gaps .text-button{flex:none;min-width:44px}.amount-hint{margin-top:-4px}.amount-hint:empty{display:none}.amount-hint.is-problem{color:var(--danger)}.row-start{display:inline-flex;align-items:center;gap:6px;flex:none;min-height:40px;padding:0 14px;border-radius:999px;font-size:12.5px;font-weight:600;background:var(--surface);color:var(--green);border:1px solid var(--line)}.row-start.is-running{background:var(--c-bg-274f41);color:var(--on-banner);border-color:transparent}@media(pointer:coarse){.row-start{min-height:44px}}.timer-banner{flex-wrap:wrap}.timer-banner.is-paused .pulse{opacity:.4}.timer-banner .link-task{display:inline-flex;align-items:center;gap:6px;background:transparent;color:var(--on-banner);border:1px solid var(--c-fg-c1d0b8)}@media(max-width:520px){.timer-banner>div{flex:1 1 calc(100% - 120px)}.timer-banner>button{flex:1 1 calc(50% - 8px);justify-content:center}}.pick-list{display:flex;flex-direction:column;gap:6px;max-height:280px;overflow:auto;margin:4px 0 14px}.pick-row{display:flex;align-items:center;gap:12px;min-height:52px;padding:8px 12px;border-radius:10px;border:1px solid transparent;background:var(--soft);font-size:13px;cursor:pointer}.pick-row.is-picked{background:var(--surface);border-color:var(--green)}.pick-row input{width:auto;min-width:0;flex:none}.pick-row strong{display:block;font-weight:600}.pick-row small{display:block;color:var(--muted);font-size:12px}.link-timer-dialog .tabs{margin:10px 0 14px}.link-timer-dialog .create-from-search{min-height:44px;margin:-6px 0 10px;font-weight:600;text-align:left}.focus-actions{flex-wrap:wrap;align-items:center;gap:6px 14px}.focus-actions .secondary{display:inline-flex;align-items:center;gap:7px}.focus-panel p.pick-position{margin:10px 0 0;max-width:100%}.focus-panel .free-timer{display:inline-flex;align-items:center;gap:7px;margin-top:6px;padding-left:0}.heading-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.heading-actions button{display:inline-flex;align-items:center;gap:7px}.modal footer.has-start{flex-wrap:wrap}.modal footer .start-focus{display:inline-flex;align-items:center;gap:7px;margin-right:auto}@media(max-width:360px){.row-start{width:44px;padding:0;justify-content:center}.row-start span{display:none}}@media(max-width:480px){.modal footer.has-start .start-focus{flex:1 1 100%;justify-content:center;margin-right:0}}.stopwatch-tab{position:fixed;z-index:14;right:env(safe-area-inset-right,0px);top:50%;transform:translateY(-50%);width:46px;min-height:56px;padding:8px 2px;flex-direction:column;gap:3px;background:var(--surface);color:var(--green);border:1px solid var(--line);border-right:0;border-radius:14px 0 0 14px;box-shadow:0 6px 20px #00000024}.stopwatch.is-running .stopwatch-tab{border-color:var(--green)}.stopwatch-tab-time{font-size:11px;line-height:1;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap}.stopwatch-dot{position:absolute;top:6px;left:6px;width:8px;height:8px;border-radius:50%;background:var(--green);animation:stopwatch-pulse 1.6s ease-in-out infinite}@keyframes stopwatch-pulse{50%{opacity:.25}}@keyframes stopwatch-in{0%{opacity:0}}.stopwatch-panel{position:fixed;z-index:14;right:calc(54px + env(safe-area-inset-right,0px));top:50%;transform:translateY(-50%);width:300px;max-width:calc(100vw - 66px);max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow-y:auto;padding:6px 14px 14px;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:16px;box-shadow:0 14px 40px #0003;animation:stopwatch-in .14s ease-out}.stopwatch-panel header{display:flex;align-items:center;gap:8px}.stopwatch-panel h2{flex:1;margin:0;font-size:15px}.stopwatch-state{font-size:11px;font-weight:600;padding:3px 9px;border-radius:999px;background:var(--soft);color:var(--muted)}.stopwatch-state.running{color:var(--ink)}.stopwatch-time{padding:6px 0 12px;text-align:center;font-size:clamp(28px,11vw,38px);font-weight:700;letter-spacing:-.5px;font-variant-numeric:tabular-nums;white-space:nowrap}.stopwatch-controls{display:grid;grid-template-columns:1fr 1fr;gap:8px}.stopwatch-controls.is-idle .stopwatch-main{grid-column:1 / -1}.stopwatch-controls button{display:inline-flex;align-items:center;justify-content:center;gap:6px}.stopwatch-task{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:8px 0 2px}.stopwatch-task small{color:var(--muted);font-size:12px;line-height:1.4}.stopwatch-task strong{font-size:15px;overflow-wrap:anywhere}.stopwatch-task .secondary{display:inline-flex;align-items:center;gap:7px;width:100%;justify-content:center}.stopwatch-legend,.stopwatch-laps li{display:grid;grid-template-columns:1fr auto auto;gap:4px 14px;align-items:baseline}.stopwatch-legend{margin:14px 0 4px;font-size:11px;color:var(--muted)}.stopwatch-legend span:nth-child(n+2){text-align:right}.stopwatch-laps{list-style:none;margin:0;padding:0;max-height:160px;overflow-y:auto;font-size:13px;font-variant-numeric:tabular-nums}.stopwatch-laps li{padding:7px 0;border-top:1px solid var(--line)}.stopwatch-laps li span:nth-child(n+2){text-align:right}.stopwatch-laps li span:last-child{color:var(--muted)}.stopwatch-note{margin:12px 0 0;font-size:11.5px;line-height:1.45;color:var(--muted)}@media(max-width:600px),(max-height:500px)and (orientation:landscape){.stopwatch-tab{top:auto;bottom:calc(72px + env(safe-area-inset-bottom));transform:none}.stopwatch-panel{top:auto;bottom:calc(72px + env(safe-area-inset-bottom));transform:none;max-height:calc(100vh - 100px - env(safe-area-inset-bottom));max-height:calc(100dvh - 100px - env(safe-area-inset-bottom))}}@media print{.stopwatch{display:none!important}}.insights-customize{margin:4px 0 18px}.widget-list{list-style:none;margin:8px 0 14px;padding:0}.widget-row{display:flex;align-items:center;gap:2px;border-top:1px solid var(--line);background:var(--surface)}.widget-row:first-child{border-top:0}.widget-row.dragging{opacity:.4}.widget-row.drop-before{box-shadow:0 -2px 0 var(--green)}.widget-row.drop-after{box-shadow:0 2px 0 var(--green)}.widget-toggle{flex:1;min-width:0;display:flex;align-items:center;gap:10px;min-height:48px;padding:2px 0;cursor:pointer}.widget-toggle>span{display:grid;min-width:0}.widget-toggle small{font-size:11.5px;color:var(--muted)}.widget-row.is-off .widget-name{color:var(--muted)}.widget-row .icon-button{flex:none}.widget-count{font-size:12.5px}.hidden-widgets{margin:0 0 6px}.hidden-widgets .text-button{display:inline;min-height:44px;padding:0 4px;font-weight:700}@media print{.insights-customize,.hidden-widgets{display:none!important}}.invoice-warning{background:var(--c-bg-fbeedd);color:var(--c-fg-8a4b1e);border-radius:10px;padding:10px 14px;margin-bottom:12px}.invoice-warning p{margin:0 0 8px}.invoice-preview{margin:4px 0 12px;color:var(--muted)}.invoice-new .error{margin-top:10px}.invoice-late{display:block}.invoice-late,.invoice-figures .overdue b{color:var(--warning)}.client-overdue{margin-left:6px}.invoice-figures{display:grid;gap:14px;font-size:12px;margin:0 0 18px;padding-top:14px;border-top:1px solid var(--line)}.invoice-figures span{display:flex;justify-content:space-between;color:var(--muted)}.invoice-figures b{font-weight:500;color:var(--ink)}.reminder-box{border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin-top:16px}.reminder-box h3{margin:0 0 6px}.reminder-box textarea{width:100%;font-size:16px;margin-bottom:10px}.task-row{align-items:flex-start}.task-row>.task-check{margin-top:5px}.task-text small:empty{display:none}.task-text small{margin-top:3px}.task-flags{gap:3px 12px;margin-top:6px}.task-flags .flag{font-size:12px;line-height:1.45}.task-flags .flag svg{flex:none}.flag.high{color:var(--ink);font-weight:700}.flag.scheduled,.flag.plan,.flag.due{color:var(--ink)}.flag.late{color:var(--warning);font-weight:700}.flag.money.earned{color:var(--green);font-weight:700}.row-actions{display:flex;align-items:center;gap:2px;flex:none}.row-actions .row-start{min-height:40px}.task-menu{position:relative;flex:none}.menu-button{min-height:40px;min-width:40px;padding:8px;border-radius:999px}.menu-scrim{position:fixed;inset:0;z-index:59}.menu-list{position:absolute;z-index:60;right:0;top:calc(100% + 4px);min-width:236px;max-width:min(320px,92vw);max-height:min(70vh,520px);overflow:auto;padding:6px;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:14px;box-shadow:0 12px 40px #0000002e}.menu-heading{margin:10px 10px 2px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.menu-heading:first-child{margin-top:4px}.menu-item{width:100%;justify-content:flex-start;gap:10px;min-height:38px;padding:6px 10px;border-radius:9px;background:none;color:var(--ink);font-size:13.5px;font-weight:500;text-align:left}.menu-item:hover,.menu-item:focus-visible{background:var(--soft);filter:none}.menu-item.is-checked{font-weight:700}.menu-item .menu-check{margin-left:auto}.menu-item.danger{color:var(--warning)}.menu-sep{height:1px;margin:8px 6px 6px;background:var(--line)}@media(pointer:coarse){.menu-item{min-height:46px}}.menu-date{display:flex;align-items:flex-end;gap:8px;padding:4px 10px 10px}.menu-date label{display:grid;gap:4px;flex:1;font-size:12px;color:var(--muted)}.menu-date input{min-height:40px;min-width:0}@media(max-width:600px){.menu-scrim{z-index:79;background:#00000059}.menu-list{position:fixed;z-index:80;left:8px;right:8px;top:auto;bottom:calc(8px + env(safe-area-inset-bottom));max-width:none;max-height:78dvh;padding:8px;border-radius:18px}.menu-item{min-height:46px}}.collapsible{margin-top:6px}.collapsible-toggle{width:100%;justify-content:flex-start;gap:8px;min-height:44px;padding:8px 4px;background:none;color:var(--muted);font-size:12.5px;font-weight:600;border-radius:8px}.collapsible-toggle .count{min-width:22px;padding:1px 7px;border-radius:999px;background:var(--soft);color:var(--muted);font-size:11.5px;text-align:center}.collapsible[hidden],.collapsible>[hidden]{display:none}.toast-region{position:fixed;z-index:65;left:50%;bottom:calc(24px + env(safe-area-inset-bottom));transform:translate(-50%);width:min(460px,calc(100vw - 24px));pointer-events:none}.toast{pointer-events:auto;display:flex;align-items:center;gap:8px;padding:6px 6px 6px 16px;border-radius:14px;background:var(--ink);color:var(--bg);font-size:13.5px;box-shadow:0 10px 30px #00000038;animation:rise .25s ease-out}.toast>span{flex:1;min-width:0;overflow-wrap:anywhere;padding:6px 0}.toast .secondary{min-height:40px;gap:6px}.toast .icon-button{color:var(--bg);min-width:40px;width:40px;min-height:40px}@media(max-width:860px){.toast-region{bottom:calc(92px + env(safe-area-inset-bottom))}}.toast-region:has(.toast)~.celebrate-toasts{bottom:calc(96px + env(safe-area-inset-bottom))}@media(max-width:860px){.toast-region:has(.toast)~.celebrate-toasts{bottom:calc(164px + env(safe-area-inset-bottom))}}.sticky-alert{gap:12px;font-size:13px;line-height:1.5;border:1px solid var(--warning);box-shadow:0 6px 18px #0000001a}.sticky-alert>span:first-child{min-width:0;overflow-wrap:anywhere}.alert-actions{display:flex;align-items:center;gap:4px;flex:none}.alert-actions .secondary{min-height:40px}.sync-button{min-height:40px;padding:6px 12px;border-radius:999px;background:var(--soft);color:var(--ink);font-weight:600}.dashboard-grid.today-main{align-items:start}.focus-panel .why-list{list-style:none;margin:12px 0 20px;padding:0;display:grid;gap:5px;max-width:92%;font-size:13px;line-height:1.5;color:var(--ink)}.focus-panel .why-list li{position:relative;padding-left:16px}.focus-panel .why-list li:before{content:"";position:absolute;left:2px;top:.62em;width:6px;height:6px;border-radius:50%;background:var(--green);opacity:.55}.focus-panel .task-flags{margin-top:2px}.focus-panel .pick-position{color:var(--ink)}.focus-controls{flex-wrap:wrap;align-items:center;gap:8px 22px}.focus-controls-title{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;flex-basis:100%}.focus-options{margin-top:16px;border-top:1px solid var(--c-bd-d4dec8)}.focus-options summary{display:flex;align-items:center;gap:8px;min-height:46px;cursor:pointer;font-size:13px;font-weight:600;color:var(--green);list-style:none}.focus-options summary::-webkit-details-marker{display:none}.focus-options summary:before{content:"";width:7px;height:7px;margin:0 3px 0 2px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);transition:transform .15s ease}.focus-options[open] summary:before{transform:rotate(45deg)}.focus-options .count{font-size:11.5px;min-width:22px;padding:1px 7px;border-radius:999px;background:var(--soft);color:var(--muted);text-align:center}.focus-options ul{list-style:none;margin:0;padding:0}.focus-options li{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--c-bd-d4dec8)}.focus-options .option-main{display:grid;gap:2px;flex:1;min-width:0}.focus-options .option-main strong{font-size:14px;font-weight:600;overflow-wrap:anywhere}.focus-options small{color:var(--muted);font-size:12px;line-height:1.5}.focus-options li>button{flex:none;min-height:44px}.load-details{margin:6px 0 4px}.load-details summary{min-height:40px;display:inline-flex;align-items:center;cursor:pointer;font-size:12px;font-weight:600;color:var(--green)}.load-parts{list-style:none;margin:4px 0 6px;padding:0;font-size:12.5px}.load-parts li{display:flex;justify-content:space-between;gap:12px;padding:5px 0;border-top:1px solid var(--line);color:var(--muted)}.load-parts li b{color:var(--ink);font-weight:600;font-variant-numeric:tabular-nums}.load-parts li.load-total{border-top:2px solid var(--line);color:var(--ink);font-weight:600}.text-button.inline{display:inline;min-height:0;padding:0;text-decoration:underline;text-underline-offset:2px}.today-empty{display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px;margin:6px 0 10px}.today-empty p{margin:0}.flag.next{color:var(--ink);font-weight:700}.flag.later{color:var(--muted)}.today-stat.earnings{flex:1 1 380px;max-width:640px;gap:12px;padding:10px 16px 10px 14px}.today-stat .earn-icon{flex:none;color:var(--green)}.earn-body{display:grid;gap:5px;flex:1;min-width:0}.earn-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.earn-cols small,.earn-foot{display:block;font-size:11.5px;line-height:1.4;color:var(--muted)}.earn-cols strong{font-size:14.5px;white-space:nowrap;font-variant-numeric:tabular-nums}@media(max-width:600px){.today-stat.earnings{flex:1 1 100%;max-width:none}.earn-cols strong{font-size:13.5px}.focus-panel .why-list{max-width:100%}}.focus-panel>*{position:relative;z-index:1}.today-calm{display:flex;align-items:center;gap:8px;margin:14px 0 2px;font-size:13px;color:var(--muted)}.today-calm svg{color:var(--green);flex:none}.focus-panel .free-timer{margin-top:0}.live-stack{position:sticky;top:8px;top:max(8px,env(safe-area-inset-top,0px));z-index:12}.live-stack:empty{display:none}.live-stack .timer-banner{box-shadow:0 8px 22px #0003}.live-stack .sticky-alert{margin-bottom:10px}@media(max-width:600px),(max-height:500px)and (orientation:landscape){.timer-banner:not(.no-task){flex-wrap:nowrap;gap:8px;padding:6px 6px 6px 12px;margin-bottom:12px}.timer-banner:not(.no-task)>div{flex:1 1 0;min-width:0}.timer-banner:not(.no-task)>div strong,.timer-banner:not(.no-task)>div small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.timer-banner:not(.no-task)>div small{margin-top:2px}.timer-banner:not(.no-task)>b{flex:none;font-size:13px;font-variant-numeric:tabular-nums}.timer-banner:not(.no-task)>button{flex:none;min-width:44px;min-height:44px;padding:0;justify-content:center;align-items:center;display:inline-flex}.timer-banner:not(.no-task) .btn-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}}@media(max-width:600px),(max-height:500px)and (orientation:landscape){main{padding-bottom:calc(140px + env(safe-area-inset-bottom,0px))}}.project-card .project-figures{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;margin:18px 0 12px}.project-card .project-figures .figure{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:2px;min-width:0}.project-card .project-figures .figure.main{grid-column:1 / -1}.project-card .project-figures .figure b{font-size:15px;font-weight:650;font-variant-numeric:tabular-nums}.project-card .project-figures .figure.main b{font-size:26px;line-height:1.15;letter-spacing:-.4px;color:var(--green)}.project-card .project-figures em{font-style:normal;font-size:12px;color:var(--muted)}.project-facts{display:flex;flex-wrap:wrap;gap:4px 18px;font-size:12px;color:var(--muted)}.project-facts b{color:var(--ink);font-weight:600}.project-progress{margin:16px 0 4px}.project-progress small{display:block;margin-top:6px;font-size:12px;color:var(--muted)}.project-next{margin-top:16px;padding-top:12px;border-top:1px solid var(--line)}.project-next h3{margin:0 0 4px;font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.project-details{margin-top:6px}.record-list{list-style:none;margin:0 0 4px;padding:0}.record-list li{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:8px 0;border-top:1px solid var(--line);font-size:13px}.record-list li>span{display:grid;gap:1px;min-width:0}.record-list strong{font-weight:600;overflow-wrap:anywhere}.record-list small{color:var(--muted);font-size:12px}.record-list b{font-variant-numeric:tabular-nums;white-space:nowrap}.board-jump{display:none}.kanban-card .card-facts{grid-column:2 / -1;display:grid;gap:4px;min-width:0}.kanban-card .card-facts:empty{display:none}.kanban-card .card-line{color:var(--muted);font-size:12px;line-height:1.4;overflow-wrap:anywhere}.kanban-card .task-flags{margin-top:0}.date-badge .badge-time{font-variant-numeric:tabular-nums}.kanban-card .card-meta{gap:6px}.kanban-card .card-advance{display:inline-flex;align-items:center;gap:5px;min-height:36px;max-width:100%;white-space:nowrap}@media(pointer:coarse),(max-width:700px){.kanban-card .card-meta select{min-height:44px;font-size:14px}.kanban-card .card-advance{min-height:44px;padding:0 14px}.kanban-card .card-title{min-height:44px}.kanban-card .card-delete{min-width:44px;min-height:44px}}@media(max-width:700px){.kanban-card .drag-handle{display:none}.kanban-card{grid-template-columns:1fr auto}.kanban-card .card-title{grid-column:1}.kanban-card .card-delete{grid-column:2}.kanban-card .card-badges,.kanban-card .card-facts,.kanban-card .card-meta,.kanban-card .card-confirm{grid-column:1 / -1}.board-jump{display:flex;gap:8px;overflow-x:auto;padding:2px 0 8px;margin:4px 0 0;scrollbar-width:none}.board-jump::-webkit-scrollbar{display:none}.board-jump button{flex:none;min-height:40px;white-space:nowrap}}.kanban-card .card-badges,.kanban-card .card-facts,.kanban-card .card-meta{grid-column:1 / -1}.kanban-card .card-meta select{flex:1 1 0;min-width:0}.kanban-card .card-advance{flex:none}.kanban-card .card-advance .adv-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.kanban-card .card-advance{min-width:36px;justify-content:center;padding:0 8px}@media(max-width:700px){.kanban-card .card-meta select{flex:0 1 auto}.kanban-card .card-advance .adv-label{position:static;width:auto;height:auto;overflow:visible;clip:auto}}@media(pointer:coarse){.kanban-card .card-advance{min-width:44px}}.habit-week{gap:4px;margin:12px 0 8px}button.habit-day{flex:1 1 0;min-width:0;min-height:48px;padding:6px 0;border:1px solid transparent;border-radius:8px;background:var(--soft);color:var(--ink);font-weight:500;display:grid;place-items:center;gap:2px}button.habit-day small{font-size:11px;font-weight:400;color:var(--muted)}button.habit-day.done{background:var(--accent);color:var(--ink)}button.habit-day.done small{color:var(--ink)}button.habit-day.before,button.habit-day.upcoming{background:transparent;border:1px dashed var(--line);color:var(--muted)}button.habit-day.upcoming:disabled{opacity:.7;cursor:default}button.habit-day.today{outline:2px solid var(--green);outline-offset:-2px}button.habit-day.picked{box-shadow:inset 0 0 0 2px var(--ink)}button.habit-day:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.habit-legend{display:flex;flex-wrap:wrap;gap:2px 14px;margin:0 0 12px;font-size:12px;color:var(--muted)}.habit-legend b{color:var(--ink);font-weight:600}.habit-fix{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 14px;padding:8px 8px 8px 12px;border-radius:10px;background:var(--soft);font-size:13px}.habit-fix>span{flex:1 1 8em;min-width:0}.goal-sources{margin:10px 0 4px;border-top:1px solid var(--line);padding-top:4px}.goal-sources>summary{min-height:44px;display:flex;align-items:center;flex-wrap:wrap;gap:0 4px;cursor:pointer;font-size:13px;font-weight:600;color:var(--green)}.goal-sources>summary .muted{font-weight:400;color:var(--muted)}.source-list{list-style:none;margin:6px 0;padding:0}.source-list li{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:0 12px;padding:4px 0;border-top:1px solid var(--line);font-size:13px}.source-list .source-main{grid-row:1 / span 2;display:grid;min-width:0}.source-list .source-main .text-button{justify-self:start;text-align:left;min-height:40px;padding:2px 0;font-size:13px;font-weight:600;overflow-wrap:anywhere}.source-list small{color:var(--muted);font-size:12px;padding-bottom:6px}.source-list b{grid-column:2;grid-row:1;align-self:center;font-variant-numeric:tabular-nums;font-weight:600;text-align:right}.source-list li>.text-button:last-child{grid-column:2;grid-row:2;justify-self:end;min-height:40px;min-width:44px}.source-list li.not-counted b{color:var(--muted);font-weight:400;font-size:12px;max-width:10em}.source-add{display:flex;gap:8px;align-items:center;margin:8px 0 4px}.source-add select{flex:1 1 0;min-width:0;min-height:44px}.insights-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,6.1rem),1fr));gap:6px;margin:0 0 12px}.insights-tabs button{min-height:44px;padding:8px 6px;line-height:1.25;text-wrap:balance;background:var(--surface);color:var(--ink);border:1px solid var(--line);font-weight:600;text-align:center}.insights-tabs button.selected{background:var(--green);color:var(--on-primary);border-color:var(--green)}.insights-tabs button.selected:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex:none}.scope-bar{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;margin:0 0 16px;padding:10px 12px;background:var(--soft);border-radius:12px}@media(min-width:900px){.scope-bar{grid-template-columns:minmax(0,auto) minmax(0,1fr);align-items:center;column-gap:18px}.scope-bar:has(.scope-controls:empty),.scope-bar:not(:has(.scope-controls)){grid-template-columns:minmax(0,1fr)}}.scope-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;min-width:0}.scope-controls .inline-field{margin:0;flex:0 1 auto}.scope-controls select{min-height:40px}.scope-note{margin:0;font-size:12.5px;line-height:1.5;color:var(--muted)}.panel-scope{margin:-2px 0 8px;font-size:12px;line-height:1.45;color:var(--muted)}.insights-view{display:grid;gap:16px;min-width:0}.insights-view>*{margin:0;min-width:0}.insights-view .insights-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:start}@media(min-width:900px){.insights-view .insights-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.insights-view .insights-grid>.wide{grid-column:1 / -1}}.insights-grid>.card,.insights-grid>.projection-grid{margin:0}.insight-empty{margin:4px 0 0;padding:10px 12px;border-radius:10px;background:var(--soft);line-height:1.5}.summary{display:grid;gap:10px}.summary-earned{display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}@media(min-width:760px){.summary-earned{grid-template-columns:minmax(0,1.1fr) minmax(0,1.6fr);align-items:stretch}}button.tile{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:3px;width:100%;min-height:44px;padding:12px 40px 12px 14px;text-align:left;font-weight:400;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:14px}button.tile:hover{border-color:var(--green);filter:none}button.tile[aria-expanded=true]{border-color:var(--green);box-shadow:inset 0 0 0 1px var(--green)}button.tile .tile-caret{position:absolute;right:12px;top:14px;color:var(--muted);transition:transform .2s ease}button.tile[aria-expanded=true] .tile-caret{transform:rotate(180deg)}.tile-label{font-size:12px;font-weight:600;color:var(--muted)}.tile-value{font-size:26px;line-height:1.15;font-weight:650;letter-spacing:-.01em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.tile-hint{font-size:12px;line-height:1.4;color:var(--muted)}button.tile.tile-main{background:var(--c-bg-e5ebdb);border-color:transparent}button.tile.tile-main .tile-value{font-size:34px}.summary-mini{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,9rem),1fr));gap:8px 14px;margin:0;align-content:center}.summary-mini>div{display:grid;gap:1px;min-width:0}.summary-mini dt{font-size:12px;font-weight:600;color:var(--muted)}.summary-mini dd{margin:0;font-size:18px;font-weight:650;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.summary-mini small{font-size:11.5px;line-height:1.4;color:var(--muted)}button.linkish{display:inline;min-height:44px;padding:0;background:none;color:var(--ink);font:inherit;font-weight:650;text-decoration:underline;text-decoration-color:var(--green);text-underline-offset:4px;text-align:left;justify-content:flex-start}button.linkish:hover{filter:none;text-decoration-thickness:2px}.summary-job{margin:0}.metric-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));gap:10px}.metric-tiles>button.tile{height:100%}.records{scroll-margin-top:12px}.records:focus{outline:2px solid var(--green);outline-offset:2px}.records-list{list-style:none;margin:6px 0 4px;padding:0}.records-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 0;border-top:1px solid var(--line);font-size:13.5px}.records-list li:first-child{border-top:0}.rec-main{flex:1 1 auto;min-width:0;display:grid;gap:1px;overflow-wrap:anywhere}.rec-main small{font-size:12px;color:var(--muted)}.rec-main .text-button{justify-content:flex-start;text-align:left;min-height:40px;padding:2px 0;font-size:13.5px;font-weight:600}.records-list strong,.records-list>li>small{flex:none;font-variant-numeric:tabular-nums;white-space:nowrap}.rec-main .progress-track{margin-top:6px}.records-total{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:8px 0 0;padding-top:8px;border-top:2px solid var(--line);font-size:13.5px}.records-total strong{font-size:16px;font-variant-numeric:tabular-nums}.ledger-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px;margin:0}@media(min-width:760px){.ledger-grid{grid-template-columns:1.4fr 1fr 1fr 1fr}}.ledger-grid>div{display:grid;align-content:start;gap:2px;min-width:0}.ledger-grid dt{font-size:12px;font-weight:600;color:var(--muted)}.ledger-grid dd{margin:0;font-size:20px;font-weight:650;line-height:1.2;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.ledger-grid .ledger-earned dd{font-size:28px}.ledger-grid small{font-size:11.5px;line-height:1.4;color:var(--muted)}.ledger-grid .ledger-earned{grid-column:1 / -1}@media(min-width:760px){.ledger-grid .ledger-earned{grid-column:auto}}.ledger-grid .ledger-forecast{padding:8px 10px;border:1px dashed var(--c-bd-b7a27f);border-radius:10px}.forecast-intro{margin:0;padding:10px 12px;font-size:13px;line-height:1.5;border:1px dashed var(--c-bd-b7a27f);border-radius:10px}.forecast-intro .forecast-badge{margin:0 6px 0 0}.forecast.goal-forecast{margin:0 0 10px}.forecast.goal-forecast .forecast-name{font-size:14px;letter-spacing:0;text-transform:none;color:var(--ink)}.bc-col.before .bc-track{border-bottom:2px dashed var(--line)}.bc-col.before small{font-style:italic}.week-bar.before .stack{border-bottom:2px dashed var(--line)}.widget-group{margin:12px 0 0}.widget-group h3{margin:0;font-size:13px;color:var(--muted)}.export-card{margin-top:20px;padding:0}.export-card>summary{display:flex;align-items:center;min-height:48px;padding:0 18px;font-size:14px;font-weight:600;cursor:pointer}.export-card[open]>summary{border-bottom:1px solid var(--line)}.export-card>:not(summary){margin-left:18px;margin-right:18px}.export-card>:last-child{margin-bottom:16px}.export-card>p:first-of-type{margin-top:12px}@media print{.insights-tabs,.scope-bar,.export-card{display:none!important}}.scope-controls .inline-field,.scope-controls .inline-field select{min-width:0;max-width:100%}@media(max-width:700px){.scope-controls .inline-field{flex:1 1 100%;justify-content:space-between}.scope-controls .inline-field select{flex:1}}.history-bars{justify-content:flex-start}.history-bars i{flex:1 1 0;max-width:34px}.goal-history-grid,.goal-forecast-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));gap:6px 22px}.goal-history-grid .goal-history{min-width:0}.goal-history h3{overflow-wrap:anywhere}@media(max-width:600px){.estimate-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}.estimate-row>:first-child{grid-column:1 / -1}}.text-button{min-width:44px}.agenda-week .agenda-day-head,.agenda-dayview .agenda-day-head{min-height:40px}@media(max-width:700px){.kanban-card .card-delete{margin-right:30px}}.standup-picks .check-label{min-height:44px}.just-checked{animation:check-ring .7s ease-out}.just-checked svg{animation:tick-in .38s cubic-bezier(.2,.9,.3,1.35)}@keyframes check-ring{0%{box-shadow:0 0 color-mix(in srgb,var(--green) 40%,transparent)}to{box-shadow:0 0 0 10px color-mix(in srgb,var(--green) 0%,transparent)}}@keyframes tick-in{0%{transform:scale(.3) rotate(-25deg);opacity:0}to{transform:none;opacity:1}}.habit-score.bump{display:inline-block;animation:score-bump .4s ease-out}@keyframes score-bump{40%{transform:scale(1.12)}}.celebrate-toast.streak svg:first-child{color:var(--c-fg-f3c79a)}.set-date{align-self:flex-start;min-height:40px}.buckets{display:grid;gap:2px}.collapsible-toggle .summary{margin-left:auto;font-size:12px;font-weight:500;color:var(--muted)}.collapsible.alert .collapsible-toggle>span:first-of-type{color:var(--warning)}.buckets .collapsible{margin-top:0;border-top:1px solid var(--line)}.buckets .collapsible:first-child{border-top:0}.buckets .task-row:last-child{border-bottom:0}.group-more{width:100%;min-height:44px;justify-content:center}.task-row.compact{padding:9px 0}.task-row.compact>.task-check{margin-top:2px}.task-row.compact .task-text{padding:2px 0}.task-row.compact .task-text strong{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.task-sub{display:flex;flex-wrap:wrap;align-items:center;gap:1px 10px;margin-top:2px}.task-sub small{display:inline;margin:0}.task-sub .task-flags{display:contents}.flag.more{color:var(--muted);font-weight:600}.task-row.compact .row-start{width:40px;padding:0;justify-content:center}.task-row.compact .row-start span{display:none}@media(pointer:coarse){.task-row.compact .row-start{width:44px}}.chart-box{width:100%;max-width:100%;overflow:hidden;margin:6px 0 4px}.chart-box svg{display:block;max-width:100%}.chart-grid{stroke:var(--line);stroke-width:1}.chart-axis{fill:var(--muted);font-size:10.5px;font-family:inherit}.chart-line{fill:none;stroke-width:2.2;stroke-linejoin:round;stroke-linecap:round}.donut-total{fill:var(--ink);font-size:15px;font-weight:700;font-family:inherit}.donut-wrap{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;margin:8px 0}.donut-wrap .donut{flex:none;max-width:100%}.chart-key{list-style:none;margin:0;padding:0;display:grid;gap:8px;flex:1 1 200px;min-width:0;font-size:13px}.chart-key li{display:grid;grid-template-columns:12px minmax(0,1fr) auto;gap:8px;align-items:center}.chart-key .sw{width:12px;height:12px;border-radius:3px}.chart-key .name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chart-key .pct{color:var(--muted);font-variant-numeric:tabular-nums}.chart-legend{margin:4px 0 2px}.legend .legend-note{flex-basis:100%}.legend .key.dash{height:0;width:16px;border-radius:0;border-top:2px dashed var(--muted);background:none}.legend .key.diamond{transform:rotate(45deg) scale(.85);border-radius:2px}.legend .key.circle{border-radius:50%}.heat-scale{gap:4px;margin:2px 0 0}.heat-scale .key{width:12px;height:12px;border-radius:3px;display:inline-block}.chart-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin:8px 0 4px}.chart-facts div{background:var(--soft);border-radius:10px;padding:8px 10px;display:grid;gap:1px}.chart-facts dt{font-size:11px;color:var(--muted)}.chart-facts dd{margin:0;font-size:16px;font-weight:650;font-variant-numeric:tabular-nums}.chart-facts dd small{display:block;font-weight:400;color:var(--muted);font-size:11px}.chart-head{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between;margin:4px 0 2px}.chart-head .tabs{margin:0}.insight-table.plain th:first-child .swatch{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px}.insight-table.plain tfoot th,.insight-table.plain tfoot td{font-weight:650;border-bottom:0}.insight-table .neg{color:var(--warning)}.owed-late{display:block;font-size:11px;color:var(--warning);white-space:normal}:root{--job: #6b5b95;--job-bg: #efecf7;--chart-available: #c9d4bd;--chart-low: #9aa89d;--chart-1: #285342;--chart-2: #3b6ea5;--chart-3: #b5651d;--chart-4: #8e4585;--chart-5: #a23b3b;--scrim: #142b2066;--scrim-soft: #142b2040;--danger: #a54e38;--on-banner: #ffffff;--on-danger: #ffffff;--on-primary: #ffffff;--c-bd-8fb3c9: #8fb3c9;--c-bd-b7a27f: #b7a27f;--c-bd-b9c6a0: #b9c6a0;--c-bd-c9822f: #c9822f;--c-bd-c99a6b: #c99a6b;--c-bd-d0ddbf: #d0ddbf;--c-bd-d4dec8: #d4dec8;--c-bd-d9dfd1: #d9dfd1;--c-bd-dce4d1: #dce4d1;--c-bd-e1e4da: #e1e4da;--c-bd-e6c08f: #e6c08f;--c-bd-e8eadf: #e8eadf;--c-bg-274f41: #274f41;--c-bg-285342: #285342;--c-bg-6f8f57: #6f8f57;--c-bg-8fa570: #8fa570;--c-bg-91a570: #91a570;--c-bg-9eaf7b: #9eaf7b;--c-bg-a3ad9c: #a3ad9c;--c-bg-a9bf8e: #a9bf8e;--c-bg-b9c6a0: #b9c6a0;--c-bg-c6a17c: #c6a17c;--c-bg-c9822f: #c9822f;--c-bg-c99a6b: #c99a6b;--c-bg-c9d4b4: #c9d4b4;--c-bg-d2e4a4: #d2e4a4;--c-bg-dbe5c8: #dbe5c8;--c-bg-dedfd3: #dedfd3;--c-bg-e0e7d5: #e0e7d5;--c-bg-e3edcc: #e3edcc;--c-bg-e5ebdb: #e5ebdb;--c-bg-e8eddd: #e8eddd;--c-bg-e8eddf: #e8eddf;--c-bg-e8efda: #e8efda;--c-bg-f0f1e9: #f0f1e9;--c-bg-f0f3e8: #f0f3e8;--c-bg-f0f3e9: #f0f3e9;--c-bg-f0f4e9: #f0f4e9;--c-bg-f1f5e9: #f1f5e9;--c-bg-f3f6ee: #f3f6ee;--c-bg-f8e1da: #f8e1da;--c-bg-f9e9e2: #f9e9e2;--c-bg-fbeedd: #fbeedd;--c-bg-fffaf1: #fffaf1;--c-fg-1f3a2f: #1f3a2f;--c-fg-1f3b2f: #1f3b2f;--c-fg-244a3c: #244a3c;--c-fg-274b37: #274b37;--c-fg-294b39: #294b39;--c-fg-3b5733: #3b5733;--c-fg-3d5a4b: #3d5a4b;--c-fg-446534: #446534;--c-fg-4f7891: #4f7891;--c-fg-5b7255: #5b7255;--c-fg-66725f: #5e6b5a;--c-fg-68786d: #5d6f64;--c-fg-6a7667: #647162;--c-fg-718166: #5a6c57;--c-fg-728268: #5a6c58;--c-fg-748568: #596d57;--c-fg-7b8871: #60705e;--c-fg-7c925b: #7c925b;--c-fg-8a4b1e: #8a4b1e;--c-fg-8a6f45: #8a6f45;--c-fg-8b3d29: #8b3d29;--c-fg-8f3b26: #8f3b26;--c-fg-91a174: #91a174;--c-fg-9cae7f: #9cae7f;--c-fg-a3b587: #a3b587;--c-fg-a4b77b: #a4b77b;--c-fg-a8651f: #a8651f;--c-fg-c1d0b8: #c1d0b8;--c-fg-e4efcd: #e4efcd;--c-fg-f3c79a: #f3c79a;--c-fill-c9822f: #c9822f;--c-ring-d0ddbf: #d0ddbf;--c-ring-e0e8d7: #e0e8d7;--c-ring-e4ebdc: #e4ebdc;--c-ring-f9faf6: #f9faf6}html[data-theme=dark]{--job: #b6abe0;--job-bg: #26233a;--chart-available: #3a3d45;--chart-low: #6b6e76;--chart-1: #8ec5a4;--chart-2: #7fb0e6;--chart-3: #e0a45c;--chart-4: #c58bd0;--chart-5: #e27d7d;--scrim: #000000a6;--scrim-soft: #00000080;--bg: #131416;--surface: #1b1c20;--ink: #e9eaed;--muted: #a9acb4;--line: #2c2e35;--green: #d6d8de;--soft: #24262b;--accent: #34363d;--warning: #f0a48e;--shadow: 0 8px 32px #00000033;--danger: #b9503b;--on-banner: #f1f2f4;--on-danger: #ffffff;--on-primary: #131416;--c-bd-8fb3c9: #557182;--c-bd-b7a27f: #7d7059;--c-bd-b9c6a0: #656772;--c-bd-c9822f: #8b6e4b;--c-bd-c99a6b: #896b4d;--c-bd-d0ddbf: #5f616b;--c-bd-d4dec8: #595b64;--c-bd-d9dfd1: #52555d;--c-bd-dce4d1: #4f5159;--c-bd-e1e4da: #25272c;--c-bd-e6c08f: #8b6f4b;--c-bd-e8eadf: #43454c;--c-bg-274f41: #2a2d34;--c-bg-285342: #e6e7ea;--c-bg-6f8f57: #a6a8af;--c-bg-8fa570: #8e9098;--c-bg-91a570: #8e9098;--c-bg-9eaf7b: #83858f;--c-bg-a3ad9c: #656772;--c-bg-a9bf8e: #71747d;--c-bg-b9c6a0: #656770;--c-bg-c6a17c: #a47d55;--c-bg-c9822f: #d0a573;--c-bg-c99a6b: #b28456;--c-bg-c9d4b4: #5c5e66;--c-bg-d2e4a4: #9aa0ad;--c-bg-dbe5c8: #5c5e66;--c-bg-dedfd3: #2a2c32;--c-bg-e0e7d5: #22242a;--c-bg-e3edcc: #e8e9ec;--c-bg-e5ebdb: #3b3d43;--c-bg-e8eddd: #1a1b1f;--c-bg-e8eddf: #38393f;--c-bg-e8efda: #3a3b41;--c-bg-f0f1e9: #101113;--c-bg-f0f3e8: #2f3034;--c-bg-f0f3e9: #2e2f34;--c-bg-f0f4e9: #2d2e33;--c-bg-f1f5e9: #2d2e32;--c-bg-f3f6ee: #2a2c32;--c-bg-f8e1da: #482f27;--c-bg-f9e9e2: #402c23;--c-bg-fbeedd: #433624;--c-bg-fffaf1: #2f2719;--c-fg-1f3a2f: #dcdddf;--c-fg-1f3b2f: #dcdcdf;--c-fg-244a3c: #ececef;--c-fg-274b37: #131416;--c-fg-294b39: #f1f2f4;--c-fg-3b5733: #c9cacd;--c-fg-3d5a4b: #c4c5c9;--c-fg-446534: #c3c4c8;--c-fg-4f7891: #93b1c3;--c-fg-5b7255: #a4a7b0;--c-fg-66725f: #adafb4;--c-fg-68786d: #9a9da6;--c-fg-6a7667: #a9aaaf;--c-fg-718166: #a5a6ac;--c-fg-728268: #a4a5ab;--c-fg-748568: #a3a4aa;--c-fg-7b8871: #9e9fa5;--c-fg-7c925b: #a3a4aa;--c-fg-8a4b1e: #e6ba9a;--c-fg-8a6f45: #cab799;--c-fg-8b3d29: #dea799;--c-fg-8f3b26: #e1a596;--c-fg-91a174: #95979d;--c-fg-9cae7f: #95979d;--c-fg-a3b587: #4a4d55;--c-fg-a4b77b: #7d808a;--c-fg-a8651f: #e5b584;--c-fg-c1d0b8: #a4a7b0;--c-fg-e4efcd: #131416;--c-fg-f3c79a: #e59a4d;--c-fill-c9822f: #d0a573;--c-ring-d0ddbf: #555760;--c-ring-e0e8d7: #404148;--c-ring-e4ebdc: #3b3c42;--c-ring-f9faf6: #222326;color-scheme:dark}html[data-theme=blue]{--job: #6d4fd8;--job-bg: #ece8fb;--chart-available: #c3d2f2;--chart-low: #8d9bbd;--chart-1: #2a56d6;--chart-2: #17808a;--chart-3: #c26a14;--chart-4: #a63d8f;--chart-5: #c2493a;--scrim: #0f1a4a73;--scrim-soft: #0f1a4a4d;--bg: #edf2fa;--surface: #ffffff;--ink: #14224d;--muted: #525e7c;--line: #d8e1f0;--green: #2a56d6;--soft: #e4ebf8;--accent: #cfe0ff;--warning: #b4452f;--shadow: 0 8px 32px #1e3a8a0d;--danger: #b4452f;--on-banner: #ffffff;--on-danger: #ffffff;--on-primary: #ffffff;--c-bd-8fb3c9: #8fb3c9;--c-bd-b7a27f: #b7a27f;--c-bd-b9c6a0: #91a5d5;--c-bd-c9822f: #c9822f;--c-bd-c99a6b: #c99a6b;--c-bd-d0ddbf: #b4c3e8;--c-bd-d4dec8: #bfcbe7;--c-bd-d9dfd1: #cbd3e5;--c-bd-dce4d1: #c9d4ec;--c-bd-e1e4da: #2b3678;--c-bd-e6c08f: #e6c08f;--c-bd-e8eadf: #dae0ef;--c-bg-274f41: #1e3a8a;--c-bg-285342: #3d63e6;--c-bg-6f8f57: #405fa6;--c-bg-8fa570: #5a77bb;--c-bg-91a570: #5a77bb;--c-bg-9eaf7b: #6682c4;--c-bg-a3ad9c: #929db7;--c-bg-a9bf8e: #7b95d2;--c-bg-b9c6a0: #91a5d5;--c-bg-c6a17c: #c6a17c;--c-bg-c9822f: #c9822f;--c-bg-c99a6b: #c99a6b;--c-bg-c9d4b4: #a7b9e1;--c-bg-d2e4a4: #93b4ff;--c-bg-dbe5c8: #bdccf0;--c-bg-dedfd3: #34408a;--c-bg-e0e7d5: #2e3a85;--c-bg-e3edcc: #dbe6ff;--c-bg-e5ebdb: #d5ddf1;--c-bg-e8eddd: #232c6b;--c-bg-e8eddf: #dae1f2;--c-bg-e8efda: #d2ddf7;--c-bg-f0f1e9: #1a2252;--c-bg-f0f3e8: #e4eaf7;--c-bg-f0f3e9: #e5eaf7;--c-bg-f0f4e9: #e5ebf8;--c-bg-f1f5e9: #e5ebf9;--c-bg-f3f6ee: #3b4999;--c-bg-f8e1da: #f8e1da;--c-bg-f9e9e2: #f9e9e2;--c-bg-fbeedd: #fbeedd;--c-bg-fffaf1: #fffaf1;--c-fg-1f3a2f: #102149;--c-fg-1f3b2f: #10214a;--c-fg-244a3c: #eef2ff;--c-fg-274b37: #1e3a8a;--c-fg-294b39: #ffffff;--c-fg-3b5733: #183372;--c-fg-3d5a4b: #203a77;--c-fg-446534: #1b397e;--c-fg-4f7891: #4f7891;--c-fg-5b7255: #b9c3ee;--c-fg-66725f: #445a8d;--c-fg-68786d: #bdc4e7;--c-fg-6a7667: #4d6190;--c-fg-718166: #435fa0;--c-fg-728268: #445f9e;--c-fg-748568: #425fa3;--c-fg-7b8871: #4c65a1;--c-fg-7c925b: #2958c4;--c-fg-8a4b1e: #8a4b1e;--c-fg-8a6f45: #8a6f45;--c-fg-8b3d29: #8b3d29;--c-fg-8f3b26: #8f3b26;--c-fg-91a174: #4870cd;--c-fg-9cae7f: #537cda;--c-fg-a3b587: #5a6bc0;--c-fg-a4b77b: #8fa8ff;--c-fg-a8651f: #a8651f;--c-fg-c1d0b8: #c7d2fe;--c-fg-e4efcd: #ffffff;--c-fg-f3c79a: #f3c79a;--c-fill-c9822f: #c9822f;--c-ring-d0ddbf: #b4c3e8;--c-ring-e0e8d7: #d0d9ef;--c-ring-e4ebdc: #d6def1;--c-ring-f9faf6: #f4f7fc}html[data-theme=blue] .sidebar{--ink: #eef2ff;--muted: #a4afda;--line: #2b3678;--surface: #2e3a85;--soft: #2e3a85;color:var(--ink)}html[data-theme=dark] .card{box-shadow:none}html[data-theme=sunset]{--bg: #fcf1e6;--surface: #fffcf8;--ink: #3a1424;--muted: #735060;--line: #efd9c9;--green: #b02a63;--soft: #f8e6d9;--accent: #ffdcc6;--warning: #a8412c;--shadow: 0 8px 32px #7a2a4a14;--job: #6b5b95;--job-bg: #efecf7;--chart-available: #f4cdb8;--chart-low: #b79aa5;--chart-1: #b02a63;--chart-2: #b5651d;--chart-3: #3b6ea5;--chart-4: #6b5b95;--chart-5: #2f7f6a;--scrim: #3a142473;--scrim-soft: #3a142440;--danger: #b23a28;--on-banner: #ffffff;--on-danger: #ffffff;--on-primary: #ffffff;--c-bd-8fb3c9: #8fb3c9;--c-bd-b7a27f: #b7a27f;--c-bd-b9c6a0: #e3a9bd;--c-bd-c9822f: #c9822f;--c-bd-c99a6b: #c99a6b;--c-bd-d0ddbf: #f1cfc0;--c-bd-d4dec8: #f0d5c8;--c-bd-d9dfd1: #ebd0c1;--c-bd-dce4d1: #efd6c9;--c-bd-e1e4da: #5a2340;--c-bd-e6c08f: #e6c08f;--c-bd-e8eadf: #f3e2d6;--c-bg-274f41: #5c1e3d;--c-bg-285342: #8f2f5c;--c-bg-6f8f57: #c2336e;--c-bg-8fa570: #d95a8b;--c-bg-91a570: #d95a8b;--c-bg-9eaf7b: #e8789c;--c-bg-a3ad9c: #b99aa6;--c-bg-a9bf8e: #f092b3;--c-bg-b9c6a0: #e3a9bd;--c-bg-c6a17c: #c6a17c;--c-bg-c9822f: #c9822f;--c-bg-c99a6b: #c99a6b;--c-bg-c9d4b4: #f3c3b4;--c-bg-d2e4a4: #ffe45c;--c-bg-dbe5c8: #fcd3c0;--c-bg-dedfd3: #6c2a4b;--c-bg-e0e7d5: #7d2a52;--c-bg-e3edcc: #ffe3d0;--c-bg-e5ebdb: #f8dccd;--c-bg-e8eddd: #4a1a32;--c-bg-e8eddf: #fbe2d4;--c-bg-e8efda: #fde0d2;--c-bg-f0f1e9: #3a1424;--c-bg-f0f3e8: #fbe8dc;--c-bg-f0f3e9: #fbe8dc;--c-bg-f0f4e9: #fbe9de;--c-bg-f1f5e9: #fbe9de;--c-bg-f3f6ee: #8f2f5c;--c-bg-f8e1da: #f8e1da;--c-bg-f9e9e2: #f9e9e2;--c-bg-fbeedd: #fbeedd;--c-bg-fffaf1: #fffaf1;--c-fg-1f3a2f: #3a1424;--c-fg-1f3b2f: #3a1425;--c-fg-244a3c: #fdeee5;--c-fg-274b37: #6e2547;--c-fg-294b39: #ffffff;--c-fg-3b5733: #632040;--c-fg-3d5a4b: #6a2644;--c-fg-446534: #6e2547;--c-fg-4f7891: #4f7891;--c-fg-5b7255: #e5b3c8;--c-fg-66725f: #7a5565;--c-fg-68786d: #ecc7d7;--c-fg-6a7667: #7a5565;--c-fg-718166: #755160;--c-fg-728268: #755160;--c-fg-748568: #735060;--c-fg-7b8871: #7a5565;--c-fg-7c925b: #b02a63;--c-fg-8a4b1e: #8a4b1e;--c-fg-8a6f45: #8a6f45;--c-fg-8b3d29: #8b3d29;--c-fg-8f3b26: #8f3b26;--c-fg-91a174: #c2386e;--c-fg-9cae7f: #d04a7d;--c-fg-a3b587: #c24a86;--c-fg-a4b77b: #ffd75e;--c-fg-a8651f: #a8651f;--c-fg-c1d0b8: #f7cfe0;--c-fg-e4efcd: #ffffff;--c-fg-f3c79a: #f3c79a;--c-fill-c9822f: #c9822f;--c-ring-d0ddbf: #f1cfc0;--c-ring-e0e8d7: #f3d9cc;--c-ring-e4ebdc: #f4dccf;--c-ring-f9faf6: #fff6ef}html[data-theme=sunset] .sidebar{--ink: #fdeee5;--muted: #ecc7d7;--line: #5a2340;--surface: #5a2140;--soft: #5a2140;color:var(--ink)}
