*{box-sizing:border-box}html{background:var(--bs-tertiary-bg,#f8f9fa);min-width:320px}body{background:var(--bs-tertiary-bg,#f8f9fa);min-height:100vh;color:var(--bs-body-color,#212529);font-variant-numeric:tabular-nums;margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Noto Sans TC,Microsoft JhengHei,monospace}.access-gate{place-items:center;min-height:100vh;display:grid}.access-gate .card{width:min(100%,38rem)}button,input,select{font:inherit}.app-navbar{z-index:1030;position:sticky;top:0}.app-title{letter-spacing:.01em;font-size:1.05rem}.app-main{padding-bottom:4rem}.view-nav{scrollbar-width:thin;overflow-x:auto}.view-nav .nav{min-width:max-content}.stat-card{height:100%;box-shadow:var(--bs-box-shadow-sm);border:0}.stat-card .card-body{min-height:130px}.stat-value{margin-top:.4rem;font-size:clamp(1.35rem,3vw,1.8rem);font-weight:700;line-height:1.2}.section-card{box-shadow:var(--bs-box-shadow-sm);border:0}.section-card .card-header{border-bottom-color:var(--bs-border-color);background:var(--bs-body-bg);font-weight:600}.data-pair{border-bottom:1px solid var(--bs-border-color);justify-content:space-between;gap:1rem;padding:.7rem 0;display:flex}.data-pair:last-child{border-bottom:0}.data-pair dt{color:var(--bs-secondary-color);font-weight:500}.data-pair dd{text-align:right;margin:0;font-weight:600}.clickable-row{cursor:pointer}.clickable-row:focus-visible{outline:3px solid rgba(var(--bs-primary-rgb), .35);outline-offset:-3px}.table-sticky thead th{z-index:2;background:var(--bs-tertiary-bg);white-space:nowrap;position:sticky;top:56px}.worklog-table{table-layout:fixed;width:100%;min-width:760px}.worklog-table th,.worklog-table td{white-space:normal;overflow-wrap:anywhere;word-break:break-word}.worklog-col-hours{width:9%}.worklog-col-category{width:18%}.worklog-col-name{width:24%}.worklog-col-description{width:49%}.worklog-links{white-space:nowrap}.worklog-table-shell{padding:.75rem}.worklog-table-shell .worklog-table{border:1px solid var(--bs-border-color)}.has-worklog-preview{cursor:pointer}.worklog-preview-popover{z-index:1080;pointer-events:none;padding:.75rem;overflow:hidden}.worklog-preview-table-wrap{border:1px solid var(--bs-border-color);border-radius:var(--bs-border-radius);flex:auto;min-height:0;overflow:hidden}.worklog-preview-table{table-layout:fixed;width:100%;font-size:.875rem}.worklog-table>:not(caption)>*>*,.worklog-preview-table>:not(caption)>*>*{overflow-wrap:anywhere;padding:.7rem .8rem}.worklog-preview-table th:first-child{width:11%}.worklog-preview-table th:nth-child(2){width:20%}.worklog-preview-table th:nth-child(3){width:27%}.worklog-preview-table th:nth-child(4){width:42%}.progress{min-width:9rem}.calendar-scroll{overflow-x:auto}.calendar{min-width:790px}.calendar-weekdays,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-grid{grid-auto-rows:1fr}.calendar-weekday{border:1px solid var(--bs-border-color);background:var(--bs-tertiary-bg);color:var(--bs-secondary-color);text-align:center;border-bottom:0;padding:.65rem;font-size:.875rem;font-weight:600}.calendar-cell{border:1px solid var(--bs-border-color);background:var(--bs-body-bg);height:100%;min-height:138px;color:var(--bs-body-color);text-align:left;flex-direction:column;justify-content:flex-start;align-items:stretch;padding:.65rem;display:flex}.calendar-cell .badge{white-space:normal;text-align:left;align-self:flex-start;max-width:100%;line-height:1.35}.status-badge{white-space:normal;text-align:left;max-width:100%;line-height:1.35}button.calendar-cell:hover{z-index:1;border-color:var(--bs-primary);background:var(--bs-primary-bg-subtle);position:relative}button.calendar-cell:focus-visible{z-index:2;outline:3px solid rgba(var(--bs-primary-rgb), .35);outline-offset:-3px;position:relative}.calendar-cell.is-empty{background:var(--bs-tertiary-bg)}.calendar-day{margin-bottom:.55rem;font-weight:700;display:block}.calendar-rest-status{flex:1;align-items:flex-start;display:flex}.calendar-metric{grid-template-columns:2.8rem minmax(0,1fr);align-items:start;column-gap:.4rem;margin-top:.22rem;font-size:.82rem;display:grid}.calendar-metric>strong{text-align:right}.calendar-note-text{overflow-wrap:anywhere;min-width:0;line-height:1.35}.monthly-worklog-day,#monthly-worklog-list{scroll-margin-top:5rem}.loading-panel{min-height:320px}.empty-panel{color:var(--bs-secondary-color);text-align:center;padding:4rem 1rem}.account-summary{min-width:12rem}.member-table{table-layout:fixed;min-width:860px}.member-table th:first-child,.member-table td:first-child{overflow-wrap:anywhere;width:28%}.member-table th:nth-child(2),.member-table td:nth-child(2){width:14%}.member-table th:nth-child(3),.member-table td:nth-child(3){width:28%}.member-table th:nth-child(4),.member-table td:nth-child(4){width:16%}.member-table th:nth-child(5),.member-table td:nth-child(5){width:14%}.filter-collapse{display:block}.back-to-top{z-index:1040;width:3rem;height:3rem;box-shadow:var(--bs-box-shadow);place-items:center;padding:0;font-size:1.4rem;line-height:1;display:grid;bottom:1.25rem;right:1.25rem}@media (width>=992px){.filter-collapse.collapse:not(.show){display:block}}@media (width<=991.98px){.filter-collapse:not(.show){display:none}.table-sticky thead th{top:54px}}@media (width<=575.98px){.app-title{max-width:12rem}.calendar{min-width:700px}.calendar-cell{min-height:126px}.back-to-top{bottom:1rem;right:1rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
