body:has(.app-shell){background:var(--paper,#f1ecdf)}.app-shell{--app-accent:var(--shu,#4a6b5a);--app-accent-2:var(--ink-900,#1a1612);--app-accent-strong:var(--shu-dark,#2f4d40);--app-accent-gradient:var(--shu,#4a6b5a);--app-bg:var(--paper,#f1ecdf);--app-ink:var(--ink-900,#1a1612);--app-line:var(--rule-soft,#ddd5bf);--app-line-strong:var(--rule,#c8bfa6);--app-muted:var(--ink-500,#6f6555);--app-panel:var(--paper-strong,#faf6ea);--app-panel-soft:var(--paper-soft,#f5efde);--app-radius:16px;--app-type-xs:max(.84rem, 13.5px);--app-type-sm:max(.94rem, 15px);--app-type-body:max(1.0625rem, 17px);--app-type-row:max(1.08rem, 17.25px);--app-type-value:max(1.02rem, 16.25px);--app-type-h1:max(1.56rem, 25px);--app-type-h2:max(1.24rem, 20px);--app-type-metric:max(1.55rem, 25px);--app-type-timer:max(2.22rem, 35.5px);background:var(--paper,#f1ecdf);color:var(--app-ink);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:var(--font-sans);font-size:var(--app-type-body);grid-template-columns:224px minmax(0,1fr)}.app-shell h1,.app-shell h2{font-family:var(--font-sans);letter-spacing:.005em;font-weight:600}.app-shell h1{font-size:var(--app-type-h1)}.app-shell h2{font-size:var(--app-type-h2)}.app-user span,.app-panel-header h2,.app-panel-header h3,.project-row strong,.work-entry-row strong,.project-report-row strong,.app-nav button span,.app-nav .app-nav-link span{font-weight:500}.app-nav button[aria-current=page] span,.app-nav .app-nav-link[aria-current=page] span{font-weight:600}.project-row strong,.work-entry-row strong,.project-report-row strong{font-size:var(--app-type-row)}.project-row small,.work-entry-row small,.project-report-row small,.app-muted{font-size:var(--app-type-sm)}.project-rate,.work-entry-row span,.project-report-row span{font-size:var(--app-type-value);font-weight:600}.work-entry-row,.project-row,.project-report-row{padding:12px}.project-row{grid-template-columns:auto minmax(0,1fr) minmax(72px,auto)}.project-row[data-status=archived],.project-row[data-status=paused]{opacity:.72}.project-actions{justify-content:flex-end;gap:7px;display:flex}.project-actions button{border:1px solid var(--rule);cursor:pointer;font:inherit;font-size:var(--app-type-xs);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;min-height:34px;padding:0 12px;font-weight:600;line-height:1;display:inline-flex}.app-panel-actions{flex:none;align-items:center;gap:8px;display:flex}.app-panel-actions>span{background:var(--app-panel-soft);border:1px solid var(--app-line);border-radius:var(--app-radius);color:var(--app-muted);font-size:var(--app-type-xs);white-space:nowrap;padding:5px 9px;font-weight:600}.app-empty-inline,.project-side-empty{gap:12px;display:grid}.calendar-link-buttons{flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px;display:flex}.calendar-link-buttons .button,.calendar-link-buttons .app-inline-button{flex:none;width:auto}.work-entry-list,.project-list,.project-report-list{gap:10px}.app-metric-card strong,.app-report-summary strong,.timer-face strong{font-weight:600}.app-topbar-title>p:last-child,.app-user small,.app-live-chip small,.app-signout-button,.app-inline-button,.project-actions button,.work-entry-actions button,.app-shell .button,.app-shell .field,.app-shell .field input,.app-shell .field select,.app-shell .field textarea{font-size:var(--app-type-sm)}.app-kicker,.app-metric-card span,.app-panel-header>span,.app-report-summary span,.color-field legend{font-size:var(--app-type-xs)}.app-user span{font-size:var(--app-type-body)}.app-nav button span,.app-nav .app-nav-link span{font-size:var(--app-type-sm)}.app-metric-card strong{font-size:var(--app-type-metric)}.app-report-summary strong{font-size:var(--app-type-value)}.timer-face strong{font-size:var(--app-type-timer)}.app-sidebar{background:var(--paper-strong,#faf6ea);border-right:1px solid var(--rule,#c8bfa6);border-right-color:var(--rule,#c8bfa6)}.app-sidebar-brand .brand-mark{background:var(--ink-900,#1a1612);color:var(--paper-strong,#faf6ea);font-family:var(--font-sans);border-radius:0;font-weight:500}.app-live-dot{background:var(--shu,#4a6b5a)}.app-shell .button.primary{color:var(--paper-strong);background:linear-gradient(#3a4544 0%,#24272a 100%);box-shadow:inset 0 1px #fbf7ec1a,0 2px 6px #2c26202e}.app-shell .button.primary.is-cta{background:var(--cta-gradient);box-shadow:var(--cta-highlight), var(--cta-shadow);color:#fff}.app-nav button,.app-nav .app-nav-link{color:var(--ink-700);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:12px;padding:9px 14px;font-weight:500;text-decoration:none;display:block;position:relative}.app-nav .app-nav-link small{color:inherit;opacity:.7;font-weight:500;display:block}.app-nav .app-nav-link{justify-content:space-between;align-items:center;gap:8px;display:flex}.app-nav-badge{background:var(--app-accent,var(--shu));color:var(--paper-strong);text-align:center;border-radius:999px;min-width:20px;padding:4px 8px;font-size:11px;font-weight:600;line-height:1}.app-nav .app-nav-link[aria-current=page] .app-nav-badge{background:var(--app-accent);color:var(--paper-strong)}.app-nav button:hover,.app-nav .app-nav-link:hover{background:var(--shu-tint)}.app-nav button[aria-current=page],.app-nav .app-nav-link[aria-current=page]{background:var(--shu-tint);color:var(--app-accent-strong);font-weight:600}.app-nav button[aria-current=page]:before,.app-nav .app-nav-link[aria-current=page]:before{background:var(--app-accent-gradient);content:"";border-radius:0 4px 4px 0;width:4px;height:60%;display:block;position:absolute;top:20%;left:-8px}.app-sidebar-nav-wrap{flex-direction:column;flex:auto;gap:8px;min-width:0;min-height:0;display:flex}.app-sidebar-nav-wrap .app-nav-footer{border-top:1px solid var(--app-line);margin-top:auto;padding-top:8px}.app-topbar,.app-user,.app-metric-card,.app-panel,.app-empty-card{background:var(--paper-strong);border-color:var(--app-line);border-radius:var(--app-radius);box-shadow:0 14px 32px #1a16120d}.app-kicker,.project-rate,.work-entry-row span,.project-report-row span{color:var(--app-accent-strong)}.app-live-chip{background:var(--paper-strong,#faf6ea);border:1px solid var(--rule,#c8bfa6);border-radius:var(--app-radius);color:var(--ink-900,#1a1612)}.app-live-chip small{color:var(--ink-500)}.app-live-chip.is-idle{background:var(--paper)}.app-live-dot{box-shadow:0 0 0 4px var(--shu-tint)}.app-shell .button.primary{border-color:#0000}.app-signout-button,.app-inline-button,.project-actions button,.work-entry-actions button,.app-shell .button.secondary{background:var(--paper-strong);border-color:var(--rule);color:var(--ink-700)}.app-signout-button:hover,.app-inline-button:hover,.project-actions button:hover,.work-entry-actions button:hover,.app-shell .button.secondary:hover{background:var(--shu-tint);border-color:var(--shu);color:var(--shu-dark)}.app-shell .button.primary:hover{background:linear-gradient(#4a6b5a 0%,#2f4d40 100%)}.app-shell .button.primary.is-cta:hover{background:var(--cta-gradient-hover);box-shadow:var(--cta-highlight), var(--cta-shadow-hover);transform:translateY(-1px)}.app-shell .button.primary.is-cta:active{transform:translateY(0)}.app-shell .button.coming-soon,.app-shell .button.coming-soon:hover{background:var(--app-panel-soft,var(--paper-soft));border:1px dashed var(--app-line-strong,var(--rule));box-shadow:none;color:var(--app-muted,var(--ink-500));cursor:not-allowed;letter-spacing:.04em;text-transform:uppercase;font-weight:600;transform:none}.app-message,.app-panel-header>span,.project-row,.work-entry-row,.project-report-row,.work-entry-edit-form,.app-report-summary>div,.app-shell .field input,.app-shell .field select,.app-shell .field textarea{background:var(--app-panel-soft);border-color:var(--app-line);border-radius:16px}.project-form,.project-edit-form,.project-side-panel{gap:12px;display:grid}.project-side-empty{align-content:start;min-height:190px}.timer-face{background:var(--paper-strong,#faf6ea);border:1px solid var(--rule,#c8bfa6);border-radius:var(--app-radius);color:var(--app-ink)}.timer-face[data-active=true]{background:var(--paper-strong,#faf6ea);border:1px solid var(--shu,#4a6b5a);border-left-width:3px}.app-shell .field input:focus,.app-shell .field select:focus,.app-shell .field textarea:focus{border-color:var(--app-accent);outline:3px solid var(--shu-tint-strong)}.checkbox-field input{accent-color:var(--app-accent)}.app-main{flex-direction:column;gap:0;padding:0;display:flex}.app-content{flex-direction:column;flex:1;gap:18px;min-height:0;padding:22px 24px 0;display:flex}.snackbar{background:var(--ink-900);color:var(--paper-strong);z-index:100;border-radius:12px;align-items:center;gap:16px;max-width:min(560px,100vw - 32px);padding:12px 14px 12px 18px;font-size:14px;font-weight:500;animation:.22s ease-out snackbar-in;display:flex;position:fixed;bottom:32px;left:50%;transform:translate(-50%);box-shadow:0 12px 32px #0000002e}.snackbar-message{flex:auto;line-height:1.55}.snackbar-dismiss{color:var(--paper-strong);cursor:pointer;opacity:.72;background:0 0;border:0;border-radius:8px;flex:none;width:28px;height:28px;font-size:14px}.snackbar-dismiss:hover{opacity:1;background:#ffffff1f}@keyframes snackbar-in{0%{opacity:0;transform:translate(-50%,16px)}to{opacity:1;transform:translate(-50%)}}.app-content:after{content:"";flex-shrink:0;height:120px;display:block}.app-topbar{background:var(--paper);-webkit-backdrop-filter:saturate(140%)blur(8px);backdrop-filter:saturate(140%)blur(8px);border:0;border-bottom:1px solid var(--rule);box-shadow:none;z-index:5;border-radius:0;gap:18px;padding:14px 24px;position:sticky;top:0}.app-topbar-actions{align-items:center;gap:14px;display:flex}.notification-bell{position:relative}.notification-bell-button{background:var(--app-panel);border:1px solid var(--app-line);color:var(--app-ink,var(--ink-700));cursor:pointer;border-radius:999px;justify-content:center;align-items:center;height:38px;padding:0 12px;display:inline-flex;position:relative}.notification-bell-button:hover{background:color-mix(in srgb, var(--app-accent,var(--shu)) 12%, var(--app-panel))}.notification-bell-button[data-has-unread=true]{border-color:var(--app-accent,var(--shu));color:var(--app-accent,var(--shu))}.notification-bell-button[data-has-unread=true]:hover{background:color-mix(in srgb, var(--app-accent,var(--shu)) 16%, var(--app-panel))}.notification-bell-button[data-severity=warning]{border-color:var(--state-warning);color:var(--state-warning)}.notification-bell-button[data-severity=warning]:hover{background:color-mix(in srgb, var(--state-warning) 16%, var(--app-panel))}.notification-bell-button[data-severity=warning] .notification-bell-badge{background:var(--shu,#4a6b5a)}.notification-bell-icon{line-height:0;display:block}.notification-bell-badge{background:var(--app-accent-gradient,var(--shu));color:var(--paper-strong);text-align:center;border-radius:999px;min-width:20px;margin-left:6px;padding:3px 7px;font-size:11px;font-weight:600;line-height:1}.notification-bell-panel{background:var(--app-panel);border:1px solid var(--app-line-strong);color:var(--app-ink,inherit);z-index:90;border-radius:16px;width:320px;max-height:420px;padding:12px;position:absolute;top:calc(100% + 8px);right:0;overflow-y:auto;box-shadow:0 24px 48px #1a161224,0 4px 12px #1a161214}.notification-bell-panel-header{justify-content:space-between;align-items:center;margin-bottom:8px;padding:0 4px;display:flex}.notification-bell-empty{text-align:center;padding:16px 8px}.notification-bell-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.notification-bell-item{background:var(--app-panel-soft);border:1px solid var(--app-line);border-radius:12px}.notification-bell-item.is-unread{background:color-mix(in srgb, var(--app-accent,var(--shu)) 10%, var(--app-panel));border-color:var(--app-line-strong)}.notification-bell-item.is-unread[data-severity=warning]{background:color-mix(in srgb, var(--state-warning) 12%, var(--app-panel));border-color:var(--state-warning)}.notification-bell-item[data-severity=warning].is-unread strong,:root[data-theme=dark] .notification-bell-item[data-severity=warning].is-unread strong{color:var(--state-warning)}.notification-bell-item.is-read{opacity:.7}.notification-bell-item-action{cursor:pointer;text-align:left;background:0 0;border:0;gap:4px;width:100%;padding:10px 12px;display:grid}.notification-bell-item-action strong{color:var(--app-ink,inherit);font-size:13px;font-weight:600}.notification-bell-item-action small{color:var(--app-muted);font-size:12px}.notification-bell-item-action .notification-bell-item-link{color:var(--app-accent,var(--shu));margin-top:2px;font-weight:600}.notification-bell-section+.notification-bell-section{margin-top:12px}.notification-bell-section-title{letter-spacing:.06em;text-transform:uppercase;margin:0 0 6px;padding:0 4px;font-size:11px;font-weight:600}.notification-bell-item[data-kind=announcement]{border-color:color-mix(in srgb, var(--app-accent,var(--shu)) 35%, var(--app-line))}.notification-bell-item[data-kind=announcement].is-unread{background:color-mix(in srgb, var(--app-accent,var(--shu)) 14%, var(--app-panel))}.notification-bell-item[data-kind=announcement][data-category=maintenance].is-unread,.notification-bell-item[data-kind=announcement][data-category=incident].is-unread{background:color-mix(in srgb, var(--state-warning) 14%, var(--app-panel));border-color:var(--state-warning)}@media (max-width:640px){.notification-bell-panel{width:280px;left:auto;right:-16px}}.app-live-chip{align-items:center;gap:12px;min-width:168px;min-height:52px;padding:10px 16px;display:inline-flex}.app-live-chip>span:last-child{gap:2px;display:grid}.app-sidebar{flex-direction:column;min-width:0;display:flex}.app-workspace-switcher{gap:6px;min-width:0;margin:8px 12px 4px;display:grid;position:relative}.app-workspace-switcher-trigger{background:var(--app-panel-soft);border:1px solid var(--app-line);color:var(--app-ink);cursor:pointer;font:inherit;text-align:left;border-radius:8px;justify-content:space-between;align-items:center;gap:6px;width:100%;min-width:0;padding:7px 9px;font-size:12px;font-weight:600;display:flex}.app-workspace-switcher-trigger:hover:not(:disabled){border-color:var(--app-line-strong)}.app-workspace-switcher-trigger[aria-expanded=true]{border-color:var(--app-accent)}.app-workspace-switcher-trigger:disabled{cursor:not-allowed;opacity:.6}.app-workspace-switcher-trigger-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.app-workspace-switcher-caret{color:var(--app-muted);font-size:10px;line-height:1}.app-workspace-menu{background:var(--app-panel);border:1px solid var(--app-line-strong);z-index:90;border-radius:16px;flex-direction:column;gap:2px;width:max-content;max-width:min(420px,100vw - 16px);padding:8px;display:flex;position:fixed;overflow:hidden;box-shadow:0 24px 48px #1a161224,0 4px 12px #1a161214}.app-workspace-menu hr{border:0;border-top:1px solid var(--app-line);width:calc(100% - 8px);margin:6px 4px}.app-workspace-menu-list{flex:auto;gap:2px;min-height:0;display:grid;overflow-y:auto}.app-workspace-menu-item{color:var(--app-ink);cursor:pointer;font:inherit;font-size:var(--app-type-sm);text-align:left;background:0 0;border:0;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:10px 12px;font-weight:600;display:flex}.app-workspace-menu-item:hover:not(:disabled){background:var(--app-panel-soft);color:var(--app-accent-strong)}.app-workspace-menu-item:disabled{cursor:default}.app-workspace-menu-item[aria-current=true]{background:var(--shu-tint);color:var(--app-accent-strong);font-weight:600}.app-workspace-menu-item-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.app-workspace-menu-check{color:var(--app-accent);font-size:14px;font-weight:600;line-height:1}.app-workspace-menu-create{color:var(--app-accent);white-space:nowrap}.app-workspace-menu-create:hover:not(:disabled){background:var(--shu-tint);color:var(--app-accent-strong)}.app-sidebar>.app-nav,.app-sidebar-nav-wrap>.app-nav{flex:none}.app-sidebar-user{flex:none;margin-top:0;padding-top:12px;position:relative}.app-sidebar-user .app-user-button{justify-content:flex-start;width:100%;display:flex}.app-user-button{background:var(--paper-strong);border:1px solid var(--app-line);color:var(--app-ink);cursor:pointer;font:inherit;border-radius:999px;align-items:center;gap:10px;min-height:48px;padding:4px 16px 4px 4px;transition:background-color .12s,border-color .12s;display:inline-flex}.app-user-button:hover,.app-user-button[aria-expanded=true]{background:var(--app-panel-soft);border-color:var(--app-line-strong)}.app-user-avatar{background:var(--app-accent-gradient);color:var(--paper-strong);font-size:var(--app-type-sm);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-weight:600;line-height:1;display:inline-flex}.app-user-button-label{font-size:var(--app-type-sm);text-align:left;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.app-user-caret{color:var(--app-muted);font-size:10px;line-height:1}.app-user-menu{background:var(--app-panel);border:1px solid var(--app-line-strong);z-index:90;border-radius:16px;flex-direction:column;width:max-content;min-width:240px;max-width:min(360px,100vw - 16px);padding:8px;display:flex;position:fixed;overflow-y:auto;box-shadow:0 24px 48px #1a161224,0 4px 12px #1a161214}.app-user-menu-info{gap:2px;padding:12px 12px 10px;display:grid}.app-user-menu-info strong{font-size:var(--app-type-sm);font-weight:600}.app-user-menu-info small{color:var(--app-muted);font-size:var(--app-type-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app-user-menu hr{border:0;border-top:1px solid var(--app-line);width:calc(100% - 8px);margin:6px 4px}.app-user-menu-item{color:var(--app-ink);cursor:pointer;font:inherit;font-size:var(--app-type-sm);text-align:left;background:0 0;border:0;border-radius:12px;width:100%;padding:10px 12px;font-weight:600;display:block}.app-user-menu-item:hover{background:var(--app-panel-soft);color:var(--app-accent-strong)}.app-metric-grid,.app-dashboard-grid,.app-panel-grid{gap:14px}.report-metric-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;display:grid}.reports-split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;display:grid}@media (max-width:1100px){.reports-split{grid-template-columns:1fr}}.app-metric-card{gap:8px;padding:18px 20px}.app-panel{padding:20px 22px}.app-panel-header{border-bottom:1px solid var(--app-line);justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:20px;padding-bottom:16px;display:flex}.app-panel-header>div{gap:4px;min-width:0;display:grid}.app-panel-header>span{background:var(--app-panel-soft);border:1px solid var(--app-line);color:var(--app-muted);font-family:var(--font-mono);font-size:var(--app-type-xs);white-space:nowrap;border-radius:999px;align-self:center;padding:6px 12px}.app-panel-date{color:var(--app-muted);margin-left:8px;font-size:13px;font-weight:500}.project-list,.work-entry-list,.project-report-list,.timer-form,.manual-entry-form,.project-form{gap:10px}.project-row,.work-entry-row,.project-report-row{gap:12px;padding:14px 16px}.app-shell .field{gap:6px}.app-shell .field input,.app-shell .field select,.app-shell .field textarea{min-height:40px;padding:10px 12px}.app-shell .field textarea{min-height:84px}.app-shell .button{min-height:40px;padding:0 16px}.app-signout-button,.app-inline-button{min-height:36px;padding:0 14px}.timer-face{gap:8px;padding:22px 24px}.work-entry-edit-form{gap:12px;margin-top:14px;padding:18px 20px}.report-metric-grid .app-metric-card,.app-report-summary>div{padding:14px 16px}.today-grid{grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr);align-items:start;gap:18px;display:grid}.today-main{gap:18px;min-width:0;display:grid}.pending-inbox{border:1px solid var(--rule-soft);gap:12px;display:grid}.dashboard-alerts{gap:10px;display:grid}.dashboard-alerts-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.dashboard-alert{border:1px solid var(--app-line);border-radius:14px;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 14px;display:grid}.dashboard-alert.is-warn,.dashboard-alert.is-info{background:var(--shu-tint);border-color:var(--shu-tint-strong)}.dashboard-alert-icon{text-align:center;font-size:16px;line-height:1}.dashboard-alert-label{font-size:13px;font-weight:600}.pending-inbox-header{flex-wrap:wrap;align-items:center;gap:12px}.pending-inbox-count{color:var(--shu);margin-left:4px;font-weight:600}.pending-inbox-hint{margin:0;font-size:12px}.pending-inbox-actions{gap:8px;display:flex}.pending-inbox-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.pending-inbox-item{background:var(--paper-strong);border:1px solid var(--app-line);border-radius:14px;grid-template-columns:12px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 14px;display:grid}.pending-inbox-dot{border-radius:999px;width:10px;height:10px;display:inline-block}.pending-inbox-meta{gap:2px;min-width:0;display:grid}.pending-inbox-meta strong{font-size:14px;font-weight:600}.pending-inbox-meta small{color:var(--ink-500);font-size:12px}.pending-inbox-note{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;color:var(--ink-700)!important}.pending-inbox-item-actions{gap:6px;display:flex}.pending-inbox-more{align-self:flex-start}@media (max-width:640px){.pending-inbox-item{grid-template-columns:10px minmax(0,1fr)}.pending-inbox-item-actions{grid-column:1/-1;justify-content:flex-end}}.today-hero{gap:16px;display:grid}.today-entries{gap:12px;display:grid}.today-sidebar{align-content:start;gap:16px;display:grid;position:sticky;top:18px}.today-quick-add{gap:12px;display:grid}.today-quick-add-hint{margin:0;font-size:12px}.app-quick-add-button{background:var(--cta-gradient);box-shadow:var(--cta-highlight), var(--cta-shadow);color:#fff;cursor:pointer;text-align:center;border:0;border-radius:14px;padding:14px 18px;font-size:14px;font-weight:600;transition:background .15s,box-shadow .15s,transform .1s}.app-quick-add-button:hover{background:var(--cta-gradient-hover);box-shadow:var(--cta-highlight), var(--cta-shadow-hover);transform:translateY(-1px)}.app-quick-add-button:active{transform:translateY(.5px)}.app-quick-add-button:hover{filter:brightness(1.05)}.today-month-summary,.today-projects-mini{gap:14px;display:grid}.month-summary-rows{gap:10px;display:grid}.month-summary-rows>div{background:var(--app-panel-soft);border:1px solid var(--app-line);border-radius:16px;justify-content:space-between;align-items:baseline;padding:14px 16px;display:flex}.month-summary-rows span{color:var(--app-muted);font-size:var(--app-type-sm)}.month-summary-rows strong{font-size:var(--app-type-value);font-weight:600}.month-summary-chart{gap:10px;margin-top:16px;display:grid}.month-summary-chart .app-kicker{margin:0}.project-breakdown-chart{gap:12px;margin:0;padding:0;list-style:none;display:grid}.project-breakdown-row{gap:6px;min-width:0;display:grid}.project-breakdown-meta{grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;display:grid}.project-breakdown-meta .project-color{border-radius:50%;width:10px;height:10px;display:inline-block}.project-breakdown-name{color:var(--app-ink);font-size:var(--app-type-sm);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:500;overflow:hidden}.project-breakdown-value{color:var(--app-muted);font-size:var(--app-type-xs);font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:500}.project-breakdown-track{background:var(--app-panel-soft);border-radius:999px;width:100%;height:8px;overflow:hidden}.project-breakdown-bar{border-radius:inherit;height:100%;transition:width .24s}article.app-panel>.project-breakdown-chart{margin-top:4px}article.app-panel>.project-breakdown-chart+.project-report-table-wrap{margin-top:18px}.mini-project-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.mini-project-list li{background:var(--app-panel-soft);border:1px solid var(--app-line);border-radius:16px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;display:grid}.mini-project-list strong{font-size:var(--app-type-sm);font-weight:600;display:block}.mini-project-list small{color:var(--app-muted);font-size:var(--app-type-xs);display:block}.entries-section,.reports-section,.projects-section{gap:16px;display:grid}.entries-toolbar,.projects-toolbar,.reports-toolbar{background:var(--paper-strong);border:1px solid var(--app-line);border-radius:var(--app-radius);flex-wrap:wrap;align-items:center;gap:14px;padding:14px 18px;display:flex;box-shadow:0 14px 32px #1a16120d}.entries-toolbar .filter-chips{flex:none}.entries-custom-range{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.entries-custom-range .field{flex:none;gap:4px;margin:0}.entries-custom-range .field>span{color:var(--app-muted);font-size:var(--app-type-xs);font-weight:600}.entries-custom-range input[type=date]{min-height:36px;padding:6px 10px}.entries-toolbar .entries-project-filter{flex-direction:row;flex:200px;align-items:center;gap:8px;min-width:0;margin:0;display:flex}.entries-toolbar .entries-project-filter>span{color:var(--app-muted);font-size:var(--app-type-xs);white-space:nowrap;font-weight:600}.entries-toolbar .entries-project-filter select{flex:1;min-width:0}.entries-add-button{margin-left:auto}.filter-chips{background:var(--app-panel-soft);border:1px solid var(--app-line);border-radius:999px;gap:2px;padding:3px;display:inline-flex}.filter-chips button{color:var(--app-muted);cursor:pointer;font:inherit;font-size:var(--app-type-xs);background:0 0;border:0;border-radius:999px;min-height:30px;padding:0 12px;font-weight:600}.filter-chips button:hover{color:var(--app-ink)}.filter-chips button[aria-pressed=true]{background:var(--app-panel);color:var(--app-accent-strong);box-shadow:0 1px 4px #1a161214}.entries-panel{gap:18px;display:grid}.entries-by-day{gap:22px;display:grid}.day-group{gap:10px;display:grid}.day-group-header{border-bottom:1px dashed var(--app-line);justify-content:space-between;align-items:baseline;gap:12px;padding:6px 4px 10px;display:flex}.day-group-header strong{color:var(--app-ink);font-size:var(--app-type-sm);font-weight:600}.day-group-header span{color:var(--app-muted);font-size:var(--app-type-xs)}.entry-row-list{background:var(--app-panel);border:1px solid var(--app-line);border-radius:14px;gap:0;display:grid;overflow:hidden}.entry-row{border:0;border-bottom:1px solid var(--app-line);border-left:3px solid var(--entry-row-color,var(--app-line));background:0 0;border-radius:0;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:10px 16px 10px 13px;transition:background-color .12s;display:grid}.entry-row:hover{background:var(--app-panel-soft)}.entry-row:last-child{border-bottom:0}.entry-row[data-status=active]{background:var(--shu-tint)}.entry-row[data-unassigned=true]{border-left-style:dashed}.entry-row-color{display:none}.entry-row-main{gap:1px;min-width:0;display:grid}.entry-row-main strong{font-size:var(--app-type-sm);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:8px;font-weight:600;display:inline-flex;overflow:hidden}.entry-row-main small{color:var(--app-muted);font-size:var(--app-type-xs);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.entry-row-main .entry-status-active{color:var(--app-accent-strong);font-weight:600}.entry-row-main .entry-status-planned{color:var(--state-warning);font-weight:600}.entry-row-main .entry-status-pending_actual{color:var(--shu-dark);font-weight:600}.entry-row-main .entry-status-submitted{color:var(--state-info);font-weight:600}.entry-row-main .entry-status-approved{color:var(--state-success);font-weight:600}.entry-row-main .entry-status-rejected{color:var(--state-danger);font-weight:600}.entry-row-main .entry-status-locked{color:var(--app-muted);font-weight:600}:root[data-theme=dark] .entry-row-main .entry-status-submitted{color:var(--state-info)}:root[data-theme=dark] .entry-row-main .entry-status-approved{color:var(--state-success)}:root[data-theme=dark] .entry-row-main .entry-status-rejected{color:var(--state-danger)}.entry-row-duration{color:var(--app-accent-strong);font-size:var(--app-type-value);white-space:nowrap;font-weight:600}.entry-row-actions{gap:6px;display:flex}.entry-row-actions button{background:var(--app-panel);border:1px solid var(--rule);color:var(--ink-700);cursor:pointer;font:inherit;font-size:var(--app-type-xs);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;min-height:30px;padding:0 12px;font-weight:600;line-height:1;display:inline-flex}.entry-row-actions button:hover{background:var(--shu-tint);border-color:var(--shu);color:var(--shu-dark)}.entry-row-actions button:disabled{cursor:not-allowed;opacity:.5}.reports-toolbar{gap:14px}.reports-month-stepper{background:var(--app-panel-soft);border:1px solid var(--app-line);border-radius:999px;align-items:center;gap:4px;padding:2px;display:inline-flex;overflow:hidden}.reports-month-stepper button{color:var(--app-muted);cursor:pointer;font:inherit;font-size:var(--app-type-sm);background:0 0;border:0;border-radius:999px;width:32px;height:32px;font-weight:600}.reports-month-stepper button:hover{background:var(--app-panel);color:var(--app-accent-strong)}.reports-month-stepper input[type=month]{color:var(--app-ink);font:inherit;font-size:var(--app-type-sm);background:0 0;border:0;width:auto;padding:0 6px;font-weight:600}.reports-month-stepper input[type=month]:focus{outline:2px solid var(--rule);outline-offset:1px}.reports-toolbar-spacer{flex:1}.project-report-table-wrap{overflow-x:auto}.project-report-table{border-collapse:separate;border-spacing:0;font-size:var(--app-type-sm);width:100%}.project-report-table th,.project-report-table td{text-align:left;padding:10px 12px}.project-report-table th{border-bottom:1px solid var(--app-line);color:var(--app-muted);font-size:var(--app-type-xs);letter-spacing:.02em;font-weight:600}.project-report-table tbody tr{border-bottom:1px solid var(--app-line)}.project-report-table tbody tr:hover{background:var(--app-panel-soft)}.project-report-table td{color:var(--app-ink);font-size:var(--app-type-sm)}.project-report-table td:first-child{font-weight:600}.project-report-table td:nth-child(n+2){font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.project-report-table th:nth-child(n+2){text-align:right}.projects-toolbar>span{color:var(--app-muted);font-size:var(--app-type-sm)}.projects-toolbar>.button.primary{margin-left:auto}.today-calendar{gap:14px;display:grid}.external-event-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.external-event-list li{background:var(--app-panel-soft);border:1px solid var(--app-line);border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.external-event-list li>div:first-child{flex:1;min-width:0}.external-event-actions{flex-shrink:0;align-items:center;gap:6px;display:flex}.external-event-link-select{background:var(--paper-strong);border:1px solid var(--app-line);color:var(--ink-700);border-radius:8px;max-width:180px;padding:4px 8px;font-size:12px}.external-event-mapped{color:var(--state-success);background:#6e89632e;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:600}.external-event-ignored-tag{background:var(--ink-100);color:var(--ink-500);border-radius:999px;padding:4px 10px;font-size:11px;font-weight:600}.external-event-list li.is-ignored{opacity:.55}.external-event-list li.is-ignored strong{text-decoration:line-through}.external-event-ignore-button{color:var(--ink-500)}.external-event-toggle-ignored{align-self:flex-start;margin-top:8px}.external-event-suggestion{align-items:center;gap:6px;margin-top:4px;font-weight:600;display:inline-flex;color:var(--shu)!important}.external-event-suggestion-dot{border-radius:999px;width:8px;height:8px;display:inline-block}.inner-events-section{border-top:1px solid var(--app-line);gap:8px;margin-top:8px;padding-top:12px;display:grid}.inner-events-section h3{margin:0;font-size:13px;font-weight:600}.inner-events-section h3 small{color:var(--shu);margin-left:6px;font-weight:600}.inner-events-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.inner-event-row{background:var(--ink-500);border:1px solid var(--app-line);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;display:flex}.inner-event-meta{gap:2px;min-width:0;display:grid}.inner-event-meta strong{font-size:13px;font-weight:600}.inner-event-meta small{color:var(--ink-500);font-size:12px}.inner-event-out-of-range{background:var(--shu-tint-strong);color:var(--shu-dark);border-radius:999px;margin-left:6px;padding:2px 6px;font-size:10px;font-weight:600}.inner-event-description{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.inner-event-form{border-top:1px dashed var(--app-line);gap:8px;margin-top:8px;padding-top:12px;display:grid}.inner-event-form-row{align-items:end}.inner-event-form-actions{align-self:flex-start}.account-form{gap:16px;margin-top:8px;display:grid}.account-form-actions{align-self:flex-start;margin-top:8px}.account-form-divider{border:0;border-top:1px solid var(--app-line);margin:24px 0 20px}.account-password-row{justify-content:space-between;align-items:center;gap:24px;padding:4px 0;display:flex}.account-password-row>div:first-child{flex:auto;min-width:0}.account-password-row p{color:var(--app-muted);margin:4px 0 0;font-size:12px;line-height:1.5}.account-row-title{color:var(--app-ink);font-size:var(--app-type-sm);align-items:center;gap:8px;font-weight:600;display:inline-flex}.account-notify{background:var(--app-panel-soft);border:1px solid var(--app-line-strong);border-radius:14px;gap:12px;margin-top:16px;padding:14px 18px 16px;display:grid}.account-notify legend{color:var(--app-muted);letter-spacing:.08em;text-transform:uppercase;padding:0 8px;font-size:11px;font-weight:600}.account-notify-row{cursor:pointer;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:14px;padding:4px 0;display:grid}.account-notify-row input[type=checkbox]{align-self:start;width:18px;height:18px;margin:2px 0 0}.account-notify-row strong{color:var(--app-ink);font-size:var(--app-type-sm);font-weight:600;line-height:1.4;display:block}.account-notify-row small{color:var(--app-muted);margin-top:2px;font-size:12px;line-height:1.5;display:block}.account-appearance{gap:10px;padding:4px 0;display:grid}.theme-picker{background:var(--app-panel-soft);border:1px solid var(--app-line);border-radius:14px;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;display:grid}.theme-picker-option{color:var(--app-ink);cursor:pointer;font:inherit;text-align:left;background:0 0;border:1px solid #0000;border-radius:10px;align-items:flex-start;gap:2px;min-height:56px;padding:8px 12px;transition:background-color .12s,border-color .12s,color .12s;display:grid}.theme-picker-option:hover{background:var(--app-panel);border-color:var(--app-line);color:var(--app-accent-strong)}.theme-picker-option:focus-visible{outline:3px solid var(--shu-tint-strong);outline-offset:1px}.theme-picker-option[aria-pressed=true]{background:var(--app-panel);border-color:var(--app-line-strong);color:var(--app-accent-strong);box-shadow:0 1px 4px #1a161214}.theme-picker-label{font-size:var(--app-type-sm);font-weight:600}.theme-picker-description{color:var(--app-muted);font-size:var(--app-type-xs)}.theme-picker-option[aria-pressed=true] .theme-picker-description{color:var(--app-muted)}@media (max-width:520px){.theme-picker{grid-template-columns:1fr}.theme-picker-option{min-height:48px}}.calendar-push-badge{background:color-mix(in srgb, var(--app-accent,var(--shu)) 14%, var(--app-panel));border:1px solid var(--app-line-strong);color:var(--app-ink,inherit);border-radius:999px;padding:4px 10px;font-size:11px;font-weight:600}.work-heatmap{gap:4px;display:grid}.work-heatmap-hour-row{color:var(--app-muted);grid-template-columns:28px repeat(24,minmax(0,1fr));align-items:end;gap:2px;font-size:10px;display:grid}.work-heatmap-hour-row span{text-align:center}.work-heatmap-hour-row span.is-major{font-weight:600}.work-heatmap-row{grid-template-columns:28px repeat(24,minmax(0,1fr));align-items:center;gap:2px;display:grid}.work-heatmap-row-label{color:var(--app-muted);text-align:right;font-size:11px;font-weight:600}.work-heatmap-cell{background:color-mix(in srgb, var(--app-accent,var(--shu)) calc(min(100%, max(10%, var(--heatmap-intensity,0) * 100%))), var(--app-panel-soft,var(--paper-soft)));border:1px solid color-mix(in srgb, var(--app-line,var(--rule-soft)) 55%, transparent);border-radius:3px;height:16px}.work-heatmap-cell[data-empty=true]{background:var(--app-panel-soft,var(--paper-soft));border-color:color-mix(in srgb, var(--app-line,var(--rule-soft)) 35%, transparent)}.work-heatmap-wrap{gap:12px;display:grid}.work-heatmap-legend{color:var(--app-muted);align-items:center;gap:10px;margin-top:4px;font-size:11px;display:flex}.work-heatmap-legend-label{flex-shrink:0}.work-heatmap-legend-scale{flex:1;gap:2px;max-width:220px;display:flex}.work-heatmap-legend-cell{background:color-mix(in srgb, var(--app-accent,var(--shu)) calc(min(100%, max(10%, var(--heatmap-intensity,0) * 100%))), var(--app-panel-soft,var(--paper-soft)));border:1px solid color-mix(in srgb, var(--app-line,var(--rule-soft)) 55%, transparent);border-radius:3px;flex:1;height:12px}@media (max-width:640px){.account-password-row{flex-direction:column;align-items:flex-start}}.daily-breakdown{gap:4px;display:grid}.daily-breakdown-list{gap:4px;margin:0;padding:0;list-style:none;display:grid}.daily-breakdown-row{grid-template-columns:90px minmax(120px,1fr) 80px 80px;align-items:center;gap:12px;padding:4px 8px;display:grid}.daily-breakdown-date{color:var(--ink-700);font-size:12px;font-weight:600}.daily-breakdown-bar{position:relative}.daily-breakdown-bar-track{background:var(--ink-100);border-radius:999px;width:100%;height:12px;display:block;position:relative}.daily-breakdown-bar-fill{background:var(--shu-tint-strong);border-radius:999px;height:100%;transition:width .18s ease-out;position:absolute;top:0;left:0}.daily-breakdown-bar-fill.is-billable{background:var(--shu)}.daily-breakdown-total,.daily-breakdown-billable{text-align:right;font-size:12px}.daily-breakdown-billable{color:var(--shu);font-weight:600}@media (max-width:640px){.daily-breakdown-row{grid-template-columns:60px minmax(0,1fr) 60px}.daily-breakdown-billable{display:none}}.external-event-list strong{font-size:var(--app-type-sm);text-overflow:ellipsis;white-space:nowrap;font-weight:600;display:block;overflow:hidden}.external-event-list small{color:var(--app-muted);font-size:var(--app-type-xs);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;display:block;overflow:hidden}.settings-layout{grid-template-columns:180px minmax(0,1fr);align-items:start;gap:24px;display:grid}.settings-section{gap:16px;min-width:0;display:grid}.settings-tabs{background:var(--app-panel);border:1px solid var(--app-line);border-radius:var(--app-radius);flex-direction:column;gap:2px;padding:8px;display:flex;position:sticky;top:70px}.settings-tab{color:var(--app-ink);cursor:pointer;font:inherit;font-size:var(--app-type-sm);text-align:left;background:0 0;border:0;border-radius:12px;padding:9px 12px;font-weight:500;transition:background-color .12s,color .12s;display:block;position:relative}.settings-tab:hover{background:var(--shu-tint)}.settings-tab[aria-current=page]{background:var(--shu-tint);color:var(--app-accent-strong);font-weight:600}.settings-tab[aria-current=page]:before{background:var(--app-accent-gradient);content:"";border-radius:0 4px 4px 0;width:4px;height:60%;display:block;position:absolute;top:20%;left:-8px}@media (max-width:900px){.settings-layout{grid-template-columns:minmax(0,1fr)}.settings-tabs{flex-flow:wrap;position:static}.settings-tab{text-align:center;flex:auto;min-width:120px}.settings-tab[aria-current=page]:before{display:none}}.hotkey-groups{gap:16px;display:grid}.hotkey-reference-embedded{gap:12px;display:grid}.hotkey-reference-embedded .hotkey-row{background:var(--app-panel-soft)}.hotkey-group-title{color:var(--app-muted);letter-spacing:.04em;text-transform:uppercase;margin:0 0 6px;font-size:12px;font-weight:600}.hotkey-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.hotkey-row{background:var(--app-panel-soft);border:1px solid var(--app-line);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.hotkey-row[data-disabled=true]{opacity:.5}.hotkey-row[data-disabled=true] .hotkey-combo{text-decoration:line-through}.entry-approval{background:var(--app-panel-soft);border:1px solid var(--app-line);border-radius:14px;gap:10px;margin-top:12px;padding:12px 14px;display:grid}.entry-approval-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.entry-approval-pill{border-radius:999px;padding:3px 10px;font-size:11px;font-weight:600}.entry-approval-pill.is-actual{background:color-mix(in srgb, var(--app-accent,var(--shu)) 10%, var(--app-panel));color:var(--app-accent-strong)}.entry-approval-pill.is-submitted{background:color-mix(in srgb, #2563eb 14%, var(--app-panel));color:var(--state-info)}.entry-approval-pill.is-approved{background:color-mix(in srgb, #16a34a 16%, var(--app-panel));color:var(--state-success)}.entry-approval-pill.is-rejected{background:color-mix(in srgb, var(--state-danger) 14%, var(--app-panel));color:var(--state-danger)}.entry-approval-pill.is-locked{background:color-mix(in srgb, var(--app-muted) 18%, var(--app-panel));color:var(--app-muted)}.entry-editor-locked-banner{background:color-mix(in srgb, var(--state-warning) 12%, var(--app-panel));border:1px solid var(--state-warning);color:var(--state-warning);border-radius:12px;margin:0;padding:8px 12px;font-size:12px}:root[data-theme=dark] .entry-editor-locked-banner{color:var(--state-warning)}.entry-approval-reason{color:var(--state-danger);margin:0;font-size:12px}.entry-approval-actions{flex-wrap:wrap;gap:8px;display:flex}.entry-approval-reject{border-top:1px dashed var(--app-line);gap:8px;padding-top:10px;display:grid}.entry-approval-reject-actions{justify-content:flex-end;gap:8px;display:flex}.members-invite-form{background:var(--app-panel-soft);border:1px solid var(--app-line);border-radius:14px;gap:10px;padding:12px 14px;display:grid}.members-section{gap:8px;margin-top:12px;display:grid}.members-section-title{color:var(--app-muted);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:12px;font-weight:600}.members-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.members-row{background:var(--app-panel-soft);border:1px solid var(--app-line);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.members-row[data-muted=true]{opacity:.7}.members-row strong{color:var(--app-ink);font-size:13px}.members-row small{color:var(--app-muted);font-size:12px}.members-row-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.members-row-actions select{background:var(--app-panel);border:1px solid var(--app-line);color:var(--app-ink);border-radius:8px;padding:4px 8px;font-size:12px}.members-role-pill{background:color-mix(in srgb, var(--app-accent,var(--shu)) 14%, var(--app-panel));color:var(--app-accent-strong);border-radius:999px;padding:3px 10px;font-size:11px;font-weight:600}.layouts-shell{border-top:1px solid var(--app-line);grid-template-columns:minmax(0,240px) minmax(0,1fr);align-items:start;gap:24px;margin-top:20px;padding-top:20px;display:grid}@media (max-width:880px){.layouts-shell{grid-template-columns:1fr;gap:16px}}.layouts-list-pane{gap:8px;display:grid}.layouts-list{gap:4px;margin:0;padding:0;list-style:none;display:grid}.layouts-list-item{background:var(--app-panel-soft);border:1px solid var(--app-line);color:var(--app-ink);cursor:pointer;text-align:left;border-radius:12px;gap:2px;width:100%;padding:10px 12px;display:grid}.layouts-list-item.is-active{background:color-mix(in srgb, var(--app-accent,var(--shu)) 10%, var(--app-panel));border-color:var(--app-accent,var(--shu))}.layouts-list-item strong{font-size:13px}.layouts-list-item small{color:var(--app-muted);font-size:11px}.layouts-add-button{margin-top:4px}.layouts-editor{gap:20px;display:grid}.layouts-form{border:0;gap:16px;margin:0;padding:0;display:grid}.layouts-form-row{grid-template-columns:1fr 1fr auto;align-items:end;gap:16px;display:grid}@media (max-width:720px){.layouts-form-row{grid-template-columns:1fr}}.layouts-form-check{white-space:nowrap;flex-direction:row;align-items:center;gap:8px;min-height:40px;padding-bottom:4px;display:flex}.layouts-columns-title{color:var(--app-muted);letter-spacing:.04em;text-transform:uppercase;margin:0 0 6px;font-size:12px;font-weight:600}.layouts-columns-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.layouts-column-row{background:var(--app-panel-soft);border:1px solid var(--app-line);border-radius:12px;grid-template-columns:auto minmax(0,1fr) 96px auto;align-items:center;gap:8px;padding:8px 10px;display:grid}.layouts-column-label,.layouts-column-width{background:var(--app-panel);border:1px solid var(--app-line);color:var(--app-ink);border-radius:8px;padding:6px 8px;font-size:13px}.layouts-column-controls{gap:2px;display:flex}.layouts-column-controls button{background:var(--app-panel);border:1px solid var(--app-line);color:var(--app-ink);cursor:pointer;border-radius:6px;padding:2px 6px;font-size:11px}.layouts-column-controls button[disabled]{cursor:not-allowed;opacity:.5}.layouts-actions{justify-content:flex-end;gap:8px;display:flex}.layouts-preview{gap:6px;display:grid}.layouts-preview-frame{border:1px solid var(--app-line);border-radius:12px;width:100%;height:460px}.layouts-logo{background:var(--app-panel-soft);border:1px solid var(--app-line);border-radius:14px;gap:12px;margin-bottom:0;padding:16px 20px;display:grid}.layouts-logo .layouts-columns-title{margin-bottom:0}.layouts-logo-row{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.layouts-logo-preview{background:var(--app-panel-soft);border:1px solid var(--app-line);object-fit:contain;border-radius:8px;width:96px;height:64px;padding:6px}.layouts-logo-empty{background:var(--app-panel-soft);border:1px dashed var(--app-line);border-radius:8px;justify-content:center;align-items:center;width:96px;height:64px;font-size:12px;display:inline-flex}.layouts-logo-actions{flex-wrap:wrap;gap:8px;display:flex}.layouts-logo-input{display:none}.layouts-logo-help{margin:0;font-size:12px}.onboarding-checklist{background:var(--app-panel);border:1px solid var(--app-line);border-radius:16px;gap:12px;padding:18px 20px;display:grid}.onboarding-checklist-header{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.onboarding-checklist-header h2{margin:0;font-size:16px}.onboarding-checklist-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.onboarding-checklist-step{background:var(--app-panel-soft);border:1px solid var(--app-line);border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 14px;display:grid}.onboarding-checklist-step.is-done{background:color-mix(in srgb, #16a34a 8%, var(--app-panel));border-color:color-mix(in srgb, #16a34a 30%, var(--app-line))}.onboarding-checklist-step strong{font-size:13px}.onboarding-checklist-step small{color:var(--app-muted);margin-top:2px;font-size:12px;display:block}.onboarding-checklist-done{color:var(--state-success);font-size:12px;font-weight:600}:root[data-theme=dark] .onboarding-checklist-done{color:var(--state-success)}.account-danger-zone{gap:12px;margin-top:12px;display:grid}.account-danger-zone h3{color:var(--app-muted);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:12px;font-weight:600}.members-danger-zone{border:1px solid color-mix(in srgb, var(--app-accent,var(--shu)) 30%, var(--app-line));border-radius:14px;gap:10px;margin-top:16px;padding:14px 16px;display:grid}.members-danger-zone header{gap:2px;display:grid}.members-danger-zone h3{margin:0;font-size:16px}.app-kicker-danger{color:color-mix(in srgb, var(--app-accent,var(--shu)) 80%, var(--shu-dark));font-weight:600}.members-danger-zone-form{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;display:grid}@media (max-width:720px){.members-danger-zone-form{grid-template-columns:minmax(0,1fr)}}.members-danger-zone-empty{font-size:13px}.app-shell .button.danger{background:color-mix(in srgb, var(--app-accent,var(--shu)) 85%, #561029);color:var(--paper-strong);border:1px solid #0000}.app-shell .button.danger:hover:not(:disabled){background:color-mix(in srgb, var(--app-accent,var(--shu)) 70%, #340a18)}.app-shell .button.danger:disabled{background:color-mix(in srgb, var(--app-accent,var(--shu)) 40%, var(--app-panel));color:#ffffffd9;cursor:not-allowed}.account-export-link{font-size:12px}.account-export-link a{color:var(--app-accent,var(--shu))}.billing-current{gap:4px;margin-bottom:12px;display:grid}.billing-comingsoon{background:color-mix(in srgb, var(--app-accent,var(--shu)) 8%, var(--app-panel));border:1px solid color-mix(in srgb, var(--app-accent,var(--shu)) 30%, transparent);border-radius:14px;align-items:center;gap:4px;margin:8px 0 16px;padding:12px 14px;display:grid}.billing-comingsoon strong{font-size:14px}.billing-comingsoon p{margin:4px 0 0}.billing-current-row{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.billing-current-label{color:var(--app-muted);font-size:12px}.billing-current-plan{font-size:16px}.billing-promo{border-top:1px solid var(--app-line);gap:8px;margin:4px 0 16px;padding-top:14px;display:grid}.billing-promo h3{margin:0;font-size:14px;font-weight:600}.billing-promo p{margin:0}.billing-promo-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.billing-promo-row input{border:1px solid var(--app-line-strong);background:var(--app-bg);color:var(--app-ink);font-size:var(--app-type-sm);letter-spacing:.04em;text-transform:uppercase;border-radius:8px;flex:1;min-width:200px;padding:8px 12px}.billing-promo-row input:focus{border-color:var(--app-accent);outline:none}.billing-promo-success{color:var(--app-positive,#226f58);font-size:var(--app-type-sm)}.billing-actions{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.billing-plans{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;display:grid}.billing-plan-card{background:var(--app-panel-soft);border:1px solid var(--app-line);border-radius:14px;gap:8px;padding:12px 14px;display:grid}.billing-plan-card.is-current{border-color:var(--app-accent,var(--shu))}.billing-plan-card header{gap:2px;display:grid}.billing-plan-card small{color:var(--app-muted);font-size:12px}.billing-plan-actions{flex-wrap:wrap;gap:6px;display:flex}.audit-log-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.audit-log-row{background:var(--app-panel-soft);border:1px solid var(--app-line);border-radius:12px;gap:4px;padding:10px 14px;display:grid}.audit-log-row-main{gap:2px;display:grid}.audit-log-row-main strong{color:var(--app-ink);font-size:13px}.audit-log-row-main small{color:var(--app-muted);font-size:12px}.audit-log-meta{background:var(--app-panel);color:var(--app-muted);border-radius:6px;padding:4px 8px;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:11px}.reports-layout-select{align-items:center;gap:6px;display:inline-flex}.reports-layout-select select{background:var(--app-panel);border:1px solid var(--app-line);color:var(--app-ink);border-radius:8px;padding:6px 8px;font-size:13px}.entry-calendar-sync{background:var(--app-panel-soft);border:1px solid var(--app-line);border-radius:14px;gap:10px;margin-top:12px;padding:12px 14px;display:grid}.entry-calendar-sync-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.entry-calendar-sync-pill{border-radius:999px;padding:3px 10px;font-size:11px;font-weight:600}.entry-calendar-sync-pill.is-off{background:color-mix(in srgb, var(--app-muted) 18%, var(--app-panel));color:var(--app-muted)}.entry-calendar-sync-pill.is-synced{background:color-mix(in srgb, #16a34a 16%, var(--app-panel));color:var(--state-success)}.entry-calendar-sync-actions{flex-wrap:wrap;gap:8px;display:flex}:root[data-theme=dark] .entry-calendar-sync-pill.is-synced{color:var(--state-success)}.invite-page{background:var(--app-bg,var(--paper));color:var(--app-ink,var(--ink-900));justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.invite-card{background:var(--app-panel,var(--paper-strong));border:1px solid var(--app-line,var(--rule-soft));border-radius:18px;gap:14px;width:100%;max-width:520px;padding:32px 36px;display:grid;box-shadow:0 18px 36px #1a161214}.invite-card h1{margin:0;font-size:24px;font-weight:600}.invite-meta{gap:6px;margin:0;display:grid}.invite-meta dt{color:var(--app-muted,var(--ink-500));letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:600}.invite-meta dd{margin:0;font-size:14px}.invite-error{color:var(--state-danger);margin:0;font-size:13px}.invite-success{color:var(--state-success);margin:0;font-size:13px}.invite-actions{flex-wrap:wrap;gap:10px;display:flex}.invite-warning{background:color-mix(in srgb, var(--state-warning) 12%, var(--app-panel));border:1px solid var(--state-warning);color:var(--ink-900);border-radius:8px;flex-direction:column;gap:12px;padding:14px 16px;display:flex}.invite-warning p{margin:0;font-size:13px;line-height:1.6}:root[data-theme=dark] .invite-page{background:var(--paper);color:var(--ink-900)}:root[data-theme=dark] .invite-card{background:var(--paper-strong);border-color:var(--rule)}:root[data-theme=dark] .invite-error{color:var(--state-danger)}:root[data-theme=dark] .invite-success{color:var(--state-success)}:root[data-theme=dark] .invite-warning{background:color-mix(in srgb, var(--state-warning) 18%, var(--paper-strong));color:var(--ink-900)}:root[data-theme=dark] .entry-approval-pill.is-submitted{color:var(--state-info)}:root[data-theme=dark] .entry-approval-pill.is-approved{color:var(--state-success)}:root[data-theme=dark] .entry-approval-pill.is-rejected,:root[data-theme=dark] .entry-approval-reason{color:var(--state-danger)}.hotkey-row-text{gap:2px;display:grid}.hotkey-row-text strong{color:var(--app-ink);font-size:13px}.hotkey-row-text small{color:var(--app-muted);font-size:12px}.hotkey-combo{background:var(--app-panel);border:1px solid var(--app-line-strong);color:var(--app-ink);white-space:nowrap;border-radius:6px;padding:4px 8px;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:12px}.hotkey-conflicts{background:color-mix(in srgb, var(--state-warning) 12%, var(--app-panel));border:1px solid var(--state-warning);color:var(--state-warning);border-radius:12px;align-items:flex-start;gap:8px;margin-bottom:12px;padding:10px 12px;display:flex}.hotkey-conflicts ul{margin:4px 0 0;padding-left:18px;font-size:12px}:root[data-theme=dark] .hotkey-conflicts{color:var(--state-warning)}.calendar-account-list{gap:10px;display:grid}.calendar-account-row{background:var(--app-panel-soft);border:1px solid var(--app-line);border-radius:16px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px 16px;display:grid}.calendar-account-info strong{font-size:var(--app-type-row);font-weight:600;display:block}.calendar-account-info small{color:var(--app-muted);font-size:var(--app-type-xs);margin-top:4px;display:block}.calendar-account-actions{gap:8px;display:flex}@media (max-width:820px){.calendar-account-row{grid-template-columns:1fr}.calendar-account-actions{width:100%}.calendar-account-actions button{flex:1}}.sheet-backdrop{opacity:0;pointer-events:none;z-index:100;background:#241f216b;transition:opacity .2s;position:fixed;inset:0}.sheet-backdrop[data-open=true]{opacity:1;pointer-events:auto}.sheet{background:var(--app-panel);border-left:1px solid var(--app-line);pointer-events:none;visibility:hidden;z-index:101;flex-direction:column;width:min(480px,100vw);transition:transform .24s,visibility 0s linear .24s;display:flex;position:fixed;top:0;bottom:0;right:0;transform:translate(100%);box-shadow:-16px 0 40px #9153492e}.sheet[data-open=true]{pointer-events:auto;visibility:visible;transition:transform .24s,visibility linear;transform:translate(0)}.sheet-header{border-bottom:1px solid var(--app-line);justify-content:space-between;align-items:flex-start;gap:12px;padding:22px 24px 18px;display:flex}.sheet-header h2{font-size:var(--app-type-h2);margin:4px 0 0}.sheet-close{background:var(--app-panel-soft);border:1px solid var(--app-line);color:var(--app-ink);cursor:pointer;font:inherit;border-radius:999px;width:32px;height:32px;padding:0;font-size:18px;font-weight:600;line-height:1}.sheet-close:hover{background:var(--paper-soft);border-color:var(--rule);color:var(--app-accent-strong)}.sheet-body{flex:1;min-width:0;padding:22px 24px 28px;overflow:hidden auto}.sheet-form{gap:16px;min-width:0;display:grid}.sheet-form .field,.sheet-form .form-row>.field{min-width:0}.sheet-form input,.sheet-form select,.sheet-form textarea{box-sizing:border-box;width:100%;min-width:0;max-width:100%}.sheet-form .checkbox-field input{width:16px;height:16px;min-height:16px;padding:0}.entry-advanced{border-top:1px solid var(--app-line);padding-top:12px}.entry-advanced>summary{color:var(--app-muted);cursor:pointer;font-size:var(--app-type-sm);-webkit-user-select:none;user-select:none;padding:4px 0;font-weight:600;list-style:none}.entry-advanced>summary::-webkit-details-marker{display:none}.entry-advanced>summary:before{content:"▸";margin-right:8px;transition:transform .15s;display:inline-block}.entry-advanced[open]>summary:before{transform:rotate(90deg)}.entry-advanced>summary:hover{color:var(--app-accent-strong)}.entry-advanced-body{gap:14px;padding-top:12px;display:grid}.sheet-form .manual-entry-time-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sheet-form .manual-entry-time-grid>.field{min-width:0}.sheet-error{background:var(--shu-tint);border:1px solid var(--rule);color:var(--app-accent-strong);font-size:var(--app-type-sm);border-radius:14px;margin:0;padding:10px 12px}.sheet-actions{border-top:1px solid var(--app-line);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;margin-top:14px;padding-top:18px;display:flex}.sheet-actions .app-inline-button{margin-right:auto}.sheet-danger-button{background:var(--app-panel);border:1px solid var(--rule);color:var(--state-danger);cursor:pointer;font:inherit;font-size:var(--app-type-sm);white-space:nowrap;border-radius:999px;min-height:36px;padding:0 14px;font-weight:600}.sheet-danger-button:hover{background:var(--state-danger-bg);border-color:var(--state-danger);color:var(--state-danger)}.sheet-danger-button:disabled{cursor:not-allowed;opacity:.5}.app-section-title{flex:auto;gap:2px;min-width:0;padding:0;display:grid}.app-section-title h1{text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.app-section-title>p{margin:0}.app-topbar{justify-content:flex-start;align-items:center;gap:18px;display:flex}.app-topbar-right{flex-shrink:0;align-items:center;gap:14px;margin-left:auto;display:flex}.timer-header{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:14px;margin-left:auto;display:flex}.timer-header-display{align-items:baseline;gap:14px;min-width:0;display:flex}.timer-header-elapsed{color:var(--app-ink);font-feature-settings:"tnum" 1;font-size:var(--app-type-h2);letter-spacing:.02em;font-weight:600;line-height:1}.timer-header[data-state=idle] .timer-header-elapsed{color:var(--app-muted)}.timer-header[data-state=paused] .timer-header-elapsed{color:var(--state-warning)}.timer-header-label{color:var(--app-muted);font-size:var(--app-type-sm);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.timer-header[data-state=active] .timer-header-label,.timer-header[data-state=paused] .timer-header-label{color:var(--app-accent-strong)}.timer-header-controls{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.timer-header-project-select{background:var(--app-panel);border:1px solid var(--app-line-strong);color:var(--app-ink);font:inherit;font-size:var(--app-type-sm);border-radius:999px;min-height:40px;padding:0 14px;font-weight:600}.timer-header-project-select:hover:not(:disabled){border-color:var(--app-accent-strong)}.timer-header-project-select:disabled{cursor:not-allowed;opacity:.5}.timer-header-button{background:var(--app-panel);border:1px solid var(--app-line-strong);color:var(--app-ink);cursor:pointer;font:inherit;font-size:var(--app-type-sm);border-radius:999px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:0 18px;font-weight:600;line-height:1;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s;display:inline-flex}.timer-header-button:hover:not(:disabled){border-color:var(--app-accent-strong);box-shadow:0 6px 14px #a92f5826}.timer-header-button:disabled{cursor:not-allowed;opacity:.55}.timer-header-button.is-primary{background:var(--cta-gradient);box-shadow:var(--cta-highlight), var(--cta-shadow);color:#fff;border-color:#0000}.timer-header-button.is-primary:hover:not(:disabled){background:var(--cta-gradient-hover);box-shadow:var(--cta-highlight), var(--cta-shadow-hover);border-color:#0000;transform:translateY(-1px)}.timer-header-button.is-primary:active:not(:disabled){transform:translateY(0)}.timer-header-button.is-pause{background:var(--paper-strong);border-color:var(--rule);color:var(--state-warning)}.timer-header-button.is-pause:hover:not(:disabled){background:var(--shu-tint);border-color:var(--ink-500);color:var(--state-warning)}.timer-header-button.is-stop{background:var(--app-panel);border-color:var(--rule);color:var(--state-danger)}.timer-header-button.is-stop:hover:not(:disabled){background:var(--state-danger-bg);border-color:var(--state-danger);color:var(--state-danger)}.timer-controls{flex-wrap:wrap;gap:12px;margin-top:16px;display:flex}.timer-big-button{background:var(--app-panel);border:1px solid var(--app-line-strong);color:var(--app-ink);cursor:pointer;font:inherit;font-size:var(--app-type-row);letter-spacing:.01em;border-radius:999px;justify-content:center;align-items:center;gap:10px;min-height:56px;padding:0 28px;font-weight:600;line-height:1;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s;display:inline-flex}.timer-big-button:hover{border-color:var(--app-accent-strong);box-shadow:0 8px 20px #1a16120f}.timer-big-button:disabled{cursor:not-allowed;opacity:.55;box-shadow:none}.timer-big-icon{font-size:1.4em;line-height:1}.timer-big-button-start,.timer-big-button-resume{background:var(--cta-gradient);box-shadow:var(--cta-highlight), var(--cta-shadow);color:#fff;border-color:#0000;flex:220px}.timer-big-button-start:hover,.timer-big-button-resume:hover{background:var(--cta-gradient-hover);box-shadow:var(--cta-highlight), var(--cta-shadow-hover);border-color:#0000;transform:translateY(-1px)}.timer-big-button-start:active,.timer-big-button-resume:active{transform:translateY(0)}.timer-big-button-pause{background:var(--paper-strong);border-color:var(--rule);color:var(--state-warning);flex:200px}.timer-big-button-pause:hover{background:var(--shu-tint);border-color:var(--ink-500);color:var(--state-warning)}.timer-big-button-stop{background:var(--app-panel);border-color:var(--rule);color:var(--state-danger);flex:180px}.timer-big-button-stop:hover{background:var(--state-danger-bg);border-color:var(--state-danger);color:var(--state-danger)}.timer-face[data-paused=true]{background:var(--app-panel-soft);border:1px dashed var(--ink-300,#a89e89);color:var(--app-ink)}.timer-face[data-paused=true] strong{opacity:.78}.timer-state-chip{background:var(--app-panel-soft);border:1px solid var(--app-line);color:var(--app-muted);font-size:var(--app-type-xs);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:4px 10px;font-weight:600}.timer-state-chip[data-state=live]{background:var(--shu-tint);border-color:var(--rule);color:var(--app-accent-strong)}.timer-state-chip[data-state=paused]{color:var(--state-warning);background:#d99a4d26;border-color:#d99a4d66}.timer-inline-form{gap:12px;margin-top:16px;display:grid}.timer-inline-form .field{gap:6px;display:grid}.timer-inline-form .form-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;display:grid}.entry-row[data-unassigned=true]{border-style:dashed}.entry-row-badge{color:var(--state-warning);font-size:var(--app-type-xs);letter-spacing:.02em;vertical-align:middle;background:#d99a4d2e;border:1px solid #d99a4d73;border-radius:999px;margin-left:8px;padding:1px 8px;font-weight:600}.entry-row-live-chip{background:var(--shu-tint);border:1px solid var(--shu);color:var(--shu-dark);font-size:var(--app-type-xs);letter-spacing:.02em;vertical-align:middle;border-radius:999px;align-items:center;gap:6px;margin-left:8px;padding:3px 10px 3px 8px;font-weight:600;line-height:1;display:inline-flex}.entry-row-live-chip[data-state=paused]{background:var(--state-warning-bg);border-color:var(--state-warning);color:var(--state-warning)}.entry-row-live-dot{background:var(--shu);border-radius:999px;width:7px;height:7px;animation:1.4s ease-in-out infinite entry-row-live-pulse;display:inline-block}.entry-row-live-chip[data-state=paused] .entry-row-live-dot{background:var(--state-warning);opacity:.85;animation:none}@keyframes entry-row-live-pulse{0%,to{box-shadow:0 0 0 0 var(--shu-tint-strong);transform:scale(1)}50%{transform:scale(1.18);box-shadow:0 0 0 5px #0000}}@media (prefers-reduced-motion:reduce){.entry-row-live-dot{animation:none}}.entry-row-project-select{background:var(--app-panel);border:1px solid var(--rule);color:var(--ink-700);font:inherit;font-size:var(--app-type-xs);border-radius:999px;min-height:30px;padding:0 10px;font-weight:600}.entry-row-project-select:hover{border-color:var(--app-accent-strong)}.entry-row-actions .entry-row-mark-actual{background:var(--app-accent-gradient);color:var(--paper-strong);border-color:#0000}.entry-row-actions .entry-row-mark-actual:hover{color:var(--paper-strong);filter:brightness(1.05);border-color:#0000}.entry-row-actions .entry-row-mark-actual:disabled{background:var(--app-panel-soft);color:var(--app-muted);cursor:not-allowed;opacity:.6}.entry-row-main .entry-status-paused{color:var(--state-warning);font-weight:600}@media (max-width:1080px){.today-grid{grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr)}}@media (max-width:820px){.app-shell{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr);height:100dvh}.app-shell>.app-main{overflow-y:auto}.app-shell>.app-sidebar{overflow:hidden}.app-sidebar{border-bottom:1px solid var(--app-line);border-right:0;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"brand workspace user""navs navs navs";align-items:center;gap:4px 10px;padding:10px 12px 0;display:grid}.app-sidebar-brand{grid-area:brand;min-width:0}.app-workspace-switcher{grid-area:workspace;min-width:0;margin:0}.app-workspace-switcher .app-kicker{display:none}.app-sidebar-user{grid-area:user;margin:0;padding:0}.app-sidebar-user .app-user-button{width:auto;min-height:40px;padding:2px}.app-sidebar-user .app-user-button-label,.app-sidebar-user .app-user-caret{display:none}.app-sidebar-user .app-user-avatar{width:36px;height:36px}.app-sidebar-nav-wrap{-webkit-overflow-scrolling:touch;scrollbar-width:thin;flex-direction:row;flex:none;grid-area:navs;gap:6px;min-width:0;min-height:0;padding:4px 0 8px;display:flex;overflow:auto hidden}.app-sidebar-nav-wrap .app-nav,.app-sidebar-nav-wrap .app-nav.app-nav-footer{border-top:0;flex-direction:row;flex:none;gap:4px;margin:0;padding:0;display:flex}.app-sidebar-nav-wrap .app-nav.app-nav-footer{border-left:1px solid var(--app-line);margin-left:4px;padding-left:6px}.app-nav button,.app-nav .app-nav-link{text-align:center;white-space:nowrap;border-radius:999px;flex:none;min-height:36px;padding:7px 14px}.app-nav button[aria-current=page]:before,.app-nav .app-nav-link[aria-current=page]:before,.app-nav button small,.app-nav .app-nav-link small{display:none}.app-topbar{flex-flow:row;align-items:center;column-gap:10px;min-height:48px;padding:8px 14px}.app-section-title>.app-kicker{display:none}.app-section-title h1{font-size:var(--app-type-body);line-height:1.2}.app-topbar-right{gap:8px}.timer-header{flex-wrap:nowrap;gap:8px}.timer-header-display{gap:6px}.timer-header-elapsed{font-size:var(--app-type-body)}.timer-header-project-select{display:none}.timer-header-button{min-height:36px;padding:0 10px}.timer-header-button>span:not([aria-hidden=true]){display:none}.notification-bell-button{height:36px}.app-topbar-actions{flex-wrap:wrap;gap:10px;display:flex}.app-user{flex:220px;min-width:0}.today-grid{grid-template-columns:minmax(0,1fr)}.today-sidebar{position:static}.entries-toolbar,.reports-toolbar,.projects-toolbar{flex-direction:column;align-items:stretch}.entries-add-button,.projects-toolbar>.button.primary{margin-left:0}.entries-toolbar .entries-project-filter{flex-direction:column;flex:none;align-items:stretch}.entries-toolbar .entries-project-filter select{flex:none}.filter-chips{flex-wrap:wrap}.entry-row{grid-template-rows:auto auto;grid-template-columns:auto minmax(0,1fr) auto}.entry-row-actions{grid-column:1/-1;justify-content:flex-end}.timer-inline-form .form-row{grid-template-columns:minmax(0,1fr)}.timer-big-button{flex-basis:100%}.reports-toolbar-spacer{display:none}.sheet{border-radius:var(--app-radius) var(--app-radius) 0 0;border-left:0;border-top:1px solid var(--app-line);width:100%;height:min(88vh,720px);inset:auto 0 0;transform:translateY(100%)}.sheet[data-open=true]{transform:translateY(0)}.project-row{grid-template-columns:auto minmax(0,1fr)}.project-rate,.project-actions{grid-column:1/-1;justify-self:start}.project-actions{width:100%}.project-actions button{flex:1}.app-panel-actions{flex-direction:column;align-items:stretch}}:root[data-theme=dark] body:has(.app-shell){background:var(--paper,#181410)}:root[data-theme=dark] .app-shell{--app-accent:var(--shu,#4a6b5a);--app-accent-2:var(--ink-900,#f4ecd9);--app-accent-strong:var(--shu,#4a6b5a);--app-accent-gradient:var(--shu,#4a6b5a);--app-bg:var(--paper,#181410);--app-ink:var(--ink-900,#f4ecd9);--app-line:var(--rule-soft,#2d2820);--app-line-strong:var(--rule,#3d352b);--app-muted:var(--ink-500,#a89e89);--app-panel:var(--paper-strong,#221d18);--app-panel-soft:var(--paper-soft,#2a241e);background:var(--paper,#181410);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=dark] .app-sidebar,:root[data-theme=dark] .app-topbar,:root[data-theme=dark] .app-user,:root[data-theme=dark] .app-metric-card,:root[data-theme=dark] .app-panel,:root[data-theme=dark] .app-empty-card{background:var(--paper-strong,#221d18);border-color:var(--rule-soft,#2d2820);box-shadow:none}:root[data-theme=dark] .app-sidebar{background:var(--paper-strong,#221d18);border-right-color:var(--rule,#3d352b)}:root[data-theme=dark] .app-topbar{background:var(--paper);border-bottom-color:var(--rule)}:root[data-theme=dark] .app-nav button,:root[data-theme=dark] .app-nav .app-nav-link{color:var(--ink-700,#d8cfb7)}:root[data-theme=dark] .app-nav button:hover,:root[data-theme=dark] .app-nav .app-nav-link:hover{background:var(--paper-soft,#2a241e)}:root[data-theme=dark] .app-nav button[aria-current=page],:root[data-theme=dark] .app-nav .app-nav-link[aria-current=page]{background:var(--shu-tint);color:var(--shu,#4a6b5a)}:root[data-theme=dark] .app-sidebar-nav-wrap .app-nav-footer{border-top-color:var(--rule-soft,#2d2820)}:root[data-theme=dark] .timer-face{background:var(--paper-strong,#221d18);border-color:var(--rule,#3d352b);color:var(--ink-900,#f4ecd9)}:root[data-theme=dark] .timer-face[data-active=true]{background:var(--paper-strong,#221d18);border-color:var(--shu,#4a6b5a);border-left-width:3px}:root[data-theme=dark] .timer-face[data-paused=true]{background:var(--paper-soft,#2a241e);border-style:dashed;border-color:var(--ink-300,#7a705f)}:root[data-theme=dark] .settings-tabs{background:var(--paper-strong,#221d18);border-color:var(--rule-soft,#2d2820)}:root[data-theme=dark] .settings-tab{color:var(--ink-700,#d8cfb7)}:root[data-theme=dark] .settings-tab:hover{background:var(--paper-soft,#2a241e)}:root[data-theme=dark] .settings-tab[aria-current=page]{background:var(--shu-tint);color:var(--shu,#4a6b5a)}:root[data-theme=dark] .settings-tab[aria-current=page]:before,:root[data-theme=dark] .app-nav button[aria-current=page]:before,:root[data-theme=dark] .app-nav .app-nav-link[aria-current=page]:before{background:var(--shu,#4a6b5a)}:root[data-theme=dark] .app-shell .button.primary{color:var(--paper);background:linear-gradient(#f4ecd9 0%,#d4c9b1 100%);box-shadow:inset 0 1px #fbf7ec80,0 2px 6px #0000004d}:root[data-theme=dark] .app-shell .button.primary:hover{background:linear-gradient(#fbf7ec 0%,#ddd0b5 100%)}:root[data-theme=dark] .app-shell .button.primary.is-cta{background:var(--cta-gradient);box-shadow:var(--cta-highlight), var(--cta-shadow);color:#fff}:root[data-theme=dark] .app-shell .button.primary.is-cta:hover{background:var(--cta-gradient-hover);box-shadow:var(--cta-highlight), var(--cta-shadow-hover)}:root[data-theme=dark] .app-quick-add-button{background:var(--cta-gradient);box-shadow:var(--cta-highlight), var(--cta-shadow);color:#fff}:root[data-theme=dark] .app-quick-add-button:hover{background:var(--cta-gradient-hover);box-shadow:var(--cta-highlight), var(--cta-shadow-hover)}:root[data-theme=dark] .app-shell .button.secondary,:root[data-theme=dark] .app-signout-button,:root[data-theme=dark] .app-inline-button,:root[data-theme=dark] .project-actions button,:root[data-theme=dark] .work-entry-actions button{background:var(--paper-soft,#2a241e);border-color:var(--rule,#3d352b);color:var(--ink-900,#f4ecd9)}:root[data-theme=dark] .app-shell .button.secondary:hover,:root[data-theme=dark] .app-signout-button:hover,:root[data-theme=dark] .app-inline-button:hover,:root[data-theme=dark] .project-actions button:hover,:root[data-theme=dark] .work-entry-actions button:hover,:root[data-theme=dark] .entry-row-actions button:hover{background:var(--shu-tint);border-color:var(--shu);color:var(--shu)}:root[data-theme=dark] .app-message,:root[data-theme=dark] .app-panel-header>span,:root[data-theme=dark] .project-row,:root[data-theme=dark] .work-entry-row,:root[data-theme=dark] .project-report-row,:root[data-theme=dark] .work-entry-edit-form,:root[data-theme=dark] .app-report-summary>div,:root[data-theme=dark] .app-shell .field input,:root[data-theme=dark] .app-shell .field select,:root[data-theme=dark] .app-shell .field textarea{background:var(--paper-soft,#2a241e);border-color:var(--rule,#3d352b);color:var(--ink-900,#f4ecd9)}:root[data-theme=dark] .app-shell .field input::placeholder,:root[data-theme=dark] .app-shell .field textarea::placeholder{color:var(--ink-300,#7a705f)}:root[data-theme=dark] .app-kicker,:root[data-theme=dark] .project-rate,:root[data-theme=dark] .work-entry-row span,:root[data-theme=dark] .project-report-row span,:root[data-theme=dark] .pending-inbox-count{color:var(--shu,#4a6b5a)}:root[data-theme=dark] .app-live-chip{background:var(--paper-strong,#221d18);border-color:var(--rule,#3d352b);color:var(--ink-900,#f4ecd9)}:root[data-theme=dark] .app-live-chip small{color:var(--ink-500,#a89e89)}:root[data-theme=dark] .onboarding-banner,:root[data-theme=dark] .today-card .dashboard-hero.is-empty,:root[data-theme=dark] .dashboard-hero.is-empty{background:var(--paper-soft,#2a241e);border-color:var(--rule,#3d352b)}:root[data-theme=dark] .onboarding-banner{border-left-color:var(--shu,#4a6b5a)}:root[data-theme=dark] .app-signout-button,:root[data-theme=dark] .app-inline-button,:root[data-theme=dark] .project-actions button,:root[data-theme=dark] .work-entry-actions button,:root[data-theme=dark] .entry-row-actions button,:root[data-theme=dark] .app-shell .button.secondary{background:var(--paper-soft);border-color:var(--rule);color:var(--ink-700)}:root[data-theme=dark] .app-signout-button:hover,:root[data-theme=dark] .app-inline-button:hover,:root[data-theme=dark] .project-actions button:hover,:root[data-theme=dark] .work-entry-actions button:hover,:root[data-theme=dark] .entry-row-actions button:hover,:root[data-theme=dark] .app-shell .button.secondary:hover{background:var(--shu-tint);border-color:var(--shu);color:var(--shu)}:root[data-theme=dark] .app-message,:root[data-theme=dark] .app-live-chip,:root[data-theme=dark] .app-live-chip.is-idle,:root[data-theme=dark] .app-panel-header>span,:root[data-theme=dark] .project-row,:root[data-theme=dark] .work-entry-row,:root[data-theme=dark] .project-report-row,:root[data-theme=dark] .work-entry-edit-form,:root[data-theme=dark] .app-report-summary>div,:root[data-theme=dark] .app-shell .field input,:root[data-theme=dark] .app-shell .field select,:root[data-theme=dark] .app-shell .field textarea{background:var(--app-panel-soft);border-color:var(--app-line);color:var(--app-ink)}:root[data-theme=dark] .timer-face,:root[data-theme=dark] .timer-face[data-active=true]{background:var(--app-panel-soft) padding-box, var(--app-accent-gradient) border-box;border-color:#0000}:root[data-theme=dark] .entries-toolbar,:root[data-theme=dark] .reports-toolbar,:root[data-theme=dark] .projects-toolbar{background:var(--paper-strong);border-color:var(--app-line);box-shadow:none}:root[data-theme=dark] .filter-chips,:root[data-theme=dark] .reports-month-stepper{background:var(--app-panel-soft);border-color:var(--app-line)}:root[data-theme=dark] .filter-chips button{color:var(--app-muted)}:root[data-theme=dark] .filter-chips button:hover{color:var(--ink-700)}:root[data-theme=dark] .filter-chips button[aria-pressed=true]{background:var(--paper-soft);color:var(--app-accent-strong)}:root[data-theme=dark] .reports-month-stepper button{color:var(--app-muted)}:root[data-theme=dark] .reports-month-stepper button:hover{background:var(--paper-soft);color:var(--app-accent-strong)}:root[data-theme=dark] .reports-month-stepper input[type=month]{color:var(--app-ink)}:root[data-theme=dark] .month-summary-rows>div,:root[data-theme=dark] .mini-project-list li{background:var(--app-panel-soft);border-color:var(--app-line)}:root[data-theme=dark] .entry-row{background:var(--app-panel-soft);border-bottom-color:var(--app-line)}:root[data-theme=dark] .entry-row[data-status=active]{border-bottom-color:var(--app-line-strong)}:root[data-theme=dark] .entry-row-actions button{background:var(--paper-soft);border-color:var(--rule);color:var(--ink-700)}:root[data-theme=dark] .entry-row-actions button:hover{background:var(--paper-soft);border-color:var(--ink-500);color:var(--paper-strong)}:root[data-theme=dark] .day-group-header,:root[data-theme=dark] .project-report-table th,:root[data-theme=dark] .project-report-table tbody tr{border-bottom-color:var(--app-line)}:root[data-theme=dark] .project-report-table tbody tr:hover,:root[data-theme=dark] .project-breakdown-track{background:var(--app-panel-soft)}:root[data-theme=dark] .project-breakdown-name{color:var(--app-ink)}:root[data-theme=dark] .project-breakdown-value{color:var(--app-muted)}:root[data-theme=dark] .sheet{background:var(--app-panel);border-color:var(--app-line);box-shadow:-16px 0 40px #0000007a}:root[data-theme=dark] .sheet-header,:root[data-theme=dark] .sheet-actions{border-color:var(--app-line)}:root[data-theme=dark] .sheet-close{background:var(--app-panel-soft);border-color:var(--app-line);color:var(--app-ink)}:root[data-theme=dark] .sheet-close:hover{background:var(--paper-soft);border-color:var(--app-line-strong);color:var(--app-accent-strong)}:root[data-theme=dark] .sheet-error{color:var(--app-accent-strong);background:#ff6f9f2e;border-color:#ff6f9f66}:root[data-theme=dark] .sheet-danger-button{background:var(--paper-soft);border-color:var(--rule);color:var(--state-danger)}:root[data-theme=dark] .sheet-danger-button:hover{background:var(--paper-soft);border-color:var(--app-accent-strong);color:var(--paper-strong)}:root[data-theme=dark] .app-user-button{background:var(--paper-strong);border-color:var(--app-line);color:var(--app-ink)}:root[data-theme=dark] .app-user-button:hover,:root[data-theme=dark] .app-user-button[aria-expanded=true]{background:var(--paper-soft);border-color:var(--app-line-strong)}:root[data-theme=dark] .app-user-menu{background:var(--app-panel);border-color:var(--app-line);box-shadow:0 18px 36px #0000007a}:root[data-theme=dark] .app-user-menu hr{border-top-color:var(--app-line)}:root[data-theme=dark] .app-user-menu-item{color:var(--app-ink)}:root[data-theme=dark] .app-user-menu-item:hover{background:var(--app-panel-soft);color:var(--app-accent-strong)}:root[data-theme=dark] .timer-big-button{background:var(--app-panel);border-color:var(--app-line);color:var(--app-ink)}:root[data-theme=dark] .timer-big-button:hover{border-color:var(--app-accent-strong)}:root[data-theme=dark] .timer-big-button-pause{border-color:var(--rule);color:var(--state-warning);background:#3a2a1c}:root[data-theme=dark] .timer-big-button-pause:hover{border-color:var(--ink-500);color:var(--state-warning);background:#4a371f}:root[data-theme=dark] .timer-big-button-stop{background:var(--app-panel);border-color:var(--rule);color:var(--state-danger)}:root[data-theme=dark] .timer-big-button-stop:hover{border-color:var(--rule);color:var(--state-danger);background:#3a2128}:root[data-theme=dark] .entry-row-badge,:root[data-theme=dark] .timer-state-chip[data-state=paused]{color:var(--state-warning);background:#d99a4d38;border-color:#d99a4d80}:root[data-theme=dark] .timer-header-elapsed{color:var(--app-ink)}:root[data-theme=dark] .timer-header[data-state=paused] .timer-header-elapsed{color:var(--state-warning)}:root[data-theme=dark] .timer-header-button,:root[data-theme=dark] .timer-header-project-select{background:var(--app-panel);border-color:var(--app-line);color:var(--app-ink)}:root[data-theme=dark] .timer-header-button:hover:not(:disabled),:root[data-theme=dark] .timer-header-project-select:hover:not(:disabled){border-color:var(--app-accent-strong)}:root[data-theme=dark] .timer-header-button.is-pause{border-color:var(--rule);color:var(--state-warning);background:#3a2a1c}:root[data-theme=dark] .timer-header-button.is-pause:hover:not(:disabled){border-color:var(--ink-500);color:var(--state-warning);background:#4a371f}:root[data-theme=dark] .timer-header-button.is-stop{background:var(--app-panel);border-color:var(--rule);color:var(--state-danger)}:root[data-theme=dark] .timer-header-button.is-stop:hover:not(:disabled){border-color:var(--rule);color:var(--state-danger);background:#3a2128}:root[data-theme=dark] .app-section-title>p:last-child{color:var(--app-muted)}.leave-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.leaves-embedded{flex-direction:column;gap:10px;display:flex}.leaves-embedded-meta{text-align:right;margin:0;font-size:12px}.leave-row-button{background:var(--app-panel-soft);border:1px solid var(--app-line);cursor:pointer;text-align:left;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:10px 14px;display:flex}.leave-row-button:hover{background:var(--app-panel);border-color:var(--app-line-strong)}.leave-row-button strong{font-size:14px;display:block}.leave-row-button small{color:var(--app-muted);font-size:12px}.leave-row-arrow{color:var(--app-muted);font-size:18px}.exports-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.exports-list li{background:var(--app-panel-soft);border:1px solid var(--app-line);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.exports-list li strong{font-size:14px;display:block}.exports-list li small{color:var(--app-muted);font-size:12px}.calendar-beta-disclaimer{background:color-mix(in srgb, var(--state-warning,#a87a3d) 8%, var(--app-panel));border-left:2px solid var(--state-warning,#a87a3d);font-size:var(--app-type-xs);border-radius:6px;margin-top:8px;padding:10px 12px;line-height:1.6}.calendar-beta-disclaimer em{font-style:normal;font-weight:500}.calendar-beta-disclaimer a{color:var(--app-accent-strong);text-underline-offset:2px;text-decoration:underline}.calendar-comingsoon{background:var(--app-panel-muted,color-mix(in srgb, var(--app-panel) 92%, var(--app-fg) 6%));border:1px dashed color-mix(in srgb, var(--app-fg) 18%, transparent);border-radius:8px;gap:8px;margin-top:8px;padding:14px 16px;display:grid}.calendar-comingsoon p{margin:0}.calendar-comingsoon a{color:var(--app-accent-strong);text-underline-offset:2px;text-decoration:underline}.app-beta-banner{background:color-mix(in srgb, var(--state-warning,#a87a3d) 12%, var(--app-panel));border:1px solid color-mix(in srgb, var(--state-warning,#a87a3d) 32%, transparent);border-left:3px solid var(--state-warning,#a87a3d);border-radius:10px;align-items:flex-start;gap:12px;margin-bottom:16px;padding:12px 16px;display:flex}.app-beta-banner-body{flex-direction:column;flex:1;gap:4px;display:flex}.app-beta-banner-body strong{font-size:var(--app-type-sm);font-weight:600}.app-beta-banner-body p{color:var(--app-muted);font-size:var(--app-type-xs);margin:0;line-height:1.55}.app-beta-banner-body a{color:var(--app-accent-strong);text-underline-offset:2px;text-decoration:underline}.app-beta-banner-body a:hover{color:var(--app-accent)}.app-beta-banner-dismiss{color:var(--app-muted);cursor:pointer;background:0 0;border:0;border-radius:999px;flex-shrink:0;width:28px;height:28px;font-size:18px;line-height:1}.app-beta-banner-dismiss:hover{background:var(--app-panel-soft);color:var(--app-ink)}.onboarding{flex:1;justify-content:center;padding:32px 0;display:flex}.onboarding-card{background:var(--app-panel);border:1px solid var(--app-line);border-radius:18px;flex-direction:column;gap:18px;width:100%;max-width:720px;padding:36px 40px;display:flex;position:relative}.onboarding-dismiss{color:var(--app-muted);cursor:pointer;background:0 0;border:0;border-radius:999px;width:32px;height:32px;font-size:20px;line-height:1;position:absolute;top:14px;right:14px}.onboarding-dismiss:hover{background:var(--app-panel-soft);color:var(--app-ink)}.onboarding-banner{background:var(--paper-strong,#faf6ea);border:1px solid var(--app-line);border-left:2px solid var(--shu,#4a6b5a);border-radius:0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;display:flex}.onboarding-banner-body{flex-direction:column;gap:4px;display:flex}.onboarding-banner-body strong{font-size:14px;font-weight:600}.onboarding-banner-body p{color:var(--app-muted);margin:0;font-size:13px}.onboarding-banner .app-quick-add-button{flex-shrink:0;padding:10px 16px;font-size:13px}.onboarding-eyebrow{color:var(--app-accent-strong);letter-spacing:.18em;text-transform:uppercase;margin:0;font-size:12px;font-weight:600}.onboarding-card h1{margin:0;font-size:clamp(24px,3vw,32px);font-weight:600;line-height:1.25}.onboarding-lead{color:var(--app-muted);margin:0;font-size:14px;line-height:1.7}.onboarding-steps{flex-direction:column;gap:12px;margin:8px 0 4px;padding:0;list-style:none;display:flex}.onboarding-steps li{background:var(--app-panel-soft);border:1px solid var(--app-line);border-radius:14px;align-items:flex-start;gap:14px;padding:14px 16px;display:flex}.onboarding-step-num{background:var(--app-accent-gradient);color:var(--paper-strong);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:14px;font-weight:600;display:inline-flex}.onboarding-steps li strong{margin-bottom:4px;font-size:15px;font-weight:600;display:block}.onboarding-steps li p{color:var(--app-muted);margin:0;font-size:13px;line-height:1.6}.onboarding-actions{flex-wrap:wrap;gap:12px;margin-top:8px;display:flex}.onboarding-cta{padding:14px 22px;font-size:15px}.onboarding-secondary{background:0 0}.onboarding-hint{color:var(--app-muted);margin:0;font-size:12px}.dashboard-hero{background:var(--app-panel);border:1px solid var(--app-line);border-radius:16px;flex-direction:column;gap:18px;padding:20px 24px;display:flex}.today-card .dashboard-hero{background:0 0;border:0;border-radius:0;padding:0}.today-card .dashboard-hero.is-empty{background:var(--paper-strong,#faf6ea);border:1px dashed var(--app-line);border-radius:0;padding:12px 16px}.today-card-divider{border:0;border-top:1px solid var(--app-line);margin:18px 0 12px}.today-card{flex-direction:column;display:flex}.dashboard-hero-headline{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;display:flex}.dashboard-hero-metric{flex-direction:column;gap:4px;display:flex}.dashboard-hero-value{font-size:clamp(32px,4vw,44px);font-weight:600;line-height:1.1}.dashboard-hero.is-empty{background:var(--paper-strong,#faf6ea);border:1px dashed var(--app-line)}.dashboard-hero-empty{flex-direction:column;gap:8px;padding:6px 0;display:flex}.dashboard-hero-empty-message{color:var(--app-muted);max-width:56ch;margin:0;font-size:13px;line-height:1.6}.dashboard-hero-empty .dashboard-hero-value{color:var(--app-muted);letter-spacing:.08em;font-size:clamp(24px,3vw,32px)}.dashboard-hero-subline{color:var(--app-muted);font-size:13px}.dashboard-hero-timer{background:var(--app-panel-soft);border:1px solid var(--app-line);border-radius:14px;align-items:center;gap:12px;min-width:220px;padding:10px 16px;display:flex}.dashboard-hero-timer.is-active{background:#226f5814;border-color:#226f5859}.dashboard-hero-timer.is-paused{background:#d49b3a1a;border-color:#d49b3a59}.dashboard-hero-timer-dot{background:var(--app-muted);border-radius:50%;flex-shrink:0;width:10px;height:10px;display:inline-block}.dashboard-hero-timer.is-active .dashboard-hero-timer-dot{background:var(--ink-900);animation:1.6s ease-in-out infinite dashboardHeroPulse}.dashboard-hero-timer.is-paused .dashboard-hero-timer-dot{background:#d49b3a}@keyframes dashboardHeroPulse{0%,to{opacity:.35;transform:scale(.85)}50%{opacity:1;transform:scale(1.1)}}.dashboard-hero-timer-text{flex-direction:column;gap:2px;display:flex}.dashboard-hero-timer-text strong{font-variant-numeric:tabular-nums;letter-spacing:.04em;font-size:18px}.dashboard-hero-timer-text small{color:var(--app-muted);font-size:11px}.dashboard-hero-timeline{flex-direction:column;gap:4px;display:flex}.dashboard-hero-timeline-track{background:var(--app-panel-soft);border:1px solid var(--app-line);border-radius:8px;height:32px;position:relative}.dashboard-hero-timeline-block{background:var(--entry-color,var(--ink-300));border-radius:4px;position:absolute;top:4px;bottom:4px}.dashboard-hero-timeline-block.is-planned{background:color-mix(in srgb, var(--entry-color,var(--ink-300)) 36%, var(--paper-strong))}.dashboard-hero-timeline-block.is-pending_actual{background:var(--paper-strong);border:1px solid #d49b3a}.dashboard-hero-timeline-block.is-active{box-shadow:0 0 0 2px #226f5866}.dashboard-hero-timeline-empty{color:var(--app-muted);font-size:12px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.dashboard-hero-timeline-axis{height:14px;font-size:10px;position:relative}.dashboard-hero-timeline-axis span{color:var(--app-muted);font-variant-numeric:tabular-nums;position:absolute;transform:translate(-50%)}.dashboard-hero-timeline-axis span:first-child{transform:translate(0)}.dashboard-hero-timeline-axis span:last-child{transform:translate(-100%)}.dashboard-hero-breakdown{flex-direction:column;gap:8px;display:flex}.dashboard-hero-breakdown-bar{background:var(--app-panel-soft);border-radius:999px;height:16px;display:flex;position:relative;overflow:hidden}.dashboard-hero-breakdown-segment{height:100%;display:block}.dashboard-hero-breakdown-empty{color:var(--app-muted);padding:0 12px;font-size:11px}.dashboard-hero-breakdown-legend{flex-wrap:wrap;gap:12px;margin:0;padding:0;list-style:none;display:flex}.dashboard-hero-breakdown-legend li{align-items:center;gap:6px;font-size:12px;display:inline-flex}.dashboard-hero-breakdown-dot{border-radius:50%;width:10px;height:10px;display:inline-block}.dashboard-hero-breakdown-minutes{color:var(--app-muted);font-variant-numeric:tabular-nums}.calendar-section{flex-direction:column;flex:1;gap:16px;min-height:0;display:flex}.calendar-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.calendar-nav{align-items:center;gap:8px;display:flex}.calendar-nav-btn{background:var(--app-panel);border:1px solid var(--app-line);color:var(--app-ink);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;width:32px;height:32px;font-size:18px;line-height:1;display:inline-flex}.calendar-nav-btn:hover{background:var(--app-panel-soft);border-color:var(--app-line-strong)}.calendar-nav-today{background:var(--app-panel);border:1px solid var(--app-line);color:var(--app-ink);cursor:pointer;border-radius:999px;padding:6px 14px;font-size:13px}.calendar-nav-today:hover{background:var(--app-panel-soft);border-color:var(--app-line-strong)}.calendar-anchor-label{color:var(--app-ink);margin-left:6px;font-size:16px;font-weight:600}.calendar-mode-cluster{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.calendar-mode-tabs{background:var(--app-panel-soft);border:1px solid var(--app-line);border-radius:999px;gap:2px;padding:3px;display:inline-flex}.calendar-mode-tab{color:var(--app-muted);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:6px 18px;font-size:13px;font-weight:600;transition:background-color .15s,color .15s}.calendar-mode-tab:hover:not(.is-active){color:var(--app-ink)}.calendar-mode-tab.is-active{background:var(--cta-gradient);box-shadow:var(--cta-highlight), 0 2px 6px #2f4d4038;color:#fff}.calendar-leave-actions{background:var(--app-panel-soft);border:1px solid var(--app-line);border-radius:999px;align-items:center;gap:2px;padding:3px;display:inline-flex}.calendar-leave-button{color:var(--app-muted);cursor:pointer;background:0 0;border:none;border-radius:999px;align-items:center;gap:5px;padding:6px 14px;font-size:13px;display:inline-flex}.calendar-leave-button:hover{background:var(--app-panel);color:var(--app-ink)}.calendar-leave-button.is-primary{background:var(--app-panel);color:var(--app-accent,var(--shu));box-shadow:0 1px 3px #00000014}.calendar-leave-button.is-primary:hover{background:color-mix(in srgb, var(--app-accent,var(--shu)) 10%, var(--app-panel))}.calendar-leave-icon{line-height:0;display:block}.calendar-leave-count{background:color-mix(in srgb, var(--app-accent,var(--shu)) 18%, var(--app-panel));color:var(--app-accent,var(--shu));text-align:center;border-radius:999px;min-width:18px;margin-left:2px;padding:1px 6px;font-size:11px;font-weight:600}@media (max-width:720px){.calendar-toolbar{justify-content:flex-start}.calendar-mode-cluster{flex:1 0 100%;justify-content:space-between}.calendar-mode-tab{padding:6px 12px}.calendar-leave-button{padding:6px 10px}}@media (max-width:480px){.calendar-anchor-label{margin-left:0;font-size:14px}.calendar-leave-button{padding:6px 9px;font-size:12px}.calendar-leave-button .calendar-leave-count{display:none}}.calendar-filter-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.calendar-filter-chips{flex-wrap:wrap;gap:6px;display:flex}.calendar-filter-empty{color:var(--app-muted);font-size:13px}.calendar-chip{background:var(--app-panel);border:1px solid var(--app-line);color:var(--app-muted);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:5px 12px 5px 8px;font-size:12px;display:inline-flex}.calendar-chip:hover{border-color:var(--app-line-strong);color:var(--app-ink)}.calendar-chip.is-active{background:var(--chip-color);border-color:var(--chip-color);color:var(--paper-strong)}.calendar-chip.is-active .calendar-chip-dot{background:#ffffffd9}.calendar-chip-dot{background:var(--chip-color);border-radius:50%;width:10px;height:10px;display:inline-block}.calendar-filter-reset{color:var(--app-muted);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:12px;text-decoration:underline}.calendar-filter-reset:hover{color:var(--app-ink)}.calendar-month{background:var(--app-panel);border:1px solid var(--app-line);border-radius:14px;flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.calendar-weekday-row{background:var(--app-panel-soft);border-bottom:1px solid var(--app-line);grid-template-columns:repeat(7,1fr);display:grid}.calendar-weekday{color:var(--app-muted);text-align:center;padding:8px 10px;font-size:12px;font-weight:600}.calendar-month-grid{flex:1;grid-template-rows:repeat(6,minmax(96px,1fr));grid-template-columns:repeat(7,1fr);min-height:0;display:grid}.calendar-month-cell{background:var(--app-panel);border-bottom:1px solid var(--app-line);border-right:1px solid var(--app-line);cursor:pointer;text-align:left;outline:none;flex-direction:column;gap:4px;min-height:96px;padding:6px;display:flex}.calendar-month-cell:focus-visible{box-shadow:inset 0 0 0 2px var(--ink-900)}.calendar-month-cell:nth-child(7n){border-right:none}.calendar-month-cell:nth-last-child(-n+7){border-bottom:none}.calendar-month-cell.is-other-month{background:var(--app-panel);color:var(--ink-300);opacity:.7}.calendar-month-cell.is-today{background:var(--shu-tint);position:relative}.calendar-month-cell.is-today:before{background:var(--shu);content:"";height:2px;position:absolute;top:0;left:0;right:0}.calendar-month-cell-header{justify-content:space-between;align-items:center;display:flex}.calendar-day-number{font-size:13px;font-weight:600}.calendar-today-pill{border:1px solid var(--shu);border-radius:var(--radius-sm);color:var(--shu);letter-spacing:.04em;background:0 0;padding:0 6px;font-size:10px;font-weight:600}.calendar-month-cell-body{flex-direction:column;gap:2px;min-height:0;display:flex}.calendar-entry-chip{background:color-mix(in srgb, var(--entry-color,var(--ink-300)) 18%, var(--paper-strong));border:1px solid color-mix(in srgb, var(--entry-color,var(--ink-300)) 32%, transparent);border-left:3px solid var(--entry-color,var(--ink-300));color:var(--app-ink);cursor:pointer;text-align:left;white-space:nowrap;border-radius:4px;align-items:center;gap:4px;max-width:100%;padding:2px 6px;font-size:11px;font-weight:600;display:inline-flex;overflow:hidden}.calendar-entry-chip:hover{background:color-mix(in srgb, var(--entry-color,var(--ink-300)) 28%, var(--paper-strong));filter:none}.calendar-entry-time{color:var(--app-muted);font-variant-numeric:tabular-nums;font-weight:500}.calendar-entry-label{text-overflow:ellipsis;overflow:hidden}.calendar-entry-chip.is-planned{background:color-mix(in srgb, var(--entry-color,var(--ink-300)) 12%, var(--paper-strong));color:var(--app-ink);border-style:dashed}.calendar-entry-chip.is-pending_actual{background:var(--state-warning-bg);border-color:var(--state-warning);border-left-color:var(--state-warning);color:var(--state-warning)}.calendar-entry-chip.is-active{background:color-mix(in srgb, var(--entry-color,var(--ink-300)) 32%, var(--paper-strong));border-color:var(--shu);border-left-color:var(--shu);box-shadow:0 0 0 2px var(--shu-tint);color:var(--app-ink)}.calendar-entry-chip.is-canceled,.calendar-entry-chip.is-locked,.calendar-entry-chip.is-rejected,.calendar-entry-chip.is-submitted,.calendar-entry-chip.is-approved{background:var(--app-panel-soft);border-color:var(--app-line-strong);color:var(--app-muted)}.calendar-entry-chip.is-external{background:repeating-linear-gradient(135deg, var(--app-panel-soft) 0, var(--app-panel-soft) 6px, var(--app-panel) 6px, var(--app-panel) 10px);border-color:var(--app-line-strong);color:var(--app-ink);cursor:default}.calendar-entry-chip.is-leave{color:#5a4519;cursor:default;background:#f6e3b6}.calendar-overflow{color:var(--app-muted);align-self:flex-start;padding:1px 6px;font-size:10px}.calendar-week,.calendar-day{background:var(--app-panel);border:1px solid var(--app-line);border-radius:14px;flex-direction:column;flex:1;min-height:0;display:flex;position:relative;overflow-y:auto}.calendar-week-header{background:var(--app-panel-soft);border-bottom:1px solid var(--app-line);z-index:3;grid-template-columns:64px repeat(7,1fr);display:grid;position:sticky;top:0}.calendar-week-hour-spacer{border-right:1px solid var(--app-line)}.calendar-week-header-cell{border-right:1px solid var(--app-line);color:var(--app-muted);flex-direction:column;align-items:center;gap:2px;padding:8px;font-size:12px;display:flex}.calendar-week-header-cell:last-child{border-right:none}.calendar-week-header-cell.is-today{background:var(--shu-tint);color:var(--shu-dark);font-weight:700}.calendar-week-day-label{text-transform:uppercase;font-size:11px}.calendar-week-day-number{font-size:18px;font-weight:600}.calendar-week-body{flex:1;grid-template-columns:64px repeat(7,1fr);min-height:1152px;display:grid;position:relative}.calendar-week-hour-axis,.calendar-week-grid-lines{grid-template-rows:repeat(24,minmax(48px,1fr));height:100%;display:grid}.calendar-week-hour-axis{border-right:1px solid var(--app-line)}.calendar-hour-row{border-bottom:1px solid var(--app-line);position:relative}.calendar-week-hour-axis .calendar-hour-row{justify-content:flex-end;align-items:flex-start;padding:2px 6px 0 0;display:flex}.calendar-hour-label{color:var(--app-muted);font-variant-numeric:tabular-nums;font-size:10px}.calendar-week-day-column{border-right:1px solid var(--app-line);position:relative}.calendar-week-day-column:last-child{border-right:none}.calendar-week-day-column.is-today{background:var(--shu-tint)}.calendar-week-grid-lines{pointer-events:none;position:absolute;inset:0}.calendar-time-block{background:color-mix(in srgb, var(--entry-color,var(--ink-300)) 18%, var(--paper-strong));border:1px solid color-mix(in srgb, var(--entry-color,var(--ink-300)) 32%, transparent);border-left:3px solid var(--entry-color,var(--ink-300));color:var(--app-ink);cursor:pointer;text-align:left;z-index:1;border-radius:4px;flex-direction:column;padding:3px 6px;font-size:11px;font-weight:600;display:flex;position:absolute;left:3px;right:3px;overflow:hidden}.calendar-time-block:hover{background:color-mix(in srgb, var(--entry-color,var(--ink-300)) 28%, var(--paper-strong));filter:none}.calendar-time-block.is-planned{background:color-mix(in srgb, var(--entry-color,var(--ink-300)) 12%, var(--paper-strong));color:var(--app-ink);border-style:dashed}.calendar-time-block.is-pending_actual{background:var(--state-warning-bg);border-color:var(--state-warning);border-left-color:var(--state-warning);color:var(--state-warning)}.calendar-time-block.is-active{background:color-mix(in srgb, var(--entry-color,var(--ink-300)) 32%, var(--paper-strong));border-color:var(--shu);border-left-color:var(--shu);box-shadow:0 0 0 2px var(--shu-tint);color:var(--app-ink)}.calendar-time-block.is-external{background:repeating-linear-gradient(135deg, var(--app-panel-soft) 0, var(--app-panel-soft) 6px, var(--app-panel) 6px, var(--app-panel) 10px);border-color:var(--app-line-strong);border-left-color:var(--app-line-strong);color:var(--app-ink);cursor:default}.calendar-time-block-head{align-items:baseline;gap:6px;min-width:0;display:flex}.calendar-time-block-time{color:var(--ink-700);font-variant-numeric:tabular-nums;flex:none;font-size:10.5px;font-weight:700}.calendar-time-block-label{color:var(--app-ink);text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-weight:700;overflow:hidden}.calendar-time-block-note{color:var(--ink-700);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:2px;font-size:10.5px;font-weight:500;line-height:1.4;display:-webkit-box;overflow:hidden}.calendar-week-leave{color:#5a4519;z-index:2;background:#f6e3b6;border-radius:4px;padding:3px 6px;font-size:11px;font-weight:600;position:absolute;top:4px;left:3px;right:3px}.calendar-day-body{flex:1;grid-template-columns:64px 1fr;min-height:1152px;display:grid;position:relative}.calendar-day-column{position:relative}@media (max-width:720px){.calendar-month-cell{min-height:72px;padding:4px}.calendar-entry-chip{padding:1px 4px;font-size:10px}}.entry-row-subproject{color:var(--app-muted);font-size:var(--app-type-xs,12px);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.subproject-section{border-top:1px solid var(--app-line);gap:8px;margin-top:8px;padding-top:12px;display:grid}.subproject-section h3{margin:0;font-size:13px;font-weight:600}.subproject-section h3 small{color:var(--shu);margin-left:6px;font-weight:600}.subproject-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.subproject-row{background:var(--app-panel-soft);border:1px solid var(--app-line);border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:6px 10px;display:flex}.subproject-row[data-status=archived]{opacity:.6}.subproject-row>span{font-size:var(--app-type-sm);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.subproject-row.is-editing input,.subproject-add-row input{border:1px solid var(--app-line-strong);background:var(--app-bg);color:var(--app-ink);font-size:var(--app-type-sm);border-radius:8px;flex:1;min-width:0;padding:6px 10px}.subproject-row.is-editing input:focus,.subproject-add-row input:focus{border-color:var(--app-accent);outline:none}.subproject-row-actions{flex-shrink:0;gap:4px;display:flex}.subproject-add-row{align-items:center;gap:8px;display:flex}.project-report-table tbody tr.project-report-subrow td{color:var(--app-muted);font-weight:400}.project-report-table tbody tr.project-report-subrow td.project-report-subname{padding-left:18px;font-weight:400}@media (max-width:720px){.subproject-row,.subproject-row-actions{flex-wrap:wrap}}.upgrade-dialog-backdrop{background:color-mix(in srgb, var(--app-ink,#1a1a1a) 45%, transparent);z-index:200;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.upgrade-dialog{background:var(--app-panel);border:1px solid var(--app-line);border-radius:16px;gap:8px;width:100%;max-width:420px;padding:24px;display:grid;box-shadow:0 24px 60px -24px #00000073}.upgrade-dialog-title{margin:0;font-size:18px;font-weight:600}.upgrade-dialog-feature{color:var(--app-ink);font-size:var(--app-type-sm);margin:0;font-weight:600}.upgrade-dialog-reason{color:var(--app-muted);font-size:var(--app-type-sm);margin:0;line-height:1.6}.upgrade-dialog-actions{justify-content:flex-end;gap:8px;margin-top:8px;display:flex}