.real-week-chart .week-range{margin:0 20px 12px;font-size:11px;line-height:1.6;color:var(--muted)}.real-week-chart .section-head{gap:8px}.real-week-chart .text-btn{min-width:44px;min-height:44px}.weekly-columns{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;padding:0 20px}.weekly-column{min-width:0;text-align:center}.weekly-stack{height:130px;display:flex;flex-direction:column;justify-content:flex-end;border-bottom:1px solid var(--line);overflow:hidden;border-radius:4px 4px 0 0}.weekly-stack span{display:block;flex:none}.weekly-regular{background:var(--primary)}.weekly-overtime{background:#8654f3}.weekly-column small{display:block;margin-top:8px;font-size:10px;color:var(--muted)}.week-empty{margin:12px 20px;font-size:12px;color:var(--muted);line-height:1.5}.weekly-details{padding:0 16px 16px;overflow-x:auto}.weekly-details table{width:100%;border-collapse:collapse;font-size:11px;font-variant-numeric:tabular-nums}.weekly-details caption{text-align:left;padding:8px 0;font-weight:700}.weekly-details th,.weekly-details td{text-align:left;padding:8px 4px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.weekly-details th small{display:block;color:var(--muted);font-weight:400;font-size:9px}
