:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,sans-serif;color:var(--ink);background:var(--canvas);font-synthesis:none;-webkit-font-smoothing:antialiased;line-height:1.5;color-scheme:light;--canvas: #fcf9f5;--surface: #ffffff;--surface-muted: #f4f0e8;--ink: #1d1d1c;--text: #3e3b35;--line-subtle: #ebe6dc;--brand: #fec43e;--brand-soft: #fff1c2;--brand-strong: #8c5f00;--muted: #69645c;--line: #ded8ce;--green: #236b4e;--blue: #2b648a;--orange: #9a4d0a}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit;color:inherit}button,select{cursor:pointer}button{border:1px solid var(--line);border-radius:7px;background:#fff;padding:8px 12px;min-height:38px}button:hover{background:var(--surface-muted)}button:disabled,select:disabled,input:disabled{cursor:default;opacity:.5}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--brand-strong);outline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link{position:fixed;top:8px;left:8px;padding:10px;background:var(--brand);z-index:10;transform:translateY(-200%)}.skip-link:focus{transform:none}svg{flex:none;vertical-align:middle}.site-header{height:66px;padding:0 4.3%;display:flex;align-items:center;gap:28px;border-bottom:1px solid var(--line);background:var(--surface)}.brand{display:flex;align-items:center;gap:10px}.brand:hover{text-decoration:none}.brand strong{font-size:21px;letter-spacing:-.8px}.brand strong span{font-weight:450}.refresh-button{margin-left:auto;display:flex;align-items:center;gap:8px;font-size:12px;background:transparent}main{max-width:1560px;margin:auto;padding:22px 4.3% 24px}.overview{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) 300px;align-items:center;gap:32px;min-height:108px;padding:20px 26px;border:1px solid #eed18a;border-radius:12px;background:linear-gradient(105deg,#fff2c8,#ffe49a);box-shadow:inset 0 1px #ffffff90,0 2px 8px #8c5f0005}.overview-year{position:absolute;right:20px;bottom:-18px;z-index:-1;color:#a87508;opacity:.09;font-size:136px;font-weight:750;line-height:1;letter-spacing:-10px;font-variant-numeric:tabular-nums;pointer-events:none;user-select:none}.overview-stats{grid-column:1;max-width:680px;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.stat{padding-left:24px;border-left:1px solid #aa812136}.stat:first-child{border-left:0;padding-left:0}.stat dt{display:flex;align-items:center;gap:6px;color:#765923;font-size:12px;white-space:nowrap}.stat dd{margin:6px 0 0;font-size:34px;line-height:1.1;font-weight:550;letter-spacing:-.8px;font-variant-numeric:tabular-nums}.view-switcher{display:flex;flex-wrap:wrap;gap:0 12px;border-bottom:1px solid var(--line);margin-top:20px}.view-switcher button{display:flex;align-items:center;gap:8px;padding:11px 14px;border:0;border-radius:6px 6px 0 0;background:transparent;color:var(--muted);font-size:13px;white-space:nowrap}.view-switcher button:hover{background:var(--surface-muted)}.view-switcher button[aria-pressed=true]{background:#fff4d9;color:var(--brand-strong);font-weight:600;box-shadow:inset 0 -2px 0 var(--brand)}.view-switcher button>span{font-size:11px;border-radius:4px;background:#f0ece5;color:var(--muted);padding:1px 5px;min-width:23px;text-align:center;font-variant-numeric:tabular-nums}.view-switcher button[aria-pressed=true]>span{background:#ffebaf;color:var(--brand-strong)}.toolbar{display:flex;align-items:center;gap:12px;margin:16px 0 12px;flex-wrap:wrap}.search{display:flex;align-items:center;gap:9px;flex:1 1 260px;max-width:360px;border:1px solid var(--line);background:var(--surface);border-radius:7px;padding:0 11px;color:var(--muted)}.search input{border:0;background:transparent;padding:9px 0;min-width:0;width:100%;font-size:12px}.search input::placeholder{color:var(--muted)}.filters{display:flex;gap:8px;flex-wrap:wrap;margin-left:auto}.filters select{border:1px solid var(--line);background:var(--surface);border-radius:7px;padding:8px 24px 8px 10px;max-width:190px;min-height:37px;font-size:12px}.clear{font-size:12px;background:transparent;border-color:transparent;color:var(--muted)}#tasks{scroll-margin-top:18px;outline:none}.list-heading{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between;color:var(--muted);font-size:12px;margin:0 0 10px}.list-actions{display:flex;align-items:center;gap:14px;margin-left:auto}.sort-button{display:flex;align-items:center;gap:6px;border:0;background:transparent;padding:4px;min-height:28px;font-size:12px;color:var(--muted);white-space:nowrap}.task-list-shell{--columns: minmax(150px, 1fr) minmax(68px, .45fr) 66px 44px minmax(0, 3.7fr) 66px 78px;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:0 3px 12px #39291008}.table-heading,.task-row{display:grid;grid-template-columns:var(--columns);align-items:center;column-gap:14px;padding:0 16px}.table-heading{min-height:36px;background:#f7f4ee;border-bottom:1px solid var(--line);color:var(--muted);font-size:11px;border-radius:9px 9px 0 0}.table-heading>span:first-child{padding-left:24px}.stage-headings,.row-progress{display:grid;grid-template-columns:repeat(var(--stage-count),minmax(0,1fr));gap:14px}.stage-headings>span{overflow-wrap:anywhere}.task-list{list-style:none;margin:0;padding:0}.task-item+.task-item{border-top:1px solid var(--line-subtle)}.task-item:nth-child(2n){background:#fcfbf9}.task-item:last-child{border-radius:0 0 9px 9px}.task-row{min-height:48px}.task-item:hover{background:#fffbef}.task-item.expanded{background:#fff3d2}.task-title{min-width:0;display:flex;align-items:center;gap:7px;padding:6px 0;text-align:left;border:0;background:transparent;border-radius:0;line-height:1.5}.task-title:hover{background:transparent}.task-title>svg{color:#928a7c}.task-title-text{min-width:0;display:flex;flex-direction:column;gap:1px}.task-title strong{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:13px;font-weight:600;letter-spacing:-.2px;overflow-wrap:anywhere}.task-meta{display:flex;gap:7px;align-items:center;flex-wrap:wrap;font-size:10px;color:var(--muted)}.task-meta>span{overflow-wrap:anywhere}.row-series{display:flex;align-items:center;flex-wrap:wrap;gap:3px 8px;min-width:0;padding:5px 0;font-size:12px;color:var(--text);overflow-wrap:anywhere}.mobile-series-label{display:none}.series-badge{display:inline-flex;align-items:center;max-width:100%;padding:1px 6px;border-radius:4px;font-size:11px;font-weight:500;line-height:18px;color:var(--series-ink);background:var(--series-fill)}.tone-amber{--series-fill: #fff1cf;--series-ink: #805900}.tone-rose{--series-fill: #f9e8ee;--series-ink: #94425b}.tone-violet{--series-fill: #f0e9fa;--series-ink: #6d4b91}.tone-blue{--series-fill: #e7effb;--series-ink: #3b608f}.tone-peach{--series-fill: #fbece0;--series-ink: #8a5535}.tone-sage{--series-fill: #edf1df;--series-ink: #596b32}.tone-cyan{--series-fill: #e3f2f4;--series-ink: #316b75}.tone-slate{--series-fill: #eaecf8;--series-ink: #515c93}.tone-pink{--series-fill: #f7e8f4;--series-ink: #8c4f7f}.tone-coral{--series-fill: #fce8e2;--series-ink: #964b37}.tone-mint{--series-fill: #e7f1ec;--series-ink: #426c58}.task-status{display:inline-flex;justify-self:start;align-items:center;gap:6px;padding:2px 6px;border-radius:4px;font-size:11px;white-space:nowrap}.task-status.in_progress{color:#2b648a;background:#edf4f8}.task-status.pending{color:var(--brand-strong);background:var(--brand-soft)}.task-status.on_hold{color:var(--muted);background:var(--surface-muted)}.task-status.completed{color:#236b4e;background:#edf5f0}.row-duration,.row-date{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.row-progress{padding:6px 0;min-width:0}.stage-cell{display:flex;align-items:center;gap:8px;min-width:0}.step-summary{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:var(--muted);flex:none;white-space:nowrap}.step-summary>span{white-space:nowrap}.step-summary.completed{color:var(--green)}.step-summary.in_progress{color:var(--blue)}.step-summary.pending{color:var(--orange)}.stage-members{min-width:0;font-size:12px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stage-not-applicable{color:var(--muted)}.mobile-date-label,.mobile-stage-label{display:none}.row-links{display:flex;align-items:center;font-size:11px;gap:8px;padding:5px 0}.row-links a{display:inline-flex;align-items:center;gap:1px;color:var(--brand-strong);min-height:24px;white-space:nowrap}.task-detail{border-top:1px solid #ecddba;padding:16px 38px 20px;background:#faf7f0}.detail-facts{display:flex;flex-wrap:wrap;gap:10px 28px;margin:0 0 18px;font-size:11px;color:var(--muted)}.detail-facts>div{min-width:0}.detail-facts dt{margin-bottom:4px;font-size:10px;color:var(--muted)}.detail-facts dd{margin:0;overflow-wrap:anywhere;color:var(--text)}.detail-stages{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px 28px}.detail-stage{min-width:0}.detail-stage-heading{display:flex;justify-content:space-between;gap:12px;font-size:12px;border-bottom:1px solid var(--line);padding-bottom:8px}.detail-stage-heading strong{font-weight:550;overflow-wrap:anywhere}.detail-stage-heading>span{font-size:11px;color:var(--muted)}.detail-stage ul{list-style:none;padding:0;margin:10px 0 0;display:flex;flex-direction:column;gap:7px}.detail-stage li{display:flex;justify-content:space-between;gap:12px;font-size:12px}.detail-stage li>span:first-child{overflow-wrap:anywhere}.detail-stage li>span:last-child{white-space:nowrap;font-size:11px}.detail-stage p{font-size:12px;color:var(--muted);margin:10px 0 0}.detail-stage .completed{color:var(--green)}.detail-stage .in_progress{color:var(--blue)}.detail-stage .pending{color:var(--orange)}.pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 0;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.pagination-controls{display:flex;align-items:center;gap:6px}.pagination-controls button{display:flex;align-items:center;justify-content:center;padding:5px;min-width:30px;min-height:30px}.pagination-controls select{font-size:12px;padding:5px;border:1px solid var(--line);border-radius:6px;background:var(--surface);min-height:30px;font-variant-numeric:tabular-nums}.message-state{min-height:280px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;border:1px dashed var(--line);border-radius:10px;color:var(--muted);text-align:center;padding:28px;background:var(--surface)}.message-state h2{font-size:19px;color:var(--ink);margin:0}.message-state p{margin:0;font-size:14px}.message-state button{margin-top:5px;background:var(--brand);border-color:transparent;font-size:13px}.message-state .clear{background:transparent}.error{background:#fff8f4;border-color:#dfb0a9}footer{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:12px;padding-top:18px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}.footer-credits{display:flex;flex-wrap:wrap;gap:6px 20px}.footer-credits>span{white-space:nowrap}.footer-credits a{color:var(--text);font-weight:550}.footer-credits a:hover{color:var(--brand-strong)}footer>time{margin-left:auto}.demo-label{color:var(--brand-strong);background:var(--brand-soft);padding:2px 6px;border-radius:4px}@media(max-width:1150px){.overview{grid-template-columns:minmax(0,1fr) 240px;gap:24px;padding:20px 24px}.overview-year{font-size:112px;right:15px;bottom:-13px;letter-spacing:-7px}.stat{padding-left:16px}.stat dd{font-size:31px}.task-list-shell{--columns: minmax(135px, 1fr) 64px 62px 40px minmax(0, 3.7fr) 56px 72px}.table-heading,.task-row{column-gap:10px;padding:0 12px}.stage-headings,.row-progress{gap:10px}.toolbar{align-items:stretch}.search{max-width:initial}.filters{margin-left:0}}@media(max-width:980px){.overview{grid-template-columns:minmax(0,1fr) 200px;gap:20px}.overview-year{font-size:96px}.table-heading{display:none}.task-row{grid-template-columns:minmax(130px,1fr) 64px 60px 36px 48px 74px;gap:4px 10px;padding:8px 12px;min-height:0}.task-title{grid-column:1;grid-row:1;padding:0;min-height:32px;gap:7px}.task-title strong{font-size:13px}.row-series{grid-column:2;grid-row:1;padding:0;gap:3px 6px;font-size:11px}.task-status{grid-column:3;grid-row:1;align-self:center;margin:0}.row-duration{grid-column:4;grid-row:1;align-self:center;justify-self:start;margin:0;font-size:11px}.row-date{grid-column:5;grid-row:1;padding:0;font-size:11px}.row-links{grid-column:6;grid-row:1;justify-self:end;flex-direction:row;gap:8px;padding:0;font-size:10px}.row-progress{grid-column:1 / -1;grid-row:2;display:grid;grid-template-columns:repeat(var(--stage-count),minmax(0,1fr));gap:10px;padding:3px 0 0 23px;align-items:start}.stage-cell{display:grid;grid-template-columns:24px auto minmax(0,1fr);gap:6px;align-items:center}.mobile-stage-label{display:inline;font-size:11px;color:var(--muted);overflow-wrap:anywhere}.step-summary{font-size:10px}.stage-members{font-size:11px;white-space:normal;overflow-wrap:anywhere}.stage-not-applicable{grid-column:2 / -1}.task-detail{padding:16px 20px}.detail-stages{grid-template-columns:1fr}}@media(max-width:700px){.task-row{grid-template-columns:minmax(0,1fr) auto auto auto;gap:5px 8px;padding:9px 12px}.task-title{grid-column:1 / 4;grid-row:1;min-height:26px}.task-title-text{flex-direction:row;align-items:baseline;flex-wrap:wrap;gap:2px 7px}.task-status{grid-column:4;grid-row:1;justify-self:end}.row-series{grid-column:1;grid-row:2}.row-duration{grid-column:2;grid-row:2;font-size:10px}.row-date{grid-column:3;grid-row:2;font-size:10px}.row-links{grid-column:4;grid-row:2;gap:7px}.row-progress{grid-column:1 / -1;grid-row:3;gap:8px;padding:2px 0 0 23px}.stage-cell{grid-template-columns:20px minmax(0,1fr);gap:3px;align-content:start}.mobile-stage-label{font-size:10px}.step-summary{min-width:0;max-width:100%;gap:3px}.step-summary svg{width:11px;height:11px}.step-summary>span{white-space:normal;overflow-wrap:anywhere}.stage-members{grid-column:1 / -1;overflow:visible}}@media(max-width:600px){.site-header{height:62px;padding:0 18px;gap:10px}.brand strong{font-size:20px}.brand img{width:34px;height:34px}.refresh-button{padding:7px 10px;min-height:34px}main{padding:18px 15px}.overview{grid-template-columns:1fr auto;grid-template-rows:auto auto;padding:10px 17px 17px;gap:10px;border-radius:11px}.overview-year{position:static;grid-column:2;grid-row:1;justify-self:end;align-self:center;font-size:66px;letter-spacing:-4px;opacity:.12}.overview-stats{grid-column:1 / -1;grid-row:2;max-width:none}.stat{padding-left:13px}.stat dt{font-size:10px;gap:4px}.stat dt svg{display:none}.stat dd{font-size:28px;margin-top:6px}.view-switcher{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin-top:16px}.view-switcher button{justify-content:center;flex-direction:column;font-size:12px;padding:8px 2px;gap:4px;min-height:48px}.toolbar{margin:13px 0 12px;gap:9px}.search{flex-basis:100%;width:100%}.filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:7px}.filters label,.filters select{width:100%;min-width:0;max-width:none}.filters .clear{justify-self:start;padding-left:0;min-height:30px}.list-heading{margin-bottom:9px;font-size:11px}.list-heading>span{white-space:nowrap}.pagination{font-size:11px}footer{flex-wrap:wrap;gap:8px 12px}footer>time{margin-left:0;flex-basis:100%;font-size:10px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}.reference-notice{display:flex;flex-wrap:wrap;align-items:center;gap:7px 14px;margin-bottom:12px;padding:0 1px;min-height:24px;color:var(--muted);font-size:11px}.reference-notice strong{font-weight:600}.reference-notice a{margin-left:auto;display:inline-flex;align-items:center;gap:3px;color:var(--brand-strong)}.reference-members{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:9px}.reference-members p{color:var(--text);margin:0;overflow-wrap:anywhere}.member-state-missing{color:var(--muted);font-size:11px}
