:root,[data-theme=light]{--bg: #f1f5f9;--surface: #ffffff;--surface-2: #f8fafc;--text: #0f172a;--text-muted: #64748b;--border: #e2e8f0;--accent: #985614;--accent-hover: #7a4310;--danger: #b91c1c;--success: var(--accent);--shadow: 0 1px 2px rgb(15 23 42 / 6%);--bevel-hi: rgb(255 255 255 / 65%);--crt-line: rgb(0 0 0 / 3.5%)}[data-theme=dark]{--bg: #0f172a;--surface: #1e293b;--surface-2: #334155;--text: #f8fafc;--text-muted: #94a3b8;--border: #334155;--accent: #1f7a4d;--accent-hover: #2a9460;--danger: #fca5a5;--success: var(--accent);--shadow: 0 1px 3px rgb(0 0 0 / 35%);--bevel-hi: rgb(255 255 255 / 6%);--crt-line: rgb(255 255 255 / 7%)}@font-face{font-family:DSEG14 Classic;src:url(/assets/DSEG14Classic-Regular-D85yqD5Y.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Sans;src:url(/assets/IBMPlexSans-latin-BD64o3ke.woff2) format("woff2");font-weight:100 700;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/assets/IBMPlexMono-Regular-latin-BJoXLJYV.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/assets/IBMPlexMono-SemiBold-latin-DpGnXj3s.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}:root{--font-sans: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--font-display: "IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;font-family:var(--font-sans);line-height:1.5;font-weight:400;color:var(--text);background-color:var(--bg)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background-color:var(--bg);background-image:radial-gradient(125% 90% at 50% 0%,#ffb0500b,#ffb05000 60%),repeating-linear-gradient(to bottom,transparent 0,transparent 2px,var(--crt-line) 3px,var(--crt-line) 4px);background-attachment:fixed}a{color:var(--accent)}.app-shell{min-height:100vh}.mobile-only-banner{display:none;margin:0;padding:.75rem 1rem;text-align:center;font-size:.875rem;background:#fef3c7;color:#92400e;border-bottom:1px solid #fcd34d}.desktop-shell{min-height:100vh;display:flex;flex-direction:column}@media (max-width: 959px){.mobile-only-banner{display:block}.desktop-shell{display:none}}.topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.65rem 1.5rem;background:var(--surface);border-bottom:1px solid var(--border);box-shadow:var(--shadow),inset 0 1px 0 var(--bevel-hi)}.topbar__left{display:flex;align-items:center;gap:2rem;min-width:0}.topbar__brand{font-weight:700;color:var(--accent);text-shadow:0 0 1px color-mix(in srgb,var(--accent) 70%,transparent),0 0 6px color-mix(in srgb,var(--accent) 38%,transparent);text-decoration:none;letter-spacing:-.03em;font-size:1.05rem;white-space:nowrap;animation:crt-flicker 6s linear infinite}.topbar__brand:hover{color:var(--accent-hover)}.topbar__nav{display:flex;gap:.25rem}.topbar__nav-link{color:var(--text-muted);text-decoration:none;font-size:.9375rem;padding:.4rem .75rem;border-radius:.375rem}.topbar__nav-link:hover{color:var(--text);background:var(--surface-2)}.topbar__nav-link.is-active{color:var(--text);background:var(--surface-2);font-weight:600}.topbar__nav-btn{font:inherit;cursor:pointer;border:none;background:transparent}.topbar__right{display:flex;align-items:center;gap:1.25rem}.topbar-clock{display:flex;align-items:center;gap:.85rem;white-space:nowrap;-webkit-user-select:none;user-select:none;font-family:DSEG14 Classic,ui-monospace,SFMono-Regular,monospace}.topbar-clock__date,.topbar-clock__time{font-size:.78rem;line-height:1;letter-spacing:0;word-spacing:.4em;color:#d97a06;text-shadow:0 0 1px rgb(255 154 31 / 70%),0 0 5px rgb(255 125 0 / 35%);animation:crt-flicker 6s linear infinite}.topbar-clock__colon{margin:0 .12em}.topbar-clock__date{color:#b5650a;opacity:.85}@keyframes crt-flicker{0%,7%,9%,52%,54%,to{opacity:1}8%{opacity:.84}53%{opacity:.91}}@media (prefers-reduced-motion: reduce){.topbar-clock__date,.topbar-clock__time,.topbar__brand{animation:none}}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;padding:0;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);color:var(--text-muted);cursor:pointer;transition:color .12s ease,border-color .12s ease}.theme-toggle:hover{color:var(--accent);border-color:var(--accent)}.user-menu{position:relative}.user-menu__trigger{display:flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);cursor:pointer;width:2.25rem;height:2.25rem}.user-menu__trigger:hover{border-color:var(--accent)}.user-menu__avatar{font-size:.875rem;font-weight:600;color:var(--text)}.user-menu__dropdown{position:absolute;right:0;top:calc(100% + .35rem);min-width:12rem;padding:.35rem 0;background:var(--surface);border:1px solid var(--border);border-radius:.5rem;box-shadow:var(--shadow);z-index:50}.user-menu__meta{padding:.5rem .85rem .65rem;border-bottom:1px solid var(--border);margin-bottom:.25rem}.user-menu__name{font-size:.875rem;font-weight:600;color:var(--text)}.user-menu__email{font-size:.75rem}.user-menu__item{display:block;width:100%;padding:.5rem .85rem;font-size:.875rem;color:var(--text);text-decoration:none;background:none;border:none;text-align:left;cursor:pointer;font-family:inherit}.user-menu__item:hover{background:var(--surface-2)}.user-menu__item--button{color:var(--danger)}.page{max-width:72rem;margin:0 auto;padding:1.75rem 1.5rem 3rem;flex:1}.backlog-page{max-width:95%}.page-title{font-size:1.5rem;margin:0;letter-spacing:-.02em}.page-title,.insight-card__value,.stat-card__value,.stat-card__money-list,.stat-card--earnings-goal__amount,.stat-card--completed__next-focus-title{font-family:var(--font-display);font-weight:600}.muted{color:var(--text-muted)}.line-through{text-decoration:line-through}.error{color:var(--danger);margin:0}.success{color:var(--success);margin:0}.card{background:var(--surface);border:1px solid var(--border);border-radius:.5rem;padding:1.25rem 1.5rem;box-shadow:var(--shadow),inset 0 1px 0 var(--bevel-hi)}main.page:has(>.empty-state){display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;max-width:none;width:100%;padding:3rem 1.5rem;background:radial-gradient(55rem 45rem at 50% -25%,color-mix(in srgb,var(--accent) 16%,transparent),transparent 70%),var(--bg)}main.page:has(>.empty-state):before,main.page:has(>.empty-state):after{content:"";position:absolute;width:30rem;height:30rem;border-radius:50%;filter:blur(80px);opacity:.45;pointer-events:none;z-index:0}main.page:has(>.empty-state):before{background:color-mix(in srgb,var(--accent) 50%,transparent);top:-13rem;left:-9rem}main.page:has(>.empty-state):after{background:color-mix(in srgb,var(--accent-hover) 42%,transparent);bottom:-15rem;right:-11rem}.empty-state{position:relative;z-index:1;width:100%;max-width:25rem;padding:2.5rem 2.5rem 2.25rem;text-align:center;border:1px solid color-mix(in srgb,var(--border) 75%,transparent);border-radius:1rem;background:var(--surface);background:color-mix(in srgb,var(--surface) 86%,transparent);backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);box-shadow:0 1px #ffffff0f inset,0 24px 60px -22px #0f172a4d,0 8px 22px -14px #0f172a33;overflow:hidden;animation:auth-card-in .5s cubic-bezier(.16,1,.3,1) both}.empty-state:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--accent),var(--accent-hover))}.empty-state .page-title{margin-bottom:.4rem;font-size:1.75rem;background:linear-gradient(120deg,var(--text),color-mix(in srgb,var(--text) 50%,var(--accent)));-webkit-background-clip:text;background-clip:text;color:transparent}.empty-state .muted{margin:0 0 1.5rem}.empty-state__actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;justify-content:center}.empty-state__actions .button--primary{border:none;color:#fff;background:linear-gradient(120deg,var(--accent),var(--accent-hover));box-shadow:0 12px 26px -12px color-mix(in srgb,var(--accent) 70%,transparent);transition:transform .12s ease,box-shadow .15s ease,filter .15s ease}.empty-state__actions .button--primary:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px);box-shadow:0 16px 32px -12px color-mix(in srgb,var(--accent) 75%,transparent)}.auth-switch{margin:1.5rem 0 0;font-size:.9375rem;text-align:center}.auth-switch a{font-weight:600;text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--accent) 35%,transparent)}.auth-switch a:hover{color:var(--accent-hover);border-bottom-color:var(--accent-hover)}.backlog-sub{margin:0 0 1rem;max-width:40rem}.backlog-layout{display:flex;gap:1.25rem 1.5rem;align-items:start}.backlog-layout__main{flex:1;min-width:0}@media (max-width: 960px){.backlog-layout{flex-direction:column}}.backlog-layout__aside{flex-shrink:0;min-width:17.5rem;max-width:24rem;width:22rem;position:sticky;top:.75rem;align-self:start;max-height:calc(100vh - 1.5rem);overflow-y:auto}@media (max-width: 960px){.backlog-layout__aside{position:static;max-height:none;overflow:visible}}.backlog-layout__aside .task-create{margin-bottom:0}.backlog-filters{margin-bottom:1rem}.backlog-filters__row{display:flex;flex-wrap:wrap;gap:1rem 1.5rem;align-items:flex-end}.backlog-filters__search{margin-top:.75rem;align-items:flex-end}.field--inline select{min-width:11rem}.field--grow{flex:1;min-width:12rem}.backlog-filters__search .button{flex-shrink:0}.backlog-meta{margin:0 0 .75rem;font-size:.875rem}.backlog-table-card{margin-bottom:1rem}.data-table--backlog{table-layout:fixed;width:100%}.data-table--backlog .data-table__col-task{width:32%;min-width:18rem}.data-table--backlog .data-table__col-price{width:7.25rem;max-width:8rem;font-size:.875rem;font-variant-numeric:tabular-nums}.data-table__col-priority{font-size:.875rem;font-variant-numeric:tabular-nums}.data-table__col-complexity{font-size:.875rem;font-variant-numeric:tabular-nums;width:2.75rem;text-align:center}.data-table--dashboard-tasks{table-layout:fixed;width:100%;min-width:0;max-width:100%}.data-table--dashboard-tasks col.dashboard-tasks__col--idx{width:2.75rem}.data-table--dashboard-tasks col.dashboard-tasks__col--task{width:auto}.data-table--dashboard-tasks th.data-table__col-task,.data-table--dashboard-tasks td.data-table__col-task{min-width:0}.data-table--dashboard-tasks col.dashboard-tasks__col--project{width:11rem}.data-table--dashboard-tasks col.dashboard-tasks__col--priority{width:4.25rem}.data-table--dashboard-tasks col.dashboard-tasks__col--complexity{width:2.75rem}.data-table--dashboard-tasks col.dashboard-tasks__col--due{width:10rem}.data-table--dashboard-tasks col.dashboard-tasks__col--status{width:5rem}.data-table--dashboard-tasks col.dashboard-tasks__col--price{width:8.5rem}.data-table--dashboard-tasks .data-table__col-project{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.875rem}.data-table--dashboard-tasks .data-table__col-status button.task-status-pill-trigger{display:inline-block;max-width:100%;box-sizing:border-box;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.data-table--dashboard-tasks .data-table__col-status .task-status-select{max-width:100%;box-sizing:border-box}.data-table--dashboard-tasks tbody td{vertical-align:top}.data-table--dashboard-tasks thead th{vertical-align:bottom}.data-table--dashboard-tasks .data-table__col-price{white-space:nowrap;font-size:.875rem;font-variant-numeric:tabular-nums}.data-table--dashboard-tasks tfoot td.data-table__total-amount-cell{font-size:1.125rem;font-weight:600}.data-table tbody tr.data-table__row--overdue:not(.data-table__row--p0){background:color-mix(in srgb,rgb(251 191 36) 14%,var(--surface));box-shadow:inset 3px 0 #d97706f2}.data-table tbody tr.data-table__row--p0{background:color-mix(in srgb,rgb(254 202 202) 16%,var(--surface));box-shadow:inset 3px 0 #dc2626f2}.data-table tbody tr.data-table__row--p0.data-table__row--overdue{background:color-mix(in srgb,rgb(252 165 165) 20%,var(--surface));box-shadow:inset 3px 0 #dc2626,inset 6px 0 #f59e0bbf}.nowrap{white-space:nowrap}.backlog-pager{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.task-create{margin-bottom:1.25rem}.task-create__title{font-size:1.1rem;margin:0 0 1rem;font-weight:600}.task-create__form{display:flex;flex-direction:column;gap:.85rem}.task-create__row{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end}.task-create__row .field{flex:1;min-width:10rem}.field--project-pick__row{display:flex;align-items:center;gap:.45rem}.field--project-pick__row .field--project-pick__select{flex:1;min-width:0}.time-spent-field{display:flex;flex-direction:column;gap:.5rem}.time-spent-presets{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}.time-spent-presets__btn{font-variant-numeric:tabular-nums}.project-swatch{display:inline-block;width:.75rem;height:.75rem;border-radius:50%;flex-shrink:0;border:1px solid var(--border);box-sizing:border-box;vertical-align:middle}.backlog-project-cell{display:inline-flex;align-items:center;gap:.4rem}.data-table__project-name-cell{display:inline-flex;align-items:center;gap:.45rem}.project-color-field__controls{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.project-color-input{width:2.75rem;height:2rem;padding:0;border:1px solid var(--border);border-radius:.25rem;cursor:pointer;background:var(--surface)}.task-create__pricing{align-items:flex-start}.field--price-placeholder .field__hint{margin:.35rem 0 0;font-size:.875rem;line-height:1.35}.task-create textarea{width:100%;padding:.5rem .65rem;border-radius:.375rem;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:.9375rem;font-family:inherit;resize:vertical}.task-schedule{display:flex;flex-direction:column;gap:.65rem;padding:.85rem 0 0;margin-top:.35rem;border-top:1px solid var(--border)}.task-schedule__legend{display:block}.task-schedule__kind{display:flex;flex-wrap:wrap;gap:1rem}.task-schedule__radio{display:inline-flex;align-items:center;gap:.35rem;font-size:.9375rem;cursor:pointer}.task-schedule__radio input{margin:0}.task-schedule__hint{margin:0;font-size:.8125rem;line-height:1.4}.page.dashboard-page{max-width:88rem;margin-left:auto;margin-right:auto;width:100%;box-sizing:border-box}.dashboard-shell{display:grid;grid-template-columns:1fr;row-gap:1.5rem;width:100%}.dashboard-shell__header{grid-column:1 / -1}.dashboard-shell__header .dashboard-head{margin-bottom:0}.dashboard-shell__main{min-width:0;max-width:72rem;width:100%}.dashboard-shell:not(.dashboard-shell--with-rail) .dashboard-shell__main{grid-column:1 / -1;justify-self:center}.dashboard-shell--with-rail{grid-template-columns:minmax(0,1fr) minmax(11rem,13.5rem);column-gap:1.5rem;align-items:start}.dashboard-shell--with-rail .dashboard-shell__header{grid-column:1 / -1;grid-row:1}.dashboard-shell--with-rail .dashboard-shell__main{grid-column:1;grid-row:2;justify-self:start}.dashboard-shell--with-rail .dashboard-shell__rail{grid-column:2;grid-row:2;position:sticky;top:.75rem;min-width:0;padding-top:.35rem}.dashboard-rail__stack{display:flex;flex-direction:column;gap:1rem}.dashboard-notes{padding:.9rem 1rem}.dashboard-notes--mini{padding:.65rem .85rem}.dashboard-notes__head{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem;margin-bottom:.65rem}.dashboard-notes--mini .dashboard-notes__head{margin-bottom:.45rem}.dashboard-notes__title.insight-card__label{margin-bottom:0;line-height:1.3}.dashboard-notes .insight-card__sub{margin-top:0}.dashboard-notes--mini .insight-card__sub{margin-bottom:.5rem}.dashboard-notes__collapsed{margin:0;font-size:.8125rem;line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-break:break-word}.dashboard-notes__collapsed--has-text{color:var(--text)}.dashboard-notes .dashboard-notes__textarea{display:block;box-sizing:border-box;width:100%;min-height:5.5rem;margin:0;padding:.5rem .55rem;font:inherit;font-size:.8125rem;line-height:1.45;color:var(--text);background:var(--surface-2);border:1px solid var(--border);border-radius:.35rem;resize:vertical}.dashboard-notes .dashboard-notes__textarea::placeholder{color:var(--text-muted);opacity:.85}.dashboard-notes .dashboard-notes__textarea:focus{outline:none;border-color:color-mix(in srgb,var(--text-muted) 55%,var(--border));box-shadow:0 0 0 2px color-mix(in srgb,var(--text-muted) 18%,transparent)}@media (max-width: 900px){.dashboard-shell--with-rail{grid-template-columns:1fr}.dashboard-shell--with-rail .dashboard-shell__main{grid-column:1;grid-row:2;justify-self:center}.dashboard-shell--with-rail .dashboard-shell__rail{grid-column:1;grid-row:3;position:static;padding-top:0}}.dashboard-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.5rem}.dashboard-head__tools{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.month-picker{display:flex;align-items:center;gap:.5rem;font-variant-numeric:tabular-nums}.month-picker__label{min-width:11rem;text-align:center;font-weight:600;color:var(--text)}.month-picker__btn{width:2rem;height:2rem;border:1px solid var(--border);border-radius:.375rem;background:var(--surface);color:var(--text);cursor:pointer;font-size:1.1rem;line-height:1}.month-picker__btn:hover:not(:disabled){background:var(--surface-2)}.month-picker__btn:disabled{opacity:.35;cursor:not-allowed}.dashboard-head__tools .dashboard-insights-toggle__btn[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}.dashboard-insights{display:grid;gap:1rem;grid-template-columns:1fr;min-width:0;margin-bottom:1.5rem}@media (min-width: 720px){.dashboard-insights{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1100px){.dashboard-insights{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr))}}.insight-card--workload{padding:.9rem 1rem}.insight-card--workload--mini{padding:.65rem .85rem}.insight-card--workload__head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.65rem}.insight-card--workload--mini .insight-card--workload__head{margin-bottom:.45rem}.insight-card--workload__title.insight-card__label{margin-bottom:0}.insight-card--workload__toggle{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;padding:0;border:1px solid var(--border);border-radius:.35rem;background:var(--surface-2);color:var(--text-muted);cursor:pointer;line-height:0}.insight-card--workload__toggle:hover{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}.insight-card--workload__toggle:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 45%,transparent);outline-offset:1px}.insight-workload--linear{margin-top:0}.insight-workload-linear{position:relative;height:9px;border-radius:999px;overflow:hidden}.insight-workload-linear__track{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--surface-2);border:1px solid var(--border);border-radius:inherit}.insight-workload-linear__fill{position:absolute;top:1px;left:1px;bottom:1px;max-width:calc(100% - 2px);border-radius:inherit;transition:width .3s ease;opacity:.88}.insight-workload--comfortable.insight-workload--linear .insight-workload-linear__fill{background:var(--accent)}.insight-workload--elevated.insight-workload--linear .insight-workload-linear__fill{background:var(--text-muted)}.insight-workload--high.insight-workload--linear .insight-workload-linear__fill{background:var(--danger)}.dashboard-shell__rail .insight-workload__gauge-wrap{max-width:none}.dashboard-alerts{padding:.9rem 1rem}.dashboard-alerts--mini{padding:.65rem .85rem}.dashboard-alerts__head{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem;margin-bottom:.65rem}.dashboard-alerts--mini .dashboard-alerts__head{margin-bottom:.45rem}.dashboard-alerts__title.insight-card__label{margin-bottom:0;line-height:1.3}.dashboard-alerts__body{display:flex;flex-direction:column;gap:.65rem}.dashboard-alerts__empty{margin:0;font-size:.8125rem}.dashboard-alerts__item{padding:.5rem .65rem;border-radius:.375rem}.dashboard-alerts__item--critical{background:color-mix(in srgb,rgb(248 113 113) 18%,var(--surface));border:1px solid rgb(239 68 68 / .5)}.dashboard-alerts__item--warning{background:color-mix(in srgb,rgb(251 191 36) 16%,var(--surface));border:1px solid rgb(217 119 6 / .55)}.dashboard-alerts__item-title{margin:0 0 .2rem;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.dashboard-alerts__item--critical .dashboard-alerts__item-title{color:#b91c1c}.dashboard-alerts__item--warning .dashboard-alerts__item-title{color:#b45309}.dashboard-alerts__item-text{margin:0;font-size:.8125rem;line-height:1.35;color:var(--text)}.dashboard-alerts__collapsed{font-size:.8125rem}.dashboard-alerts__collapsed-badges{display:flex;flex-wrap:wrap;gap:.35rem}.dashboard-alerts__pill{display:inline-block;padding:.2rem .45rem;border-radius:.25rem;font-size:.6875rem;font-weight:600;font-variant-numeric:tabular-nums}.dashboard-alerts__pill--critical{background:color-mix(in srgb,rgb(252 165 165) 22%,var(--surface-2));border:1px solid rgb(239 68 68 / .42);color:#b91c1c}.dashboard-alerts__pill--warning{background:color-mix(in srgb,rgb(253 230 138) 20%,var(--surface-2));border:1px solid rgb(217 119 6 / .45);color:#b45309}.insight-card{background:var(--surface);border:1px solid var(--border);border-radius:.5rem;padding:1rem 1.1rem;box-shadow:var(--shadow);min-width:0}.insight-card__label{margin:0 0 .25rem;font-size:.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);display:flex;align-items:center;gap:.35rem}.insight-info{position:relative;display:inline-flex;align-items:center;cursor:default}.insight-info__icon{display:flex;align-items:center;justify-content:center;width:1rem;height:1rem;border-radius:50%;border:1px solid currentColor;font-size:.6rem;font-weight:700;line-height:1;color:var(--text-muted);opacity:.7;font-style:normal;-webkit-user-select:none;user-select:none}.insight-info__tip{display:none;position:absolute;bottom:calc(100% + .4rem);left:50%;transform:translate(-50%);background:var(--surface);border:1px solid var(--border);border-radius:.375rem;box-shadow:0 4px 12px #00000026;padding:.5rem .65rem;font-size:.75rem;font-weight:400;text-transform:none;letter-spacing:0;color:var(--text);line-height:1.45;white-space:normal;width:14rem;z-index:100;pointer-events:none}.insight-info:hover .insight-info__tip,.insight-info:focus-within .insight-info__tip{display:block}.insight-card__sub{margin:0 0 .65rem;font-size:.75rem;line-height:1.35}.insight-card__row{display:flex;align-items:flex-end;justify-content:space-between;gap:.75rem}.insight-card__main{min-width:0;flex:1}.insight-card__value{margin:0;font-size:1.35rem;font-weight:700;font-variant-numeric:tabular-nums;line-height:1.2}.insight-card__value--compact{font-size:1.15rem;margin-bottom:.35rem}.insight-card__meta{margin:0 0 .5rem;font-size:.8125rem}.insight-card__empty{margin:.25rem 0 0;font-size:.875rem}.insight-card__delta{margin:.2rem 0 0;font-size:.875rem;font-weight:600;font-variant-numeric:tabular-nums}.insight-card__delta-vs{font-weight:400;font-size:.8125rem}.insight-card__delta--up{color:var(--text)}.insight-card__delta--down,.insight-card__delta--same,.insight-card__delta--new{color:var(--text-muted)}.insight-viz--bars{flex-shrink:0}.insight-viz__baseline{stroke:var(--border);stroke-width:1}.insight-viz__rect{transition:height .2s ease}.insight-viz__rect--prev{fill:var(--surface-2);stroke:var(--border);stroke-width:1}.insight-viz__rect--curr{fill:var(--accent);opacity:.92}.insight-viz--month{display:block;max-width:100%}.insight-viz__track{fill:var(--surface-2);stroke:var(--border);stroke-width:1}.insight-viz__fill{fill:var(--accent);opacity:.85}.revenue-goal-bar{--rg-h: 12px;position:relative;width:100%;height:var(--rg-h);margin-top:.15rem;border-radius:999px;isolation:isolate}.revenue-goal-bar__track{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(180deg,var(--surface-2) 0%,color-mix(in srgb,var(--surface-2) 88%,var(--border)) 100%);box-shadow:inset 0 1px 2px #0f172a12,inset 0 -1px 1px #ffffff0a,0 1px 2px #0f172a0a;border:1px solid var(--border)}.revenue-goal-bar__ticks{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;z-index:1}.revenue-goal-bar__tick{position:absolute;top:2px;bottom:2px;width:1px;margin-left:-.5px;background:linear-gradient(180deg,transparent 0%,color-mix(in srgb,var(--border) 75%,transparent) 35%,color-mix(in srgb,var(--border) 75%,transparent) 65%,transparent 100%);opacity:.65}.revenue-goal-bar__fill-clip{position:absolute;left:0;top:0;bottom:0;max-width:100%;border-radius:inherit;overflow:hidden;z-index:2;transition:width .55s cubic-bezier(.33,1,.68,1);box-shadow:inset 0 0 0 1px #ffffff1f}.revenue-goal-bar__fill{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:var(--accent);overflow:hidden}.revenue-goal-bar__fill-shine,.revenue-goal-bar__fill-edge{display:none}.revenue-goal-bar__fill:after{content:none}.revenue-goal-bar--met .revenue-goal-bar__fill{background:var(--accent);box-shadow:none}.revenue-goal-bar--met .revenue-goal-bar__fill-clip{box-shadow:inset 0 0 0 1px #ffffff1f}.stat-card--wide-goal-met .revenue-goal-bar__track{border-color:var(--border)}@keyframes revenue-goal-shimmer{0%,to{transform:translate(-8%) rotate(.001deg);opacity:.5}50%{transform:translate(8%) rotate(.001deg);opacity:.85}}@media (prefers-reduced-motion: reduce){.revenue-goal-bar__fill:after{animation:none}}.insight-card__link{color:var(--accent);font-weight:500;text-decoration:underline;text-underline-offset:.12em}.insight-card__link:hover{color:var(--accent-hover)}.insight-goal-congrats{display:flex;align-items:flex-start;gap:.5rem;margin:0 0 .5rem;padding:.45rem .55rem;border-radius:.375rem;background:var(--surface-2);border:1px solid var(--border)}.insight-goal-congrats__mark{flex-shrink:0;display:grid;place-items:center;width:1.35rem;height:1.35rem;border-radius:999px;background:var(--accent);color:#fff;font-size:.75rem;font-weight:700;line-height:1}.insight-goal-congrats__title{margin:0;font-size:.9rem;font-weight:600;color:var(--text)}.insight-goal-congrats__sub{margin:.15rem 0 0;font-size:.75rem;line-height:1.35}.insight-workload{margin-top:.35rem}.insight-workload__gauge-wrap{max-width:11rem;margin:0 auto .45rem}.insight-workload-gauge{display:block;max-width:100%;height:auto;vertical-align:middle}.insight-workload-gauge__track{stroke:#94a3b859;stroke-width:7;stroke-linecap:round;stroke-linejoin:round}.insight-workload-gauge__value{stroke-width:4.5;stroke-linecap:round;stroke-linejoin:round;transition:stroke-dashoffset .35s ease}.insight-workload--comfortable .insight-workload-gauge__value{stroke:var(--accent)}.insight-workload--elevated .insight-workload-gauge__value{stroke:var(--text-muted)}.insight-workload--high .insight-workload-gauge__value{stroke:var(--danger)}.insight-workload-gauge__needle{stroke-width:2;stroke-linecap:round}.insight-workload--comfortable .insight-workload-gauge__needle{stroke:var(--accent)}.insight-workload--elevated .insight-workload-gauge__needle{stroke:var(--text-muted)}.insight-workload--high .insight-workload-gauge__needle{stroke:var(--danger)}.insight-workload-gauge__hub{fill:var(--surface);stroke:var(--border);stroke-width:1}.insight-workload__hint{margin:0;font-size:.75rem;line-height:1.35}.stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-bottom:1.5rem}@media (min-width: 960px){.stat-grid{grid-template-columns:1fr 2fr}}.dashboard-activity-row{display:flex;gap:1rem;margin-bottom:1.5rem;align-items:flex-start}.dashboard-activity-log{flex:1;min-width:0;padding:1rem 1.25rem}.dashboard-activity-log__head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.dashboard-activity-log__more{font-size:.75rem;color:var(--accent);text-decoration:none;white-space:nowrap}.dashboard-activity-log__more:hover{text-decoration:underline}.dashboard-activity-log__empty{margin-top:.5rem;font-size:.875rem}.activity-log__list{list-style:none;margin:.625rem 0 0;padding:0;max-height:230px;overflow-y:auto}.activity-log__list--full{max-height:none;overflow-y:visible}.activity-log__entry{display:flex;align-items:center;gap:.5rem;padding:.35rem 0;border-bottom:1px solid var(--border);min-width:0}.activity-log__entry:last-child{border-bottom:none}.activity-log__badge{flex-shrink:0;font-size:.6rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:.15rem .4rem;border-radius:3px;width:5rem;text-align:center}.activity-log__badge--created{background:color-mix(in srgb,var(--text-muted) 18%,var(--surface));color:var(--text-muted)}.activity-log__badge--updated{background:color-mix(in srgb,var(--accent) 10%,var(--surface));color:var(--text-muted)}.activity-log__badge--completed{background:color-mix(in srgb,var(--accent) 15%,var(--surface));color:var(--accent)}.activity-log__badge--reopened{background:color-mix(in srgb,rgb(251 146 60) 15%,var(--surface));color:#ea580c}.activity-log__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.activity-log__title{font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.activity-log__title-btn{font:inherit;font-size:.8rem;background:none;border:none;padding:0;margin:0;color:var(--text);text-align:left;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:2px;transition:text-decoration-color .1s}.activity-log__title-btn:hover{text-decoration-color:var(--text)}.activity-log-page{max-width:56rem}.activity-log-page__header{display:flex;align-items:baseline;gap:1rem;margin-bottom:1.25rem}.activity-log-page__count{font-size:.875rem}.activity-log__detail{font-size:.68rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.activity-log__time{flex-shrink:0;font-size:.7rem;white-space:nowrap}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:.5rem;padding:1rem 1.25rem;box-shadow:var(--shadow)}.stat-card--completed{display:flex;flex-direction:column;align-items:stretch;gap:.75rem}.stat-card--completed__top{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:1rem}.stat-card--completed__main{min-width:0;flex:1}.stat-card--completed__ring{flex-shrink:0;line-height:0}.stat-card--completed__alert{padding:.5rem .65rem;border-radius:.375rem;background:#ef44441a;border:1px solid rgb(239 68 68 / .38)}.stat-card--completed__alert-title{margin:0 0 .2rem;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#b91c1c}.stat-card--completed__alert-text{margin:0;font-size:.8125rem;line-height:1.35;color:var(--text)}.stat-card--completed__stats-extra{display:flex;flex-direction:column;gap:.65rem}.stat-card--completed__priorities{display:flex;flex-direction:column;gap:.35rem}.stat-card--completed__priorities-label{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.stat-card--completed__pri-row{display:flex;flex-wrap:wrap;gap:.35rem}.stat-card--completed__pri{font-size:.75rem;font-weight:600;font-variant-numeric:tabular-nums;padding:.12rem .4rem;border-radius:.25rem;background:var(--surface-2);border:1px solid var(--border);color:var(--text-muted)}.stat-card--completed__pri--overdue{color:var(--text);border-color:#d9770680;background:color-mix(in srgb,rgb(253 230 138) 14%,var(--surface-2))}.stat-card--completed__next-focus{display:flex;flex-direction:column;gap:.35rem;min-width:0}.stat-card--completed__next-focus-title{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stat-card--completed__next-focus-hint{margin:0;font-size:.8125rem;line-height:1.45}.completion-ring-wrap{display:grid;place-items:center;width:96px;height:96px}.completion-ring-wrap .completion-ring{grid-area:1 / 1}.completion-ring{display:block}.completion-ring__track{stroke:var(--border)}.completion-ring__fill{stroke:var(--accent);transition:stroke-dashoffset .4s ease}.completion-ring__pct{grid-area:1 / 1;z-index:1;font-size:1.05rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text);line-height:1;pointer-events:none}.stat-card--wide{grid-column:span 1}.stat-card__label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin:0 0 .35rem}.stat-card__value{font-size:1.75rem;font-weight:700;margin:0;font-variant-numeric:tabular-nums}.stat-card__suffix{font-size:1rem;font-weight:500;color:var(--text-muted)}.stat-card__money-list{list-style:none;margin:0;padding:0;font-size:1.25rem;font-weight:600;font-variant-numeric:tabular-nums}.stat-card__money-list li+li{margin-top:.25rem}.stat-card--wide-goal-met{border-color:var(--border);box-shadow:none}.stat-card--earnings-goal{margin-top:.85rem;padding-top:.85rem;border-top:1px solid var(--border)}.stat-card--earnings-goal__optional{margin:0;font-size:.8125rem;line-height:1.45}.stat-card--earnings-goal__head{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap;margin:0 0 .45rem}.stat-card--earnings-goal__head .stat-card__sub-label{margin:0}.stat-card--goal-tip{position:relative;display:inline-flex;align-items:center;flex-shrink:0}.stat-card--goal-tip__btn{display:inline-flex;align-items:center;justify-content:center;width:1.35rem;height:1.35rem;padding:0;margin:0;border:none;border-radius:999px;background:transparent;color:color-mix(in srgb,var(--text) 55%,transparent);cursor:help;line-height:0}.stat-card--goal-tip__btn:hover,.stat-card--goal-tip__btn:focus-visible{color:var(--accent)}.stat-card--goal-tip__btn:focus-visible{outline:none;box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 40%,transparent)}.stat-card--goal-tip__bubble{position:absolute;left:50%;bottom:calc(100% + 8px);z-index:20;min-width:10.5rem;max-width:16rem;padding:.45rem .6rem;margin:0;border-radius:.35rem;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:.7rem;font-weight:400;font-style:normal;line-height:1.4;text-align:left;text-transform:none;letter-spacing:normal;box-shadow:var(--shadow);opacity:0;visibility:hidden;pointer-events:none;transform:translate(-50%) translateY(4px);transition:opacity .15s ease,transform .15s ease,visibility .15s}.stat-card--goal-tip:hover .stat-card--goal-tip__bubble,.stat-card--goal-tip:focus-within .stat-card--goal-tip__bubble{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.stat-card__sub-label{margin:0 0 .45rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.stat-card--earnings-goal__meta{margin:0 0 .5rem;font-size:.875rem}.stat-card--earnings-goal__amount{margin:.35rem 0 .45rem;font-size:1.05rem;font-weight:600;font-variant-numeric:tabular-nums}.table-card__head{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.table-card__head .table-card__title{margin:0}.table-card__title-with-actions{display:flex;align-items:center;gap:.35rem;min-width:0}.table-card__settings-btn{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;padding:.2rem;border:none;border-radius:.375rem;background:transparent;color:var(--text-muted);cursor:pointer}.table-card__settings-btn:hover{background:var(--surface-2);color:var(--text)}.table-card__title{font-size:1rem;margin:0 0 1rem;font-weight:600}.table-wrap{overflow-x:auto;margin:0 -.25rem;scrollbar-gutter:stable}.table-wrap.table-wrap--dashboard-tasks{overflow-x:hidden;scrollbar-gutter:auto;margin:0;min-width:0;max-width:100%}.dashboard-shell__main .card.table-card{min-width:0;max-width:100%}.activity-chart-card{padding:1rem 1.25rem .875rem}.activity-chart-card__head{display:flex;align-items:center;justify-content:space-between}.activity-chart__toggle{display:flex;gap:2px}.activity-chart__toggle-btn{background:none;border:1px solid var(--border);border-radius:4px;color:var(--text-muted);cursor:pointer;font-size:.7rem;font-weight:600;letter-spacing:.03em;padding:.2rem .45rem}.activity-chart__toggle-btn--active{background:var(--surface-2);color:var(--text);border-color:var(--border)}.activity-chart__toggle-btn:hover:not(.activity-chart__toggle-btn--active){color:var(--text)}.activity-chart__subtitle{font-size:.7rem;margin:.1rem 0 0}.activity-chart{position:relative;display:flex;align-items:flex-end;gap:2px;height:80px;margin-top:.75rem;cursor:crosshair}.activity-chart__cursor{position:absolute;top:0;bottom:0;width:1px;border-left:1px dashed var(--text-muted);opacity:.5;pointer-events:none}.activity-chart__cursor-label{position:absolute;top:0;background:var(--surface-2);border:1px solid var(--border);border-radius:4px;padding:.2rem .4rem;display:flex;flex-direction:column;gap:1px;pointer-events:none;white-space:nowrap}.activity-chart__cursor-label--left{left:6px}.activity-chart__cursor-label--right{right:6px}.activity-chart__cursor-date{font-size:.65rem;color:var(--text-muted)}.activity-chart__cursor-count{font-size:.7rem;font-weight:600;color:var(--text)}.activity-chart__col{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;min-width:0}.activity-chart__bar-wrap{flex:1;width:100%;display:flex;align-items:flex-end}.activity-chart__bar{width:100%;background:var(--accent);border-radius:2px 2px 0 0;transition:opacity .1s}.activity-chart__bar--empty{background:var(--border);height:2px!important;border-radius:1px}.activity-chart__col:hover .activity-chart__bar:not(.activity-chart__bar--empty){opacity:.7}.activity-calendar{margin-top:.75rem}.activity-calendar__dow-row{display:grid;grid-template-columns:repeat(7,2rem);gap:2px;margin-bottom:3px}.activity-calendar__dow{font-size:.6rem;color:var(--text-muted);text-align:center;text-transform:uppercase;letter-spacing:.04em}.activity-calendar__weeks{display:flex;flex-direction:column;gap:2px}.activity-calendar__week{display:grid;grid-template-columns:repeat(7,2rem);gap:2px}.activity-calendar__cell{width:2rem;height:2rem;border-radius:3px;background:var(--surface-2);border:1px solid var(--border);display:flex;flex-direction:column;justify-content:space-between;padding:3px 4px}.activity-calendar__cell--filler{background:transparent;border-color:transparent}.activity-calendar__day-num{font-size:.62rem;color:var(--text-muted);line-height:1}.activity-calendar__cell--active .activity-calendar__day-num{color:var(--text)}.activity-calendar__day-count{font-size:.68rem;font-weight:600;color:var(--text);text-align:right;line-height:1}.data-table{width:100%;border-collapse:collapse;font-size:.9375rem}.data-table th,.data-table td{padding:.65rem .75rem;text-align:left;vertical-align:middle;border-bottom:1px solid var(--border)}.data-table th{font-size:.75rem;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);font-weight:600}.data-table th.data-table__num,.data-table td.data-table__num{text-align:left;font-variant-numeric:tabular-nums}.data-table th.data-table__num.data-table__col-price,.data-table td.data-table__num.data-table__col-price{font-variant-numeric:normal}.data-table td.data-table__num,.data-table td.data-table__idx,.data-table td.data-table__col-priority,.data-table td.data-table__col-complexity,.data-table--backlog .data-table__col-price,.data-table--dashboard-tasks .data-table__col-price,.data-table__total-amount-cell{font-family:var(--font-mono)}.data-table__sort-btn{font:inherit;font-size:inherit;font-weight:inherit;letter-spacing:inherit;text-transform:uppercase;color:inherit;background:none;border:none;padding:0;margin:0;cursor:pointer;display:flex;width:100%;align-items:center;justify-content:flex-start;gap:.2rem;text-align:left;box-sizing:border-box}.data-table__sort-btn:hover{color:var(--text)}.data-table__sort-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:.2rem}.data-table__sort-indicator{font-variant-numeric:tabular-nums;opacity:.9;font-weight:700}.data-table__idx{width:2.25rem;padding-right:.35rem;text-align:left;font-variant-numeric:tabular-nums;color:var(--text-muted)}.data-table thead .data-table__idx{font-size:.75rem;text-transform:none;letter-spacing:normal}.data-table tfoot td{border-bottom:none;border-top:1px solid var(--border);padding-top:calc(.75rem + 20px);vertical-align:top}.data-table tfoot td.data-table__total-leader-cell,.data-table tfoot td.data-table__total-amount-cell{padding-top:calc(.85rem + 20px);vertical-align:bottom}.table-total-receipt{display:flex;align-items:baseline;flex-wrap:nowrap;gap:.35rem;width:100%;min-width:0}.table-total-receipt__label{font-weight:600;flex:0 0 auto;color:var(--text)}.table-total-receipt__leader{flex:1 1 auto;min-width:1.5rem;min-height:.4rem;align-self:flex-end;margin-bottom:.2em;border-bottom:1px dotted color-mix(in srgb,var(--text-muted) 70%,transparent)}.data-table__total-amount-cell{font-size:1.125rem;font-weight:600;font-variant-numeric:normal;white-space:nowrap}.pill{display:inline-block;padding:.15rem .5rem;border-radius:999px;font-size:.8125rem;font-weight:500;background:var(--surface-2);color:var(--text)}.pill[data-status=done]{background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent)}[data-theme=dark] .pill[data-status=done]{background:color-mix(in srgb,var(--accent) 30%,transparent);color:color-mix(in srgb,var(--accent) 50%,white)}.pill[data-status=in_progress]{background:#dbeafe;color:#1e40af}[data-theme=dark] .pill[data-status=in_progress]{background:#1e3a5f;color:#bfdbfe}.pill[data-status=todo],.pill[data-status=backlog]{background:#f1f5f9;color:#475569}[data-theme=dark] .pill[data-status=todo],[data-theme=dark] .pill[data-status=backlog]{background:var(--surface-2);color:var(--text-muted)}.pill[data-status=cancelled]{background:#fee2e2;color:#991b1b}[data-theme=dark] .pill[data-status=cancelled]{background:#450a0a;color:#fecaca}button.pill.task-status-pill-trigger{font:inherit;font-size:.8125rem;font-weight:500;line-height:inherit;margin:0;border:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;text-align:center}button.pill.task-status-pill-trigger:disabled{opacity:.65;cursor:wait}.auth-page{display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;max-width:none;width:100%;padding:3rem 1.5rem;background:radial-gradient(55rem 45rem at 50% -25%,color-mix(in srgb,var(--accent) 16%,transparent),transparent 70%),var(--bg)}.auth-page:before,.auth-page:after{content:"";position:absolute;width:30rem;height:30rem;border-radius:50%;filter:blur(80px);opacity:.45;pointer-events:none;z-index:0}.auth-page:before{background:color-mix(in srgb,var(--accent) 50%,transparent);top:-13rem;left:-9rem}.auth-page:after{background:color-mix(in srgb,var(--accent-hover) 42%,transparent);bottom:-15rem;right:-11rem}.auth-card{position:relative;z-index:1;width:100%;max-width:25rem;padding:2.5rem 2.5rem 2.25rem;text-align:center;border:1px solid color-mix(in srgb,var(--border) 75%,transparent);border-radius:1rem;background:var(--surface);background:color-mix(in srgb,var(--surface) 86%,transparent);backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);box-shadow:0 1px #ffffff0f inset,0 24px 60px -22px #0f172a4d,0 8px 22px -14px #0f172a33;overflow:hidden;animation:auth-card-in .5s cubic-bezier(.16,1,.3,1) both}.auth-card:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--accent),var(--accent-hover))}@keyframes auth-card-in{0%{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}.auth-logo{display:flex;justify-content:center;margin-bottom:1.5rem}.auth-logo svg{border-radius:12px;box-shadow:0 12px 26px -10px color-mix(in srgb,var(--accent) 70%,transparent)}.auth-page .page-title{font-size:1.75rem;margin-bottom:.4rem;background:linear-gradient(120deg,var(--text),color-mix(in srgb,var(--text) 50%,var(--accent)));-webkit-background-clip:text;background-clip:text;color:transparent}.auth-form{display:flex;flex-direction:column;gap:1rem;margin-top:1.75rem;text-align:left}.auth-form .field input{padding:.7rem .85rem;border-radius:.55rem;background:color-mix(in srgb,var(--surface-2) 65%,transparent);transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}.auth-form .field input:focus{outline:none;border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 22%,transparent)}.auth-form>.button{width:100%;margin-top:.5rem;padding:.75rem 1rem;font-size:1rem;border:none;border-radius:.55rem;color:#fff;background:linear-gradient(120deg,var(--accent),var(--accent-hover));box-shadow:0 12px 26px -12px color-mix(in srgb,var(--accent) 70%,transparent);transition:transform .12s ease,box-shadow .15s ease,filter .15s ease}.auth-form>.button:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px);box-shadow:0 16px 32px -12px color-mix(in srgb,var(--accent) 75%,transparent)}.auth-form>.button:active:not(:disabled){transform:translateY(0)}.field{display:flex;flex-direction:column;gap:.35rem}.field__label{font-size:.8125rem;font-weight:500;color:var(--text-muted)}.field input,.field select{padding:.55rem .75rem;border-radius:.375rem;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:1rem;font-family:inherit}.field input:focus,.field select:focus{outline:2px solid var(--accent);outline-offset:0}.settings-form{max-width:28rem;display:flex;flex-direction:column;gap:1rem}.button{display:inline-flex;align-items:center;justify-content:center;padding:.55rem 1rem;border-radius:.375rem;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:.9375rem;font-weight:500;cursor:pointer;text-decoration:none;font-family:inherit;box-shadow:inset 0 1px 0 var(--bevel-hi);transition:transform .08s ease,box-shadow .12s ease,background-color .12s ease}.button:active:not(:disabled){transform:translateY(1px);box-shadow:inset 0 1px 2px #0000002e}.button:focus-visible,.topbar__nav-link:focus-visible,.topbar__brand:focus-visible{outline:2px solid var(--accent);outline-offset:2px;box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 22%,transparent)}.button--primary{background:var(--accent);border-color:var(--accent);color:#fff}.button--primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.button:disabled{opacity:.6;cursor:not-allowed}.button--small{padding:.3rem .55rem;font-size:.8125rem}.task-related{margin-top:.75rem;padding-top:.85rem;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:.65rem}.task-related__heading{display:block}.task-related__hint{margin:0 0 .25rem;font-size:.8125rem}.task-related__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.45rem}.task-related__item{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.9375rem}.task-related__title{flex:1;min-width:8rem}.task-related__pill{font-size:.75rem}.task-related__unlink{margin-left:auto}.task-related__search-results{list-style:none;margin:0;padding:0;border:1px solid var(--border);border-radius:.375rem;max-height:12rem;overflow-y:auto}.task-related__search-row{display:flex;align-items:center;gap:.5rem;padding:.45rem .6rem;border-bottom:1px solid var(--border)}.task-related__search-row:last-child{border-bottom:none}.task-related__search-title{flex:1;font-size:.875rem;min-width:0}.task-related__search-meta{margin:0;font-size:.8125rem}code{font-size:.9em;background:var(--surface-2);padding:.15em .35em;border-radius:.25rem}.task-row-title{margin:0;padding:0;border:none;background:none;font:inherit;color:var(--accent);text-align:left;cursor:pointer;text-decoration:underline;text-underline-offset:.12em}.task-row-title:hover{color:var(--accent-hover)}.task-cell{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem;min-width:0}.task-cell-title{display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;min-width:0;flex:1 1 auto}.task-row-stash{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;margin:0;padding:.2rem;border:none;border-radius:4px;background:none;color:var(--text-muted);cursor:pointer;opacity:0;transition:opacity .12s ease,color .12s ease,background-color .12s ease}.task-cell:hover .task-row-stash,.task-row-stash:focus-visible{opacity:1}.task-row-stash:hover:not(:disabled){color:var(--accent);background:var(--surface-2)}.task-row-stash:disabled{cursor:default;opacity:0}.label-pills{display:flex;flex-wrap:wrap;gap:.25rem .45rem;list-style:none;margin:0;padding:0}.label-pill{display:inline-block;padding:.1rem .45rem;border-radius:999px;font-size:.8125rem;font-weight:500;border:1px solid var(--border);background:var(--surface-2);color:var(--text-muted);max-width:12rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-labels-field{margin-bottom:.25rem}.task-labels-field__hint{margin:.25rem 0 0;font-size:.875rem}.task-labels-field__chips{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem .65rem;margin-top:.35rem}.task-labels-field__chip{display:inline-flex;align-items:center;gap:.35rem;cursor:pointer;font-size:.875rem}.task-labels-field__chip.is-on .label-pill{color:var(--text);font-weight:600}.task-labels-field__actions{margin-top:.5rem}.labels-manage-overlay{z-index:300}.modal--labels-manage{max-width:26rem}.labels-manage__body{display:flex;flex-direction:column;gap:1rem}.labels-manage__empty{margin:0}.labels-manage__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem;max-height:min(42vh,18rem);overflow-y:auto}.labels-manage__row{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem}.labels-manage__row--new{margin-top:.25rem}.labels-manage__new-label{display:block;margin-bottom:.35rem}.labels-manage__color{width:2rem;height:1.75rem;padding:0;border:1px solid var(--border);border-radius:.25rem;cursor:pointer;background:var(--surface-2)}.labels-manage__name{flex:1;min-width:8rem;padding:.35rem .5rem;border-radius:.25rem;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:.9375rem}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:1rem;background:#0f172a7a}.modal{width:100%;max-width:38rem;max-height:min(90vh,44rem);overflow:hidden;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:.5rem;box-shadow:0 16px 48px #0f172a2e}.modal__head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.85rem 1rem;border-bottom:1px solid var(--border);flex-shrink:0}.modal__title{margin:0;font-size:1.1rem;font-weight:600}.modal__close{width:2.25rem;height:2.25rem;padding:0;border:none;border-radius:.375rem;background:transparent;color:var(--text-muted);font-size:1.5rem;line-height:1;cursor:pointer}.modal__close:hover{background:var(--surface-2);color:var(--text)}.modal__body-pad{padding:1rem;margin:0}.modal__form{padding:1rem;overflow-y:auto;flex:1;min-height:0}.modal__actions{display:flex;justify-content:flex-end;gap:.65rem;flex-wrap:wrap;margin-top:.25rem}.modal__actions--split{justify-content:space-between;align-items:center}.modal__actions-right{display:flex;flex-wrap:wrap;gap:.65rem}.modal__head-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.task-view__modal-title{font-size:1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.task-view__meta{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:.75rem}.task-view__chip{display:inline-block;padding:.15rem .5rem;border-radius:4px;font-size:.75rem;background:var(--surface-2);color:var(--text-muted);white-space:nowrap}.task-view__labels{margin:0 0 .75rem}.task-view__desc{margin:0 0 .75rem;white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;min-width:0;font-size:.9rem;line-height:1.6;color:var(--text);background:var(--surface-2);border-radius:6px;padding:.6rem .75rem}.task-view__row{display:flex;gap:.75rem;align-items:baseline;font-size:.875rem;padding:.3rem 0;border-top:1px solid var(--border)}.task-view__row-label{min-width:5.5rem;color:var(--text-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;flex-shrink:0}.task-view__related{border-top:1px solid var(--border);padding-top:.3rem;font-size:.875rem}.task-view__related-list{list-style:none;padding:0;margin:.35rem 0 0;display:flex;flex-direction:column;gap:.25rem}.task-view__related-item{display:flex;align-items:center;gap:.5rem}.pill--xs{width:.55rem;height:.55rem;border-radius:50%;display:inline-block;padding:0;flex-shrink:0}.pill--xs[data-status=done]{background:var(--accent)}.pill--xs[data-status=in_progress]{background:#93c5fd}.pill--xs[data-status=todo],.pill--xs[data-status=backlog]{background:#cbd5e1}.pill--xs[data-status=cancelled]{background:#fca5a5}.modal--table-settings{max-width:26rem}.dashboard-table-settings__lead{margin:0 0 .75rem;font-size:.9rem}.dashboard-table-settings__pinned{margin:0 0 1rem;padding-left:1.25rem;font-size:.875rem;color:var(--text-muted);list-style:disc}.dashboard-table-settings__fieldset{border:1px solid var(--border);border-radius:.375rem;padding:.75rem 1rem 1rem;margin:0}.dashboard-table-settings__legend{padding:0 .35rem;font-size:.8125rem;font-weight:600;color:var(--text-muted)}.dashboard-table-settings__list{margin:0;padding:0;list-style:none}.dashboard-table-settings__row{display:flex;align-items:flex-start;gap:.5rem;cursor:pointer;font-size:.9375rem;padding:.35rem 0}.dashboard-table-settings__hint{font-size:.85em}.dashboard-table-settings__reset-wrap{margin:1rem 0 0}.dashboard-table-settings__footer{flex-shrink:0;padding:.85rem 1rem;border-top:1px solid var(--border);background:var(--surface)}.modal--invoice-draft{max-width:min(52rem,100%);max-height:min(88vh,48rem)}.modal--invoice-draft .modal__head{align-items:flex-start}.invoice-draft-modal__title-block{min-width:0;flex:1}.invoice-draft-modal__project-line{margin:.35rem 0 0;font-size:.875rem;font-weight:500}.invoice-draft-modal__body{display:flex;flex-direction:column;gap:.75rem;min-height:0}.invoice-draft-modal__period{margin:0;font-size:.9rem}.invoice-draft-modal__table-wrap{flex:1;min-height:0;max-height:min(52vh,22rem);overflow:auto;border:1px solid var(--border);border-radius:.375rem;background:var(--surface-2)}.data-table--invoice-draft{margin:0;table-layout:fixed}.data-table--invoice-draft th,.data-table--invoice-draft td{letter-spacing:normal;word-spacing:normal;font-feature-settings:normal}.data-table--invoice-draft thead th{text-transform:none;font-size:.8125rem;letter-spacing:normal}.invoice-draft-row{display:flex;align-items:baseline;flex-wrap:nowrap;gap:.35rem;width:100%;min-width:0}.invoice-draft-row__title{flex:0 1 auto;min-width:0;overflow-wrap:anywhere;word-break:normal}.invoice-draft-row__leader{flex:1 1 auto;min-width:.75rem;min-height:.35rem;align-self:flex-end;margin-bottom:.12em;border-bottom:1px dotted color-mix(in srgb,var(--text-muted) 70%,transparent)}.invoice-draft-row__amount{flex:0 0 auto;text-align:right;white-space:nowrap;font-variant-numeric:normal}.invoice-draft-row--head{font-size:.8125rem;font-weight:600;color:var(--text-muted)}.invoice-draft-row__head-task{flex:0 0 auto}.invoice-draft-row__head-spacer{flex:1 1 auto;min-width:.5rem}.invoice-draft-row__head-amount{flex:0 0 auto;text-align:right}.invoice-draft-row--total .invoice-draft-row__total-label{flex:0 0 auto;font-weight:600;color:var(--text)}.invoice-draft-row__amount--total{font-size:1.125rem;font-weight:600}.invoice-draft-table__head-cell{padding-bottom:.35rem}.data-table--invoice-draft tfoot td.invoice-draft-table__foot-cell{padding-top:calc(.85rem + 12px);vertical-align:bottom}.invoice-draft-modal__hint{margin:0;font-size:.875rem}.invoice-draft-modal__footer{flex-shrink:0;padding:.85rem 1rem;border-top:1px solid var(--border);background:var(--surface)}.button--danger{border-color:var(--danger);color:var(--danger);background:var(--surface)}.button--danger:hover:not(:disabled){background:#fef2f2;border-color:var(--danger)}[data-theme=dark] .button--danger:hover:not(:disabled){background:#450a0a}.task-status-select{display:inline-block;max-width:100%;padding:.2rem 1.75rem .2rem .55rem;border-radius:999px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:.8125rem;font-weight:500;font-family:inherit;cursor:pointer;line-height:1.35}.task-status-select:disabled{opacity:.65;cursor:wait}.task-status-select[data-status=done]{background:color-mix(in srgb,var(--accent) 14%,transparent);border-color:color-mix(in srgb,var(--accent) 45%,transparent);color:var(--accent)}[data-theme=dark] .task-status-select[data-status=done]{background:color-mix(in srgb,var(--accent) 28%,transparent);border-color:color-mix(in srgb,var(--accent) 55%,transparent);color:color-mix(in srgb,var(--accent) 50%,white)}.task-status-select[data-status=in_progress]{background:#dbeafe;border-color:#93c5fd;color:#1e40af}[data-theme=dark] .task-status-select[data-status=in_progress]{background:#1e3a5f;border-color:#3b82f6;color:#bfdbfe}.task-status-select[data-status=todo],.task-status-select[data-status=backlog]{background:#f1f5f9;border-color:#cbd5e1;color:#475569}[data-theme=dark] .task-status-select[data-status=todo],[data-theme=dark] .task-status-select[data-status=backlog]{background:var(--surface-2);border-color:var(--border);color:var(--text-muted)}.task-status-select[data-status=cancelled]{background:#fee2e2;border-color:#fecaca;color:#991b1b}[data-theme=dark] .task-status-select[data-status=cancelled]{background:#450a0a;border-color:#7f1d1d;color:#fecaca}
