:root{color-scheme:light;--bg:#f5f6f8;--panel:#fff;--line:#e2e5ea;--text:#252a34;--muted:#9299a6;--accent:#008af5;--selected:#dcecf9;--bar:#6593e4;--critical:#f16d70;--weekend:#e9ecf266;--grid:#e7eaf0;--table:760px;--row:30px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:12px -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}body.dark{color-scheme:dark;--bg:#16191e;--panel:#1e2229;--line:#343a45;--text:#d7dce5;--muted:#7e899a;--selected:#263e56;--bar:#518fdf;--critical:#dc737d;--weekend:#ffffff04;--grid:#2a303b}button,input,select,textarea{font:inherit;color:inherit}button{background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:7px 10px;cursor:pointer;white-space:nowrap}button:hover{background:var(--selected)}button:disabled{opacity:.35;cursor:default}button:focus-visible,[role=button]:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}input,select,textarea{background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:8px}input:focus,select:focus,textarea:focus{outline:1px solid var(--accent)}.topbar{height:48px;display:flex;align-items:center;gap:8px;padding:6px 10px;border-bottom:1px solid var(--line);background:var(--panel);overflow-x:auto}.topbar button{height:32px}.icon{font-size:23px;border:0;padding:0 9px}.schedule-name{border:0;font-weight:600;max-width:200px;overflow:hidden;text-overflow:ellipsis;padding-left:0}.primary{background:var(--accent);border-color:var(--accent);color:white}.primary:hover{background:#167bd2}.button-group{display:flex}.button-group button{border-radius:0;min-width:30px;padding:5px;color:var(--muted);font-size:17px}.button-group button:first-child{border-radius:6px 0 0 6px}.button-group button:last-child{border-radius:0 6px 6px 0}.button-group button+button{border-left:0}.zoom{align-items:center;border:1px solid var(--line);border-radius:6px;height:32px;overflow:hidden}.zoom button{border:0;height:30px;font-size:17px}.zoom span{font-size:9px;letter-spacing:.6px;color:var(--muted);border-left:1px solid var(--line);border-right:1px solid var(--line);padding:8px 10px}.critical-toggle{border:1px solid var(--line);border-radius:6px;padding:7px 10px;white-space:nowrap;cursor:pointer;color:#576172}.critical-toggle input{appearance:none;padding:0;border:0;width:0;margin:0}.critical-toggle:has(input:checked){color:#c44955;background:#f9e7eb;border-color:#e6bbc2}.toolbar-spacer{flex:1}.finish-badge{background:var(--bg);font-size:12px}.finish-badge small{font-size:9px;font-weight:400;color:var(--muted);margin-right:4px;letter-spacing:.5px}.finish-badge strong{font-size:13px;font-weight:550}main{height:calc(100vh - 48px);display:flex;flex-direction:column}.gantt{flex:1;overflow:auto;position:relative;outline:0}.chart{width:max-content;min-width:100%;position:relative}.chart-head,.chart-row{display:flex;height:30px}.chart-head{height:46px;position:sticky;top:0;z-index:6;background:var(--panel)}.table-cells{display:grid;grid-template-columns:32px 210px 83px 83px 42px 48px 90px 72px;width:var(--table);flex-shrink:0;position:sticky;left:0;background:var(--bg);z-index:3;border-right:1px solid var(--line)}.chart-head .table-cells{background:var(--panel);font-size:9px;letter-spacing:.9px;color:var(--muted);align-items:end}.table-cells>span{padding:7px 4px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;border-bottom:1px solid #e5e8ed66;display:flex;align-items:center;gap:5px}.chart-head .table-cells>span{height:30px;border-bottom:0}.table-cells>span.row-num{font-size:10px;color:#a16b72;justify-content:center;cursor:default}.chart-row.selected .table-cells,.chart-row.selected .track{background-color:var(--selected)}.chart-row.selected .table-cells{box-shadow:inset 2px 0 var(--accent)}.chart-row:hover .table-cells{filter:brightness(.985)}.task-name{font-size:12px;cursor:text}.summary-name{font-weight:600;color:#5964bc}.collapse{width:14px;padding:0;border:0;background:transparent;font-size:12px;color:var(--muted);height:16px;flex-shrink:0}.cell{cursor:text;color:#7c8798;font-size:11px}.float-zero{color:#ca626c}.timeline-head{position:relative;flex-shrink:0;overflow:hidden}.month-row{height:22px;position:relative;border-bottom:1px solid var(--line);font-size:11px}.month-row span{position:absolute;padding:3px 5px;border-left:1px solid var(--line);white-space:nowrap}.days-row{display:flex;height:24px;font-size:9px;color:#a0a7b2}.day{flex-shrink:0;text-align:center;padding-top:7px;border-right:1px solid var(--grid)}.weekend{background:var(--weekend)}.track{position:relative;flex-shrink:0;border-bottom:1px solid #e5e8ed55;background-image:linear-gradient(to right,var(--grid) 1px,transparent 1px);background-size:var(--day) 100%}.weekend-shade{position:absolute;top:0;bottom:0;background:var(--weekend);pointer-events:none}.bar{position:absolute;top:7px;height:17px;border-radius:4px;border:1px solid #4f7cbd;background:var(--bar);cursor:grab;min-width:7px;z-index:2;touch-action:none;user-select:none}.bar.critical{background:var(--critical);border-color:#cd5965}.bar-label{position:absolute;left:calc(100% + 10px);top:0;line-height:16px;font-size:11px;color:var(--text);white-space:nowrap;pointer-events:none}.resize{position:absolute;right:0;top:0;bottom:0;width:5px;cursor:ew-resize}.bar .fill{position:absolute;inset:0 auto 0 0;background:#ffffff25;pointer-events:none}.bar.milestone{width:12px!important;min-width:12px;height:12px;top:10px;border-radius:1px;transform:rotate(45deg)}.bar.milestone .bar-label{transform:rotate(-45deg);transform-origin:left center;left:17px;top:-6px}.bar.summary{height:9px;top:10px;background:#666ed0;border:0;border-radius:0;clip-path:polygon(0 0,100% 0,100% 100%,calc(100% - 5px) 40%,5px 40%,0 100%);cursor:default}.summary-label{position:absolute;font-size:11px;top:7px;white-space:nowrap;color:var(--text)}.float-tail{position:absolute;top:15px;height:0;border-top:1px dashed #9fa9b9;pointer-events:none}.links{position:absolute;top:46px;left:var(--table);pointer-events:none;z-index:1;overflow:visible}.today-line{position:absolute;top:0;bottom:0;border-left:1px dashed #bf995f;pointer-events:none;z-index:1}.add-row{height:36px;position:sticky;left:0;display:block;border:0;background:transparent;color:var(--muted);font-size:12px;padding-left:16px}.add-row:hover{color:var(--accent);background:transparent}.inline-editor{width:100%;height:26px;margin:-5px 0;padding:2px 4px;border:1px solid var(--accent)!important;border-radius:3px;font-size:12px;background:var(--panel);color:var(--text)}.hide-table{--table:0px}.hide-table .table-cells{display:none}footer{height:28px;display:flex;align-items:center;gap:24px;justify-content:space-between;padding:0 15px;border-top:1px solid var(--line);color:var(--muted);background:var(--panel);font-size:9px}footer b{font-size:13px;color:#758196}footer b small{font-weight:400;font-size:9px}dialog{background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:10px;box-shadow:0 20px 80px #0003;width:470px;max-width:95vw;padding:24px}dialog::backdrop{background:#17203344}.dialog-head{display:flex;justify-content:space-between;align-items:start;margin-bottom:20px}h2{font-size:20px;margin:0;font-weight:550}.eyebrow{font-size:9px;letter-spacing:1.6px;color:var(--muted);margin-bottom:7px}.close{border:0;background:none;font-size:24px;padding:0;height:24px;line-height:20px}form label{display:block;font-size:11px;color:#7c8798;margin-bottom:13px}form label>input,form label>select,form label>textarea{display:block;width:100%;margin-top:6px}form small{font-size:9px;color:var(--muted);display:block;margin-top:4px}.form-row{display:flex;gap:15px}.form-row>label{flex:1;min-width:0}.dialog-actions{display:flex;justify-content:space-between;margin-top:20px}.danger{color:#c75965;border-color:#e4c8cc;background:transparent}.hint{color:var(--muted);font-size:10px;line-height:1.7}.weekday{display:inline-flex!important;gap:4px;margin-right:8px;font-size:11px!important}#weekdays{margin-bottom:15px}.check-label{display:flex!important;align-items:center;gap:8px}.check-label input{width:auto;margin:0}.project{display:block;width:100%;text-align:left;padding:14px;margin-bottom:8px}.project.selected{background:var(--selected)}#newProject{margin-top:15px}#toast{position:fixed;bottom:42px;left:50%;transform:translateX(-50%);background:#344b67;color:white;border-radius:6px;padding:11px 18px;z-index:30;display:none;font-size:12px}dl{display:grid;grid-template-columns:1fr 2fr;gap:12px;font-size:12px}dt{color:var(--muted)}dd{margin:0}#totalsContent>div{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line)}#totalsContent>div span{color:var(--muted)}@media(max-width:700px){.topbar{gap:5px}.schedule-name{max-width:100px}.toolbar-spacer{display:none}footer>span:nth-child(2){display:none}}@media print{.topbar,footer,.add-row{display:none}main{height:auto}.gantt{overflow:visible}.chart-head,.table-cells{position:static}.chart{zoom:.65}.bar{print-color-adjust:exact}.track{print-color-adjust:exact}body{background:white}}
.critical-toggle input{appearance:auto;width:11px;height:11px;margin:0 5px 0 0;vertical-align:-1px;accent-color:#d76878}
