.resize-none{resize:none}.activity-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.activity-list{flex-direction:column;display:flex}@font-face{font-family:Space Grotesk;src:url(/fonts/SpaceGrotesk-VariableFont_wght.ttf)format("truetype");font-style:normal;font-weight:300 700;font-display:swap}:root{--font-sans:"Space Grotesk", system-ui, -apple-system, "Segoe UI", sans-serif;--navy-950:#0b1820;--navy-900:#122530;--navy-800:#1c3546;--navy-700:#294a60;--navy-600:#3c637e;--navy-500:#5b8099;--navy-400:#8aa6b8;--navy-300:#b6c8d4;--navy-200:#d7e1e8;--navy-100:#eaf0f4;--navy-50:#f4f7fa;--gray-50:#fafbfc;--gray-100:#f5f7f8;--gray-200:#e8ecef;--gray-300:#d1d9de;--gray-500:#95a5b0;--gray-700:#5f7380;--bg:var(--navy-50);--surface:#fff;--text:var(--navy-800);--muted:var(--navy-600);--subtle:var(--gray-700);--line:var(--navy-200);--line-soft:var(--navy-100);--line-strong:var(--navy-300);--accent:var(--navy-800);--accent-dark:var(--navy-900);--accent-soft:var(--navy-100);--danger:#b23a3a;--danger-hover:#912f2f;--danger-soft:color-mix(in srgb, var(--danger) 7%, var(--surface));--danger-line:color-mix(in srgb, var(--danger) 30%, var(--surface));--success:#2f7a57;--focus:var(--navy-600);--radius:12px;--radius-lg:18px;--radius-pill:999px;--shadow:0 8px 24px #1c35460f;--scroll-thumb:var(--gray-500);--scroll-track:transparent;--scroll-hover:var(--gray-700);--surface-hover:var(--gray-50);--surface-subtle:var(--gray-100);--surface-raised:var(--gray-200);--surface-pressed:var(--gray-300);--on-accent:#fff;--on-danger:#fff;--control-line:var(--line);--segmented-hover:var(--line-strong);--selection-ring:transparent;--calendar-highlight:var(--navy-200);--empty-bg:#ffffff7a;--mobile-nav-bg:#fafbfcf0;--overlay:#0b182052;--anchored-overlay:#1c35461a;--shadow-button:0 1px 1px #1c354608;--shadow-card-hover:0 3px 10px #1c35460a;--shadow-segment:0 1px 3px #1c35460f;--shadow-modal:0 25px 90px #1c354640;--shadow-toast:0 5px 28px #1c354617;--app-header-height:76px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:var(--font-sans);color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#181818;--surface:#222;--surface-hover:#2c2c2c;--surface-subtle:#202020;--surface-raised:#2c2c2c;--surface-pressed:#383838;--text:#f2f2f2;--muted:#b8b8b8;--subtle:#ababab;--line:#454545;--line-soft:#343434;--line-strong:#858585;--control-line:var(--line-strong);--segmented-hover:#383838;--selection-ring:var(--line-strong);--accent:#b6c8d4;--accent-dark:#d7e1e8;--accent-soft:#2c2c2c;--on-accent:#181818;--danger:#f28b82;--danger-hover:#ffaaa2;--on-danger:#181818;--success:#87cba5;--focus:#b6c8d4;--calendar-highlight:#3d4850;--scroll-thumb:#858585;--scroll-hover:#ababab;--empty-bg:#2222227a;--mobile-nav-bg:#202020f0;--overlay:#0009;--anchored-overlay:#00000059;--shadow:0 8px 24px #0003;--shadow-button:0 1px 1px #00000026;--shadow-card-hover:0 3px 10px #0003;--shadow-segment:0 1px 3px #00000040;--shadow-modal:0 25px 90px #0009;--shadow-toast:0 5px 28px #00000059}.play-disc{color:var(--accent)}.color-dot,.project-color{outline:1px solid var(--line-strong);outline-offset:1px}}*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:var(--scroll-thumb) var(--scroll-track)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:var(--scroll-hover)}::-webkit-scrollbar-track{background:var(--scroll-track)}html{scroll-padding-top:calc(var(--app-header-height) + 12px)}body{margin:0;font-size:14px;line-height:1.5}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a,select,input[type=checkbox],input[type=color]{cursor:pointer}button{color:inherit}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-decoration:none}button{background:0 0;border:0}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px}input:focus,select:focus,textarea:focus{outline:2px solid var(--focus);outline-offset:1px}h1,h2,h3,p{margin:0}h1{letter-spacing:-.8px;font-size:26px;font-weight:650;line-height:1.3}h2{letter-spacing:-.2px;font-size:15px;font-weight:650}h3{font-size:14px;font-weight:600}small{font-size:12px}svg{vertical-align:middle;flex-shrink:0}input,select,textarea{color:var(--text);background:var(--surface);border:1px solid var(--line-strong);border-radius:8px;width:100%;min-width:0;max-width:100%;min-height:44px;padding:10px 12px}textarea{resize:none;field-sizing:content;min-height:90px}input[type=checkbox]{width:17px;height:17px;min-height:17px;accent-color:var(--accent);flex-shrink:0;margin:0}input[type=color]{width:72px;height:44px;padding:5px}input::placeholder{color:var(--subtle)}fieldset{border:0;min-width:0;margin:0;padding:0}summary{cursor:pointer;min-height:32px;padding:6px 0}strong{font-weight:600}.muted{color:var(--muted);font-size:12px}.accent-text{color:var(--accent-dark)}.actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.button{border-radius:var(--radius-pill);white-space:nowrap;min-height:40px;color:var(--text);border:1px solid #0000;justify-content:center;align-items:center;gap:7px;padding:9px 14px;font-size:13px;font-weight:500;transition:background .15s,border-color .15s;display:inline-flex}.button.neutral{background:var(--surface);border-color:var(--control-line);box-shadow:var(--shadow-button)}.button.neutral:hover:not(:disabled){background:var(--surface-hover);border-color:var(--line-strong)}.button.primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.button.primary:hover:not(:disabled){background:var(--accent-dark);border-color:var(--accent-dark)}.button.danger{background:var(--danger);color:var(--on-danger)}.button.danger:hover:not(:disabled){background:var(--danger-hover)}.button.ghost{color:var(--muted)}.button.ghost:hover:not(:disabled){background:var(--surface-raised);color:var(--text)}.icon-button{border-radius:var(--radius-pill);min-width:36px;min-height:36px;color:var(--muted);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.icon-button:hover:not(:disabled){background:var(--accent-soft);color:var(--text)}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.app-shell{min-height:100dvh}.sidebar{border-right:1px solid var(--line);background:var(--surface-subtle);z-index:30;flex-direction:column;width:216px;padding:28px 15px 24px;display:flex;position:fixed;inset:0 auto 0 0}.brand{letter-spacing:-1.1px;flex-shrink:0;align-items:center;gap:9px;padding:0 11px;font-size:24px;font-weight:700;line-height:1;display:flex}.brand-period{color:var(--accent);margin-left:-8px}.brand-symbol{background:var(--accent);width:32px;height:34px;color:var(--on-accent);border-radius:10px;place-items:center;display:grid}.sidebar nav{margin-top:32px;flex-direction:column;flex:1;gap:6px;min-height:0;margin-inline:-4px;padding:4px;display:flex;overflow-y:auto}.sidebar nav a{min-height:45px;color:var(--muted);border-radius:9px;flex-shrink:0;align-items:center;gap:12px;padding:11px 13px;font-size:13px;font-weight:500;display:flex}.sidebar nav .nav-settings{margin-top:auto}.nav-label-mobile{display:none}.sidebar nav a:hover{background:var(--line-soft);color:var(--text)}.sidebar nav a[aria-current=page]{background:var(--accent-soft);color:var(--accent-dark);box-shadow:inset 0 0 0 1px var(--selection-ring)}.nav-chevron{margin-left:auto}.main-shell{margin-left:216px}.topbar{z-index:20;border-bottom:1px solid var(--line);background:var(--surface);min-height:76px;padding-top:env(safe-area-inset-top);position:sticky;top:0}.content-wrap{max-width:1240px;margin:auto;padding:27px 40px 32px}.running-bar{align-items:center;gap:16px;max-width:1240px;min-height:75px;margin:auto;padding:12px 40px;display:flex}.running-bar .button,.running-bar .editable-duration{flex-shrink:0;min-height:44px}.running-icon{background:var(--bg);width:40px;height:40px;color:var(--subtle);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.running-info{flex:1;min-width:0}.running-info strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;display:block;overflow:hidden}.running-info>span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:11px;display:block;overflow:hidden}.today-total{border-left:1px solid var(--line);text-align:right;min-width:87px;margin-left:3px;padding-left:20px}.today-total small{color:var(--muted);margin-bottom:3px;font-size:10px;display:block}.today-total strong{font-variant-numeric:tabular-nums;font-size:15px}.live-duration{letter-spacing:-.5px;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:23px;font-weight:550}.running-bar.is-running{background:var(--surface)}.interruption-action{white-space:nowrap}.tag-picker{min-width:0}.tag-picker .field-label{font-size:12px;font-weight:500}.tag-picker summary{border:1px solid var(--line-strong);background:var(--surface);cursor:pointer;border-radius:8px;align-items:center;gap:8px;min-height:44px;padding:8px 12px;list-style:none;display:flex}.tag-picker summary::-webkit-details-marker{display:none}.tag-picker summary span{overflow-wrap:anywhere;flex:1;min-width:0}.tag-picker summary svg{flex-shrink:0}.tag-picker summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tag-picker details[open] summary{border-bottom-right-radius:0;border-bottom-left-radius:0}.tag-options{background:var(--surface);border:1px solid var(--line-strong);border-top:0;border-radius:0 0 8px 8px;flex-direction:column;gap:8px;padding:8px;display:flex}.tag-options .search{width:100%;min-width:0}.tag-option-list{max-height:220px;overflow:auto}.tag-option-list .check{overflow-wrap:anywhere;min-height:44px;padding:4px 8px}.tag-options .button{white-space:normal;overflow-wrap:anywhere}.tag-chips,.tag-labels{flex-wrap:wrap;gap:4px;display:flex}.tag-chip{background:var(--accent-soft);max-width:100%;min-height:44px;color:var(--text);border:1px solid var(--line);cursor:pointer;text-align:left;overflow-wrap:anywhere;border-radius:12px;align-items:center;gap:6px;padding:6px 10px;display:inline-flex}.tag-chip svg{flex-shrink:0}.tag-labels{margin-top:4px}.tag-labels>span{background:var(--accent-soft);max-width:100%;color:var(--muted);overflow-wrap:anywhere;border-radius:4px;padding:2px 6px;font-size:11px}.tag-filter{flex:190px;min-width:0;max-width:100%}.tag-filter>.check{min-height:44px;margin-top:4px}.tag-management-list{margin-top:16px}.tag-management-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.tag-management-row>span{overflow-wrap:anywhere;min-width:0}.tag-management-row small{color:var(--muted);display:block}.tag-report{margin-top:20px}.report-total{font-variant-numeric:tabular-nums;font-size:24px}.tag-report-table{border-collapse:collapse;background:var(--surface);width:100%}.tag-report-table th,.tag-report-table td{border-bottom:1px solid var(--line);text-align:left;padding:10px 16px}.tag-report-table th:last-child,.tag-report-table td:last-child{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.tag-report-table button{color:var(--accent);cursor:pointer;text-align:left;overflow-wrap:anywhere;background:0 0;border:0;min-height:44px}@media (width<=1100px){.interruption-action span{display:none}.running-bar .interruption-action{justify-content:center;width:44px;padding:0}}@media (width<=760px){.inline-form .assignment-fields>.field:first-child,.inline-form .assignment-fields>.tag-picker{grid-column:1/-1}.tag-management-row{flex-direction:column;align-items:flex-start}.tag-picker input{font-size:16px}.calendar-toolbar .segmented{flex-wrap:wrap;width:100%;display:flex}.calendar-toolbar .segmented button{flex:1;min-height:44px;padding:8px;font-size:12px}.calendar-toolbar .segmented button:last-child{flex-basis:100%}.tag-report-table th,.tag-report-table td{padding:8px}.running-bar.is-running,.running-bar.has-draft:not(.is-running){grid-template-columns:minmax(0,1fr) 44px auto}.running-bar.is-running .running-icon{display:none}.running-bar.is-running .running-info{grid-area:1/1}.running-bar .timer-edit-toggle{grid-area:1/2}.running-bar.has-draft:not(.is-running) .running-icon{display:none}.running-bar.has-draft:not(.is-running) .running-info{grid-area:1/1}.running-bar.is-running .live-duration{grid-area:2/1;font-size:20px}.running-bar.is-running .interruption-action{grid-area:2/2}}.is-running .running-icon{background:var(--accent-soft);color:var(--accent)}.assignment-fields{flex-direction:column;gap:17px;min-width:0;display:flex}.running-assignment{background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius);width:100%;min-width:0;box-shadow:var(--shadow);margin-bottom:24px;padding:16px 20px}.running-assignment[hidden]{display:none}.assignment-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.assignment-heading strong{font-size:13px}.assignment-heading .button{min-height:44px}.billable-field{flex-wrap:wrap;align-items:center;gap:4px 16px;display:flex}.billable-field .check{min-height:44px}.billable-field small{color:var(--muted);font-size:12px}.timer-description-edit{width:100%;min-height:44px;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;padding:4px 0;display:block}.timer-description-edit:hover{color:var(--accent);text-underline-offset:4px;text-decoration:underline}.timer-quick-edit{align-items:center;gap:4px;min-width:0;display:flex}.timer-quick-edit .icon-button,.timer-edit-toggle{flex-shrink:0;min-width:44px;min-height:44px}.timer-project-edit{border-radius:var(--radius);background:var(--accent-soft);min-width:0;max-width:180px;min-height:44px;color:var(--text);cursor:pointer;border:0;align-items:center;gap:7px;padding:7px 10px;display:flex}.timer-project-edit span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.timer-project-edit svg{flex-shrink:0}.timer-project-edit:hover{background:var(--line)}.timer-quick-edit small{font-size:10px}.timer-quick-edit .not-billable{color:var(--muted);text-decoration:line-through}.timer-quick-edit .is-billable{color:var(--text);background:var(--accent-soft)}.timer-edit-toggle.has-draft{background:var(--accent-soft);outline:1px solid var(--line-strong)}.running-info .timer-context-text{margin-top:-4px}@media (width>=761px){.running-bar.is-running{gap:8px}.running-bar.is-running .running-icon{display:none}}@media (width<=1250px){.timer-quick-edit{display:none}}.content-wrap :is(button,input,select,textarea,a){scroll-margin-top:12px;scroll-margin-bottom:12px}.inline-form .assignment-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.inline-form .form-fields{gap:10px}.inline-form .modal-footer{align-items:center;gap:10px;margin-top:12px;padding-top:12px}.assignment-feedback{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:11px;display:flex}.assignment-feedback .button{padding:6px 8px;font-size:11px}.assignment-warning{color:var(--text);margin-bottom:10px;font-size:12px}@media (width>=1101px){.inline-form .assignment-fields{grid-template-columns:minmax(180px,2fr) repeat(3,minmax(130px,1fr))}}.page-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;display:flex}.page-heading p{color:var(--muted);margin-top:8px;font-size:13px}.section-toolbar{justify-content:space-between;align-items:center;gap:12px;min-height:34px;margin:16px 0 12px;display:flex}.count{color:var(--muted);background:var(--surface-raised);border-radius:6px;margin-left:6px;padding:2px 6px;font-size:11px;font-weight:500}.search{background:var(--surface-raised);border:1px solid var(--selection-ring);color:var(--subtle);border-radius:8px;align-items:center;gap:8px;width:205px;min-height:40px;padding:0 10px;display:flex}.search input{background:0 0;border:0;outline:0;min-height:30px;padding:6px 0;font-size:13px}.search:focus-within{outline:2px solid var(--focus)}.search button{border-radius:4px;place-items:center;min-width:32px;min-height:36px;padding:0;display:grid}.search button:hover{background:var(--surface-pressed)}.timer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.saved-timer{background:var(--surface);border:1px solid var(--line-soft);border-radius:var(--radius);align-items:center;min-width:0;min-height:78px;transition:box-shadow .15s,border-color .15s;display:flex}.saved-timer:hover{border-color:var(--line-strong);box-shadow:var(--shadow-card-hover)}.saved-timer.active{border-color:var(--line-strong);background:var(--bg)}.timer-launch{text-align:left;border-radius:var(--radius);flex:1;align-items:center;gap:12px;min-width:0;min-height:76px;padding:17px 6px 17px 18px;display:flex}.timer-launch:disabled{opacity:1}.play-disc{background:color-mix(in srgb, currentColor 10%, var(--surface));border-radius:50%;flex-shrink:0;place-items:center;width:26px;height:26px;display:grid}.play-disc svg{width:12px;margin-left:2px}.saved-timer-text{min-width:0;display:block}.saved-timer-text strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;display:block;overflow:hidden}.saved-timer-text small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:11px;display:block;overflow:hidden}.timer-edit{color:var(--subtle);margin-right:8px}.running-label{color:var(--accent-dark);background:var(--accent-soft);border-radius:5px;margin-left:auto;padding:3px 6px;font-size:10px}.quiet-tools{justify-content:flex-end;margin-top:8px;display:flex}.quiet-tools .button{min-height:32px;font-size:11px}.recent-heading{margin-top:20px}.entry-groups{flex-direction:column;gap:18px;display:flex}.day-group{background:var(--surface);border:1px solid var(--line-soft);border-radius:var(--radius);overflow:hidden}.day-group>header{background:var(--surface-hover);border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;padding:12px 18px;display:flex}.day-group>header h3{color:var(--muted);font-size:11px;font-weight:550}.day-group>header>span{font-variant-numeric:tabular-nums;color:var(--muted);font-size:11px}.entry-row{border-bottom:1px solid var(--surface-subtle);align-items:center;gap:12px;min-height:70px;padding:12px 15px;display:flex}.entry-row:last-child{border-bottom:0}.color-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.entry-description{text-align:left;border-radius:4px;flex:1;min-width:0;min-height:44px;padding:4px 0}.entry-description:hover strong{color:var(--accent-dark)}.entry-description strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;display:block;overflow:hidden}.entry-description small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:11px;display:block;overflow:hidden}.entry-period{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:11px}.entry-duration{text-align:right;font-variant-numeric:tabular-nums;min-width:76px}.entry-duration strong{font-size:13px}.entry-duration small{color:var(--muted);margin-top:2px;font-size:11px;display:block}.entry-duration .billed-label{color:var(--success)}.entry-row .icon-button{min-width:36px;min-height:36px}.entry-select{cursor:pointer;flex-shrink:0;place-items:center;width:36px;min-height:44px;display:grid}.entry-row .continue{color:var(--subtle)}.empty{background:var(--empty-bg);border:1px dashed var(--line-strong);border-radius:var(--radius);text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:180px;padding:32px 22px;display:flex}.empty h2{letter-spacing:-.5px;font-size:19px}.empty p{max-width:400px;color:var(--muted);margin:10px 0 18px;font-size:13px}.quiet-empty{color:var(--muted);border:1px dashed var(--line-strong);border-radius:var(--radius);text-align:center;justify-content:center;align-items:center;gap:12px;padding:35px 22px;font-size:12px;display:flex}.error-notice{background:var(--danger-soft);border:1px solid var(--danger-line);color:var(--danger);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;padding:13px 16px;font-size:12px;display:flex}.error-notice>span{flex:1;align-items:center;gap:8px;min-width:200px;display:flex}.loading{min-height:120px;color:var(--muted);justify-content:center;align-items:center;gap:12px;display:flex}.subtle-label{color:var(--muted);white-space:nowrap;font-size:11px}.check{cursor:pointer;align-items:center;gap:8px;min-height:32px;font-size:12px;display:flex}.management-list{flex-direction:column;gap:12px;display:flex}.project-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px 20px}.project-top{justify-content:space-between;align-items:center;display:flex}.project-name{align-items:center;gap:12px;min-width:0;display:flex}.project-color{border-radius:3px;flex-shrink:0;width:5px;height:31px}.project-name h2{overflow-wrap:anywhere;font-size:15px}.project-name p{color:var(--muted);margin-top:3px;font-size:11px}.project-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin:16px 0;display:grid}.project-stats small{color:var(--muted);margin-bottom:5px;font-size:11px;display:block}.project-stats strong{letter-spacing:-.4px;font-variant-numeric:tabular-nums;font-size:19px}.project-card footer{border-top:1px solid var(--line-soft);color:var(--muted);justify-content:space-between;align-items:center;gap:15px;padding-top:10px;font-size:11px;display:flex}.project-card footer .button{font-size:11px}.client-row{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);align-items:center;gap:15px;padding:20px;display:flex}.client-symbol{background:var(--accent-soft);width:40px;height:40px;color:var(--subtle);border-radius:12px;flex-shrink:0;place-items:center;display:grid}.client-row h2{overflow-wrap:anywhere;align-items:center;gap:8px;font-size:14px;display:flex}.client-row p{color:var(--muted);margin-top:4px;font-size:11px}.client-rate{text-align:right;margin-left:auto}.client-rate strong{font-size:12px}.client-rate small{color:var(--muted);margin-top:3px;font-size:11px;display:block}.filters{background:var(--surface-raised);border-radius:10px;flex-wrap:wrap;gap:12px;margin:12px 0 16px;padding:12px;display:flex}.filters>label{color:var(--muted);flex:1;min-width:130px;font-size:11px}.filters input:not([type=checkbox]),.filters select{border-color:var(--control-line);min-height:38px;margin-top:5px;padding:7px 10px;font-size:13px}.segmented{background:var(--accent-soft);border:1px solid var(--line);border-radius:9px;gap:3px;padding:3px;display:flex}.segmented button{min-height:32px;color:var(--muted);border-radius:6px;justify-content:center;align-items:center;gap:7px;padding:7px 15px;font-size:12px;display:flex}.segmented button:hover{background:var(--segmented-hover)}.segmented button[aria-pressed=true]{background:var(--surface);color:var(--text);box-shadow:var(--shadow-segment), inset 0 0 0 1px var(--selection-ring)}.pagination{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin-top:18px;font-size:11px;display:flex}.pagination .button{min-height:34px;padding:6px 9px}.financial-overview{border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);grid-template-columns:repeat(3,1fr);margin-bottom:25px;padding:24px 0;display:grid}.financial-overview>div{border-right:1px solid var(--line);padding:0 22px}.financial-overview>div:last-child{border:0}.financial-overview span{color:var(--muted);margin-bottom:8px;font-size:11px;display:block}.financial-overview strong{letter-spacing:-.7px;font-variant-numeric:tabular-nums;font-size:24px;display:block}.financial-overview small{color:var(--muted);margin-top:5px;font-size:9px;display:block}.fixed-row{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);align-items:center;gap:14px;padding:17px 20px;display:flex}.fixed-row>div:first-of-type{flex:1;min-width:0}.fixed-row strong{overflow-wrap:anywhere;font-size:12px;display:block}.fixed-row small{color:var(--muted);margin-top:3px;font-size:11px;display:block}.invoice-row{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:18px 20px}.invoice-main{align-items:center;gap:13px;display:flex}.invoice-main p{color:var(--muted);margin-top:3px;font-size:11px}.invoice-main>strong{font-variant-numeric:tabular-nums;white-space:nowrap;margin-left:auto}.invoice-main .button{font-size:11px}.invoice-row details{color:var(--muted);margin-top:12px;font-size:11px}.invoice-row.reversed{background:var(--surface-subtle)}.invoice-line{border-top:1px solid var(--line);justify-content:space-between;gap:20px;padding:9px 0;display:flex}.invoice-line span:last-child{white-space:nowrap}.invoice-preview{background:var(--bg);border-radius:10px;padding:14px 16px;font-size:12px}.invoice-preview>div{justify-content:space-between;gap:18px;padding:7px 0;display:flex}.invoice-preview strong{white-space:nowrap}.invoice-total{border-top:1px solid var(--line);margin-top:6px;font-size:15px;padding-top:14px!important}.modal-overlay{background:var(--overlay);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:60;position:fixed;inset:0}.modal-content{z-index:61;background:var(--surface);border-radius:var(--radius-lg);width:min(580px,100% - 32px);max-height:calc(100dvh - 48px);box-shadow:var(--shadow-modal);scrollbar-gutter:stable;padding:25px;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%)}.modal-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.modal-header h2{letter-spacing:-.5px;font-size:21px;font-weight:650}.modal-header p{color:var(--muted);margin-top:7px;font-size:12px;line-height:1.6}.modal-header .icon-button{margin:-5px -6px 0 0}.form-fields{flex-direction:column;gap:17px;display:flex}.field{flex-direction:column;gap:7px;min-width:0;display:flex}.field>label{font-size:12px;font-weight:550}.field small{color:var(--muted);font-size:11px;line-height:1.6}.field .field-error{color:var(--danger)}.form-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.monthly-project{margin-top:24px}.month-picker,.monthly-filters label{flex-direction:column;gap:7px;font-size:13px;font-weight:500;display:flex}.month-picker{max-width:210px}.monthly-stats{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:20px}.monthly-stats strong{font-size:18px}.monthly-filters{flex-wrap:wrap;align-items:flex-end;gap:16px;margin-bottom:20px;display:flex}.monthly-filters .muted{max-width:340px;font-size:12px}.monthly-row{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:14px;align-items:center;gap:16px;padding:20px;display:flex}.monthly-row>span{flex-direction:column;gap:6px;display:flex}.monthly-row>span:last-child{text-align:right;margin-left:auto}.monthly-row small{color:var(--muted);font-size:12px}.monthly-prices{padding-left:20px;font-size:13px}.valuation-preview{border-top:1px solid var(--line);padding-top:18px}@media (width<=600px){.monthly-stats{grid-template-columns:1fr;gap:16px}.monthly-row{flex-wrap:wrap;gap:12px;padding:16px}.monthly-row>span{overflow-wrap:anywhere;min-width:0}.monthly-row>span:last-child{text-align:left;flex-basis:100%;margin-left:28px}.monthly-filters label{flex:1;min-width:130px}}.offset-choice{color:var(--muted);flex-direction:column;gap:3px;display:flex;font-size:10px!important;font-weight:400!important}.offset-choice select{min-height:32px;padding:6px 8px;font-size:10px}.modal-footer{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:25px;padding-top:20px;display:flex}.modal-footer>.actions{margin-left:auto}.secondary-actions{gap:3px;display:flex}.secondary-actions .button{padding:8px;font-size:11px}.form-error{color:var(--danger);background:var(--danger-soft);border:1px solid var(--danger-line);border-radius:8px;margin-top:15px;padding:12px;font-size:12px}.form-error .check{align-items:flex-start;margin-top:8px}.form-fields:disabled{opacity:.7}.discard p{color:var(--muted);margin:12px 0 22px;font-size:13px}.toast{z-index:50;color:var(--success);box-shadow:var(--shadow-toast);background:var(--surface);pointer-events:none;border-radius:10px;align-items:center;gap:10px;padding:0;font-size:12px;display:flex;position:fixed;bottom:24px;left:calc(50% + 108px);transform:translate(-50%)}.toast.visible{pointer-events:auto;padding:8px 10px 8px 15px}.toast .icon-button{min-width:28px;min-height:28px}.skip-link{background:var(--surface);z-index:100;padding:12px;position:fixed;top:-60px;left:16px}.skip-link:focus{top:10px}@media (width>=1500px){.content-wrap{padding-top:35px}.timer-grid{gap:14px}.saved-timer,.timer-launch{min-height:85px}}@media (width<=1100px){.content-wrap{padding:24px 25px 32px}.sidebar{width:194px}.main-shell{margin-left:194px}.brand{font-size:22px}.running-bar{gap:12px;padding:12px 25px}.running-info>span{max-width:230px}.today-total{min-width:75px;padding-left:12px}.running-icon{width:34px;height:34px}.live-duration{font-size:19px}.running-bar .button{padding:8px 10px}.project-stats{gap:12px}.project-stats strong{font-size:17px}.toast{left:calc(50% + 97px)}}@media (width<=760px){body{font-size:14px}.sidebar{width:auto;height:calc(65px + env(safe-area-inset-bottom));padding:5px 6px env(safe-area-inset-bottom);border-right:0;border-top:1px solid var(--line);background:var(--mobile-nav-bg);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);inset:auto 0 0}.brand{display:none}.sidebar nav{margin-top:0;flex-direction:row;flex:none;gap:2px;height:55px;margin-inline:0;padding:0;overflow:visible}.sidebar nav .nav-settings{margin-top:0}.nav-label-desktop{display:none}.nav-label-mobile{display:inline}.sidebar nav a{border-radius:9px;flex-direction:column;flex:1;justify-content:center;gap:4px;min-width:44px;min-height:48px;padding:5px 2px;font-size:9px}.sidebar nav a svg{width:19px;height:19px}.sidebar nav .nav-chevron{display:none}.main-shell{margin-left:0}.topbar{min-height:105px}.content-wrap{padding:18px 17px calc(95px + env(safe-area-inset-bottom))}.running-bar{grid-template-columns:32px minmax(0,1fr) auto;gap:8px;min-height:104px;padding:10px 17px;display:grid}.running-icon{width:32px;height:32px}.running-info{grid-column:2;min-width:0}.running-info strong{font-size:12px}.running-info>span{max-width:230px;font-size:10px}.running-bar>.button{min-height:44px;padding:7px 10px;font-size:11px}.running-bar:not(.is-running)>.timer-idle-actions{flex-wrap:nowrap;grid-column:1/-1}.timer-idle-actions .button{flex:1;min-height:44px;padding:7px 10px;font-size:11px}.today-total{border:0;grid-area:1/3;min-width:65px;margin-left:auto;padding-left:10px}.today-total strong{font-size:13px}.is-running .running-info{grid-column:2}.is-running .live-duration{grid-area:2/1/3/3;justify-self:start;margin-left:0;font-size:22px}.is-running>.button.primary{grid-area:2/3}.is-running .today-total{border:0;grid-area:1/3;min-width:50px;padding-left:0}.inline-form input,.inline-form select{padding:9px 8px;font-size:16px}.inline-form .modal-footer .actions{justify-content:flex-end;width:100%}.inline-form .button{min-height:44px}.running-assignment{margin-bottom:20px;padding:13px}.content-wrap :is(button,input,select,textarea,a){scroll-margin-bottom:calc(85px + env(safe-area-inset-bottom))}.page-heading{flex-wrap:wrap;align-items:flex-start;gap:12px;margin-bottom:20px}h1{letter-spacing:-.65px;font-size:23px}.page-heading p{margin-top:6px;font-size:12px}.page-heading>.button{min-height:44px;font-size:12px}.section-toolbar{flex-wrap:wrap;gap:10px}.section-toolbar h2{font-size:14px}.section-toolbar>.muted{font-size:10px}.section-toolbar .search{width:100%}.timer-grid{grid-template-columns:1fr;gap:9px}.timer-launch{min-height:71px;padding:15px 6px 15px 16px}.saved-timer{min-height:73px}.saved-timer-text strong{font-size:13px}.saved-timer-text small{font-size:11px}.timer-edit,.icon-button{min-width:44px;min-height:44px}.entry-row{flex-wrap:wrap;gap:8px;padding:12px;position:relative}.entry-description{flex-basis:calc(100% - 84px)}.entry-description strong{font-size:13px}.entry-period{flex:1;margin-left:15px;font-size:11px}.entry-duration{min-width:68px}.entry-duration strong{font-size:13px}.entry-row>.icon-button{min-width:44px;min-height:44px}.entry-row .continue{min-width:44px}.entry-select{width:44px}.entry-select+.entry-description{flex-basis:calc(100% - 60px)}.day-group>header{padding:11px 13px}.quiet-tools .button{min-height:44px;font-size:11px}.button,.check,.segmented button{min-height:44px}.search{min-height:46px;padding-right:0}.search input{min-height:44px;font-size:16px}.search button{min-width:44px;min-height:44px}.modal-content{width:100%;max-height:calc(100dvh - 24px);padding:22px 20px calc(22px + env(safe-area-inset-bottom));border-radius:20px 20px 0 0;top:auto;bottom:0;left:0;transform:none}.modal-header h2{font-size:20px}.form-grid{grid-template-columns:1fr}.offset-choice{grid-template-columns:100px 1fr;align-items:center;gap:5px;display:grid!important}.modal-content input,.modal-content select,.modal-content textarea{font-size:16px}.modal-content .offset-choice select{font-size:12px}.modal-footer{bottom:calc(-22px - env(safe-area-inset-bottom));background:var(--surface);z-index:2;padding:16px 0 8px;position:sticky}.modal-footer .actions{justify-content:flex-end;width:100%}.modal-footer .button{min-height:44px}.modal-footer .secondary-actions{width:100%}.management-list{gap:10px}.project-card{padding:16px}.project-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:16px 0}.project-stats strong{font-size:20px}.project-card footer{flex-direction:column;align-items:flex-start;gap:5px}.project-card footer .button{padding-left:0}.client-row{flex-wrap:wrap;gap:10px;padding:15px 12px}.client-symbol{width:34px;height:34px}.client-row>div:first-of-type{flex:1;max-width:calc(100% - 95px)}.client-row h2{font-size:13px}.client-rate{text-align:left;flex-basis:calc(100% - 60px);order:4;margin-left:44px}.client-rate small{margin-left:5px;display:inline}.client-rate strong{font-size:11px}.filters{gap:10px;padding:12px}.filters>label{flex-basis:calc(50% - 10px);min-width:0}.filters>.tag-filter{flex-basis:100%}.filters input:not([type=checkbox]),.filters select{min-height:44px;font-size:16px}.page-heading>.actions{width:100%}.page-heading>.actions .button{min-height:44px;font-size:11px}.financial-overview{grid-template-columns:1fr;padding:4px 17px}.financial-overview>div{border-right:0;border-bottom:1px solid var(--line);padding:17px 0}.financial-overview strong{font-size:24px}.fixed-row{flex-wrap:wrap;gap:10px;padding:15px 13px}.fixed-row .button{width:calc(100% - 17px);margin-left:17px}.invoice-row{padding:15px 13px}.invoice-main{flex-wrap:wrap;gap:10px}.invoice-main>strong{font-size:14px}.invoice-main>.button{margin-left:44px;padding-left:0}.invoice-main>div{flex:1;min-width:90px}.invoice-main .client-symbol{width:32px;height:32px}.invoice-main h3{font-size:12px}.invoice-main p{font-size:10px}.invoice-line{flex-direction:column;gap:3px}.pagination{align-items:flex-start;font-size:10px}.pagination .actions{gap:5px}.pagination .button{min-width:44px;min-height:44px}.toast{left:50%;bottom:calc(78px + env(safe-area-inset-bottom));white-space:nowrap;max-width:calc(100% - 30px)}.error-notice{font-size:11px}.subtle-label{font-size:10px}.invoice-preview{font-size:11px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media (forced-colors:active){*{scrollbar-color:auto}.button,.saved-timer,.running-bar,.color-dot{border:1px solid canvastext}.color-dot,.project-color{outline-color:canvastext}.button:focus-visible{outline:2px solid highlight}}.valuation-entries{overflow-wrap:anywhere;max-height:220px;padding-left:24px;overflow:auto}.valuation-entries li{margin-block:8px}.project-card footer{flex-wrap:wrap}.project-card footer>span{flex:auto}.notice{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:16px}.client-group{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.client-group .client-row{border:0}.client-group .client-row>.icon-button{flex-shrink:0}.archive-label{color:var(--muted);align-items:center;gap:5px;font-size:11px;font-weight:400;display:inline-flex}.client-projects{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.client-projects li+li{border-top:1px solid var(--line)}.client-projects button{text-align:left;background:var(--surface-hover);width:100%;color:var(--text);align-items:center;gap:12px;padding:16px 20px 16px 75px;display:flex}.client-projects button:hover{background:var(--accent-soft)}.client-projects button span:nth-child(2){overflow-wrap:anywhere;flex:1}.client-projects button small{color:var(--muted)}.client-projects .project-color{border-radius:50%;flex-shrink:0;width:8px;height:8px}.auth-shell{place-items:center;min-height:100dvh;padding:24px;display:grid}.auth-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);width:min(100%,420px);padding:32px}.auth-card .brand{margin-bottom:32px;padding:0}.auth-card h1{margin-bottom:24px;font-size:24px}.auth-form .actions,.auth-form .button[type=submit]{width:100%}.secret-field{align-items:center;gap:8px;display:flex}.secret-field input{flex:1;min-width:0}.secret-field .button{flex-shrink:0}.api-key-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px}.api-key-card h3{overflow-wrap:anywhere}.api-key-card .section-toolbar{margin:0 0 12px}.api-doc-links{flex-wrap:wrap;gap:8px;margin:12px 0 20px;display:flex}.api-doc-links a{min-height:44px}.key-scopes{color:var(--muted);margin:12px 0;padding-left:20px}.key-dates{flex-wrap:wrap;gap:20px 40px;font-size:12px;display:flex}.key-dates dt{color:var(--muted)}.key-dates dd{margin:4px 0 0}.scope-fieldset{border:1px solid var(--line);border-radius:10px;gap:12px;margin:0 0 20px;padding:16px;display:grid}.scope-fieldset legend{padding:0 6px;font-weight:500}@media (width<=600px){.settings-label{display:none}.client-projects button{padding:14px 12px 14px 56px}.secret-field{flex-wrap:wrap}.secret-field input{flex-basis:100%}.auth-card{padding:24px}}.time-calendar{--fc-classic-button:var(--accent);--fc-classic-button-border:var(--accent);--fc-classic-button-strong:var(--accent-dark);--fc-classic-button-strong-border:var(--accent-dark);--fc-classic-button-outline:var(--focus);--fc-classic-button-foreground:var(--on-accent);--fc-classic-primary:var(--accent);--fc-classic-primary-foreground:var(--on-accent);--fc-classic-event:var(--accent-soft);--fc-classic-event-contrast:var(--text);--fc-classic-background-event:var(--accent);--fc-classic-background-event-opacity:15%;--fc-classic-background-event-foreground-opacity:50%;--fc-classic-highlight:var(--calendar-highlight);--fc-classic-today:var(--bg);--fc-classic-now:var(--accent);--fc-classic-small-dot-width:8px;--fc-classic-large-dot-width:10px;--fc-classic-background:var(--surface);--fc-classic-faint:var(--bg);--fc-classic-muted:var(--accent-soft);--fc-classic-strong:var(--line);--fc-classic-foreground:var(--text);--fc-classic-faint-foreground:var(--subtle);--fc-classic-muted-foreground:var(--muted);--fc-classic-border:var(--line);--fc-classic-strong-border:var(--line-strong);min-width:0}.time-calendar>:last-child{font-family:var(--font-sans);background:var(--surface);font-size:12px}.calendar-toolbar{flex-wrap:wrap;gap:16px}.calendar-navigation{gap:6px}.calendar-navigation>.button{min-height:40px}.calendar-date{text-align:center;gap:2px;min-width:180px;font-size:12px;display:grid}.calendar-date input{min-height:34px;padding:4px 8px;font-size:12px}.calendar-summary{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:8px;padding:0 0 12px;font-size:12px;display:flex}.calendar-day-header{padding:10px 4px}.calendar-day-header strong,.calendar-day-header span,.calendar-day-header small{line-height:1.5;display:block}.calendar-day-header span,.calendar-day-header small{color:var(--muted);font-weight:400}.calendar-slot{height:30px}.calendar-hour{color:var(--muted);font-size:11px}.time-calendar .worktime-calendar-entry{background:var(--accent-soft);border:1px solid var(--line-strong);color:var(--text);border-radius:5px;overflow:hidden}.calendar-entry-content{border-left:4px solid var(--accent);height:100%;padding:3px 5px;font-size:11px;line-height:1.3;overflow:hidden}.calendar-entry-content span,.calendar-entry-content strong,.calendar-entry-content small{text-overflow:ellipsis;display:block;overflow:hidden}.calendar-entry-content span{white-space:nowrap;font-size:10px}.calendar-entry-content strong{font-weight:600}.calendar-entry-content small{color:var(--muted);font-size:10px}.time-calendar .calendar-running,.time-calendar .calendar-planned{background:var(--surface);border-style:dashed}.time-calendar .calendar-pending{opacity:.55;cursor:progress}.editable-duration{color:var(--text);cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;padding:8px 0;display:inline-flex}.editable-duration svg{color:var(--muted)}.editable-duration:hover{color:var(--accent-dark)}.duration-preview{color:var(--muted);justify-content:space-between;align-items:center;padding:10px 0;font-size:13px;display:flex}.duration-preview strong{color:var(--text);font-variant-numeric:tabular-nums;font-size:18px}.anchored-overlay{background:var(--anchored-overlay);-webkit-backdrop-filter:none;backdrop-filter:none}.anchored-editor{width:min(440px,100% - 32px);padding:20px}.anchored-editor .modal-header{margin-bottom:16px}.anchored-editor .modal-header h2{font-size:19px}.anchored-editor .form-fields>.field{margin-bottom:12px}.anchored-editor .form-grid{grid-template-columns:1fr;gap:12px}.toast .button{color:inherit;white-space:nowrap}@media (width<=760px){.calendar-toolbar{align-items:stretch}.calendar-navigation{flex-wrap:nowrap;justify-content:space-between;width:100%}.calendar-date{flex:1;min-width:0}.calendar-date input{width:100%;min-width:0;min-height:44px;font-size:16px}.calendar-navigation .button{min-width:44px;min-height:44px;padding-inline:9px}.calendar-entry-content{font-size:13px}.calendar-entry-content small,.calendar-entry-content span{font-size:12px}.anchored-editor{width:100%}.calendar-summary{font-size:11px}}
