.grid-card{grid-template-columns:minmax(0,1fr);width:100%;display:grid;position:relative}.grid-toolbar{justify-content:space-between;align-items:center;gap:var(--spacing-space-3);min-height:64px;padding:var(--spacing-space-3) var(--spacing-space-6);border-bottom:1px solid var(--color-border);flex-wrap:wrap;display:flex}.grid-toolbar[data-selecting]{background:var(--color-selection-tint)}.grid-tools{flex:1;min-width:0}.grid-tools .toolbar{margin:0}.grid-selection{align-items:center;gap:var(--spacing-space-2);flex-wrap:wrap;display:flex}.grid-count{font:var(--text-label);margin-right:var(--spacing-space-2)}.grid-status{align-items:center;gap:var(--spacing-space-2);font:var(--text-body-sm);color:var(--color-muted-foreground);display:inline-flex}.grid-status .loader{color:var(--color-selection)}.grid-scroll{min-height:280px;max-height:calc(100vh - 260px);overflow:auto}.grid-table{border-collapse:separate;border-spacing:0;font:var(--text-body-base);min-width:100%}.grid-table th,.grid-table td{border-bottom:1px solid var(--color-border)}.grid-table thead th{z-index:2;background:var(--color-card);padding:var(--spacing-space-2) 2px;font:var(--text-label-xs);color:var(--color-muted-foreground);text-align:center;vertical-align:bottom;position:sticky;top:0}.grid-table .grid-emp-h,.grid-table .grid-emp{z-index:1;background:var(--color-card);box-shadow:1px 0 0 var(--color-border);text-align:left;padding:6px var(--spacing-space-4) 6px var(--spacing-space-6);min-width:220px;max-width:260px;position:sticky;left:0}.grid-table thead .grid-emp-h{z-index:3}.grid-dow{font-weight:400;display:block}.grid-date{font:var(--text-label);color:var(--color-foreground);display:block}.grid-day.is-holiday .grid-date{color:var(--color-primary)}.grid-holiday{-webkit-line-clamp:3;margin-inline:auto;width:64px;font:400 11px/1.25 var(--font-body);color:var(--color-muted-foreground);-webkit-box-orient:vertical;margin-top:2px;display:-webkit-box;overflow:hidden}.grid-holiday b{color:var(--color-foreground);font-weight:600}.grid-emp-name{max-width:220px;font:var(--text-label);color:var(--color-foreground);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.grid-emp-sub{font:var(--text-body-sm);color:var(--color-muted-foreground);display:block}.grid-td{vertical-align:top;padding:3px 2px}.grid-cell{width:100%;min-height:48px;padding:var(--spacing-space-1);border:1px solid var(--color-border);border-radius:var(--rounded-radius-sm);background:var(--color-card);color:var(--color-foreground);font:var(--text-label-xs);font-variant-numeric:tabular-nums;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:2px;display:flex;position:relative}@media (hover:hover){.grid-cell:hover{border-color:var(--color-selection)}}.grid-cell:focus-visible{outline:2px solid var(--color-ring);outline-offset:1px}.grid-cell.is-rest{background:var(--color-muted);color:var(--color-muted-foreground);border-color:#0000}.grid-cell.is-hatched{background:repeating-linear-gradient(-45deg, var(--color-card) 0 4px, var(--color-warning-tint) 4px 8px);border:1px dashed var(--color-warning)}.grid-cell.is-hand-set:before{content:"";border-top:8px solid var(--color-marker);border-top-left-radius:var(--rounded-radius-sm);border-right:8px solid #0000;position:absolute;top:0;left:0}.grid-cell:disabled{opacity:.4;cursor:default;pointer-events:none}.grid-td.is-selected .grid-cell{background:var(--color-selection-tint);border-color:var(--color-selection)}.grid-flag{stroke-width:2.25px;width:12px;height:12px;position:absolute;top:3px;right:3px}.grid-flag.is-warning{color:var(--color-warning)}.grid-flag.is-error{color:var(--color-error)}.is-schedule .grid-td{min-width:58px}.grid-shift{font:var(--text-heading-sm);line-height:1.1}.grid-hours{font:400 11px/1.2 var(--font-body);color:var(--color-muted-foreground)}.is-attendance .grid-td{min-width:104px}.is-attendance .grid-holiday{width:96px}.is-attendance .grid-cell{justify-content:flex-start;align-items:stretch;min-height:64px}.grid-faint{font:400 11px/1.2 var(--font-body);color:var(--color-muted-foreground);text-align:left;padding:0 2px}.grid-entries{justify-items:start;gap:2px;display:grid}.is-schedule .grid-entries{justify-items:center}.grid-totals-h,.grid-totals{min-width:200px;padding:6px var(--spacing-space-6) 6px var(--spacing-space-4);font:var(--text-body-sm);color:var(--color-muted-foreground);vertical-align:middle;text-align:left!important}.grid-table tfoot{z-index:2;position:sticky;bottom:0}.grid-table tfoot th,.grid-table tfoot td{background:var(--color-muted);border-bottom:0}.grid-table tfoot tr:first-child th,.grid-table tfoot tr:first-child td{border-top:1px solid var(--color-input)}.grid-table tfoot .grid-emp{background:var(--color-muted);font:var(--text-label);z-index:2}.grid-sum{text-align:center;font:var(--text-label-xs);font-variant-numeric:tabular-nums;color:var(--color-foreground);padding:6px 2px}.grid-table tbody tr:last-child th,.grid-table tbody tr:last-child td{border-bottom:0}@media (width<=767px){.grid-toolbar{padding:var(--spacing-space-3) var(--spacing-space-4)}.grid-table .grid-emp-h,.grid-table .grid-emp{min-width:0;padding-left:var(--spacing-space-4)}.grid-emp-name{max-width:116px}}.grid-card[data-painting] .grid-cell{cursor:crosshair}.grid-td.is-painted .grid-cell{border-style:dashed;border-color:var(--color-primary);background:var(--color-selection-tint);color:var(--color-foreground)}.grid-td.has-popover{z-index:4;position:relative}.grid-cell.is-open{border-color:var(--color-selection);box-shadow:0 0 0 1px var(--color-selection)}.grid-popover{z-index:5;gap:var(--spacing-space-3);width:320px;padding:var(--spacing-space-4);text-align:left;font:var(--text-body-sm);background:var(--color-popover);color:var(--color-popover-foreground);border-radius:var(--rounded-radius-lg);box-shadow:var(--elevation-3);display:grid;position:absolute;top:calc(100% - 2px);left:0}.grid-popover.is-end{left:auto;right:0}.grid-popover-title{font:var(--text-label)}@media (width<=767px){.grid-popover,.grid-popover.is-end{width:auto;padding:var(--spacing-space-6) var(--spacing-space-4) var(--spacing-space-5);border-radius:var(--rounded-radius-xl) var(--rounded-radius-xl) 0 0;position:fixed;inset:auto 0 0}}.grid-head-select{border-radius:var(--rounded-radius-sm);width:100%;font:inherit;color:inherit;text-align:inherit;cursor:pointer;background:0 0;border:0;margin:0;padding:0;display:block}.grid-head-select:focus-visible{outline:2px solid var(--color-ring);outline-offset:2px}@media (hover:hover){.grid-head-select:hover .grid-date,.grid-head-select:hover .grid-emp-name{color:var(--color-primary)}}
