.week-panel{margin-top:20px;color:#34455d}.week-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;gap:15px}.week-title h1{font-size:25px!important;line-height:1.3;margin:0!important;letter-spacing:.2px}.week-title p{font-size:12px;color:#8592a3;margin:7px 0 0}.week-controls{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.week-controls button,.decision-strip button{background:#fff;border:1px solid #dbe4ef;border-radius:7px;padding:8px 12px;color:#4e637e;cursor:pointer;font:inherit;font-size:12px}.week-controls label{display:flex;gap:5px;align-items:center;font-size:12px;margin-left:8px}.week-controls input{width:14px;height:14px}.week-legend{display:flex;gap:7px;align-items:center;color:#8090a5;font-size:11px;margin:0 0 12px}.week-legend>span:last-child{margin-left:auto}.legend-dot{width:7px;height:7px;border-radius:50%;display:inline-block;margin-left:12px}.legend-dot:first-child{margin-left:0}.legend-dot.done{background:#4ca88c}.legend-dot.plan{background:#719ad0}.legend-dot.ceo{background:#a183ca}.week-scroll{overflow:auto;border:1px solid #dce5ee;border-radius:11px;background:white;max-height:calc(100vh - 225px);min-height:360px;scrollbar-width:thin;isolation:isolate}.week-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:100%;min-width:calc(130px + var(--day-count)*170px);font-size:12px}.week-table th,.week-table td{padding:0;border:0;border-right:1px solid #e6ecf3;border-bottom:1px solid #e6ecf3;text-align:left;vertical-align:top}.week-table thead th{position:sticky;top:0;z-index:3;height:58px;background:#f6f9fc;padding:11px 14px;color:#647a95}.week-table thead th b{font-size:13px;display:block;margin-bottom:5px;font-weight:600}.week-table thead th span{font-size:11px;color:#99a5b6}.week-table th:first-child{width:130px;position:sticky;left:0;z-index:2;background:#f9fbfd}.week-table thead th:first-child{z-index:4}.week-table .member-cell{height:133px;padding:17px 12px;vertical-align:middle}.member-avatar{float:left;width:28px;height:28px;border-radius:9px;background:#e9f0f8;color:#6e8cab;text-align:center;line-height:28px;font-size:11px;margin:0 7px 5px 0}.member-cell b{display:block;font-size:11px;font-weight:600;line-height:17px}.member-cell small{display:block;color:#9aa8b9;font-size:10px}.week-table td.is-today{background:#f2f8ff}.week-table thead th.is-today{background:#e9f3ff;color:#447fbf}.week-table thead th.is-today span{color:#6794c4}.day-cards{padding:8px;min-height:132px;max-height:174px;overflow-y:auto;scrollbar-width:thin}.week-card{display:block;width:100%;text-align:left;border:1px solid #e0e8f1;border-left:3px solid #89acd7;border-radius:7px;background:#fff;box-shadow:0 2px 4px #57769b08;padding:8px 8px 7px;margin:0 0 6px;cursor:pointer;color:#4a5e78;font:inherit}.week-card:hover{border-color:#8db3e2;box-shadow:0 3px 10px #7390b223}.week-card.from-ceo{border-left-color:#a88bc8}.week-card.is-done{border-left-color:#66ad97;background:#fbfefc}.week-card.is-cancelled{opacity:.6}.week-card.is-cancelled strong{text-decoration:line-through}.wc-top,.wc-foot{display:flex;justify-content:space-between;align-items:center;gap:4px;font-size:9px;color:#91a0b1}.wc-basis{color:#7a9abd}.is-done .wc-basis{color:#6b9d8c}.wc-status.late{color:#c77d76}.week-card strong{font-weight:500;font-size:12px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:5px 0 6px}.wc-foot span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wc-foot em{font-style:normal;background:#f0eaf8;color:#9c7dbd;padding:1px 4px;border-radius:3px;flex-shrink:0}.week-card small{display:block;font-size:9px;color:#96a3b3;margin-top:3px}.week-empty{display:block;font-size:11px;color:#b3bdca;padding:12px 8px}.week-footnote{font-size:11px;color:#91a0b3;margin:10px 0}.week-explain{font-size:11px;color:#8495ab}.week-explain summary{cursor:pointer}.week-extras{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:18px 0}.week-extras section{border:1px solid #dfe7f0;border-radius:9px;padding:14px;background:#ffffffb0}.week-extras h3{font-size:13px;margin:0 0 10px}.week-extras h3 small{color:#98a5b4}.extra-person{font-size:11px;display:flex;align-items:center;gap:12px}.extra-person .week-card{max-width:250px}.overdue-ref{display:flex;flex-wrap:wrap;gap:6px;font-size:10px;padding:6px;border-bottom:1px solid #e8edf3}.overdue-ref button{border:0;background:none;color:#7b91b1;cursor:pointer;text-align:left}.decision-strip{display:flex;align-items:center;gap:16px;padding:13px 17px;border:1px solid #dce6f1;border-radius:10px;background:linear-gradient(100deg,#f8fbff,#fff);min-height:69px}.decision-strip-count{display:flex;align-items:center;gap:10px;white-space:nowrap;font-size:12px;color:#6d819b}.decision-strip-count strong{font-size:24px;color:#5d85b5;font-weight:600}.decision-strip-alert{font-size:11px;color:#8c9bb0;white-space:nowrap}.decision-strip-alert b{font-weight:500;color:#c37c77}.decision-strip-items{display:flex;gap:12px;flex:1;min-width:0}.decision-strip-items button{border:0;background:transparent;padding:0;text-align:left;max-width:240px;overflow:hidden}.decision-strip-items span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.decision-strip-items small{font-size:9px;color:#a2adbc}.ceo #main:has(.week-panel){display:block;padding-top:22px}.ceo #main:has(.week-panel) .week-title h1{font-size:25px!important}.ceo #main .decision-strip #openDecisionPage{white-space:nowrap}.ceo #main .week-panel .week-table{box-shadow:none}.week-table tr:last-child td,.week-table tr:last-child th{border-bottom:0}@media(max-width:1000px){.decision-strip-items{display:none}.decision-strip{gap:10px}.decision-strip>button:last-child{margin-left:auto}.week-title{align-items:flex-start}.week-legend>span:last-child{display:none}.week-extras{grid-template-columns:1fr}}@media(max-width:650px){.week-title{display:block}.week-controls{margin-top:10px}.week-scroll{max-height:70vh}}

.ceo #main .week-table{min-width:calc(130px + var(--day-count)*170px);width:100%;table-layout:fixed}.ceo #main .week-table .day-cards,.week-table .day-cards{box-sizing:border-box;height:128px;min-height:128px;max-height:128px}.ceo #main .week-table .member-cell{height:128px;box-sizing:border-box}.ceo #navigation button{font-size:13px;line-height:19px;padding-top:10px;padding-bottom:10px;min-height:65px}.ceo #navigation button img{width:23px;height:23px}.wc-top,.wc-foot{font-size:10px}.ceo #main .week-table th:first-child{width:130px}

.ceo #main .week-table,.week-table{min-width:1320px}.ceo #main .week-table.workdays,.week-table.workdays{min-width:980px}

.timing-editor{grid-column:1/-1;border:1px solid #e1e8f0;border-radius:9px;padding:12px;margin:8px 0}.timing-editor legend{font-size:13px;color:#526982;padding:0 6px}.timing-editor legend small{color:#94a2b4;font-weight:400}.timing-editor .fields{align-items:center}.timing-check{display:flex!important;align-items:center;gap:8px;font-size:13px;color:#647b94}.timing-check input{width:15px!important;height:15px}.timing-editor details{margin:8px 0;font-size:12px;color:#7d8da2}.timing-editor summary{cursor:pointer;padding:4px 0}.timing-editor [data-range-from]{margin-top:10px;max-width:240px}.timing-editor [hidden]{display:none!important}.range-track{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px 0;padding:7px 0 2px}.range-track.workdays{grid-template-columns:repeat(5,minmax(0,1fr))}.week-range{margin:0 7px;padding:8px 11px;border:1px solid #d6e4f0;border-radius:8px;background:#eaf4fd;color:#395c7e;text-align:left;font:inherit;cursor:pointer;min-width:0}.week-range span{display:block;font-size:10px;color:#6785a4;margin-bottom:4px}.week-range strong{display:block;font-size:13px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:21px}.week-range small{display:block;font-size:10px;color:#8095aa;margin-top:4px}.week-range.from-ceo{border-left:3px solid #a086c2}.week-range.range-done{background:#edf6f1;border-color:#c9e3d5}.week-range.range-cancelled{opacity:.6;text-decoration:line-through}.week-table .person-range-row>td{border-bottom:0}.week-table .person-days-row .day-cards{height:105px!important;min-height:105px!important;max-height:105px!important}.week-range:focus-visible,.week-card:focus-visible{outline:2px solid #5599d6;outline-offset:2px}.wc-basis{max-width:76%;line-height:1.4}.wc-top{align-items:start}
.range-track .start-1{grid-column-start:1}.range-track .span-1{grid-column-end:span 1}
.range-track .start-2{grid-column-start:2}.range-track .span-2{grid-column-end:span 2}
.range-track .start-3{grid-column-start:3}.range-track .span-3{grid-column-end:span 3}
.range-track .start-4{grid-column-start:4}.range-track .span-4{grid-column-end:span 4}
.range-track .start-5{grid-column-start:5}.range-track .span-5{grid-column-end:span 5}
.range-track .start-6{grid-column-start:6}.range-track .span-6{grid-column-end:span 6}
.range-track .start-7{grid-column-start:7}.range-track .span-7{grid-column-end:span 7}

.week-range{padding:7px 10px}.week-range .range-meta{display:flex;gap:10px;align-items:center;margin-bottom:3px;line-height:14px}.week-range .range-meta b{font-weight:400;min-width:0;flex:1;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.week-range .range-meta small{display:block;margin:0;max-width:38%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0}.week-range strong{line-height:20px}.week-panel{margin-top:14px}.week-title{margin-bottom:8px}.week-legend{margin-bottom:6px}

/* Selected Chinese team matrix reference, 2026-10-26. */
.ceo #main .week-table,.week-table{min-width:1380px;background:#fff;color:#23354b}.ceo #main .week-table.workdays,.week-table.workdays{min-width:1190px}.week-person-col{width:190px}.weekend-col{width:90px}.ceo #main .week-table th:first-child{width:190px}.week-table th,.week-table td{border-color:#e8e8e6}.week-table thead th{height:76px;padding:14px 16px;background:#faf9f6;color:#273445}.week-table thead th b{font-size:17px;font-weight:650}.week-table thead th span{font-size:14px;color:#7e8895}.week-table thead .member-head{font-size:16px;vertical-align:middle}.week-table .member-cell{background:#fff!important;padding:20px 16px!important}.member-avatar{width:48px;height:48px;border-radius:50%;margin:0 12px 0 0;overflow:hidden;float:left;background:#eef1f4}.member-avatar img{width:100%;height:100%;object-fit:cover}.member-cell b{font-size:16px;line-height:26px;color:#263244;font-weight:650;white-space:nowrap}.member-cell small{font-size:13px;line-height:22px;color:#83909e}.ceo #main .week-table .day-cards,.week-table .day-cards{height:198px;min-height:198px;max-height:198px;padding:10px;}.ceo #main .week-table .person-days-row .day-cards{height:145px!important;min-height:145px!important;max-height:145px!important}.week-card{background:#eaf3fd;border:1px solid transparent;border-left:1px solid transparent;box-shadow:none;padding:10px 11px;margin-bottom:8px;border-radius:7px;color:#2c4663;min-height:82px}.week-card strong{font-size:15px;line-height:23px;font-weight:550;margin:5px 0}.wc-top,.wc-foot{font-size:11px;line-height:16px;color:#788fa8}.wc-basis{color:#6a86a6}.week-card.from-ceo{border-left:3px solid #b39ad0}.week-card.is-done{background:#edf4f7;border-left-color:#6eaa97}.week-card.is-cancelled{background:#efefee}.week-card:has(.wc-status.late){background:#fff0e3;border:2px solid #ed9657}.week-card:has(.wc-status.late) strong{color:#925d35}.week-card small{font-size:10px}.week-table td.weekend{background:repeating-linear-gradient(135deg,#fafaf9 0,#fafaf9 3px,#f5f5f3 3px,#f5f5f3 5px)}.week-table thead th.weekend{background:#f5f5f3;color:#8993a0}.week-empty{font-size:12px;color:#b0b8c1;padding:12px 4px}.range-track{grid-template-columns:repeat(5,minmax(0,1fr)) 90px 90px}.range-track.workdays{grid-template-columns:repeat(5,minmax(0,1fr))}.week-range{background:#e7f1fc;border-color:#dbe8f6;border-radius:7px}.week-range strong{font-size:15px;line-height:23px}.week-range .range-meta{font-size:11px}.week-table td.is-today{background:#f8fbff}.week-table thead th.is-today{background:#edf5fd}.week-scroll{border-color:#e4e7e9;border-radius:8px}.week-legend{font-size:12px}.week-footnote{font-size:12px}.week-table th:first-child{background:#fff}.week-table .person-range-row .member-cell{border-bottom:1px solid #e8e8e6}
.week-card strong{font-size:18px;line-height:26px;font-weight:500}.member-cell b{font-size:19px;line-height:29px}.member-cell small{font-size:14px}.member-avatar{width:56px;height:56px}.week-table thead th b{font-size:20px}.week-table thead th span{font-size:16px}.wc-basis{font-size:13px}.week-card{padding:9px 10px}.ceo #main .week-table .day-cards,.week-table .day-cards{height:218px;min-height:218px;max-height:218px}.ceo #main .week-table .person-days-row .day-cards{height:165px!important;min-height:165px!important;max-height:165px!important}.week-range strong{font-size:17px;line-height:25px}

.light-work-mode [hidden]{display:none!important}.light-work-mode .week-card.is-done{background:#eaf3fd}.light-work-mode .week-card{opacity:1;text-decoration:none}

/* Readable daily contents: natural table rows, first three tasks visible. */
.ceo #main .week-table .day-cards,.week-table .day-cards,.ceo #main .week-table .person-days-row .day-cards{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important}
.ceo #main .week-table .member-cell,.week-table .member-cell{height:auto!important;vertical-align:middle}
.week-card{min-height:0}.week-card strong{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;white-space:normal;overflow:hidden;max-height:none;margin:6px 0;line-height:26px}
.week-range{height:auto;min-height:0;align-self:stretch}.week-range strong{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;white-space:normal;overflow:hidden;line-height:25px;max-height:none}
.day-more{margin:8px 0 2px}.day-more summary{font-size:12px;line-height:22px;color:#557ba4;cursor:pointer;padding:5px 3px}.day-more[open] summary{margin-bottom:8px}

.density-switch{display:flex;gap:0;border:1px solid #d4dfec;border-radius:7px;overflow:hidden}.density-switch button{border:0;border-radius:0}.density-switch button[aria-pressed=true]{background:#e3effc;color:#326ba6}
.week-compact #main:has(.week-panel){padding-top:10px!important}.week-compact .decision-strip{min-height:40px;padding:5px 12px}.week-compact .decision-strip-count strong{font-size:20px}.week-compact .decision-strip-items small{display:none}.week-compact .week-panel{margin-top:7px}.density-compact .week-title{margin-bottom:5px}.ceo #main .density-compact .week-title h1{font-size:18px!important}.density-compact .week-title p{font-size:11px;margin-top:2px}.density-compact .week-legend{display:none}.density-compact .week-scroll{max-height:calc(100vh - 172px)}
.ceo #main .density-compact .week-table,.density-compact .week-table{min-width:1120px}.density-compact .week-person-col{width:154px}.ceo #main .density-compact .week-table th:first-child{width:154px}.density-compact .weekend-col{width:64px}.density-compact .week-table thead th{height:41px;padding:5px 8px}.density-compact .week-table thead th b{font-size:14px;margin-bottom:1px}.density-compact .week-table thead th span{font-size:11px}.density-compact .week-table .member-cell{padding:7px 9px!important}.density-compact .member-cell b{font-size:13px;line-height:20px}.density-compact .member-cell small{font-size:11px;line-height:16px}.density-compact .member-avatar{width:30px;height:30px;margin-right:7px}
.ceo #main .density-compact .week-table .day-cards{padding:3px 4px!important}.density-compact .week-card{display:flex;align-items:center;gap:5px;padding:2px 5px;margin:0 0 3px;min-height:25px;box-sizing:border-box}.density-compact .week-card strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px;line-height:20px;margin:0;flex:1;min-width:0}.density-compact .wc-top{display:block;max-width:54px;flex-shrink:0;font-size:10px}.density-compact .wc-basis{display:block;max-width:100%;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:10px}.density-compact .wc-foot,.density-compact .week-card>small{display:none}.density-compact .week-empty{font-size:11px;padding:5px 2px}.density-compact .day-more{margin:0}.density-compact .day-more summary{font-size:11px;line-height:18px;padding:1px 3px}.density-compact .range-track{padding:3px 0 0;gap:3px 0;grid-template-columns:repeat(5,minmax(0,1fr)) 64px 64px}.density-compact .range-track.workdays{grid-template-columns:repeat(5,minmax(0,1fr))}.density-compact .week-range{padding:2px 5px;margin:0 4px;min-height:24px}.density-compact .range-meta{display:none!important}.density-compact .week-range strong{display:block;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:13px;line-height:20px}.density-compact .week-extras{margin-top:10px}
.density-compact .week-card strong{line-height:18px}.density-compact .week-range strong{line-height:18px}.density-compact .week-range{padding-top:1px;padding-bottom:1px;min-height:22px}.density-compact .week-table thead th{padding-top:3px;padding-bottom:3px}

/* Identity palette: hash of stable member ID, never status or role. */
.member-tone-0{--member-bg:#eef0f2;--member-edge:#8b98a5}
.member-tone-1{--member-bg:#fbefe1;--member-edge:#b59b78}
.member-tone-2{--member-bg:#e6f2ef;--member-edge:#73a79c}
.member-tone-3{--member-bg:#f7e9e9;--member-edge:#b58d91}
.member-tone-4{--member-bg:#f3efdc;--member-edge:#aaa06e}
.member-tone-5{--member-bg:#e9f1df;--member-edge:#90a075}
.member-tone-6{--member-bg:#e9f4e5;--member-edge:#7da88a}
.member-tone-7{--member-bg:#e8f1fc;--member-edge:#819fbe}
.week-table [class*=member-tone-] .week-card,.week-table [class*=member-tone-] .week-range{background:var(--member-bg);border-color:var(--member-edge);border-left-color:var(--member-edge);color:#2c4054}.week-table [class*=member-tone-] .member-avatar{box-shadow:0 0 0 2px var(--member-edge)}.week-table [class*=member-tone-] .member-cell b{border-left:3px solid var(--member-edge);padding-left:6px}.week-table .week-card.from-ceo,.week-table .week-range.from-ceo{border-left-color:#a086c2!important}.week-table .week-card:has(.wc-status.late){background:#fff0e3;border-color:#ed9657}.compact-source{display:none;font-style:normal;font-size:9px;line-height:12px;color:#80629e;background:#eee6f6;border-radius:3px;padding:1px 3px;flex-shrink:0}.density-compact .compact-source{display:block}.density-compact .week-range{display:flex;align-items:center;gap:5px}.density-compact .week-range strong{flex:1;min-width:0}

.week-extras [class*=member-tone-] .week-card{background:var(--member-bg);border-color:var(--member-edge);border-left-color:var(--member-edge);color:#2c4054}.week-extras [class*=member-tone-]>b{border-left:3px solid var(--member-edge);padding-left:6px}

.week-table td[data-plan-date]{position:relative}.plan-cell-add{position:absolute;right:3px;bottom:2px;z-index:2;font-size:11px;padding:1px 4px;background:#fff;border:1px solid #d9e1e7;border-radius:4px;opacity:0}.week-table td:hover>.plan-cell-add,.plan-cell-add:focus-visible{opacity:1}@media(hover:none){.plan-cell-add{opacity:1}}
.project-stage-caption{font-size:12px;color:#657a94}.project-stage-track{display:flex;list-style:none;padding:16px 0 10px;margin:0;gap:0}.project-stage-track li{position:relative;flex:1;min-width:0;text-align:center;color:#8794a5;font-size:13px;display:flex;align-items:center;flex-direction:column;gap:6px}.project-stage-track li:before{content:'';position:absolute;top:13px;left:-50%;width:100%;height:2px;background:#dce4ed;z-index:0}.project-stage-track li:first-child:before{display:none}.stage-node{position:relative;z-index:1;border:2px solid #d3dfec;border-radius:50%;width:28px;height:28px;background:#fff;line-height:24px;font-weight:600}.project-stage-track .confirmed .stage-node{background:#e5f0fa;border-color:#99b7d8;color:#527aa4}.project-stage-track .current{color:#295b94;font-weight:600}.project-stage-track .current .stage-node{border-color:#5c8fc4;box-shadow:0 0 0 4px #e5eff9}.project-stage-track small{font-size:10px;font-weight:400}.report-day{padding:10px 0;border-bottom:1px solid #e4eaf1}.report-day h3{font-size:15px;margin:0 0 5px}.report-day p{margin:4px 0}
body.personal-week:has(.solo-week) .shell{max-width:none;padding-left:24px;padding-right:24px}body.personal-week:has(.solo-week) #navigation{margin-bottom:12px}.solo-week .week-scroll{min-height:0;max-height:none}.solo-week .week-table{display:block;min-width:0!important;width:100%}.solo-week colgroup,.solo-week .member-cell,.solo-week .member-head{display:none!important}.solo-week .week-table thead,.solo-week .week-table tbody{display:block}.solo-week .week-table thead tr,.solo-week .week-table tbody>tr:not(.person-range-row){display:grid;grid-template-columns:repeat(7,minmax(0,1fr));align-items:start}.solo-week .week-table.workdays thead tr,.solo-week .week-table.workdays tbody>tr:not(.person-range-row){grid-template-columns:repeat(5,minmax(0,1fr))}.solo-week .week-table th,.solo-week .week-table td{width:auto!important;min-width:0}.solo-week .week-table td{height:auto}.solo-week .person-range-row{display:block}.solo-week .person-range-row>td{display:block}.solo-week .range-track{grid-template-columns:repeat(7,minmax(0,1fr))!important}.solo-week .range-track.workdays{grid-template-columns:repeat(5,minmax(0,1fr))!important}.solo-week .week-title{align-items:flex-start}.solo-week .week-controls{justify-content:flex-end}.solo-week .week-extras[hidden]{display:none!important}@media(max-width:1000px){.solo-week .week-table{min-width:980px!important}}
