:root{--page-bg: #ececee;--screen: #fcf7ea;--fg: #1b1813;--muted: #8c8372;--muted-soft: #b6ad9b;--line: #eee6d2;--card: #fffaf0;--card-strong: #fff3c8;--accent: #ffd64b;--accent-strong: #f5c400;--accent-fg: #1b1813;--success: #69bf86;--warm: #f39a6b;--shadow: 0 34px 70px -36px rgba(55, 45, 28, .55), 0 12px 26px -18px rgba(55, 45, 28, .42);color:var(--fg);background-color:var(--page-bg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button{color:inherit;font:inherit}#root{min-height:100vh}.home-page{align-items:center;background:linear-gradient(180deg,var(--page-bg) 0 56%,#f3f0e8 56% 100%);display:flex;justify-content:center;min-height:100vh;padding:36px 18px}.app-shell{background:var(--screen);border:8px solid rgba(255,250,237,.74);border-radius:42px;box-shadow:var(--shadow);color:var(--fg);min-height:686px;overflow:hidden;padding:43px 22px 30px;position:relative;width:316px}.device-camera{background:#1b181329;border-radius:999px;height:7px;left:50%;position:absolute;top:13px;transform:translate(-50%);width:7px;z-index:1}.app-shell__header{align-items:center;display:flex;gap:16px;justify-content:space-between;margin:5px 0 18px}.app-shell__eyebrow{color:var(--muted);font-size:11px;font-weight:700;margin:0 0 2px}.app-shell__header h1{color:var(--fg);font-size:23px;font-weight:800;line-height:1.08;margin:0}.app-shell__avatar{align-items:center;background:var(--accent);border-radius:999px;color:var(--accent-fg);display:flex;flex:0 0 auto;font-size:11px;font-weight:800;height:34px;justify-content:center;width:34px}.project-tabs{display:flex;gap:8px;margin:0 -22px 24px;overflow-x:auto;padding:2px 22px 4px;scrollbar-width:none}.project-tabs::-webkit-scrollbar{display:none}.project-tabs__tab,.project-tabs__add{align-items:center;background:#ffffff8c;border:1px solid transparent;border-radius:8px;color:var(--fg);cursor:pointer;display:flex;flex:0 0 auto;font-size:12px;font-weight:800;min-width:0;min-height:34px;overflow:hidden;padding:8px 13px}.project-tabs__tab{--project-tab-color: var(--accent);background:#ffffff9e;border-color:var(--project-tab-color);gap:6px;justify-content:center;max-width:110px}.project-tabs__tab:before{background:var(--project-tab-color);border-radius:999px;content:"";flex:0 0 auto;height:6px;width:6px}.project-tabs__label{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-tabs__tab[data-active=true]{background:var(--project-tab-color);border-color:var(--project-tab-color);box-shadow:0 8px 18px -14px #1b181394;color:var(--accent-fg)}.project-tabs__tab[data-active=true]:before{background:#ffffffd1}.project-tabs__add{background:var(--card-strong);color:var(--accent-fg);font-size:17px;flex-basis:34px;justify-content:center;line-height:1;max-width:34px;padding:7px 0 9px;width:34px}.project-panel{--project-panel-color: var(--accent);background:#fffaf075;border:1px solid var(--project-panel-color);border-radius:24px;box-shadow:0 18px 34px -32px #1b18139e;margin:-8px -8px 0;padding:22px 14px 0;position:relative}.project-panel:before{background:var(--project-panel-color);border-radius:0 0 999px 999px;content:"";height:4px;left:18px;opacity:.86;position:absolute;right:18px;top:0}.project-actions{height:0;position:relative;z-index:2}.project-actions__trigger{align-items:center;background:#ffffff9e;border:1px solid rgba(238,230,210,.84);border-radius:999px;color:var(--muted);cursor:pointer;display:flex;font-size:20px;font-weight:900;height:44px;justify-content:center;line-height:1;padding:0 0 5px;position:absolute;right:0;top:5px;width:44px}.project-actions__trigger:active{transform:scale(.96)}.project-action-sheet-backdrop{align-items:flex-end;background:#1b18133d;display:flex;top:0;right:0;bottom:0;left:0;justify-content:center;padding:0 12px 14px;position:absolute;z-index:20}.project-action-sheet{background:var(--screen);border:1px solid rgba(238,230,210,.9);border-radius:22px;box-shadow:0 24px 60px -30px #1b1813b3,0 6px 18px -12px #1b181380;color:var(--fg);display:flex;flex-direction:column;gap:4px;padding:14px;width:100%}.project-action-sheet__header{border-bottom:1px solid var(--line);margin-bottom:4px;padding:4px 2px 12px}.project-action-sheet h2{color:var(--fg);font-size:15px;font-weight:900;line-height:1.25;margin:0}.project-action-sheet p{color:var(--muted);font-size:12px;font-weight:800;line-height:1.35;margin:4px 0 0;overflow-wrap:anywhere}.project-action-sheet button{background:#ffffff8f;border:0;border-radius:12px;color:var(--fg);cursor:pointer;font-size:14px;font-weight:900;min-height:46px;padding:12px 14px;text-align:left}.project-action-sheet button.project-action-sheet__danger{background:#f39a6b2e;color:#b65d37}.project-action-sheet button.project-action-sheet__cancel{color:var(--muted);margin-top:4px;text-align:center}.todo-action-sheet button.todo-action-sheet__title{background:#ffd64b38;color:var(--fg);font-size:15px;line-height:1.35;min-width:0;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.progress{align-items:center;display:flex;flex-direction:column;margin:0 0 24px}.progress__ring{height:176px;position:relative;width:176px}.progress__chart{display:block;height:176px;width:176px}.progress__track{stroke:var(--line)}.progress__value{stroke:var(--accent);transform:rotate(-90deg);transform-origin:center;transition:stroke-dashoffset .18s ease}.progress__value--segment{transition:stroke-dasharray .18s ease,stroke-dashoffset .18s ease}.progress__label{align-items:center;display:flex;flex-direction:column;top:0;right:0;bottom:0;left:0;justify-content:center;position:absolute}.progress__label strong{color:var(--fg);font-size:42px;font-weight:900;line-height:1}.progress__label strong span{color:var(--accent-strong);font-size:16px;font-weight:900;margin-left:1px}.progress__label small{color:var(--muted);font-size:11px;font-weight:800;margin-top:4px}.progress__message{background:#ffd64b3d;border:0;border-radius:999px;color:var(--fg);cursor:default;font-size:11px;font-weight:800;margin:8px 0 0;padding:6px 11px}button.progress__message{cursor:pointer}button.progress__message:active{transform:scale(.97)}.todo-list{margin-top:0;padding-bottom:84px}.todo-list h2{border-bottom:1px solid var(--line);color:var(--muted);font-size:11px;font-weight:800;margin:0 0 10px;padding:0 0 9px}.todo-list__empty{align-items:center;background:#ffffff8a;border-radius:14px;color:var(--muted);display:flex;font-size:13px;font-weight:700;min-height:62px;padding:15px}.todo-list__items{display:flex;flex-direction:column;gap:10px;list-style:none;margin:0;padding:0}.todo-item{background:#ffffff8f;border-radius:14px;display:grid;grid-template-columns:minmax(0,1fr) 40px;list-style:none;min-height:58px;overflow:hidden}.todo-item__button{align-items:center;background:transparent;border:0;color:inherit;cursor:pointer;display:grid;gap:11px;grid-template-columns:22px minmax(0,1fr);min-width:0;min-height:58px;padding:11px 8px 11px 12px;text-align:left;width:100%}.todo-item__button:active{transform:scale(.985)}.todo-item__button:focus-visible{outline:3px solid rgba(255,214,75,.38);outline-offset:2px}.todo-item[data-completed=true]{background:#ffffff6b}.todo-item__menu{align-items:center;background:transparent;border:0;color:var(--muted);cursor:pointer;display:flex;font-size:18px;font-weight:900;justify-content:center;line-height:1;min-height:58px;padding:0 0 5px;width:40px}.todo-item__menu:active{transform:scale(.94)}.todo-item__menu:focus-visible{outline:3px solid rgba(255,214,75,.38);outline-offset:-3px}.todo-item__check{align-items:center;background:#ffffff5c;border:1.8px solid var(--line);border-radius:7px;color:var(--accent-fg);display:flex;font-size:12px;font-weight:900;height:22px;justify-content:center;line-height:1;width:22px}.todo-item[data-completed=true] .todo-item__check{color:var(--accent-fg)}.todo-item__body{display:flex;flex-direction:column;min-width:0}.todo-item__title{color:var(--fg);display:block;font-size:13px;font-weight:800;line-height:1.28;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.todo-item[data-completed=true] .todo-item__title{color:var(--muted);text-decoration:line-through}.add-fab{align-items:center;background:var(--accent);border:0;border-radius:999px;bottom:45px;box-shadow:0 12px 26px -12px #c49300cc,0 4px 12px -8px #1b181373;color:var(--accent-fg);cursor:pointer;display:flex;font-size:27px;font-weight:500;height:52px;justify-content:center;line-height:1;padding:0 0 4px;position:absolute;right:22px;width:52px}.add-fab:active{transform:scale(.96)}.settings-dialog{border:1px solid var(--line);border-radius:14px}.modal-backdrop{align-items:center;background:#1b18133d;display:flex;top:0;right:0;bottom:0;left:0;justify-content:center;padding:22px;position:absolute;z-index:10}.project-dialog{background:var(--screen);border:1px solid rgba(238,230,210,.9);border-radius:20px;box-shadow:0 24px 60px -30px #1b1813a6,0 6px 18px -12px #1b181373;color:var(--fg);display:flex;flex-direction:column;gap:14px;padding:18px;width:min(100%,258px)}.project-dialog h2{font-size:17px;font-weight:900;line-height:1.2;margin:0}.project-dialog p{color:var(--muted);font-size:13px;font-weight:700;line-height:1.5;margin:0;overflow-wrap:anywhere}.project-dialog label{color:var(--muted);display:flex;flex-direction:column;font-size:11px;font-weight:800;gap:6px}.project-dialog input{background:#ffffffad;border:1px solid var(--line);border-radius:12px;color:var(--fg);font:inherit;font-size:16px;font-weight:800;min-height:44px;outline:none;padding:10px 12px;width:100%}.project-dialog input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #ffd64b47}.project-dialog input:disabled{cursor:not-allowed;opacity:.58}.todo-dialog{width:min(100%,270px)}.project-dialog__actions{display:flex;gap:8px;justify-content:flex-end}.project-dialog__actions button{background:#ffffff8f;border:0;border-radius:10px;color:var(--fg);cursor:pointer;font-size:12px;font-weight:900;min-height:36px;padding:8px 11px}.project-dialog__actions button:last-child{background:var(--accent);color:var(--accent-fg)}.project-dialog__actions button.project-dialog__danger{background:#f39a6b33;color:#a94f2c}.project-dialog__actions button:disabled{cursor:not-allowed;opacity:.45}@media (prefers-color-scheme: dark){:root{--page-bg: #101010;--screen: #0f0f0d;--fg: #fff7df;--muted: #9f9786;--muted-soft: #716b5f;--line: #28251d;--card: #171612;--card-strong: #272111;--accent: #ffd64b;--accent-strong: #ffd64b;--accent-fg: #1b1813;--shadow: 0 34px 70px -36px rgba(0, 0, 0, .85), 0 12px 26px -18px rgba(0, 0, 0, .68)}.home-page{background:linear-gradient(180deg,var(--page-bg) 0 56%,#191815 56% 100%)}.app-shell{border-color:#ffd64b0a}.device-camera{background:#fff7df1f}.project-tabs__tab,.todo-list__empty,.todo-item{background:#ffffff0b}.todo-item[data-completed=true]{background:#ffffff08}.project-actions__trigger,.project-action-sheet button,.project-dialog input,.project-dialog__actions button{background:#ffffff13}.project-actions__trigger,.project-action-sheet,.project-dialog{border-color:#ffffff14}.project-action-sheet button.project-action-sheet__danger,.project-dialog__actions button.project-dialog__danger{background:#f39a6b24;color:#ffb08c}.progress__message{background:#ffd64b1f;color:var(--accent)}.modal-backdrop,.project-action-sheet-backdrop{background:#0000008a}}@media (max-width: 480px){.home-page{padding:0}.app-shell{border:0;border-radius:0;box-shadow:none;min-height:100vh;width:100%}.device-camera{display:none}}
