:root{--bg:#eef1f5;--surface:#fff;--surface-2:#e3e8ef;--border:#d3dae3;--border-strong:#b8c2cf;--text:#1f2937;--text-muted:#4b5563;--text-faint:#586775;--accent:#2563eb;--accent-hover:#1d4ed8;--accent-faint:#dbeafe;--accent-on-faint:#1d4ed8;--good:#166534;--good-faint:#dcfce7;--warn:#92400e;--warn-faint:#fef3c7;--danger:#b91c1c;--danger-faint:#fee2e2;--shadow-sm:0 1px 2px #0f172a0d;--shadow-md:0 4px 12px #0f172a14;--shadow-lg:0 12px 32px #0f172a1f;--shadow-card:0 1px 3px #0f172a14, 0 1px 2px #0f172a0a;--shadow-card-hover:0 4px 10px #0f172a1a;--on-accent:#fff;--toggle-thumb:#fff;--login-gradient:linear-gradient(135deg, #eef2ff 0%, #f8fafc 100%);--overlay-bg:#f6f8fbbf;--banner-dismiss-hover:#fff6;--brand-mark-ring:#0f172a1f;--scrim:#0f172a59;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--font-body:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, "Cascadia Mono", "SF Mono", Menlo, Consolas, "Liberation Mono", monospace}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#12161c;--surface-2:#1b2028;--surface:#232a33;--border:#2e3742;--border-strong:#414d5c;--text:#e6eaf0;--text-muted:#adb8c6;--text-faint:#8b97a6;--accent:#60a5fa;--accent-hover:#93c5fd;--accent-faint:#1c3a5e;--accent-on-faint:#60a5fa;--good:#4ade80;--good-faint:#14351f;--warn:#fbbf24;--warn-faint:#3d2f0b;--danger:#f87171;--danger-faint:#401b1b;--shadow-sm:0 1px 2px #0006;--shadow-md:0 4px 12px #00000073;--shadow-lg:0 12px 32px #0000008c;--shadow-card:0 1px 3px #00000073, 0 1px 2px #0000004d;--shadow-card-hover:0 4px 10px #00000080;--on-accent:#12161c;--toggle-thumb:#e6eaf0;--login-gradient:linear-gradient(135deg, #171d26 0%, #10141a 100%);--overlay-bg:#12161cbf;--banner-dismiss-hover:#ffffff1f;--brand-mark-ring:#ffffff38;--scrim:#0000008c}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.5}button{font-family:inherit}.btn{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;padding:6px 12px;font-size:13px;font-weight:500;transition:background .12s,border-color .12s,color .12s,box-shadow .12s;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.btn-ghost{color:var(--text);border-color:var(--border-strong);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--surface-2);border-color:var(--accent);color:var(--accent)}.btn-count{background:var(--accent-faint);color:var(--accent-on-faint);font-family:var(--font-mono);vertical-align:1px;border-radius:999px;margin-left:6px;padding:0 5px;font-size:11px;font-weight:600;line-height:16px;display:inline-block}.btn-ghost:hover:not(:disabled) .btn-count{background:var(--accent);color:var(--on-accent)}.btn-icon{width:32px;padding:8px 0;font-size:16px;line-height:1}.btn-primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent);box-shadow:var(--shadow-sm)}.btn-primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.btn-large{padding:12px 20px;font-size:15px}.login-screen{background:var(--login-gradient);min-height:100vh;padding:var(--space-5);place-items:center;display:grid}.login-card{background:var(--surface);padding:var(--space-6);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);text-align:center;width:100%;max-width:420px}.login-card h1{margin:0 0 var(--space-2);font-size:28px}.login-card p{color:var(--text-muted);margin:0 0 var(--space-5)}.board-shell{flex-direction:column;height:100dvh;min-height:0;display:flex;overflow:hidden}.topbar{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-5);background:var(--surface);border-bottom:1px solid var(--border);z-index:10;display:flex;position:sticky;top:0}.topbar-left,.topbar-right{align-items:center;gap:var(--space-3);display:flex}.app-title{letter-spacing:-.01em;margin:0;font-size:18px;font-weight:700}.brand-mark{width:26px;height:26px;box-shadow:0 0 0 1px var(--brand-mark-ring);border-radius:50%;flex:none;display:block}.sidebar-toggle-glyph{flex:none;display:block}.week-nav{align-items:center;gap:var(--space-1);padding-left:var(--space-3);border-left:1px solid var(--border);display:flex}.week-range{margin-left:var(--space-3);color:var(--text-muted);font-weight:500}.week-total{color:var(--text-muted);font-family:var(--font-mono);font-size:13px}.week-total strong{color:var(--text);font-weight:500}.weekend-chip{margin-left:var(--space-2);font-family:var(--font-body);border-radius:var(--radius-sm);background:var(--warn-faint);color:var(--warn);white-space:nowrap;border:0;padding:1px 6px;font-size:11px;font-weight:600;display:inline-block}.weekend-chip-action{cursor:pointer}.weekend-chip-action:hover{background:var(--warn);color:var(--on-accent)}.theme-switch{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;align-items:center;gap:2px;padding:2px;display:inline-flex}.theme-switch-btn{width:28px;height:28px;color:var(--text-faint);cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:background .12s,color .12s;display:inline-flex}.theme-switch-btn:hover{color:var(--text)}.theme-switch-btn.is-active{background:var(--surface);color:var(--accent);box-shadow:var(--shadow-sm)}.theme-switch-btn svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.theme-switch-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.current-user{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);background:var(--surface-2);border:1px solid var(--border);max-width:220px;display:flex}.current-user-avatar{background:var(--accent);width:28px;height:28px;color:var(--on-accent);letter-spacing:.02em;border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:inline-flex}.current-user-text{flex-direction:column;min-width:0;line-height:1.15;display:flex}.current-user-name{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.current-user-email{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.banner{padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--border);font-size:13px}.banner-error{background:var(--danger-faint);color:var(--danger)}.banner-warn{background:var(--warn-faint);color:var(--warn)}.layout{grid-template-columns:var(--sidebar-width,240px) auto 1fr;flex:1;min-height:0;display:grid}.layout.is-sidebar-hidden{grid-template-columns:1fr}.sidebar{border-right:1px solid var(--border);background:var(--surface);padding:var(--space-4);gap:var(--space-5);flex-direction:column;min-width:0;display:flex;overflow-y:auto}.sidebar-section h3{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin:0;font-size:12px}.sidebar-section-toggle{align-items:center;gap:var(--space-2);width:100%;margin:0 0 var(--space-2);cursor:pointer;text-align:left;color:inherit;background:0 0;border:0;padding:2px 0;display:flex}.sidebar-section-toggle:hover h3{color:var(--text)}.sidebar-section-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}.sidebar-caret{color:var(--text-faint);flex:none;width:10px;font-size:9px}.sidebar-section-count{font-family:var(--font-mono);color:var(--text-faint);background:var(--surface-2);border-radius:999px;flex:none;margin-left:auto;padding:1px 6px;font-size:10px}.sidebar-section.is-collapsed .sidebar-section-toggle{margin-bottom:0}.sidebar-resizer{cursor:col-resize;z-index:2;touch-action:none;background:0 0;flex:none;align-self:stretch;width:9px;margin-left:-4px;margin-right:-4px;position:relative}.sidebar-resizer:after{content:"";background:0 0;transition:background .12s;position:absolute;inset:0 4px}.sidebar-resizer:hover:after,.sidebar-resizer.is-dragging:after,.sidebar-resizer:focus-visible:after{background:var(--accent)}.sidebar-resizer:focus-visible{outline:none}body.is-resizing-sidebar{cursor:col-resize}body.is-resizing-sidebar *{-webkit-user-select:none!important;user-select:none!important}.sidebar-hint,.empty{margin:0 0 var(--space-3);color:var(--text-faint);font-size:12px}.top-codes{gap:var(--space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.top-code-btn{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);cursor:pointer;text-align:left;justify-content:space-between;align-items:center;width:100%;padding:6px 8px;transition:background .12s,border-color .12s;display:flex}.top-code-btn:hover{background:var(--surface-2);border-color:var(--border-strong)}.top-code-label{font-family:var(--font-mono);color:var(--text);font-size:12px;font-weight:500}.top-code-count{font-family:var(--font-mono);color:var(--text-faint);background:var(--surface-2);border-radius:999px;padding:1px 6px;font-size:11px}.top-entries{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.top-entry-btn{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);cursor:grab;text-align:left;flex-direction:column;gap:2px;width:100%;min-width:0;padding:6px 8px;transition:background .12s,border-color .12s;display:flex}.top-entry-btn:hover{background:var(--surface-2);border-color:var(--border-strong)}.top-entry-activity{font-family:var(--font-body);color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.top-entry-project{font-family:var(--font-body);color:var(--text-faint);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.top-entry-bottom{font-family:var(--font-mono);align-items:center;gap:6px;font-size:11px;display:flex;overflow:hidden}.top-entry-code{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:600;overflow:hidden}.top-entry-count{color:var(--text-faint);background:var(--surface-2);border-radius:999px;flex-shrink:0;margin-left:auto;padding:0 6px}.top-code-btn{cursor:grab}.tips{gap:var(--space-1);color:var(--text-muted);flex-direction:column;margin:0;padding:0;font-size:12px;list-style:none;display:flex}.tips li:before{content:"› ";color:var(--text-faint)}.board{padding:var(--space-4);min-height:0;position:relative;overflow:auto}.day-grid{gap:var(--space-3);grid-template-columns:repeat(5,minmax(220px,1fr));min-height:100%;display:grid}.day-grid.has-weekend{grid-template-columns:repeat(7,minmax(170px,1fr))}.day-column{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;min-height:320px;transition:border-color .12s,box-shadow .12s;display:flex;position:relative}.day-column.is-today{border-top:3px solid var(--accent);border-top-left-radius:var(--radius-md);border-top-right-radius:var(--radius-md)}.day-column.is-selected{outline:2px solid var(--border-strong);outline-offset:-1px}.day-column.is-over{border-color:var(--accent);background:var(--accent-faint)}.day-header{justify-content:space-between;align-items:center;gap:var(--space-2);padding:10px var(--space-3);background:var(--surface);border-bottom:1px solid var(--border);border-top-left-radius:var(--radius-md);border-top-right-radius:var(--radius-md);display:flex}.day-column.is-today .day-header{border-top-left-radius:0;border-top-right-radius:0}.day-label{color:var(--text);letter-spacing:.01em;flex-direction:column;min-width:0;font-size:13px;font-weight:700;display:flex}.day-column.is-today .day-label{color:var(--accent)}.day-column.is-weekend,.day-column.is-weekend .day-header{background:var(--surface-2)}.day-column.is-weekend .day-label{color:var(--text-muted);font-weight:600}.day-column.is-holiday .day-header{background:var(--warn-faint)}.day-column.is-holiday .day-label{color:var(--warn)}.day-holiday{letter-spacing:.02em;text-transform:uppercase;color:var(--warn);text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:600;overflow:hidden}.hours-badge{font-family:var(--font-mono);background:var(--surface-2);color:var(--text-muted);border-radius:999px;flex-shrink:0;padding:2px 8px;font-size:12px;font-weight:600}.hours-badge.good{background:var(--good-faint);color:var(--good)}.hours-badge.warn{background:var(--warn-faint);color:var(--warn)}.hours-badge.over{background:var(--danger-faint);color:var(--danger)}.day-body{gap:var(--space-2);padding:var(--space-3);background:var(--surface-2);border-bottom-left-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md);flex-direction:column;flex:1;display:flex}.add-entry-btn{z-index:1;background:var(--surface-2);color:var(--text-faint);border:1px dashed var(--border-strong);border-radius:var(--radius-sm);cursor:pointer;margin-top:auto;padding:6px 8px;font-size:12px;transition:color .12s,border-color .12s,background .12s;position:sticky;bottom:0}.add-entry-btn:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-faint)}.entry-card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);cursor:grab;box-shadow:var(--shadow-card);border-radius:8px;flex-direction:column;gap:6px;padding:10px 12px 8px;transition:border-color .12s,box-shadow .12s;display:flex;position:relative}.entry-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-card-hover)}.entry-card.is-new{border-left:3px solid var(--accent);padding-left:9px}.entry-card.is-dragging{cursor:grabbing}.entry-card.drag-overlay{box-shadow:var(--shadow-lg);cursor:grabbing}.entry-activity-preview{color:var(--text);white-space:pre-wrap;word-break:break-word;max-height:60px;padding:4px 6px;font-size:13px;overflow:hidden}.entry-overlay-code{font-family:var(--font-mono);color:var(--text-muted);font-size:12px}.entry-overlay-hours{font-family:var(--font-mono);color:var(--text);font-size:13px;font-weight:600}.delete-btn{width:22px;height:22px;color:var(--text-faint);border-radius:var(--radius-sm);cursor:pointer;opacity:0;z-index:2;background:0 0;border:0;font-size:16px;line-height:1;transition:opacity .12s,background .12s,color .12s;position:absolute;top:2px;right:2px}.entry-card:hover .delete-btn{opacity:1}.delete-btn:hover{background:var(--danger-faint);color:var(--danger)}.entry-activity-input{border-radius:var(--radius-sm);width:auto;color:var(--text);resize:none;background:0 0;border:1px solid #0000;min-height:22px;margin-right:25px;padding:4px 6px;font-family:inherit;font-size:13px;line-height:1.4;display:block;overflow:hidden}.entry-activity-input::placeholder{color:var(--text-faint)}.entry-activity-input:hover{background:var(--surface-2)}.entry-activity-input:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent);background:var(--surface)}.entry-project-row{display:flex}.combobox.combobox-project{width:200px;max-width:100%}.combobox-project .combobox-input{font-family:var(--font-body);color:var(--text-faint);font-size:11px}.combobox-project.is-open .combobox-input,.combobox-project .combobox-input:focus{color:var(--text)}.entry-meta-row{align-items:center;gap:6px;font-size:11px;display:flex}.entry-meta-left{flex:0 auto;align-items:center;gap:4px;min-width:0;margin-right:auto;display:flex}.entry-meta-right{flex-shrink:0;align-items:center;gap:2px;display:flex}.combobox.combobox-code{width:250px;max-width:100%}.combobox-code .combobox-input{color:var(--text);font-weight:600}.entry-hours-input{border:1px solid var(--border);border-radius:var(--radius-sm);width:64px;font-family:var(--font-mono);color:var(--text);background:var(--surface);text-align:right;padding:2px 4px;font-size:13px;font-weight:600}.entry-hours-input:hover{background:var(--surface-2)}.entry-hours-input:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent);background:var(--surface)}.entry-hours-suffix{font-family:var(--font-mono);color:var(--text-muted);font-size:12px;font-weight:600}.contract-icon{flex-shrink:0;display:block}.entry-warning{color:var(--warn);margin-top:2px;font-size:11px}.combobox{width:100%;font-family:var(--font-body);position:relative}.combobox.combobox-code{font-family:var(--font-mono)}.combobox-input{border-radius:var(--radius-sm);width:100%;color:var(--text-muted);cursor:pointer;text-overflow:ellipsis;background:0 0;border:1px solid #0000;padding:3px 18px 3px 6px;font-family:inherit;font-size:12px}.combobox-input:hover{background:var(--surface-2)}.combobox-input:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent);background:var(--surface);color:var(--text)}.combobox.is-warning .combobox-input{border-color:var(--warn);background:var(--warn-faint);color:var(--warn)}.combobox.is-open .combobox-input{background:var(--surface);border-color:var(--accent);color:var(--text)}.combobox-input::placeholder{color:var(--text-faint)}.combobox:after{content:"";border-left:3px solid #0000;border-right:3px solid #0000;border-top:4px solid var(--text-faint);pointer-events:none;width:0;height:0;position:absolute;top:50%;right:5px;transform:translateY(-50%)}.combobox.is-open:after{border-top:0;border-bottom:4px solid var(--text-muted)}.combobox-list{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);min-width:100%;max-width:260px;max-height:240px;box-shadow:var(--shadow-md);z-index:20;padding:2px 0;font-size:12px;position:absolute;top:calc(100% + 2px);left:0;overflow-y:auto}.combobox-item{cursor:pointer;flex-direction:column;gap:1px;padding:5px 10px;display:flex}.combobox-item.has-icon{column-gap:var(--space-2);grid-template-columns:auto 1fr;align-items:center;display:grid}.combobox-item.has-icon .combobox-icon{grid-row:1/span 2}.combobox-icon{width:14px;height:14px;display:block}.combobox-item.is-highlight{background:var(--accent-faint)}.combobox-item.is-selected .combobox-label{color:var(--accent);font-weight:600}.combobox-item.is-clear{border-bottom:1px solid var(--border);color:var(--text-faint);font-style:italic}.combobox-item.is-clear .combobox-label{font-family:var(--font-body)}.combobox-item.is-clear.is-highlight{background:var(--danger-faint);color:var(--danger)}.combobox-label{color:var(--text);font-family:inherit}.combobox-hint{font-family:var(--font-body);color:var(--text-faint);font-size:11px}.combobox-empty{color:var(--text-faint);text-align:center;padding:10px;font-size:12px}.loading-overlay{background:var(--overlay-bg);color:var(--text-muted);pointer-events:none;z-index:5;place-items:center;font-size:13px;display:grid;position:absolute;inset:0}.loading-fullscreen{padding:var(--space-6);color:var(--text-muted);flex:1;place-items:center;font-size:14px;display:grid}.day-grid.is-locked{pointer-events:none;opacity:.7;transition:opacity .12s}.banner{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.banner>span{flex:auto;min-width:0}.banner-action{flex:none;padding:4px 12px}.banner-dismiss{color:inherit;cursor:pointer;border-radius:var(--radius-sm);opacity:.7;background:0 0;border:0;padding:2px 8px;font-size:18px;line-height:1}.banner-dismiss:hover{opacity:1;background:var(--banner-dismiss-hover)}.entry-input.is-warning{border-color:var(--warn);background:var(--warn-faint)}.entry-warning{margin:-4px 0 var(--space-2);color:var(--warn);font-size:11px}.error-screen{min-height:100vh;padding:var(--space-5);background:var(--bg);place-items:center;display:grid}.error-card{background:var(--surface);padding:var(--space-6);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:520px}.error-card h1{margin:0 0 var(--space-3);font-size:22px}.error-card p{color:var(--text-muted);margin:0 0 var(--space-4)}.error-detail{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-3);margin:0 0 var(--space-5);font-family:var(--font-mono);color:var(--text);white-space:pre-wrap;word-break:break-word;max-height:200px;font-size:12px;overflow:auto}@media (width<=1024px){.layout{grid-template-columns:min(var(--sidebar-width,240px), 200px) auto 1fr}.day-grid{grid-template-columns:repeat(5,minmax(180px,1fr))}.day-grid.has-weekend{grid-template-columns:repeat(7,minmax(150px,1fr))}}@media (width<=768px){.layout{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--border)}.sidebar-resizer{display:none}.day-grid{grid-template-columns:repeat(5,240px)}.day-grid.has-weekend{grid-template-columns:repeat(7,240px)}}.panel-scrim{background:var(--scrim);opacity:0;pointer-events:none;z-index:40;transition:opacity .2s;position:fixed;inset:0}.panel-scrim.is-open{opacity:1;pointer-events:auto}.slide-panel{background:var(--surface);border-left:1px solid var(--border);width:380px;max-width:90vw;height:100%;box-shadow:var(--shadow-lg);visibility:hidden;z-index:41;flex-direction:column;transition:transform .22s,visibility 0s linear .22s;display:flex;position:fixed;top:0;right:0;transform:translate(100%)}.slide-panel.is-open{visibility:visible;transition:transform .22s,visibility linear;transform:translate(0)}.slide-panel-header{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.slide-panel-header h2{margin:0;font-size:18px}.panel-close{cursor:pointer;color:var(--text-muted);padding:0 var(--space-2);background:0 0;border:0;font-size:22px;line-height:1}.panel-close:hover{color:var(--text)}.slide-panel-body{padding:var(--space-5);flex:1;overflow-y:auto}.slide-panel-footer{padding:var(--space-4) var(--space-5);border-top:1px solid var(--border)}.slide-panel-footer .btn{justify-content:center;width:100%}.settings-section h3{margin:0 0 var(--space-4);font-size:15px}.settings-section+.settings-section{margin-top:var(--space-5);padding-top:var(--space-5);border-top:1px solid var(--border)}.settings-note{margin:var(--space-3) 0 0;color:var(--text-faint);font-size:11px}.quick-picks{gap:var(--space-1);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.quick-pick{flex:1 1 calc(20% - var(--space-1));min-width:84px;font-family:var(--font-mono);color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;padding:4px 6px;font-size:11px;transition:background .12s,border-color .12s,color .12s;overflow:hidden}.quick-pick:hover{border-color:var(--accent);color:var(--accent)}.quick-pick.is-active{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.quick-pick:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.cal-events{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.cal-day-group+.cal-day-group{margin-top:var(--space-3)}.cal-day-title{letter-spacing:.04em;text-transform:uppercase;color:var(--text-faint);margin:0 0 var(--space-1);font-size:10px;font-weight:600}.entry-link-row{align-items:center;gap:var(--space-2);margin-top:var(--space-2);min-width:0;display:flex}.entry-link-row .combobox{flex:1;min-width:0}.entry-unlink{color:var(--text-faint);cursor:pointer;background:0 0;border:0;flex:none;padding:0 2px;font-size:14px;line-height:1}.entry-unlink:hover{color:var(--danger)}.entry-link-icon{pointer-events:none;flex:none;width:14px;height:14px;display:block}.entry-ado-chip{border-radius:var(--radius-sm);background:var(--accent-faint);flex:1;align-items:baseline;gap:6px;min-width:0;padding:2px 6px;font-size:11px;display:inline-flex}.entry-ado-wid{font-family:var(--font-mono);color:var(--accent-on-faint);flex:none;font-weight:600}.entry-ado-title{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.entry-ado-chip.is-unresolved{background:var(--surface-2)}.entry-ado-chip.is-unresolved .entry-ado-wid{color:var(--text-muted)}.entry-ado-chip.is-unresolved .entry-ado-title{color:var(--text-faint);font-style:italic}.ado-project-filter{color:var(--text-muted);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);flex:none;max-width:90px;padding:2px 4px;font-family:inherit;font-size:11px}.cal-event-btn{text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:grab;width:100%;color:var(--text);flex-direction:column;gap:2px;padding:6px 8px;font-size:12px;display:flex}.cal-event-btn:hover{border-color:var(--accent);background:var(--accent-faint)}.cal-event-btn.is-dragging{opacity:.5}.cal-event-btn.is-imported{opacity:.6}.cal-event-top{justify-content:space-between;gap:var(--space-2);display:flex}.cal-event-time,.cal-event-hours{font-family:var(--font-mono);color:var(--text-faint);font-size:11px}.cal-event-subject{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cal-event-lock{font-size:10px}.cal-event-flag{color:var(--text-faint);font-size:10px;font-style:italic}.cal-tag{color:var(--text-faint);background:var(--surface-2);border-radius:var(--radius-sm);margin-left:var(--space-2);white-space:nowrap;padding:1px 5px;font-size:10px}.cal-tag-warn{color:var(--warn);background:var(--warn-faint)}.settings-note-warn{color:var(--warn);background:var(--warn-faint);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3)}.settings-note-warn code{font-family:var(--font-mono);font-size:10px}.settings-subfield{margin-top:var(--space-3);padding-left:var(--space-3);border-left:2px solid var(--border)}.combobox.combobox-default-project{width:100%}.settings-fields{gap:var(--space-4);margin:var(--space-4) 0;flex-direction:column;display:flex}.field{gap:var(--space-1);flex-direction:column;display:flex}.field-label{color:var(--text-muted);font-size:12px;font-weight:600}.text-input{border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);background:var(--surface);color:var(--text);font-family:inherit;font-size:14px}.text-input:focus{outline:2px solid var(--accent-faint);border-color:var(--accent)}.field-hint{color:var(--text-faint);margin-top:var(--space-1);font-size:11px;line-height:1.4}.field-hint code{font-family:var(--font-mono);font-size:10px}.field-hint-link{color:var(--accent);margin-top:var(--space-1);font-size:12px;text-decoration:none}.field-hint-link:hover{text-decoration:underline}.toggle-row{justify-content:space-between;align-items:center;gap:var(--space-3);cursor:pointer;font-weight:600;display:flex}.toggle-row+.toggle-row{margin-top:var(--space-3)}.toggle-label{flex-direction:column;min-width:0;display:flex}.toggle-hint{color:var(--text-faint);font-size:11px;font-weight:400}.toggle{display:inline-flex;position:relative}.toggle input{opacity:0;width:0;height:0;position:absolute}.toggle-track{background:var(--border-strong);border-radius:11px;width:40px;height:22px;transition:background .15s;display:inline-block;position:relative}.toggle-thumb{background:var(--toggle-thumb);width:18px;height:18px;box-shadow:var(--shadow-sm);border-radius:50%;transition:transform .15s;position:absolute;top:2px;left:2px}.toggle input:checked+.toggle-track{background:var(--accent)}.toggle input:checked+.toggle-track .toggle-thumb{transform:translate(18px)}.settings-actions{margin:var(--space-4) 0 var(--space-3)}.settings-status{color:var(--text-muted);font-size:13px}.status-dot.status-connected{color:var(--good);font-weight:600}.status-dot.status-off{color:var(--text-faint)}.status-dot.status-checking{color:var(--text-muted)}.slide-panel-wide{width:720px}.slide-panel-resizable{width:min(var(--summary-width,1040px), 96vw);max-width:96vw}.panel-resizer{cursor:col-resize;z-index:1;touch-action:none;width:9px;position:absolute;top:0;bottom:0;left:-4px}.panel-resizer:after{content:"";background:0 0;transition:background .12s;position:absolute;inset:0 4px}.panel-resizer:hover:after,.panel-resizer.is-dragging:after,.panel-resizer:focus-visible:after{background:var(--accent)}.panel-resizer:focus-visible{outline:none}.panel-header-actions{align-items:center;gap:var(--space-2);display:flex}.panel-hint{background:var(--surface-2);color:var(--text-muted);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-4);align-items:center;gap:var(--space-2);flex-wrap:wrap;font-size:13px;display:flex}.panel-hint-warn{background:var(--warn-faint);color:var(--warn)}.month-cols{gap:var(--space-5);grid-template-columns:1fr 1fr;display:grid}.slide-panel-resizable .slide-panel-body{container-type:inline-size}@container (width<=860px){.month-cols{grid-template-columns:1fr}}.month-title{margin:0 0 var(--space-3);font-size:15px}.month-partial{color:var(--text-faint);font-weight:400}.month-table{border-collapse:collapse;width:100%;font-size:13px}.month-table th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--text-faint);padding-bottom:var(--space-1);border-bottom:1px solid var(--border);font-size:11px;font-weight:600}.month-table td{border-bottom:1px solid var(--border);padding:5px 0}.month-code{word-break:break-all}.month-num{text-align:right;font-family:var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap;padding-left:var(--space-3)}.month-table tfoot td{border-bottom:0;border-top:2px solid var(--border-strong);font-weight:700}.month-empty{color:var(--text-faint);font-style:italic}.month-match{color:var(--good)}.month-mismatch{color:var(--danger);font-weight:600}.month-muted{color:var(--text-faint)}.month-row-jira-only{background:var(--warn-faint)}.month-row-jira-only .month-code{font-style:italic}.month-row-nojira .month-code{color:var(--text-muted)}.month-table tfoot tr.month-row-compare td{border-top:1px solid var(--border);font-weight:600}.month-table tfoot tr.month-row-compare td:first-child{color:var(--text-muted);font-size:12px;font-weight:400}.month-jira-note{margin:var(--space-2) 0 0;color:var(--warn);font-size:12px}.jira-detail{margin-top:var(--space-3)}.jira-detail-table{margin-top:var(--space-2);font-size:12px}.jira-detail-table td,.jira-detail-table th{padding:3px 0}.jira-detail-table .month-num{padding-left:var(--space-2)}.jira-detail-jql{margin-top:var(--space-2);color:var(--text-muted);font-size:11px}.jira-detail-jql-head{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.jira-detail-jql-note{margin:var(--space-1) 0 0;color:var(--text-faint);font-size:11px;line-height:1.45}.jira-detail-jql-note code{color:inherit;background:0 0;margin:0;padding:0 2px;font-size:11px;display:inline}.jira-detail-jql>code{padding:var(--space-2);background:var(--surface-2);border-radius:var(--radius-sm);font-family:var(--font-mono);color:var(--text);overflow-wrap:anywhere;white-space:pre-wrap;margin-top:4px;font-size:11px;display:block}.month-check{margin-top:var(--space-3);color:var(--text-muted);font-size:12px}.month-entry-count{color:var(--text-faint);margin-top:2px}.month-gaps{margin-top:var(--space-2)}.month-holiday-note{color:var(--warn);cursor:help;border-bottom:1px dotted;font-weight:600}.month-chip{border-radius:var(--radius-sm);white-space:nowrap;padding:1px 6px;font-weight:600;display:inline-block}.month-chip-good{background:var(--good-faint);color:var(--good)}.month-chip-warn{background:var(--warn-faint);color:var(--warn)}.month-note{margin:var(--space-5) 0 0;color:var(--text-faint);font-size:11px}.panel-error{background:var(--danger-faint);color:var(--danger);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);margin:var(--space-3) 0;font-size:13px}.entry-jira-chip{border-radius:var(--radius-sm);background:var(--accent-faint);min-width:0;font-family:var(--font-mono);color:var(--accent-on-faint);text-overflow:ellipsis;white-space:nowrap;flex:1;padding:2px 6px;font-size:11px;font-weight:600;overflow:hidden}.entry-orphan-row{align-items:baseline;gap:var(--space-1) var(--space-2);margin-top:var(--space-1);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--warn-faint);flex-wrap:wrap;display:flex}.entry-orphan-chip{color:var(--warn);white-space:nowrap;font-size:11px;font-weight:600}.entry-orphan-hint{min-width:0;color:var(--warn);flex:1;font-size:11px;line-height:1.35}.entry-orphan-forget{padding:0 var(--space-2);flex:none;font-size:11px}.jira-map-list{margin:var(--space-2) 0 var(--space-2);gap:var(--space-2);flex-direction:column;padding:0;list-style:none;display:flex}.jira-map-row{align-items:center;gap:var(--space-2);min-width:0;display:flex}.jira-map-project{width:6em;font-family:var(--font-mono);text-transform:uppercase;flex:none;padding:3px 6px;font-size:12px;line-height:14px}.jira-map-project.is-wide{text-transform:none;width:10em;font-family:inherit}.jira-map-row .combobox.jira-map-code{flex:1;min-width:0}.jira-map-remove{color:var(--text-faint);cursor:pointer;background:0 0;border:0;flex:none;padding:0 4px;font-size:16px;line-height:1}.jira-map-remove:hover{color:var(--danger)}.btn.btn-small{padding:4px var(--space-2);font-size:12px}.jira-badge{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);padding:2px var(--space-2);cursor:pointer;color:var(--text-muted);align-items:center;gap:4px;font-size:11px;display:inline-flex}.jira-badge:disabled{cursor:default}.jira-badge-dot{border:1.5px solid var(--text-faint);border-radius:50%;width:8px;height:8px;display:inline-block}.jira-badge.is-synced{color:var(--good);border-color:var(--good-faint)}.jira-badge.is-synced .jira-badge-dot{background:var(--good);border-color:var(--good)}.jira-badge.is-unsynced:hover{border-color:var(--accent);color:var(--accent)}.jira-badge.is-drifted{color:var(--warn);border-color:var(--warn);background:var(--warn-faint)}.jira-badge.is-drifted .jira-badge-dot{background:linear-gradient(90deg, var(--warn) 50%, transparent 50%);border-color:var(--warn)}.jira-badge.is-drifted:hover{background:var(--warn);color:var(--on-accent)}.jira-badge.is-drifted:hover .jira-badge-dot{border-color:var(--on-accent)}.jira-badge-group{align-items:center;gap:2px;display:inline-flex}.jira-badge-remove{color:var(--text-faint);cursor:pointer;background:0 0;border:0;flex:none;padding:0 2px;font-size:14px;line-height:1}.jira-badge-remove:hover{color:var(--danger)}.jira-badge-remove:disabled{cursor:default;opacity:.5}.jira-recent{gap:var(--space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.jira-recent-group+.jira-recent-group{margin-top:var(--space-3)}.jira-recent-group-title{letter-spacing:.04em;text-transform:uppercase;color:var(--text-faint);margin:0 0 var(--space-1);font-size:10px;font-weight:600}.jira-recent-btn{align-items:center;gap:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);width:100%;padding:var(--space-2);cursor:pointer;text-align:left;display:flex}.jira-recent-btn:hover{border-color:var(--accent);background:var(--accent-faint)}.jira-recent-key{font-family:var(--font-mono);flex:none;font-size:12px;font-weight:600}.jira-recent-summary{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;overflow:hidden}.jira-recent-status{color:var(--text-faint);border:1px solid var(--border);border-radius:var(--radius-sm);white-space:nowrap;flex:none;padding:0 4px;font-size:10px}.bulk-select-all{align-items:center;gap:var(--space-2);margin-bottom:var(--space-4);font-weight:600;display:flex}.bulk-group{margin-bottom:var(--space-4)}.bulk-group-header{align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);font-weight:600;display:flex}.bulk-group-code{font-family:var(--font-mono);font-size:13px}.bulk-group-count{color:var(--text-faint);font-size:12px}.bulk-list{padding:0 0 0 var(--space-4);gap:var(--space-1);flex-direction:column;margin:0;list-style:none;display:flex}.bulk-item{align-items:center;gap:var(--space-2);font-size:12px;display:flex}.bulk-item.is-dimmed{opacity:.62}.bulk-item-main{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.bulk-item>label{align-items:center;gap:var(--space-2);flex:1;min-width:0;display:flex}.bulk-item-key{font-family:var(--font-mono);flex:none;font-weight:600}.bulk-item-activity{text-overflow:ellipsis;white-space:nowrap;color:var(--text-muted);flex:1;overflow:hidden}.bulk-item-meta{color:var(--text-faint);flex:none}.settings-about .build-line{font-family:var(--font-mono);color:var(--text-faint);-webkit-user-select:text;user-select:text;overflow-wrap:anywhere;margin:0;font-size:11px;line-height:1.6}
