.timesheetShell{max-width:none;padding-left:18px;padding-right:18px}.topnav a{text-decoration:none}.tsHero{display:flex;justify-content:space-between;align-items:flex-end}.syncBadge{padding:9px 12px;border:1px solid #cfe5d7;background:var(--soft);color:var(--g);border-radius:999px;font-size:11px;font-weight:850}.tsFilters{display:grid;grid-template-columns:150px minmax(220px,.8fr) minmax(210px,1fr) minmax(210px,1fr) minmax(240px,1fr) auto;gap:10px;align-items:end;background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px;margin-bottom:14px}.tsFilters label{display:block;font-size:10px;font-weight:850;color:var(--muted);margin-bottom:6px;text-transform:uppercase}.tsFilters input,.tsFilters select,.multi summary{width:100%;border:1px solid var(--line);border-radius:9px;padding:10px;background:#fff;box-sizing:border-box}.checks{display:flex;gap:6px;min-height:38px}.checks label{margin:0;padding:9px 10px;border:1px solid var(--line);border-radius:9px;text-transform:none;font-size:10px;white-space:nowrap}.checks input{width:auto;margin-right:4px}.multi{position:relative}.multi summary{cursor:pointer;list-style:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.multi summary::-webkit-details-marker{display:none}.multi summary:after{content:'▾';float:right;color:var(--muted)}.multi[open] summary:after{content:'▴'}.multiPanel{position:absolute;z-index:20;top:44px;left:0;min-width:280px;max-height:320px;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 34px rgba(15,45,28,.16);padding:8px}.multiPanel button{width:100%;border:0;background:var(--soft);color:var(--g);font-weight:800;text-align:left;padding:8px;border-radius:8px;margin-bottom:5px}.multiPanel label{display:flex;align-items:flex-start;gap:7px;margin:0;padding:7px 5px;text-transform:none;font-size:11px;cursor:pointer}.multiPanel label:hover{background:#f5f8f6}.multiPanel input{width:auto;margin-top:1px}.matrixPanel{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}.matrixHead{display:flex;justify-content:space-between;align-items:end;padding:16px;border-bottom:1px solid var(--line)}.matrixHead h2{margin:2px 0 0}.legend{display:flex;gap:14px;font-size:10px;color:var(--muted)}.legend span{display:flex;align-items:center;gap:5px}.legend i{width:10px;height:10px;border-radius:3px}.legend .sat{background:#dff0fb}.legend .sun{background:#fbe2e1}.legend .warn{background:#ffd7a3}.matrixWrap{overflow:auto;max-height:68vh}.tsTable{border-collapse:separate;border-spacing:0;min-width:100%;font-size:11px}.tsTable th,.tsTable td{border-right:1px solid #e7ece9;border-bottom:1px solid #e7ece9;padding:7px;text-align:center;white-space:nowrap}.tsTable thead th{position:sticky;top:0;z-index:4;background:#f7faf8}.tsTable .employee{position:sticky;left:0;z-index:3;text-align:left;background:#fff;min-width:235px;max-width:235px}.tsTable thead .employee{z-index:6;background:#f7faf8}.employee b{display:block;font-size:11px}.employee span{display:block;color:var(--muted);font-size:9px;margin-top:2px;overflow:hidden;text-overflow:ellipsis}.dayHead b{display:block;font-size:12px}.dayHead span{font-size:8px;color:var(--muted);text-transform:uppercase}.satCol{background:#eef8fe!important}.sunCol{background:#fff0ef!important}.hourCell{cursor:pointer;font-weight:850;min-width:43px}.hourCell:hover{box-shadow:inset 0 0 0 2px #6eb48a}.hourCell.empty{color:#a8b2ac;font-weight:500}.hourCell.warn{background:#fff1dc!important;color:#8d4a00}.totalCol{font-weight:900;background:#f1f7f3!important}.detailFacts{display:grid;grid-template-columns:1fr 1fr;gap:9px}.detailFact{padding:11px;border:1px solid var(--line);border-radius:10px}.detailFact span{display:block;color:var(--muted);font-size:9px;text-transform:uppercase}.detailFact b{display:block;margin-top:4px;font-size:12px}.entryDetail{border:1px solid var(--line);border-radius:12px;padding:12px;margin-bottom:9px}.entryDetail h3{margin:0 0 7px;font-size:13px}.entryDetail p{margin:3px 0;color:var(--muted);font-size:11px}.tagRow{display:flex;gap:5px;flex-wrap:wrap;margin-top:8px}.tag{padding:4px 7px;border-radius:999px;background:var(--soft);color:var(--g);font-size:9px;font-weight:850}@media(max-width:900px){.tsFilters{grid-template-columns:1fr}.tsFilters>div,.tsFilters .btn{grid-column:1/-1}.checks{flex-wrap:wrap}.tsHero{align-items:flex-start;flex-direction:column;gap:12px}.matrixHead{align-items:flex-start;flex-direction:column;gap:10px}.tsTable .employee{min-width:175px;max-width:175px}}