:root{font-family:Golos Text,system-ui,sans-serif;color:#273d31;background:#f4f5ef;font-synthesis:none;--bg:#f4f5ef;--surface:#fff;--text:#273d31;--muted:#67786c;--line:#dde4da;--green:#326347;--soft:#e9f0e3;--danger:#9b453d;--shade:#1e2b2677;color-scheme:light dark}@media(prefers-color-scheme:dark){:root{color:#e5ede3;background:#171e19;--bg:#171e19;--surface:#222c25;--text:#e5ede3;--muted:#aebead;--line:#3c4b3e;--green:#a0d0a9;--soft:#304333;--danger:#efa89d;--shade:#040b07aa}}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{opacity:.5;cursor:default}button:focus-visible,a:focus-visible{outline:3px solid var(--green);outline-offset:3px}button{border:0;background:none}a{color:var(--green);text-decoration:none}h1,h2,h3,p{margin:0}h1{font-size:30px;line-height:1.2;font-weight:500;letter-spacing:-1px}h2{font-size:22px;line-height:1.35;font-weight:500;letter-spacing:-.5px}h3{font-size:16px;font-weight:500}p{line-height:1.6}strong{font-weight:500}.small,small{font-size:12px;line-height:1.5}.muted{color:var(--muted)}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.eyebrow{color:var(--muted);font-size:11px;letter-spacing:1.3px;line-height:1.5;margin:0 0 7px}.button{display:inline-flex;gap:8px;align-items:center;justify-content:center;padding:10px 15px;min-height:41px;background:var(--surface);border:1px solid var(--line);border-radius:8px;font-size:13px;line-height:1.4;color:var(--text)}.button:hover{border-color:var(--green)}.button.primary{background:var(--green);border-color:var(--green);color:var(--surface)}.button.danger{color:var(--danger)}.text-button{display:inline-flex;gap:7px;align-items:center;color:var(--green);padding:5px 0;font-size:12px}.logo{display:grid;place-items:center;width:35px;height:35px;border-radius:10px;background:var(--green);color:var(--surface);font-size:26px;font-weight:500;flex-shrink:0;line-height:1}.top{display:flex;align-items:center;gap:22px;padding:18px 30px;border-bottom:1px solid var(--line);background:var(--surface)}.brand{display:flex;gap:11px;align-items:center;padding:0;white-space:nowrap}.brand strong{font-size:23px;letter-spacing:-.5px}.top>.button{margin-left:auto}.search{display:flex;align-items:center;gap:8px;max-width:330px;flex:1;color:var(--muted);margin-left:35px}.search input{background:transparent;border:0;outline-offset:4px;min-width:0;width:100%;font-size:13px;color:var(--text);padding:8px 0}.search button{padding:3px}.layout{display:grid;grid-template-columns:190px minmax(0,1fr);min-height:calc(100vh - 79px)}.sidebar{padding:25px 13px;background:var(--surface);border-right:1px solid var(--line);display:flex;flex-direction:column;gap:6px}.sidebar>button,.nav-bottom button{display:flex;align-items:center;gap:10px;padding:12px 10px;text-align:left;font-size:13px;width:100%;border-radius:8px;line-height:1.5}.sidebar button.selected{background:var(--soft);color:var(--text)}.sidebar button:hover{background:var(--bg)}.sidebar button svg{flex-shrink:0}.sidebar small{margin-left:auto;color:var(--muted)}.nav-label{font-size:10px;letter-spacing:1.3px;color:var(--muted);margin:32px 10px 5px}.nav-bottom{margin-top:auto;padding-top:40px}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;flex-shrink:0}.sidebar .dot{margin:0 5px}main{padding:33px 36px 50px;max-width:1580px;width:100%;min-width:0}.heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;flex-wrap:wrap}.overview{display:grid;grid-template-columns:minmax(220px,.9fr) minmax(320px,1.4fr);gap:25px;align-items:start}.project-list{display:grid;gap:14px;min-width:0}.project-card{display:block;text-align:left;padding:21px 23px;border:1px solid var(--line);border-radius:13px;background:var(--surface);width:100%;color:var(--text)}.project-card:hover{border-color:var(--green)}.project-card.chosen{border-color:var(--green);box-shadow:inset 3px 0 var(--green)}.project-line{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.project-name{display:flex;gap:9px;align-items:center;font-size:18px;font-weight:500;margin-right:auto}.project-name .dot{width:9px;height:9px}.project-line>.text-button{margin-left:auto}.badge{display:inline-block;padding:3px 7px;border-radius:5px;font-size:10px;background:var(--soft);white-space:nowrap}.badge.paused{background:var(--bg);color:var(--muted)}.project-card .goal{font-size:12px;color:var(--muted);margin:9px 0 19px;line-height:1.65}.project-card>.eyebrow{font-size:9px;letter-spacing:1px}.project-card>p:not(.goal){font-size:13px;line-height:1.6;margin:3px 0 0}.progress{height:4px;background:var(--line);border-radius:5px;overflow:hidden;margin:17px 0 7px}.progress span{height:100%;display:block}.panel{background:var(--surface);border:1px solid var(--line);border-radius:13px;min-width:0}.panel-head{padding:22px 23px 0;border-bottom:1px solid var(--line)}.panel-head>.muted{font-size:13px;margin:7px 0 17px}.panel-body{padding:10px 23px 22px;min-width:0}.tabs{display:flex;gap:20px;flex-wrap:wrap}.tabs button{padding:10px 0 12px;font-size:12px;color:var(--muted);border-bottom:2px solid transparent}.tabs button[aria-pressed=true]{border-color:var(--green);color:var(--text)}.stage{border-bottom:1px solid var(--line);padding-bottom:8px}.stage:last-of-type{border-bottom:0}.stage-title{display:flex;gap:8px;align-items:center;width:100%;text-align:left;padding:16px 0;font-size:14px;font-weight:500}.stage-title svg{color:var(--muted);flex-shrink:0}.stage-title small{margin-left:auto;color:var(--muted);font-weight:400}.stage-actions{display:flex;gap:12px;flex-wrap:wrap;margin:-3px 0 9px 24px}.stage-actions button{font-size:10px;padding:3px 0;color:var(--muted)}.stage>h3{margin-top:15px}.task{display:grid;grid-template-columns:21px minmax(0,1fr);gap:9px;padding:14px 0;border-bottom:1px solid var(--line)}.task:last-of-type{border-bottom:0}.check{display:grid;place-items:center;border:1.5px solid #8a9a8a;border-radius:5px;width:17px;height:17px;padding:0;margin-top:3px}.task.done .check{background:var(--green);border-color:var(--green);color:var(--surface)}.task-title{text-align:left;padding:0;font-size:13px;line-height:1.6;display:block;width:100%;overflow-wrap:anywhere}.task.done .task-title{text-decoration:line-through;color:var(--muted)}.task-meta{display:flex;gap:8px;flex-wrap:wrap;font-size:10px;color:var(--muted);margin-top:4px;align-items:center}.task-meta button{padding:0;color:var(--green);font-size:10px}.state.doing{color:var(--green)}.state.waiting{color:#a18036}.task-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:8px}.task-actions button{padding:2px 0;color:var(--muted);font-size:10px}.task-actions button:hover{color:var(--green)}.task-actions button svg{display:block}.overdue{color:var(--danger)}.add-link{display:inline-flex;align-items:center;gap:6px;padding:12px 0 3px;color:var(--green);font-size:12px;text-align:left}.empty{padding:30px 23px;color:var(--muted);font-size:13px;line-height:1.6}.project-list>.panel{padding:22px}.project-list>.panel p{margin:13px 0 20px}.back{display:none}.section-note{font-size:13px;color:var(--muted);margin:-9px 0 22px;max-width:720px}.notice,.error{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:13px;border-radius:8px;padding:12px 15px;margin-bottom:18px;overflow-wrap:anywhere}.notice{background:var(--soft);color:var(--green)}.error{border:1px solid var(--danger);color:var(--danger);background:var(--surface)}.notice button,.error button{text-decoration:underline;font-size:12px}.local-note{font-size:11px;color:var(--muted);margin-bottom:18px}.result{display:flex;align-items:center;text-align:left;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding:19px 23px;width:100%;font-size:14px}.result small{color:var(--muted)}.result:last-child{border-bottom:0}.attention-link{display:flex;gap:9px;margin-top:20px;align-items:center;color:var(--green);font-size:13px}.settings{padding:26px}.settings p{font-size:14px;margin:14px 0}.settings h3{margin:30px 0 14px}.settings code{overflow-wrap:anywhere}.document-link{display:flex;gap:13px;align-items:center;padding:19px 0;width:100%;text-align:left;border-bottom:1px solid var(--line);font-size:14px}.document-link strong{display:block}.document-link small{display:block;color:var(--muted);margin-top:4px}.document-link svg{color:var(--green);flex-shrink:0}.document-link>svg:last-child{margin-left:auto}.upload{display:block;padding-top:24px;font-size:12px;color:var(--muted)}.upload input{margin-top:8px}.history{padding:15px 0;border-bottom:1px solid var(--line);font-size:13px}.history p{margin:3px 0}.history small{color:var(--muted)}.overlay{position:fixed;inset:0;z-index:20;background:var(--shade);display:flex;justify-content:center;align-items:flex-start;padding:35px 20px;overflow:auto;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.dialog{width:600px;max-width:100%;background:var(--surface);border:1px solid var(--line);padding:26px;border-radius:15px;color:var(--text);box-shadow:0 14px 60px #0002}.dialog.document-dialog{width:880px}.dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:23px}.icon-button{padding:0;display:inline-flex;align-items:center;justify-content:center;min-width:27px;min-height:27px;color:var(--muted)}.dialog label,.discussion label{display:block;font-size:12px;color:var(--muted);margin:13px 0}.dialog input:not([type=checkbox]),.dialog textarea,.dialog select,.discussion textarea{display:block;width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:7px;background:var(--bg);color:var(--text);font-size:14px;margin-top:6px;min-width:0;line-height:1.5}.dialog textarea,.discussion textarea{min-height:100px;resize:vertical}.dialog textarea.document-editor{min-height:330px;font-family:ui-monospace,monospace;font-size:13px}.dialog input[type=color]{padding:3px;height:41px}.dialog input[type=checkbox]{margin-right:8px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 15px}.form-footer{display:flex;gap:12px;align-items:center;border-top:1px solid var(--line);padding-top:18px;margin-top:22px;flex-wrap:wrap}.form-footer .danger{margin-left:auto}.discussion{margin-top:25px;padding-top:21px;border-top:1px solid var(--line)}.comment{border-left:2px solid var(--line);padding:6px 0 6px 12px;margin:16px 0}.comment p{font-size:13px;white-space:pre-wrap;margin-top:6px}.dialog>p{font-size:14px;margin:15px 0}.dialog>h3{margin:24px 0 10px}.dialog blockquote{border-left:3px solid var(--green);margin:18px 0;padding:8px 16px;background:var(--bg);font-size:14px;line-height:1.7}.markdown{margin-top:25px;line-height:1.75;overflow-wrap:anywhere}.markdown h1{font-size:27px;margin:24px 0 16px}.markdown h2{font-size:21px;margin:26px 0 14px}.markdown h3{margin:24px 0 12px}.markdown p{margin:13px 0}.markdown pre{overflow:auto;background:var(--bg);padding:16px;border-radius:8px}.markdown img{max-width:100%}.markdown table{display:block;overflow:auto;max-width:100%;border-collapse:collapse;font-size:13px}.markdown th,.markdown td{border-bottom:1px solid var(--line);padding:10px;text-align:left}.version-picker{margin-left:auto!important}.login{max-width:430px;margin:14vh auto;padding:20px;color:var(--text)}.login>.logo{width:50px;height:50px;font-size:36px;margin-bottom:28px}.login h1{font-size:46px;margin:8px 0 14px}.login>.button{margin-top:28px;width:100%}.login>small{display:block;text-align:center;margin-top:13px;color:var(--muted)}.loading{margin:20vh auto;text-align:center;color:var(--muted)}@media(min-width:1550px){main{padding-right:60px;padding-left:50px}.overview{grid-template-columns:minmax(270px,.85fr) minmax(440px,1.3fr);gap:35px}}@media(max-width:1050px){.layout{grid-template-columns:155px minmax(0,1fr)}.sidebar>button{font-size:12px;padding:10px 7px}.sidebar{padding:23px 9px}.overview{grid-template-columns:1fr;gap:20px}.project-list{grid-template-columns:repeat(2,minmax(0,1fr))}.project-detail{grid-column:1/-1}main{padding:28px 25px}.top{padding:16px 22px}.search{margin-left:0}.top>.button{font-size:12px}.tabs{gap:23px}.project-card{padding:19px}.project-line{gap:6px}}@media(max-width:680px){.layout{display:block;min-height:0}.top{flex-wrap:wrap;gap:13px;padding:14px 16px}.brand strong{font-size:21px}.brand .small{display:none}.top>.button{margin-left:auto;padding:9px 10px;font-size:11px}.search{order:3;flex-basis:100%;max-width:none;border-top:1px solid var(--line);padding-top:6px}.sidebar{flex-direction:row;flex-wrap:wrap;border-right:0;border-bottom:1px solid var(--line);padding:6px;gap:2px}.sidebar>button{flex:1;min-width:70px;flex-direction:column;gap:5px;justify-content:center;text-align:center;font-size:10px;padding:8px 3px}.sidebar small{display:none}.nav-label,.sidebar>.pinned-nav{display:none}.nav-bottom{display:flex;width:100%;padding:0;margin:0;justify-content:flex-end}.nav-bottom button{width:auto;padding:5px 8px;font-size:10px}.nav-bottom svg{width:12px;height:12px}main{padding:24px 16px 40px}.heading{margin-bottom:23px;gap:10px}h1{font-size:27px}h2{font-size:20px}.heading .button{font-size:12px;padding:9px 12px}.project-list{grid-template-columns:1fr}.project-card{padding:20px}.hide-mobile{display:none}.back{display:inline-flex;margin-bottom:17px}.overview{display:block}.panel-head{padding:20px 18px 0}.panel-body{padding:8px 18px 20px}.tabs{gap:16px}.tabs button{font-size:11px}.task-title{font-size:14px}.task-meta{font-size:11px}.task-actions{gap:15px}.task-actions button{font-size:11px;min-height:32px}.result{padding:18px;flex-wrap:wrap}.settings{padding:21px}.overlay{padding:14px 8px}.dialog{padding:22px 18px;border-radius:12px}.form-grid{grid-template-columns:1fr}.dialog input:not([type=checkbox]),.dialog textarea,.dialog select,.discussion textarea{font-size:16px}.dialog h2{font-size:21px}.markdown h1{font-size:25px}.form-footer .danger{margin-left:0}.notice,.error{padding:12px;font-size:12px}.task{grid-template-columns:28px 1fr}.check{width:23px;height:23px;margin-top:3px}.login{margin:10vh auto;padding:28px}.section-note,.document-link{font-size:13px}}@media(pointer:coarse){button{min-height:40px}.check{min-height:26px;min-width:26px}.task{grid-template-columns:30px 1fr}.icon-button{min-width:44px;min-height:44px}}@media(prefers-reduced-motion:no-preference){.button,.project-card{transition:border-color .15s}.overlay{animation:appear .12s ease-out}@keyframes appear{0%{opacity:.6}to{opacity:1}}}
