.app-shell{background:var(--bg)}.app-shell .sidebar{background:var(--bg);width:256px;padding:14px 12px 12px}.app-shell .main-shell{min-height:100vh;box-shadow:none;background:0 0;border-radius:0;margin:0 0 0 256px;overflow:clip}.app-shell .topbar-stack{z-index:45;background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(12px);backdrop-filter:saturate(1.4)blur(12px);position:sticky;top:0}.app-shell .topbar{background:0 0;border:0;height:60px;padding:0 28px 0 12px}.app-shell .topbar>div:first-child{color:var(--muted);font-size:var(--fs-md);gap:8px}.app-shell .topbar>div:first-child>span:last-child,.app-shell .topbar .breadcrumb-project{color:var(--text);font-weight:500}.app-shell .sidebar-toggle{color:var(--muted);background:0 0}.app-shell .sidebar-toggle:hover{background:var(--card);color:var(--text)}.app-shell .topbar-tools{gap:4px}.app-shell .topbar-tools>button,.app-shell .topbar-tools>*>button:first-child,.app-shell .topbar-tools>details>summary{width:38px;height:38px;transition:background var(--dur-1) ease, transform var(--dur-1) ease;border-radius:50%}.app-shell .topbar-tools>button:hover,.app-shell .topbar-tools>*>button:first-child:hover,.app-shell .topbar-tools>details>summary:hover{background:var(--card)}.app-shell .content{max-width:1600px;padding:8px 28px 48px 12px}.app-shell .demo-strip{border-radius:var(--r-md);margin:0 28px 8px 12px}.app-shell .brand{gap:10px;min-height:52px;margin:0 0 14px;padding:6px 10px}.app-shell .brand .brand-logo{width:32px;height:32px}.app-shell .brand-text{color:var(--text);font-size:16px;font-weight:600;line-height:1.15;display:grid}.app-shell .brand-text small{color:var(--muted);margin-top:2px;font-size:11.5px;font-weight:400}.app-shell .workspace-label{display:none}.app-shell nav .home-nav,.app-shell nav .module-trigger{border-radius:var(--r-md);min-height:36px;font-size:var(--fs-base);color:var(--text);transition:background var(--dur-1) ease;padding:7px 10px;font-weight:600}.app-shell nav .home-nav{font-weight:500}.app-shell nav .module-trigger{margin-top:14px}.app-shell nav .home-nav>svg,.app-shell nav .module-trigger>svg:first-child{width:18px;height:18px;color:var(--text-soft)}.app-shell .module-chevron{color:var(--muted);transition:transform var(--dur-2) var(--ease-out)}.app-shell .nav-subitems{box-shadow:inset 1.5px 0 0 var(--line);margin:2px 0 6px 19px;padding-left:9px}.app-shell nav .nav-subitems a,.app-shell nav .reporting-trigger{border-radius:var(--r-md);width:100%;min-height:32px;color:var(--text-soft);font-size:var(--fs-md);text-align:left;transition:background var(--dur-1) ease, color var(--dur-1) ease;background:0 0;border:0;align-items:center;gap:10px;padding:6px 10px;font-weight:400;display:flex}.app-shell nav .nav-subitems a>svg,.app-shell nav .reporting-trigger>svg:first-child{width:16px;height:16px;color:var(--muted);flex-shrink:0}.app-shell nav .reporting-trigger>svg:last-child{color:var(--muted);transition:transform var(--dur-2) var(--ease-out);margin-left:auto}.app-shell nav .reporting-trigger>svg.expanded{transform:rotate(90deg)}.app-shell nav .reporting-trigger.reporting-current{color:var(--text);font-weight:500}.app-shell nav .reporting-subitems{box-shadow:inset 1.5px 0 0 var(--line);margin:2px 0 4px 17px;padding-left:10px}.app-shell nav .reporting-subitems a{min-height:29px;padding:5px 10px;font-size:12.5px}.app-shell nav a:hover,.app-shell nav .module-trigger:hover,.app-shell nav .reporting-trigger:hover,.app-shell nav .nav-action:hover{background:color-mix(in srgb, var(--text) 5%, var(--bg));color:var(--text)}.app-shell nav .home-nav.nav-active,.app-shell nav .nav-subitems a.nav-active{background:var(--card);color:var(--text);font-weight:500;box-shadow:0 1px 2px #0d17260d,0 0 0 .5px #0d17260a}.app-shell nav .home-nav.nav-active>svg,.app-shell nav .nav-subitems a.nav-active>svg{color:var(--accent)}.app-shell nav .nav-action,.app-shell nav .nav-subitems .nav-action{border-radius:var(--r-md);width:100%;min-height:32px;color:var(--text-soft);font-size:var(--fs-md);background:0 0;border:0;align-items:center;gap:10px;padding:6px 10px;display:flex}.app-shell nav .nav-action>svg{color:var(--muted)}.app-shell .sidebar-bottom .module-trigger{margin-top:0}.app-shell .profile{border-radius:var(--r-md);padding:8px}.app-shell .profile:hover{background:color-mix(in srgb, var(--text) 4%, var(--bg))}.app-shell h1{letter-spacing:-.01em;font-size:28px;font-weight:600}.app-shell .page-heading p{color:var(--muted)}.app-shell .panel,.app-shell .stat{border-radius:var(--r-lg);box-shadow:none}.app-shell .stat{transition:transform var(--dur-2) var(--ease-out), box-shadow var(--dur-2) ease;padding:20px 22px}.app-shell .module-card{transition:transform var(--dur-2) var(--ease-out), box-shadow var(--dur-2) ease}.app-shell .module-card:hover,.app-shell button.stat:hover,.app-shell a.stat:hover{transform:translateY(-2px);box-shadow:0 10px 24px -14px #0d172640}.app-shell table thead th{background:var(--surface-2);color:var(--text-soft);border-bottom:0;padding-top:10px;padding-bottom:10px;font-size:12.5px;font-weight:500}.app-shell table thead tr:first-child th{border-top:0}.app-shell th .th-sort{color:inherit;font-weight:inherit;gap:5px}.app-shell th .th-sort>svg{opacity:.55;transition:opacity var(--dur-1) ease, transform var(--dur-2) var(--ease-out)}.app-shell th .th-sort:hover>svg{opacity:1}.app-shell th .th-sort.is-active{color:var(--text);font-weight:600}.app-shell th .th-sort.is-active>svg{opacity:1;color:var(--accent)}.app-shell .panel.table-scroll{padding:10px}.app-shell tbody tr{transition:background var(--dur-1) ease}.app-shell .project-group-heading{margin:0 0 10px}.app-shell .project-group-heading>button{border-radius:var(--r-md);color:var(--text);transition:background var(--dur-1) ease;background:0 0;align-items:center;gap:10px;padding:6px 10px 6px 4px;font-size:15px;font-weight:600;display:inline-flex}.app-shell .project-group-heading>button:hover{background:color-mix(in srgb, var(--text) 5%, transparent)}.app-shell .project-group-heading>button>svg:first-child{color:var(--muted)}.app-shell .project-group-heading strong{font-weight:600}.group-count{border-radius:var(--r-pill);background:var(--surface-3);min-width:22px;height:20px;color:var(--text-soft);place-items:center;padding:0 7px;font-size:12px;font-weight:600;display:inline-grid}.app-shell .project-group-section:has(>.project-group-heading){padding-left:28px}.app-shell .project-group-section>.project-group-heading{margin-left:-28px}.app-shell .table-group-row th{color:var(--text);background:0 0;padding-top:22px;padding-bottom:10px;font-size:14.5px;font-weight:600}.app-shell .table-group-title{gap:9px;font-size:14.5px;font-weight:600}.app-shell .table-group-title .count{border-radius:var(--r-pill);background:var(--surface-3);min-width:22px;height:20px;color:var(--text-soft);place-items:center;padding:0 7px;font-size:12px;display:inline-grid}.app-shell .table-group-row+tr td:first-child,.app-shell tr.table-group-row~tr:not(.table-group-row) td:first-child{padding-left:34px}.app-shell button,.app-shell .button{transition:background var(--dur-1) ease, color var(--dur-1) ease, box-shadow var(--dur-1) ease, transform var(--dur-1) ease, scale var(--dur-1) ease}.app-shell button:not(:disabled):active{scale:.97}.app-shell .primary{box-shadow:0 6px 14px -8px color-mix(in srgb, var(--accent) 70%, transparent)}.toolbar-menu[open]>.toolbar-menu-panel,details[open]>.menu-panel,.mention-inbox-panel,.notes-panel-popover{animation:pop-in var(--dur-2) var(--ease-spring);transform-origin:100% 0}.toolbar-menu-panel{box-shadow:var(--shadow-pop);border-radius:14px}dialog[open]:not(:has([data-slot=drawer-content])){animation:dialog-in var(--dur-3) var(--ease-out)}dialog[open]::backdrop,.modal-backdrop{animation:fade-in var(--dur-2) ease}.modal-backdrop>.modal{animation:dialog-in var(--dur-3) var(--ease-out)}.app-shell .content>:not(.onboarding){animation:rise-in var(--dur-3) var(--ease-out) backwards}.app-shell .content>:nth-child(2){animation-delay:30ms}.app-shell .content>:nth-child(3){animation-delay:60ms}.app-shell .content>:nth-child(n+4){animation-delay:90ms}.app-shell .project-group-section{animation:rise-in var(--dur-3) var(--ease-out) backwards}.app-toaster{z-index:2147483601;pointer-events:none;flex-direction:column;align-items:center;gap:8px;width:min(460px,100vw - 32px);display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.app-toast{background:color-mix(in srgb, var(--card) 92%, transparent);-webkit-backdrop-filter:saturate(1.5)blur(14px);backdrop-filter:saturate(1.5)blur(14px);width:100%;color:var(--text);font-size:var(--fs-md);pointer-events:auto;animation:toast-enter .42s var(--ease-spring) both;border-radius:16px;align-items:center;gap:12px;padding:10px 10px 10px 12px;display:flex;position:relative;overflow:hidden;box-shadow:0 18px 40px -16px #0d172647,0 2px 6px #0d172612,0 0 0 .5px #0d172614}.app-toast.is-loading .app-toast-icon svg{animation:1s linear infinite toast-spin}@keyframes toast-spin{to{transform:rotate(360deg)}}.app-toast.is-leaving{animation:.22s ease-in forwards toast-leave}.app-toast-icon{border-radius:50%;flex-shrink:0;place-items:center;width:30px;height:30px;display:grid}.app-toast.tone-success .app-toast-icon{background:var(--success-soft);color:var(--success)}.app-toast.tone-info .app-toast-icon{background:var(--accent-soft);color:var(--accent)}.app-toast.tone-warning .app-toast-icon{background:var(--warning-soft);color:var(--warning)}.app-toast.tone-error .app-toast-icon{background:var(--danger-soft);color:var(--danger)}.app-toast.tone-success .app-toast-icon svg{animation:check-pop .5s var(--ease-spring) .1s both}.app-toast-text{flex:1;min-width:0;line-height:1.35;display:grid}.app-toast-text>span{font-weight:500}.app-toast-text small{color:var(--muted);font-size:var(--fs-sm)}.app-toast-action{border-radius:var(--r-pill);background:var(--surface-2);color:var(--text);font-size:var(--fs-sm);border:0;flex-shrink:0;padding:6px 12px;font-weight:500}.app-toast-action:hover{background:var(--surface-3)}.app-toast-close{width:28px;height:28px;color:var(--muted);background:0 0;border:0;border-radius:50%;flex-shrink:0;place-items:center;padding:0;display:grid}.app-toast-close:hover{background:var(--surface-2);color:var(--text)}.app-toast-life{transform-origin:0;opacity:.18;width:100%;height:2px;animation:toast-life var(--toast-life) linear forwards;background:currentColor;position:absolute;bottom:0;left:0}.app-toast.tone-success .app-toast-life{color:var(--success);opacity:.45}.app-toast.tone-error .app-toast-life{color:var(--danger);opacity:.45}.app-toast.tone-warning .app-toast-life{color:var(--warning);opacity:.45}.app-toast.tone-info .app-toast-life{color:var(--accent);opacity:.45}.app-toast.is-paused .app-toast-life{animation-play-state:paused}dialog .app-toaster{position:fixed}.save-feedback{pointer-events:none;z-index:2147483600;position:fixed;inset:0}@keyframes rise-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes fade-in{0%{opacity:0}}@keyframes pop-in{0%{opacity:0;transform:translateY(-4px)scale(.97)}}@keyframes dialog-in{0%{opacity:0;transform:translateY(10px)scale(.98)}}@keyframes toast-enter{0%{opacity:0;transform:translateY(18px)scale(.94)}}@keyframes toast-leave{to{opacity:0;transform:translateY(10px)scale(.96)}}@keyframes toast-life{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@keyframes check-pop{0%{opacity:0;transform:scale(.4)rotate(-20deg)}}@media (max-width:700px){.app-shell .main-shell{margin-left:0}.app-shell .topbar{padding:0 12px}.app-shell .content{padding:8px 14px 40px}.app-shell .demo-strip{margin:0 14px 8px}.app-shell .project-group-section:has(>.project-group-heading){padding-left:12px}.app-shell .project-group-section>.project-group-heading{margin-left:-12px}.app-toaster{bottom:16px}}@media (prefers-reduced-motion:reduce){.app-shell *,.app-toast,.app-toast *,dialog[open],dialog[open]::backdrop,.modal-backdrop,.modal-backdrop>.modal{transition:none!important;animation:none!important}}.projects-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:4px 0 18px;display:grid}.kpi-card{border-radius:var(--r-lg);background:var(--card);align-content:start;gap:6px;min-height:128px;padding:18px 20px;display:grid;position:relative;overflow:hidden}.kpi-label{color:var(--muted);font-size:var(--fs-md);align-items:center;gap:7px;display:flex}.kpi-label svg{color:var(--muted)}.kpi-value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:30px;font-weight:600;line-height:1.1}.kpi-value.is-danger{color:var(--danger)}.kpi-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;padding-right:64px;font-size:12.5px;display:flex}.kpi-chip{border-radius:var(--r-pill);padding:1px 8px;font-weight:500}.kpi-chip.tone-warning{background:var(--warning-soft);color:color-mix(in srgb, var(--warning) 80%, var(--text))}.kpi-danger{color:var(--danger);font-weight:500}.kpi-bars{align-items:flex-end;gap:3px;height:34px;display:flex;position:absolute;bottom:18px;right:20px}.kpi-bars i{background:var(--accent-soft-strong);transform-origin:bottom;width:7px;animation:bar-grow .6s var(--ease-out) both;border-radius:3px}.kpi-bars i:nth-child(2){animation-delay:60ms}.kpi-bars i:nth-child(3){animation-delay:.12s}.kpi-bars i.is-last{background:var(--accent)}.kpi-bars.tone-danger i{background:var(--danger-soft)}.kpi-bars.tone-danger i.is-last{background:var(--danger)}@keyframes bar-grow{0%{transform:scaleY(0)}}@media (max-width:1100px){.projects-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.projects-kpis{grid-template-columns:1fr}}.pm-cell{white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.next-milestone{gap:1px;min-width:0;max-width:230px;display:grid}.next-milestone strong{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.next-milestone small{color:var(--muted);font-size:var(--fs-sm);white-space:nowrap;align-items:center;gap:5px;display:inline-flex}.next-milestone small.tone-danger{color:var(--danger);font-weight:500}.next-milestone small.tone-warning{color:color-mix(in srgb, var(--warning) 82%, var(--text))}.risk-scores{align-items:center;gap:4px;display:inline-flex}.risk-scores small{color:var(--muted);font-size:var(--fs-sm)}.risk-score{font-variant-numeric:tabular-nums;border-radius:7px;place-items:center;min-width:26px;height:22px;padding:0 6px;font-size:12px;font-weight:600;display:inline-grid}.risk-score.band-critical{background:var(--danger);color:#fff}.risk-score.band-high{background:color-mix(in srgb, var(--danger) 18%, var(--card));color:color-mix(in srgb, var(--danger) 85%, var(--text))}.risk-score.band-medium{background:var(--warning-soft);color:color-mix(in srgb, var(--warning) 80%, var(--text))}.risk-score.band-low{background:var(--success-soft);color:color-mix(in srgb, var(--success) 80%, var(--text))}.health-badge{white-space:nowrap;font-size:var(--fs-md);align-items:center;gap:8px;display:inline-flex}.health-badge i{background:var(--success);border-radius:50%;width:9px;height:9px}.health-badge.health-watch i{background:var(--warning)}.health-badge.health-risk i{background:var(--danger);box-shadow:0 0 0 0 color-mix(in srgb, var(--danger) 45%, transparent);animation:2.2s ease-out infinite health-pulse}@keyframes health-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--danger) 45%, transparent)}70%,to{box-shadow:0 0 0 7px #0000}}.group-health-icon{color:var(--success);display:inline-grid}.group-health-icon.health-watch{color:var(--warning)}.group-health-icon.health-risk{color:var(--danger)}.group-count.tone-danger{background:var(--danger-soft);color:var(--danger)}.empty-cell{color:var(--muted)}.app-shell .compact-projects{min-width:1020px}.app-shell .compact-projects th:first-child{width:19%}.app-shell .compact-projects th:nth-child(2){width:11%}.app-shell .compact-projects th:nth-child(3){width:13%}.app-shell .compact-projects th:nth-child(4),.app-shell .compact-projects th:nth-child(5){width:15%}.app-shell .compact-projects th:nth-child(6){width:8%}.app-shell .compact-projects th:nth-child(9){width:3%}.app-shell .compact-projects td{overflow-wrap:normal}.app-shell .compact-projects .pill{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.app-shell .compact-projects .pm-cell{text-overflow:ellipsis;max-width:100%;overflow:hidden}.app-shell .compact-projects .project-duration{min-width:0;max-width:100%}.app-shell .page-context-surface:has(.project-tabs){background:var(--card);padding:0;overflow:hidden}.app-shell .page-context.is-compact .page-context-surface:has(.project-tabs){padding:0;box-shadow:0 10px 24px -18px #0d172659}.project-hero-top{isolation:isolate;padding:22px 26px 14px;position:relative}.app-shell .page-context-surface:has(.project-header-banner){padding-inline:0}.project-hero-top:has(.project-header-banner){min-height:168px;padding-top:26px}.project-chips{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.project-chip{border-radius:var(--r-pill);background:color-mix(in srgb, var(--surface-2) 85%, transparent);height:24px;color:var(--text-soft);font-size:var(--fs-sm);align-items:center;padding:0 10px;font-weight:500;display:inline-flex}.project-chips .health-badge{border-radius:var(--r-pill);background:var(--success-soft);height:24px;font-size:var(--fs-sm);padding:0 10px;font-weight:500}.project-chips .health-badge.health-watch{background:var(--warning-soft)}.project-chips .health-badge.health-risk{background:var(--danger-soft)}.app-shell .page-context .project-hero-top h1{letter-spacing:-.015em;font-size:30px}.app-shell .detail-heading .detail-sub{margin-top:4px}.app-shell .detail-heading .address-link{color:var(--muted);font-size:var(--fs-md)}.project-facts{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:18px;margin:0;padding:4px 26px 18px;display:grid}.project-facts>div{min-width:0}.project-facts dt{color:var(--muted);font-size:12.5px}.project-facts dd{letter-spacing:-.01em;margin:2px 0 0;font-size:17px;font-weight:600;display:grid}.project-facts dd small{color:var(--muted);font-size:var(--fs-sm);letter-spacing:0;font-weight:400}.project-facts dd small.tone-danger{color:var(--danger);font-weight:500}.project-facts dd.fact-person{align-items:center;gap:8px;font-size:15px;font-weight:500;display:flex}.fact-ellipsis{text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:500;overflow:hidden}.page-context.is-compact .project-facts,.page-context.is-compact .project-chips,.page-context.is-compact .project-header-banner{display:none}.page-context.is-compact .project-hero-top{min-height:0;padding:10px 22px 4px}.app-shell .page-context .tabs.project-tabs{scrollbar-width:none;width:100%;box-shadow:inset 0 1px 0 var(--line);background:0 0;border-radius:0;flex-wrap:nowrap;gap:0;margin:0;padding:0 14px;display:flex;overflow-x:auto}.app-shell .content .page-context .tabs.project-tabs button[role=tab]{min-height:46px;color:var(--muted);font-size:var(--fs-md);box-shadow:none;background:0 0;border-radius:0;flex-shrink:0;padding:0 9px;font-weight:500;position:relative}.app-shell .content .page-context .tabs.project-tabs button[role=tab]:after{content:"";background:var(--text);height:2px;transition:transform var(--dur-2) var(--ease-out);border-radius:2px;position:absolute;bottom:0;left:10px;right:10px;transform:scaleX(0)}.app-shell .content .page-context .tabs.project-tabs button[role=tab]:hover{color:var(--text);background:0 0}.app-shell .content .page-context .tabs.project-tabs button[aria-selected=true]{color:var(--text);box-shadow:none;background:0 0}.app-shell .content .page-context .tabs.project-tabs button[aria-selected=true]:after{transform:scaleX(1)}.page-context.is-compact .tabs.project-tabs{margin-top:0}.tab-count{border-radius:var(--r-pill);background:var(--surface-2);min-width:20px;height:18px;color:var(--text-soft);place-items:center;margin-left:6px;padding:0 6px;font-size:11px;font-weight:600;display:inline-grid}.tab-count.is-alert{background:var(--danger-soft);color:var(--danger)}.project-pulse{grid-template-columns:2fr 1fr;gap:22px;margin-bottom:22px;display:grid}@media (min-width:1101px){.project-pulse{grid-template-columns:minmax(0,1.65fr) minmax(360px,1fr)}}.pulse-heading{align-items:center;gap:10px;margin-bottom:16px;display:flex}.pulse-heading h2{margin:0;font-size:16px}.pulse-heading .health-badge{margin-left:auto}.pulse-heading .muted{font-size:var(--fs-md)}.phase-track{grid-template-columns:1fr 2.2fr 1fr 1fr 1fr;gap:6px;margin:0 0 18px;padding:0;list-style:none;display:grid}.phase-track-bar{border-radius:var(--r-pill);background:var(--surface-2);height:8px;display:block;overflow:hidden}.phase-track-bar i{border-radius:inherit;background:var(--accent);transform-origin:0;height:100%;animation:bar-fill .8s var(--ease-out) both;display:block}.phase-track li.is-done .phase-track-bar i{background:color-mix(in srgb, var(--accent) 55%, var(--card))}@keyframes bar-fill{0%{transform:scaleX(0)}}.phase-track-label{color:var(--muted);font-size:var(--fs-sm);align-items:center;gap:4px;margin-top:8px;display:flex}.phase-track li.is-done .phase-track-label{color:var(--text-soft)}.phase-track li.is-done .phase-track-label svg{color:var(--success)}.phase-track li.is-current .phase-track-label{color:var(--text);font-weight:600}.pulse-signals{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.pulse-signal{background:color-mix(in srgb, var(--success) 7%, var(--card));border-radius:14px;align-content:start;gap:4px;padding:14px 16px;display:grid}.pulse-signal.health-watch{background:color-mix(in srgb, var(--warning) 9%, var(--card))}.pulse-signal.health-risk{background:color-mix(in srgb, var(--danger) 7%, var(--card))}.pulse-signal-head{color:color-mix(in srgb, var(--success) 85%, var(--text));font-size:var(--fs-md);align-items:center;gap:7px;font-weight:500;display:flex}.pulse-signal.health-watch .pulse-signal-head{color:color-mix(in srgb, var(--warning) 80%, var(--text))}.pulse-signal.health-risk .pulse-signal-head{color:color-mix(in srgb, var(--danger) 88%, var(--text))}.pulse-signal strong{font-size:16px;font-weight:600}.pulse-signal p{color:var(--text-soft);overflow-wrap:anywhere;margin:0;font-size:12.5px;line-height:1.4}.agenda-list li+li{border-top:1px solid var(--line)}.agenda-list button{border-radius:var(--r-md);width:100%;color:var(--text);text-align:left;background:0 0;border:0;grid-template-columns:44px 30px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 6px;display:grid}.agenda-list button:hover{background:var(--surface-2)}.agenda-date{color:var(--muted);font-size:var(--fs-sm);line-height:1.15;display:grid}.agenda-date b{color:var(--text);font-size:16px;font-weight:600}.agenda-icon.kind-milestone{background:var(--warning-soft);color:var(--warning)}.agenda-icon.kind-meeting{background:var(--accent-soft);color:var(--accent)}.agenda-text strong{font-size:var(--fs-md);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.agenda-text small{color:var(--muted);font-size:var(--fs-sm)}.agenda-tag{border-radius:var(--r-pill);background:var(--surface-2);color:var(--text-soft);font-size:var(--fs-sm);white-space:nowrap;align-items:center;gap:4px;padding:2px 9px;font-weight:500;display:inline-flex}.agenda-tag.tag-danger{background:var(--danger-soft);color:var(--danger)}.agenda-tag.tag-warning{background:var(--warning-soft);color:color-mix(in srgb, var(--warning) 80%, var(--text))}.agenda-empty{margin:8px 0 0}@media (max-width:1100px){.project-pulse{grid-template-columns:1fr}}@media (max-width:700px){.phase-track{grid-template-columns:repeat(5,minmax(0,1fr))}.phase-track-label{font-size:10.5px}.project-hero-top,.project-facts{padding-inline:16px}}.milestone-gantt{--gantt-name-width:300px;--gantt-date-width:92px;--gantt-label-width:calc(var(--gantt-name-width) + var(--gantt-date-width));min-width:0;max-width:100%}.gantt-controls,.gantt-zoom{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.gantt-controls{margin-bottom:14px}.gantt-controls .view-switch{margin:0}.gantt-range{font-size:var(--fs-meta);margin-left:auto}.gantt-mobile-date{display:none}.gantt-scroll{padding-bottom:6px;overflow-x:auto}.gantt-grid{min-width:calc(var(--gantt-label-width) + var(--gantt-width));position:relative}.gantt-head,.gantt-row{grid-template-columns:var(--gantt-name-width) var(--gantt-date-width) var(--gantt-width);align-items:center;display:grid}.gantt-head{border-radius:var(--r-md);background:var(--surface-2);height:42px;color:var(--text-soft);font-size:12.5px;font-weight:500}.gantt-head .gantt-col-name{padding-left:14px}.gantt-months{height:100%;display:flex}.gantt-months>span{flex:0 0 var(--gantt-period);box-shadow:inset 1px 0 0 color-mix(in srgb, var(--text) 8%, transparent);white-space:nowrap;padding:4px 0 0 7px;position:relative;overflow:visible}.gantt-tick{width:max(44px, calc(var(--gantt-period) - 7px));position:absolute}.gantt-months span.has-year{color:var(--text)}.gantt-months small{color:var(--muted);font-size:var(--fs-meta);display:block}.gantt-group{max-width:min(100%, var(--gantt-label-width));white-space:normal;border-radius:var(--r-md);width:max-content;color:var(--text);background:0 0;border:0;align-items:center;gap:9px;margin:18px 0 6px;padding:5px 10px 5px 4px;font-size:14.5px;font-weight:600;display:flex;position:sticky;left:0}.gantt-group:hover{background:var(--surface-2)}.gantt-group>svg{color:var(--muted)}.gantt-row{min-height:44px}.gantt-row:hover{background:color-mix(in srgb, var(--accent) 4%, transparent)}.gantt-row .gantt-col-name{min-width:0;height:100%;color:var(--text);text-align:left;background:0 0;border:0;align-items:center;gap:9px;padding:0 12px 0 30px;display:flex}.gantt-title{font-size:var(--fs-md);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.gantt-law{color:var(--muted);flex-shrink:0}.gantt-row .gantt-col-name .user-avatar,.gantt-row .gantt-col-name>span:last-child:not(.gantt-title){margin-left:auto}.gantt-state{background:var(--surface-2);width:20px;height:20px;color:var(--muted);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.gantt-state.tone-done{background:var(--success-soft);color:var(--success)}.gantt-state.tone-late{background:var(--danger-soft);color:var(--danger)}.gantt-col-date{color:var(--text-soft);font-size:var(--fs-md);white-space:nowrap}.gantt-col-date.is-late{color:var(--danger);font-weight:500}.gantt-track{background-image:repeating-linear-gradient(90deg, color-mix(in srgb, var(--text) 7%, transparent) 0 1px, transparent 1px var(--gantt-period));height:44px;position:relative;overflow:hidden}.gantt-head>.gantt-col-name,.gantt-head>.gantt-col-date,.gantt-row>.gantt-col-name,.gantt-row>.gantt-col-date{z-index:3;background:var(--card);height:100%;position:sticky;left:0}.gantt-head>.gantt-col-date,.gantt-row>.gantt-col-date{left:var(--gantt-name-width);align-items:center;display:flex}.gantt-head>.gantt-col-name,.gantt-head>.gantt-col-date{background:var(--surface-2);align-content:center}.gantt-lead{border-radius:var(--r-pill);pointer-events:none;--lead-color:var(--accent);background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--lead-color) 85%, transparent));height:8px;position:absolute;top:18px}.gantt-lead.tone-done{--lead-color:var(--success)}.gantt-lead.tone-contract{--lead-color:var(--text)}.gantt-lead.tone-late{--lead-color:var(--danger)}.app-shell .gantt-diamond{background:var(--accent);width:16px;min-width:0;height:16px;min-height:0;box-shadow:0 0 0 3px var(--card);cursor:pointer;transition:transform var(--dur-2) var(--ease-spring);border:0;border-radius:3px;padding:0;position:absolute;top:14px;transform:translate(-8px)rotate(45deg)}.app-shell .gantt-diamond:hover{transform:translate(-8px)rotate(45deg)scale(1.25)}.app-shell .gantt-diamond:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.app-shell .gantt-diamond.tone-done{background:var(--success)}.app-shell .gantt-diamond.tone-contract{background:var(--text)}.app-shell .gantt-diamond.tone-late{background:var(--danger)}.gantt-penalty{border-radius:var(--r-pill);background:var(--surface-2);color:var(--text-soft);white-space:nowrap;pointer-events:none;padding:1px 8px;font-size:11.5px;position:absolute;top:12px}.gantt-today{background:var(--danger);pointer-events:none;z-index:2;width:2px;margin-left:-1px;position:absolute;top:34px;bottom:0}.gantt-today span{border-radius:var(--r-pill);background:var(--danger);color:#fff;padding:1px 7px;font-size:11px;font-weight:600;position:absolute;top:-6px;left:50%;transform:translate(-50%)}.gantt-foot{flex-wrap:wrap;align-items:center;gap:12px;margin-top:10px;font-size:12.5px;display:flex}.gantt-legend{color:var(--muted);flex-wrap:wrap;gap:14px;margin-left:auto;display:flex}.gantt-legend span{align-items:center;gap:6px;display:inline-flex}.gantt-legend i{background:var(--accent);border-radius:2px;width:9px;height:9px;transform:rotate(45deg)}.gantt-legend i.tone-done{background:var(--success)}.gantt-legend i.tone-contract{background:var(--text)}.gantt-legend i.tone-late{background:var(--danger)}@media (max-width:700px){.milestone-gantt{--gantt-name-width:156px;--gantt-date-width:0px}.gantt-head>.gantt-col-date,.gantt-row>.gantt-col-date{visibility:hidden;overflow:hidden}.gantt-row .gantt-col-name{gap:5px;padding:4px 8px 4px 0}.gantt-row .gantt-title-wrap{grid-template-columns:minmax(0,1fr) auto;gap:0 3px;display:grid}.gantt-title-wrap .gantt-title{grid-area:1/1}.gantt-title-wrap .gantt-law{grid-area:1/2}.gantt-mobile-date{font-size:var(--fs-meta);color:var(--text-soft);grid-column:1/-1;display:block}.gantt-mobile-date.is-late{color:var(--danger)}.gantt-row .gantt-col-name .user-avatar{display:none}.gantt-range{width:100%;margin-left:0}.gantt-legend{margin-left:0}.gantt-months>span{padding-left:4px}.gantt-group{font-size:var(--fs-meta);gap:4px}.gantt-group strong{min-width:0}.gantt-scroll{scroll-padding-left:var(--gantt-label-width)}}.score-critical,.risk-kind-icon.score-critical{background:var(--danger);color:#fff}.matrix-cell.score-critical{background:color-mix(in srgb, var(--danger) 30%, var(--card));color:color-mix(in srgb, var(--danger) 70%, var(--text))}.risk-overview{grid-template-columns:300px minmax(0,1fr);align-items:start;gap:16px;display:grid}.risk-map-card,.risk-list-card{border-radius:var(--r-lg);background:var(--card);padding:18px 20px}.risk-map-card h3{align-items:baseline;gap:6px;margin:0 0 14px;font-size:15px;display:flex}.risk-map-card h3 small{color:var(--muted);font-size:var(--fs-sm);font-weight:400}.risk-map{gap:4px;display:grid}.risk-map-row{grid-template-columns:16px repeat(5,minmax(0,1fr));gap:4px;display:grid}.risk-map-axis{color:var(--muted);place-items:center;font-size:11px;display:grid}.app-shell .risk-map-cell{cursor:pointer;border:0;border-radius:9px;place-items:center;height:40px;min-height:0;padding:0;display:grid}.app-shell .risk-map-cell:disabled{cursor:default;opacity:1}.risk-map-cell.score-low{background:color-mix(in srgb, var(--success) 12%, var(--card))}.risk-map-cell.score-medium{background:color-mix(in srgb, var(--warning) 14%, var(--card))}.risk-map-cell.score-high{background:color-mix(in srgb, var(--danger) 13%, var(--card))}.risk-map-cell.score-critical{background:color-mix(in srgb, var(--danger) 28%, var(--card))}.risk-map-cell b{background:var(--card);width:26px;height:26px;color:var(--text);transition:transform var(--dur-2) var(--ease-spring);border-radius:50%;place-items:center;font-size:12.5px;display:grid;box-shadow:0 1px 3px #0d172626}.risk-map-cell:not(:disabled):hover b{transform:scale(1.12)}.risk-map-cell.is-selected{outline:2px solid var(--text);outline-offset:1px}.risk-map-caption{color:var(--muted);justify-content:space-between;margin:6px 0 0 20px;font-size:11.5px;display:flex}.risk-subheading{margin-top:22px!important}.risk-categories{gap:9px;margin:0;padding:0;list-style:none;display:grid}.risk-categories li{grid-template-columns:130px minmax(0,1fr) 20px;align-items:center;gap:10px;font-size:12.5px;display:grid}.risk-categories li>span:first-child{color:var(--text-soft);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:6px;display:flex;overflow:hidden}.risk-category-bar{border-radius:var(--r-pill);background:var(--surface-2);height:6px;overflow:hidden}.risk-category-bar i{border-radius:inherit;background:color-mix(in srgb, var(--accent) 45%, var(--card));transform-origin:0;height:100%;animation:bar-fill .7s var(--ease-out) both;display:block}.risk-categories b{text-align:right;font-weight:600}.risk-closed-note{margin:16px 0 0;font-size:12px}.risk-row{border-radius:var(--r-md);width:100%;color:var(--text);text-align:left;font-size:var(--fs-md);background:0 0;border:0;grid-template-columns:52px minmax(0,1fr) 150px 120px 88px 18px;align-items:center;gap:10px;padding:11px 8px 11px 34px;display:grid}.app-shell button.risk-row:not(:disabled):active{scale:none}button.risk-row:hover{background:var(--surface-2)}.risk-row>svg{color:var(--muted)}.risk-head{border-radius:var(--r-md);background:var(--surface-2);color:var(--text-soft);margin-top:4px;padding-top:10px;padding-bottom:10px;font-size:12.5px;font-weight:500}.risk-row>.risk-score{justify-self:start}.risk-title{min-width:0;display:grid}.risk-title strong{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.risk-title small{color:var(--muted);font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.risk-title em{color:var(--danger);font-style:normal}.risk-type{color:var(--text-soft);font-size:var(--fs-sm);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:6px;display:inline-flex;overflow:hidden}.risk-band+.risk-band{margin-top:6px}.risk-band-head{border-radius:var(--r-md);width:100%;color:var(--text);text-align:left;background:0 0;border:0;align-items:center;gap:9px;margin:16px 0 4px;padding:6px 8px 6px 4px;font-size:14.5px;font-weight:600;display:flex}.risk-band-head:hover{background:var(--surface-2)}.risk-band-head>svg{color:var(--muted)}.risk-band-swatch{background:var(--muted);border-radius:3px;width:10px;height:10px}.band-critical .risk-band-swatch{background:var(--danger)}.band-high .risk-band-swatch{background:color-mix(in srgb, var(--danger) 55%, var(--card))}.band-medium .risk-band-swatch{background:var(--warning)}.band-low .risk-band-swatch{background:var(--success)}.risk-band-meta{color:var(--muted);margin-left:auto;font-size:12.5px;font-weight:400}.risk-band-meta b{color:var(--text);font-weight:600}.risk-item+.risk-item{border-top:1px solid var(--line)}.risk-item.is-open{background:color-mix(in srgb, var(--surface-2) 55%, var(--card));border-radius:14px}.risk-item.is-open+.risk-item{border-top-color:#0000}.risk-expand{animation:rise-in var(--dur-2) var(--ease-out) backwards;grid-template-columns:1fr 1fr;gap:18px;padding:2px 16px 16px 96px;display:grid}.risk-expand h4{color:var(--muted);margin:0 0 4px;font-size:12px;font-weight:500}.risk-expand p{font-size:var(--fs-md);white-space:pre-line;margin:0;line-height:1.45}.risk-expand-actions{grid-column:1/-1;justify-content:space-between;align-items:center;display:flex}.risk-score.band-unknown{background:var(--surface-2);color:var(--muted)}.risk-cell-filter{padding:0 0 10px}.risk-empty{margin:14px 4px 0}@media (max-width:1100px){.risk-overview{grid-template-columns:1fr}}@media (max-width:760px){.risk-row{grid-template-columns:44px minmax(0,1fr) 18px;padding-left:12px}.risk-row>:nth-child(3),.risk-row>:nth-child(4),.risk-row>:nth-child(5){display:none}.risk-expand{grid-template-columns:1fr;padding-left:16px}}.panel .risk-overview{gap:28px}.panel .risk-map-card,.panel .risk-list-card{background:0 0;padding:0}.gantt-title-wrap{flex:1;align-items:center;gap:7px;min-width:0;display:flex}.next-milestone small>svg{flex-shrink:0}.next-milestone small>span{text-overflow:ellipsis;overflow:hidden}.home-dashboard{gap:18px;display:grid}.home-hello{align-items:flex-end;gap:16px;margin:6px 0 4px;display:flex}.home-hello>div{flex:1}.home-date{color:var(--muted);font-size:var(--fs-md);margin:0}.home-date:first-letter{text-transform:uppercase}.app-shell .home-hello h1{margin:2px 0 4px;font-size:30px}.home-hello p.muted{font-size:var(--fs-base);margin:0}.home-grid{grid-template-columns:minmax(0,1.65fr) minmax(320px,1fr);align-items:start;gap:18px;display:grid}.home-columns{grid-template-columns:minmax(0,2fr) minmax(300px,1fr);align-items:start;gap:18px;display:grid}.home-main,.home-side{align-content:start;gap:18px;min-width:0;display:grid}.home-heading .view-switch,.home-records .home-heading .ghost{margin-left:auto}.agenda-group+.agenda-group{margin-top:14px}.app-shell .agenda-group-head{border-radius:var(--r-md);width:100%;min-height:0;color:var(--text);text-align:left;background:0 0;border:0;justify-content:flex-start;align-items:center;gap:8px;padding:6px 4px;font-size:14px;display:flex}.agenda-group-head:hover{background:var(--surface-2)}.agenda-group-head>svg:first-child{color:var(--muted);transition:transform var(--dur-2) var(--ease-out)}.agenda-group-head[aria-expanded=false]>svg:first-child{transform:rotate(-90deg)}.agenda-group-head strong{font-weight:600}.agenda-list{margin:0;padding:0;list-style:none;display:grid}.agenda-group .agenda-list{padding-left:22px}.app-shell .agenda-row{border-radius:var(--r-md);width:100%;min-height:0;color:var(--text);font-size:var(--fs-md);text-align:left;background:0 0;border:0;grid-template-columns:30px minmax(0,1fr) auto;justify-content:stretch;align-items:center;gap:12px;padding:7px 8px;display:grid}.agenda-row:hover{background:var(--surface-2)}.agenda-icon{background:var(--surface-2);width:30px;height:30px;color:var(--muted);border-radius:9px;place-items:center;display:grid}.agenda-icon.tone-danger{background:var(--danger-soft);color:var(--danger)}.agenda-icon.tone-warning{background:var(--warning-soft);color:var(--warning)}.agenda-text{min-width:0;display:grid}.agenda-text strong{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.agenda-text small{color:var(--muted);font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.agenda-due{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12.5px}.agenda-due.tone-danger{color:var(--danger);font-weight:600}.agenda-due.tone-warning{color:color-mix(in srgb, var(--warning) 82%, var(--text));font-weight:600}.app-shell .agenda-all{min-height:0;margin:2px 0 0 22px;padding:4px 8px;font-size:12.5px}.home-project-row>.health-badge{justify-content:center}.home-project-row>b{white-space:nowrap;font-size:12.5px;font-weight:600}.home-project-row>b.tone-danger{color:var(--danger)}.home-project-row>b.tone-warning{color:color-mix(in srgb, var(--warning) 82%, var(--text))}.home-project-row>b.muted{font-weight:500}.week-day h3.is-today{color:var(--accent)}.week-item.kind-issue:before{background:#8b5cf6}.week-item.kind-meeting:before,.week-item.kind-report:before{background:var(--accent)}.week-item.is-late strong{color:var(--danger)}.month-grid{gap:2px;margin-bottom:12px;display:grid}.month-name{font-size:var(--fs-md);margin:0 0 4px;font-weight:600}.month-name:first-letter{text-transform:uppercase}.month-row{grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;display:grid}.month-weekdays span{color:var(--muted);text-align:center;font-size:11px;font-weight:600}.app-shell .month-day{border-radius:var(--r-md);height:36px;min-height:0;color:var(--text);font-variant-numeric:tabular-nums;background:0 0;border:0;place-items:center;padding:0 0 6px;font-size:13px;display:grid;position:relative}.month-day:hover{background:var(--surface-2)}.month-day.is-past{color:var(--muted)}.app-shell .month-day.is-today{background:var(--accent-soft);color:var(--accent);font-weight:700}.app-shell .month-day[aria-pressed=true]{background:var(--accent);color:#fff}.month-dots{gap:2px;display:flex;position:absolute;bottom:5px}.month-dots i{background:var(--accent);border-radius:50%;width:4px;height:4px}.month-dots i.kind-milestone{background:var(--warning)}.month-dots i.kind-task{background:var(--muted)}.month-dots i.kind-issue{background:#8b5cf6}.month-day[aria-pressed=true] .month-dots i{background:#fff}.home-heading{align-items:center;gap:10px;margin-bottom:10px;display:flex}.home-heading h2{margin:0;font-size:16px}.home-heading .muted{font-size:var(--fs-md)}.attention-list{margin:0;padding:0;list-style:none;display:grid}.attention-list li{animation:rise-in var(--dur-3) var(--ease-out) backwards;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:14px;padding:11px 0;display:grid}.attention-list li+li{border-top:1px solid var(--line)}.attention-list li:nth-child(2){animation-delay:40ms}.attention-list li:nth-child(3){animation-delay:80ms}.attention-list li:nth-child(n+4){animation-delay:.12s}.attention-icon{border-radius:11px;place-items:center;width:36px;height:36px;display:grid}.attention-icon.tone-danger{background:var(--danger-soft);color:var(--danger)}.attention-icon.tone-warning{background:var(--warning-soft);color:var(--warning)}.attention-icon.tone-info{background:var(--accent-soft);color:var(--accent)}.attention-text{min-width:0;display:grid}.attention-text strong{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.attention-text small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.attention-list button{border-radius:var(--r-pill);white-space:nowrap;padding:6px 12px;font-size:12.5px}.home-calm{background:var(--success-soft);color:color-mix(in srgb, var(--success) 75%, var(--text));border-radius:14px;align-items:center;gap:10px;margin:6px 0 0;padding:14px 16px;display:flex}.home-more{flex-wrap:wrap;gap:4px 8px;margin:8px 0 0;font-size:12.5px;display:flex}.home-more .ghost{min-height:0;margin-left:-8px;padding:4px 8px;font-size:12.5px}.home-more .ghost+.ghost{margin-left:0}.home-stack{align-content:start;gap:18px;min-width:0;display:grid}.home-requests .home-heading .ghost{margin-left:auto}.home-ticket{border-radius:var(--r-md);width:100%;color:var(--text);text-align:left;font-size:var(--fs-md);background:0 0;border:0;grid-template-columns:16px minmax(0,1fr) auto;align-items:center;gap:12px;padding:8px;display:grid}.home-ticket:hover{background:var(--surface-2)}.home-ticket>svg{color:var(--muted)}.home-ticket>span:nth-child(2){min-width:0;display:grid}.home-ticket strong{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.home-ticket small{color:var(--muted);font-size:var(--fs-sm)}.week-day+.week-day{margin-top:12px}.week-day h3{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;margin:0 0 4px;font-size:11.5px;font-weight:600}.week-item{border-radius:var(--r-md);width:100%;color:var(--text);text-align:left;background:0 0;border:0;grid-template-columns:4px 18px minmax(0,1fr);align-items:center;gap:10px;padding:7px 8px 7px 0;display:grid}.week-item:before{content:"";background:var(--accent);border-radius:4px;align-self:stretch}.week-item.kind-milestone:before{background:var(--warning)}.week-item.kind-task:before{background:var(--muted)}.week-item>svg{color:var(--muted)}.week-item:hover{background:var(--surface-2)}.week-item span{min-width:0;display:grid}.week-item strong{font-size:var(--fs-md);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.week-item small{color:var(--muted);font-size:var(--fs-sm)}.home-section-head{align-items:center;gap:10px;margin:6px 2px -4px;display:flex}.home-section-head h2{margin:0;font-size:17px}.home-section-head .ghost{margin-left:auto}.home-projects{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;display:grid}.app-shell .home-project{border-radius:var(--r-lg);background:var(--card);min-height:0;color:var(--text);text-align:left;transition:transform var(--dur-2) var(--ease-out), box-shadow var(--dur-2) ease;border:0;align-content:start;gap:4px;padding:14px 16px 16px;display:grid}.app-shell .home-project:hover{transform:translateY(-2px);box-shadow:0 12px 26px -16px #0d17264d}.app-shell .home-project:not(:disabled):active{transform:scale(.99)}.home-project-thumb{background:linear-gradient(150deg, var(--surface-2), var(--surface-3));height:64px;color:inherit;border-radius:12px;margin:0 -4px 10px;padding:10px;display:block}.home-project-thumb.phase-0{background:linear-gradient(150deg,#fbf3e6,#f1dcb9)}.home-project-thumb.phase-1{background:linear-gradient(150deg,#e3f0fb,#b9d3ef)}.home-project-thumb.phase-2{background:linear-gradient(150deg,#eaeefa,#c9d2ee)}.home-project-thumb.phase-3{background:linear-gradient(150deg,#efebf8,#d4c9ec)}.home-project-thumb.phase-4{background:linear-gradient(150deg,#eef1f4,#d6dce3)}.home-project-thumb.phase-5{background:linear-gradient(150deg,#f8eeea,#e5cdc6)}html[data-theme=dark] .home-project-thumb{filter:brightness(.45)saturate(1.2)}.home-project-thumb .health-badge{border-radius:var(--r-pill);background:var(--card);height:24px;font-size:var(--fs-sm);padding:0 10px;font-weight:500}html[data-theme=dark] .home-project-thumb .health-badge{filter:brightness(2.2)saturate(.85)}.home-project>strong{font-size:15px;font-weight:600;line-height:1.25}.home-project>small{color:var(--muted);font-size:12.5px}.home-project-time{color:var(--muted);font-size:var(--fs-sm);gap:5px;margin-top:10px;display:grid}.home-project-time>span:first-child{justify-content:space-between;display:flex}.home-project-time em{font-style:normal}.home-project-bar{border-radius:var(--r-pill);background:var(--surface-2);height:6px;overflow:hidden}.home-project-bar i{border-radius:inherit;background:var(--accent);transform-origin:0;height:100%;animation:bar-fill .8s var(--ease-out) both;display:block}.home-project-line{align-items:center;gap:8px;min-height:24px;font-size:12.5px;display:flex}.home-project-line:first-of-type{border-top:1px solid var(--line);margin-top:10px;padding-top:10px}.home-project-line>svg{color:var(--muted);flex-shrink:0}.home-project-line>span:not(.risk-scores){text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.home-project-line b{white-space:nowrap;font-weight:600}.home-project-line b.tone-warning{color:color-mix(in srgb, var(--warning) 82%, var(--text))}.task-group+.task-group{margin-top:10px}.task-group h3{align-items:center;gap:8px;margin:6px 0 2px;font-size:14px;font-weight:600;display:flex}.task-row{border-radius:var(--r-md);width:100%;color:var(--text);text-align:left;font-size:var(--fs-md);background:0 0;border:0;grid-template-columns:16px minmax(0,1fr) auto;align-items:center;gap:12px;padding:9px 8px 9px 24px;display:grid}.task-row:hover{background:var(--surface-2)}.task-dot{width:15px;height:15px;box-shadow:inset 0 0 0 1.5px var(--border-input);border-radius:5px}.task-row span:nth-child(2){min-width:0;display:grid}.task-row strong{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.task-row small{color:var(--muted);font-size:var(--fs-sm)}.task-row>span:last-child{white-space:nowrap;font-size:12.5px}.home-modules .home-launcher{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.app-shell .home-modules .module-card{aspect-ratio:auto;background:var(--surface-2);width:auto;height:auto;min-height:0;color:var(--text);border:0;border-radius:14px;flex-direction:row;justify-content:flex-start;align-items:center;gap:12px;padding:14px 16px;font-weight:500;display:flex}.app-shell .home-modules .module-card svg{color:var(--accent)}.app-shell .home-modules .module-card:hover{background:var(--accent-soft);box-shadow:none;transform:translateY(-1px)}.home-modules.is-large .home-launcher{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.app-shell .home-modules.is-large .module-card{flex-direction:column;justify-content:center;min-height:140px;font-size:15px}@media (max-width:1100px){.home-grid,.home-columns{grid-template-columns:1fr}}@media (max-width:700px){.home-hello{flex-direction:column;align-items:flex-start}.attention-list li{grid-template-columns:36px minmax(0,1fr)}.attention-list li>button{grid-column:2;justify-self:start}.home-agenda .home-heading{flex-wrap:wrap}.home-agenda .home-heading .view-switch{margin-left:0}.agenda-group .agenda-list{padding-left:0}.app-shell .topbar>div:first-child{white-space:nowrap;flex-wrap:nowrap;min-width:0;overflow:hidden}.app-shell .topbar>div:first-child>.muted,.app-shell .topbar>div:first-child>.muted+svg{display:none}.projects-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.kpi-card{min-height:0;padding:14px}.kpi-value{font-size:22px}.kpi-meta{padding-right:0}.kpi-bars{display:none}.project-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.project-facts dd{font-size:15px}.app-shell .page-context .project-hero-top h1{font-size:24px}}details[open]>summary[data-tooltip]:after,details[open]>summary[data-tooltip]:before{visibility:hidden;opacity:0!important}.app-shell button.pulse-signal{width:100%;min-height:0;color:var(--text);text-align:left;cursor:pointer;transition:transform var(--dur-2) var(--ease-out), box-shadow var(--dur-2) ease;border:0}.app-shell button.pulse-signal:hover{transform:translateY(-2px);box-shadow:0 10px 22px -16px #0d17264d}.pulse-signal-go{opacity:0;transition:opacity var(--dur-1) ease;margin-left:auto}.pulse-signal:hover .pulse-signal-go,.pulse-signal:focus-visible .pulse-signal-go{opacity:1}.app-shell .topbar-tools>.global-search-trigger{border-radius:var(--r-pill);background:var(--card);width:min(360px,32vw);height:38px;color:var(--muted);font-size:var(--fs-md);border:0;align-items:center;gap:8px;margin-right:6px;padding:0 8px 0 14px;font-weight:400;display:flex;box-shadow:0 0 0 .5px #0d17260f}.app-shell .topbar-tools>.global-search-trigger:hover{color:var(--text);box-shadow:0 2px 10px -4px #0d172633}.global-search-trigger span{text-align:left;text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.global-search-trigger kbd,.global-search kbd{background:var(--surface-2);color:var(--muted);border-radius:6px;padding:1px 6px;font-family:inherit;font-size:11px}.global-search-backdrop{z-index:200;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:fade-in var(--dur-2) ease;background:#0d172640;justify-content:center;align-items:flex-start;padding:12vh 16px 16px;display:flex;position:fixed;inset:0}.global-search{background:var(--card);width:min(640px,100%);max-height:72vh;box-shadow:var(--shadow-lg);animation:dialog-in var(--dur-3) var(--ease-out);border-radius:18px;flex-direction:column;display:flex;overflow:hidden}.global-search-input{border-bottom:1px solid var(--line);color:var(--muted);align-items:center;gap:10px;padding:14px 16px;display:flex}.global-search-input input{min-width:0;color:var(--text);font:inherit;background:0 0;border:0;outline:0;flex:1;font-size:16px}.global-search-results{padding:6px 8px 8px;overflow-y:auto}.global-search-group-name{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;padding:10px 10px 4px;font-size:11.5px;font-weight:600}.global-search-group button{border-radius:var(--r-md);width:100%;min-height:0;color:var(--text);text-align:left;background:0 0;border:0;grid-template-columns:32px minmax(0,1fr) 18px;align-items:center;gap:10px;padding:8px 10px;display:grid}.global-search-group button.is-active{background:var(--accent-soft)}.global-search-icon{background:var(--surface-2);width:32px;height:32px;color:var(--text-soft);border-radius:9px;place-items:center;display:grid}.global-search-group button.is-active .global-search-icon{background:var(--card);color:var(--accent)}.global-search-text{min-width:0;display:grid}.global-search-text strong,.global-search-text small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.global-search-text strong{font-size:var(--fs-md);font-weight:500}.global-search-text small{color:var(--muted);font-size:var(--fs-sm)}.global-search-text small .pill{vertical-align:1px;margin-right:6px;padding:0 6px;font-size:11px;line-height:16px}.global-search-group button>svg{color:var(--accent)}.global-search-go{opacity:0}.global-search-empty{color:var(--muted);margin:12px 10px}.global-search-foot{border-top:1px solid var(--line);color:var(--text-soft);font-size:var(--fs-sm);flex-wrap:wrap;gap:14px;padding:10px 16px;display:flex}.global-search-foot .muted{margin-left:auto}.global-search-foot kbd+kbd{margin-left:2px}@media (max-width:900px){.app-shell .topbar-tools>.global-search-trigger{justify-content:center;width:38px;padding:0}.global-search-trigger span,.global-search-trigger kbd{display:none}}.project-hero-actions{z-index:2;align-items:center;gap:8px;display:flex;position:absolute;top:18px;right:20px}.app-shell .project-hero-actions>button,.app-shell .project-hero-actions>a.button{border-radius:var(--r-pill);background:color-mix(in srgb, var(--card) 88%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);height:36px;min-height:0;color:var(--text);font-size:var(--fs-md);border:0;align-items:center;gap:7px;padding:0 14px;font-weight:500;text-decoration:none;display:inline-flex;box-shadow:0 1px 3px #0d17261a}.app-shell .project-hero-actions>.icon-only{justify-content:center;width:36px;padding:0}.app-shell .project-hero-actions>button:hover,.app-shell .project-hero-actions>a.button:hover{background:var(--card)}.app-shell .project-hero-actions>button.is-on{color:var(--warning)}.app-shell .project-hero-actions>button.is-on svg{fill:currentColor}.page-context.is-compact .project-hero-actions{top:8px}.page-context.is-compact .project-hero-actions>button:not(.icon-only),.page-context.is-compact .project-hero-actions>a.button{display:none}@media (max-width:900px){.project-hero-actions{flex-wrap:wrap;margin-bottom:10px;position:static}}.project-overview-grid{grid-template-columns:minmax(0,1.75fr) minmax(320px,1fr);align-items:start;gap:16px;display:grid}.overview-col{gap:16px;min-width:0;display:grid}.overview-col .project-pulse{grid-template-columns:1fr;gap:16px;margin:0}@media (max-width:1100px){.project-overview-grid{grid-template-columns:1fr}}.side-card-head{align-items:center;gap:8px;margin-bottom:12px;display:flex}.side-card-head h2{align-items:center;gap:8px;margin:0;font-size:16px;display:flex}.side-card-head h2 small{font-size:var(--fs-md);font-weight:400}.side-card-head>:last-child:not(h2){margin-left:auto}.app-shell .text-link{min-height:0;color:var(--accent-text);font-size:var(--fs-md);background:0 0;border:0;padding:2px 4px;font-weight:500}.app-shell .text-link:hover{background:0 0;text-decoration:underline}.kd-summary{background:linear-gradient(160deg,#f3f6ff 0%,#f6f2ff 100%)}html[data-theme=dark] .kd-summary{background:linear-gradient(160deg,#24304a 0%,#2b2847 100%)}.kd-summary .side-card-head h2 svg{color:#6a4fe0}.kd-summary-text{max-height:220px;color:var(--text-soft);font-size:var(--fs-md);line-height:1.5;overflow:hidden;-webkit-mask-image:linear-gradient(#000 78%,#0000);mask-image:linear-gradient(#000 78%,#0000)}.kd-summary-text :is(p,ul,ol){margin:0 0 6px}.kd-summary-sources{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.app-shell .kd-summary-sources button{background:color-mix(in srgb, var(--card) 75%, transparent);min-height:0;color:var(--text-soft);font-size:var(--fs-sm);border:0;border-radius:7px;align-items:center;gap:4px;padding:3px 9px;display:inline-flex}.side-list{margin:0;padding:0;list-style:none;display:grid}.side-list li+li{border-top:1px solid var(--line)}.app-shell .side-list button{border-radius:var(--r-md);width:100%;min-height:0;color:var(--text);text-align:left;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 4px;display:grid}.app-shell .side-list button:hover{background:var(--surface-2)}.side-list-text{min-width:0;display:grid}.side-list-text strong{font-size:var(--fs-md);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.side-list-text small{color:var(--muted);font-size:var(--fs-sm)}.side-list-text em{color:var(--danger);font-style:normal}.team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.app-shell .team-grid button{border-radius:var(--r-md);width:100%;min-width:0;min-height:0;color:var(--text);text-align:left;background:0 0;border:0;grid-template-columns:36px minmax(0,1fr);justify-content:start;place-items:center start;gap:10px;padding:6px;display:grid}.app-shell .team-grid button:hover{background:var(--surface-2)}.team-grid button>span:last-child{min-width:0;line-height:1.25;display:grid}.team-grid strong{font-size:var(--fs-md);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.team-grid small{color:var(--muted);font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.team-more-count{background:var(--surface-2);width:36px;height:36px;color:var(--muted);border-radius:50%;flex-shrink:0;place-items:center;font-weight:600;display:grid}.description-card p{color:var(--text-soft);font-size:var(--fs-md);white-space:pre-line;margin:0;line-height:1.5}.description-card .field-actions{gap:4px;display:flex}.revenue-legend{color:var(--muted);font-size:var(--fs-sm);align-items:center;gap:12px;display:flex}.revenue-legend>span{align-items:center;gap:5px;display:inline-flex}.revenue-legend i{border-radius:3px;width:10px;height:10px}.revenue-legend i.is-plan,.revenue-pair i.is-plan{background:color-mix(in srgb, var(--accent) 22%, var(--card))}.revenue-legend i.is-actual,.revenue-pair i.is-actual{background:var(--accent)}.revenue-chart{align-items:flex-end;gap:10px;height:150px;padding-top:8px;display:flex}.revenue-month{flex-direction:column;flex:1;align-items:center;gap:6px;height:100%;display:flex}.revenue-pair{flex:1;justify-content:center;align-items:flex-end;gap:3px;width:100%;display:flex}.revenue-pair i{transform-origin:bottom;width:min(14px,40%);min-height:2px;animation:bar-grow .6s var(--ease-out) both;border-radius:4px 4px 2px 2px}.revenue-month.is-future .revenue-pair i.is-actual{background:repeating-linear-gradient(135deg, color-mix(in srgb, var(--accent) 45%, var(--card)) 0 3px, var(--accent-soft) 3px 6px)}.revenue-month span{color:var(--muted);font-size:11.5px}.project-facts .fact-field dt{align-items:center;gap:6px;display:flex}.project-facts .field-actions{opacity:0;transition:opacity var(--dur-1) ease;gap:2px;display:inline-flex}.project-facts .fact-field:hover .field-actions,.project-facts .fact-field:focus-within .field-actions{opacity:1}.project-facts .field-actions:has(.has-comments){opacity:1}.app-shell .project-facts .field-actions button{height:20px;min-height:0;color:var(--muted);background:0 0;border:0;border-radius:6px;align-items:center;gap:2px;padding:0 4px;font-size:11px;display:inline-flex}.app-shell .project-facts .field-actions button:hover{background:var(--surface-2);color:var(--text)}@media (hover:none){.project-facts .field-actions{opacity:1}}.app-shell .topbar-tools>.ask-ai-button{border-radius:var(--r-pill);color:#3b3fd1;width:auto;height:38px;min-height:0;font-size:var(--fs-md);white-space:nowrap;background:linear-gradient(135deg,#e7efff,#efe9ff);border:0;align-items:center;gap:7px;margin-right:6px;padding:0 14px;font-weight:500;display:inline-flex}.app-shell .topbar-tools>.ask-ai-button:hover{background:linear-gradient(135deg,#dce8ff,#e6ddff)}html[data-theme=dark] .app-shell .topbar-tools>.ask-ai-button{color:#c9c8ff;background:linear-gradient(135deg,#263a63,#35295c)}.ai-widget>.ai-launcher{display:none}@media (max-width:900px){.app-shell .topbar-tools>.ask-ai-button{justify-content:center;width:38px;padding:0}.app-shell .ask-ai-button span{display:none}}.app-shell .portfolio-card{border-radius:var(--r-lg);background:var(--card);margin-top:0;padding:16px 18px 12px}.app-shell .projects-kpis{margin-bottom:14px}.app-shell .portfolio-card>.toolbar{margin:0 0 12px}.app-shell .portfolio-card .toolbar-head.has-heading{align-items:center}@media (max-width:700px){.app-shell .toolbar-head.has-heading>.toolbar-heading:has(>.quick-tabs){align-self:stretch;max-width:100%}}.app-shell .portfolio-card .toolbar-heading{scrollbar-width:none;min-width:0;overflow-x:auto}.quick-tabs{align-items:center;gap:4px;display:flex}.app-shell .quick-tab{border-radius:var(--r-pill);height:34px;min-height:0;color:var(--text-soft);font-size:var(--fs-md);white-space:nowrap;background:0 0;border:0;align-items:center;gap:7px;padding:0 13px;font-weight:500;display:inline-flex}.app-shell .quick-tab:hover{background:var(--surface-2);color:var(--text)}.app-shell .quick-tab.is-active{background:var(--text);color:var(--card)}.quick-tab-count{color:var(--muted);font-size:12px;font-weight:500}.quick-tab.is-active .quick-tab-count{color:color-mix(in srgb, var(--card) 70%, transparent)}.quick-tab.is-alert>svg{color:var(--danger)}.quick-tab.is-active.is-alert>svg{color:#ff8a80}.app-shell .portfolio-card .project-table-card{padding:0}.app-shell .project-group-row th{background:0 0;padding:18px 8px 8px 4px}.app-shell .table-group-toggle{border-radius:var(--r-md);width:100%;min-height:0;color:var(--text);text-align:left;background:0 0;border:0;align-items:center;gap:9px;padding:4px 6px;font-size:14.5px;font-weight:600;display:inline-flex}.app-shell .table-group-toggle:hover{background:var(--surface-2)}.app-shell .table-group-toggle>svg:first-child{color:var(--muted)}.group-aggregate{color:var(--muted);margin-left:auto;font-size:12.5px;font-weight:400}.group-aggregate b{color:var(--text);font-weight:600}.app-shell .portfolio-card .table-footer{border:0;margin:10px 4px 0}.app-shell .ai-widget{z-index:60;top:58px;bottom:auto;right:24px}.app-shell .ai-widget>.ai-panel{max-height:calc(100vh - 80px);box-shadow:var(--shadow-lg);transform-origin:100% 0;animation:pop-in var(--dur-2) var(--ease-spring);border-radius:18px}@media (max-width:700px){.app-shell .ai-widget{top:56px;left:8px;right:8px}.app-shell .ai-widget>.ai-panel{width:auto}}.app-shell .topbar>div:first-child{white-space:nowrap;flex-wrap:nowrap;min-width:0;overflow:hidden}.app-shell .topbar>div:first-child>.muted,.app-shell .topbar>div:first-child>.muted+svg{display:none}.app-shell .topbar>div:first-child>:is(span,button){text-overflow:ellipsis;flex-shrink:1;min-width:0;overflow:hidden}.pulse-heading h2 small{font-size:var(--fs-md);font-weight:400}.phase-track-dates{color:var(--muted);margin-top:1px;font-size:11.5px;display:block}.pulse-signal.health-none{background:var(--surface-2)}.pulse-signal.health-none .pulse-signal-head{color:var(--text-soft)}.time-progress{gap:5px;width:100%;max-width:150px;display:grid}.time-progress-labels{color:var(--muted);font-size:var(--fs-sm);justify-content:space-between;display:flex}.time-progress-labels b{color:var(--text-soft);font-weight:500}.time-progress-bar{border-radius:var(--r-pill);background:var(--surface-2);height:6px;overflow:hidden}.time-progress-bar i{border-radius:inherit;background:var(--accent);transform-origin:0;height:100%;animation:bar-fill .7s var(--ease-out) both;display:block}.time-progress.health-ok .time-progress-bar i{background:var(--success)}.time-progress.health-watch .time-progress-bar i{background:var(--warning)}.time-progress.health-risk .time-progress-bar i{background:var(--danger)}.portfolio-footer{color:var(--muted);justify-content:space-between;gap:12px;font-size:12.5px;display:flex}.portfolio-footer b{color:var(--text);font-weight:600}.app-shell .portfolio-card .toolbar-actions .view-switch{margin-left:6px}.team-grid .user-avatar{width:36px!important;height:36px!important}@media (max-width:700px){.app-shell .topbar-stack{z-index:40}}.app-shell .attachment-card,dialog .attachment-card{background:var(--surface-2);transition:background var(--dur-1) ease;border:0;border-radius:14px}.app-shell .attachment-card:hover,dialog .attachment-card:hover{background:var(--surface-3)}.attachment-card .attachment-media:not([data-variant=image]){background:var(--card);color:var(--accent)}.attachment-view-previews>.attachment-card[data-orientation=vertical]:not(:has([data-variant=image])){flex-direction:row;align-items:center;gap:10px;width:280px;padding:10px 8px 10px 10px}.attachment-view-previews>.attachment-card[data-orientation=vertical]:not(:has([data-variant=image])) .attachment-content{padding:0}.attachment-view-previews>.attachment-card[data-orientation=vertical]:not(:has([data-variant=image])) .attachment-title{-webkit-line-clamp:2;font-size:var(--fs-md);-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.attachment-view-previews>.attachment-card[data-orientation=vertical]:not(:has([data-variant=image])) .attachment-actions{padding:0}.attachment-file-group.attachment-view-previews{align-items:flex-start}.record-dialog form .meeting-summary{background:linear-gradient(160deg,#f3f6ff 0%,#f6f2ff 100%);border-radius:16px;margin:18px 0 8px;padding:18px 20px}html[data-theme=dark] .record-dialog form .meeting-summary{background:linear-gradient(160deg,#24304a 0%,#2b2847 100%)}.meeting-summary fieldset{border:0;margin:8px 0 0;padding:0}.meeting-summary legend{margin-bottom:6px;font-weight:500}.generate-minutes-prompt footer .primary{align-items:center;gap:6px;display:inline-flex}.app-shell table thead th:first-child{border-radius:var(--r-md) 0 0 0}.app-shell table thead th:last-child{border-radius:0 var(--r-md) 0 0}.app-shell table thead th:only-child{border-radius:var(--r-md) var(--r-md) 0 0}.app-shell table tbody td,.app-shell table tbody th{border-top-color:color-mix(in srgb, var(--line) 50%, transparent);border-bottom-color:color-mix(in srgb, var(--line) 50%, transparent)}.app-shell .project-group-row th,.app-shell .table-group-row th{padding-top:36px}.app-shell tbody>.project-group-row:first-child th,.app-shell tbody>.table-group-row:first-child th{padding-top:16px}.app-shell .project-group-section+.project-group-section{margin-top:32px}.meeting-generating{border-radius:var(--r-md);background:color-mix(in srgb, var(--card) 70%, transparent);color:var(--text-soft);font-size:var(--fs-md);padding:10px 12px}.app-shell table tbody tr.table-group-row th{border-top:0;border-bottom:1px solid color-mix(in srgb, var(--line) 50%, transparent)}.app-shell .portfolio-card .toolbar-head.has-heading{flex-wrap:nowrap;gap:12px}.app-shell .portfolio-card .toolbar-heading{scrollbar-width:none;flex:auto;min-width:0;overflow-x:auto}.app-shell .portfolio-card .toolbar-tools{flex-wrap:nowrap;flex:none}.app-shell .portfolio-card .toolbar-search.is-open input{width:160px}@media (max-width:1280px){.app-shell .portfolio-card .view-switch button span,.app-shell .portfolio-card .view-switch>button{font-size:0}.app-shell .portfolio-card .view-switch>button svg{font-size:initial}}.app-shell th:has(.column-filter){white-space:nowrap}.column-filter{vertical-align:middle;margin-left:2px;display:inline-block;position:relative}.column-filter>summary{width:22px;height:22px;color:var(--muted);cursor:pointer;opacity:.55;transition:opacity var(--dur-1) ease, background var(--dur-1) ease;border-radius:6px;place-items:center;list-style:none;display:inline-grid}.column-filter>summary::-webkit-details-marker{display:none}.app-shell th:hover .column-filter>summary,.column-filter>summary:focus-visible,.column-filter[open]>summary{opacity:1}.column-filter>summary:hover{background:var(--surface-3);color:var(--text)}.column-filter>summary.is-active{opacity:1;background:var(--accent-soft);color:var(--accent)}.column-filter-panel{z-index:40;background:var(--card);min-width:220px;max-height:320px;box-shadow:var(--shadow-pop);color:var(--text);font-size:var(--fs-md);text-align:left;animation:pop-in var(--dur-2) var(--ease-spring);transform-origin:0 0;border-radius:14px;gap:1px;padding:6px;font-weight:400;display:grid;position:absolute;top:calc(100% + 6px);left:-8px;overflow-y:auto}th.right .column-filter-panel{transform-origin:100% 0;left:auto;right:-8px}.column-filter-title{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;padding:6px 10px 4px;font-size:11.5px;font-weight:600}.app-shell .column-filter-option{border-radius:var(--r-md);width:100%;min-height:0;color:var(--text);font-size:var(--fs-md);text-align:left;background:0 0;border:0;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:9px;padding:7px 10px;font-weight:400;display:grid}.column-filter-option .choice-check{width:16px;height:16px;box-shadow:inset 0 0 0 1.5px var(--border-input);color:#fff;border-radius:5px;place-items:center;display:grid}.column-filter-option .choice-check.is-on{background:var(--accent);box-shadow:none}.column-filter-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.column-filter-count{color:var(--muted);font-size:var(--fs-sm)}.column-filter-actions{border-top:1px solid var(--line);justify-content:flex-end;margin-top:4px;padding:4px 6px 2px;display:flex}.column-filter-chips{flex-wrap:wrap;padding:0 0 10px}.app-shell .portfolio-card,.app-shell .portfolio-card .project-table-card{overflow:visible}.app-shell .portfolio-card .projects-table thead th{top:calc(var(--topbar-height) + var(--page-context-height) + 8px);z-index:3;position:sticky}@media (max-width:1279px){.app-shell .portfolio-card .project-table-card{overflow-x:auto}.app-shell .portfolio-card .projects-table thead th{position:static}}.app-shell .column-filter-option[aria-pressed=true],.app-shell .column-filter-option[aria-pressed=false]{color:var(--text);box-shadow:none;background:0 0}.app-shell .column-filter-option:hover{background:var(--surface-2)}.app-shell .compact-projects th:nth-child(7){width:9%}.app-shell .compact-projects th:nth-child(8){width:12%}.app-shell .compact-projects th:nth-child(5){width:14%}.app-shell .compact-projects thead th{padding-left:6px;padding-right:4px}.app-shell .compact-projects thead th .th-sort{gap:3px}.minutes-cell{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.minutes-status{white-space:nowrap;background:var(--surface-2);color:var(--muted);border-radius:999px;align-items:center;gap:5px;padding:3px 9px;font-size:12px;font-weight:600;display:inline-flex}.minutes-status.minutes-done{background:var(--success-soft);color:color-mix(in srgb, var(--success) 80%, var(--text))}.minutes-status.minutes-ready,.minutes-status.minutes-running{background:var(--info-soft);color:color-mix(in srgb, var(--accent) 85%, var(--text))}.minutes-status.minutes-review{background:var(--warning-soft);color:color-mix(in srgb, var(--warning) 80%, var(--text))}.minutes-status.minutes-error{background:var(--danger-soft);color:var(--danger)}.minutes-status.minutes-running svg{animation:1s linear infinite minutes-spin}@keyframes minutes-spin{to{rotate:360deg}}.app-shell .minutes-cell .minutes-action{white-space:nowrap;width:auto;min-height:0;color:var(--accent);cursor:pointer;background:0 0;border:0;border-radius:999px;flex:none;align-items:center;gap:4px;padding:3px 9px;font-size:12px;font-weight:600;display:inline-flex}.app-shell .minutes-cell .minutes-action:hover{background:var(--accent-soft)}@media (prefers-reduced-motion:reduce){.minutes-status.minutes-running svg{animation:none}}.ai-settings-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.ai-status-pills{flex-wrap:wrap;gap:6px;display:flex}.ai-pill{background:var(--warning-soft);color:color-mix(in srgb, var(--warning) 80%, var(--text));border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600}.ai-pill.is-on{background:var(--success-soft);color:color-mix(in srgb, var(--success) 80%, var(--text))}.ai-settings .ai-block{margin-top:28px}.ai-settings .ai-block>h3{margin:0 0 12px;font-size:15px}.ai-uses{grid-template-columns:minmax(240px,300px) minmax(0,1fr);align-items:start;gap:16px;display:grid}.ai-use-list{gap:6px;display:grid}.app-shell .ai-use-list .ai-use-tab{background:var(--surface-2);width:100%;min-height:0;color:var(--text);text-align:left;cursor:pointer;border:0;border-radius:12px;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.app-shell .ai-use-list .ai-use-tab:hover{background:color-mix(in srgb, var(--accent) 6%, var(--surface-2))}.app-shell .ai-use-list .ai-use-tab.is-active{background:var(--accent-soft)}.app-shell .ai-use-list .ai-use-tab.is-active .ai-use-icon{background:var(--accent);color:#fff}.ai-use-icon{background:var(--card);width:34px;height:34px;color:var(--accent);border-radius:10px;place-items:center;display:grid}.ai-use-text{min-width:0;display:grid}.ai-use-text strong{font-size:13.5px}.ai-use-text small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.ai-where{white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.ai-where.is-local{background:var(--success-soft);color:color-mix(in srgb, var(--success) 80%, var(--text))}.ai-where.is-cloud{background:var(--info-soft);color:color-mix(in srgb, var(--accent) 85%, var(--text))}.ai-use-panel{background:var(--surface-2);border-radius:14px;gap:12px;padding:18px 20px;display:grid}.ai-use-panel h4{margin:0;font-size:15px}.ai-use-panel>p{margin:0}.ai-prompt{gap:6px;display:grid}.ai-prompt-head{justify-content:space-between;align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.ai-prompt-head .text-link{align-items:center;gap:4px;display:inline-flex}.ai-rules summary{cursor:pointer;color:var(--muted);font-size:13px}.ai-rules pre{background:var(--card);max-height:260px;color:var(--muted);white-space:pre-wrap;border-radius:10px;margin:8px 0 0;padding:12px 14px;font-family:inherit;font-size:12px;line-height:1.55;overflow:auto}.ai-planned{margin:10px 0 0;font-size:12.5px}.ai-prices{gap:10px;display:grid}.ai-price{background:var(--surface-2);border-radius:12px;gap:8px;padding:12px 14px;display:grid}.ai-price-add{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.ai-price-add label{gap:4px;width:140px;font-size:12.5px;display:grid}.ai-settings textarea{width:100%}@media (max-width:860px){.ai-uses{grid-template-columns:1fr}}@media (max-width:600px){.ai-settings .settings-grid{grid-template-columns:1fr}.ai-use-panel{padding:14px}}.ai-savebar{z-index:5;background:var(--surface-2);box-shadow:0 8px 24px color-mix(in srgb, var(--text) 10%, transparent);border-radius:14px;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;margin-top:20px;padding:10px 12px 10px 16px;display:flex;position:sticky;bottom:12px}.ai-savebar>span{color:var(--muted);margin-right:auto;font-size:13px}.ai-savebar.is-dirty{background:var(--warning-soft)}.ai-savebar.is-dirty>span{color:color-mix(in srgb, var(--warning) 80%, var(--text));font-weight:600}.record-dialog.meeting-dialog{width:min(1040px,100vw - 32px)}.kd-view{gap:18px;margin-top:6px;display:grid}.kd-label{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin-bottom:4px;font-size:11.5px;font-weight:600;display:block}.kd-facts{background:var(--surface-2);border-radius:16px;grid-template-columns:minmax(220px,1.4fr) repeat(3,minmax(0,1fr));gap:6px;padding:14px 16px;display:grid}.kd-fact{min-width:0}.kd-when strong{align-items:center;gap:8px;font-size:17px;font-weight:700;display:inline-flex}.kd-when strong:first-letter{text-transform:uppercase}.kd-when svg{color:var(--accent)}.kd-attendees{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:18px;padding:0 4px;display:grid}.kd-attendees p{margin:0}.kd-people{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.kd-people li{background:var(--surface-2);border-radius:999px;align-items:center;gap:7px;padding:3px 10px 3px 3px;font-size:13px;font-weight:500;display:inline-flex}.kd-minutes{background:var(--card);box-shadow:0 1px 2px color-mix(in srgb, var(--text) 6%, transparent), 0 12px 32px color-mix(in srgb, var(--text) 8%, transparent);border-radius:18px;padding:22px 26px 26px}.kd-minutes>header{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.kd-minutes>header h3{margin:0;font-size:19px}.kd-minutes>header .text-link{align-items:center;gap:5px;display:inline-flex}.kd-minutes-text{font-size:15px;line-height:1.65}.kd-minutes-text h1,.kd-minutes-text h2,.kd-minutes-text h3,.kd-minutes-text h4{margin:18px 0 6px;font-size:15.5px}.kd-minutes-empty{background:var(--surface-2);color:var(--muted);border-radius:12px;margin:0;padding:18px}.kd-proposals .detail-section-title{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.kd-proposals .detail-section-title small{color:var(--muted);font-size:12.5px;font-weight:500}.kd-proposals ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.kd-proposal{background:var(--surface-2);border-radius:14px;grid-template-columns:32px minmax(0,1fr) auto;align-items:start;gap:12px;padding:12px 14px;display:grid}.kd-proposal-icon{background:var(--accent-soft);width:32px;height:32px;color:var(--accent);border-radius:10px;place-items:center;display:grid}.kd-proposal.is-risk .kd-proposal-icon{background:var(--warning-soft);color:var(--warning)}.kd-proposal-body{gap:3px;min-width:0;display:grid}.kd-proposal-text{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:13px;display:-webkit-box;overflow:hidden}.kd-proposal-reason{gap:4px;margin-top:6px;font-size:12.5px;display:grid}.kd-proposal-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.app-shell .kd-proposal-actions button,.kd-proposal-actions button{white-space:nowrap;width:auto}.meeting-summary-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.meeting-summary-head h3{margin:0}.kd-view .meeting-summary{background:var(--surface-2);border-radius:16px;padding:16px 18px}@media (max-width:760px){.kd-facts{grid-template-columns:1fr 1fr}.kd-when{grid-column:1/-1}.kd-attendees{grid-template-columns:1fr}.kd-minutes{padding:16px}.kd-proposal{grid-template-columns:32px minmax(0,1fr)}.kd-proposal-actions{grid-column:1/-1;justify-content:flex-start}}.kd-fact .record-status-control{align-items:flex-start}.app-shell .panel.ai-settings{overflow:visible}.kd-proposal-state{white-space:nowrap;border-radius:999px;align-self:center;padding:3px 10px;font-size:12px;font-weight:600}.kd-proposal-state.is-accepted{background:var(--success-soft);color:color-mix(in srgb, var(--success) 80%, var(--text))}.kd-proposal-state.is-rejected{background:var(--surface-2);color:var(--muted)}.kd-proposal.status-accepted,.kd-proposal.status-rejected{background:color-mix(in srgb, var(--surface-2) 55%, transparent)}.kd-proposal.status-rejected .kd-proposal-body strong{color:var(--muted);text-decoration:line-through}.login{--login-glow:20%;--login-glow-alt:color-mix(in oklch, var(--accent) 70%, var(--success));--login-grid-line:var(--line-strong);isolation:isolate;background:var(--bg);width:100%;min-height:100dvh;color:var(--text);grid-template-rows:minmax(0,1fr) auto;justify-items:center;padding:24px 16px 20px;display:grid;position:relative;overflow:hidden}html[data-theme=dark] .login{--login-glow:30%;--login-grid-line:var(--line)}.login-backdrop{z-index:-1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.login-glow{aspect-ratio:1;background:radial-gradient(circle at center, color-mix(in srgb, var(--accent) var(--login-glow), transparent) 0%, transparent 66%);will-change:transform;border-radius:50%;width:58vmax;animation:30s ease-in-out infinite alternate login-drift;position:absolute}.login-glow.is-one{top:-24vmax;left:-18vmax}.login-glow.is-two{background:radial-gradient(circle at center, color-mix(in srgb, var(--login-glow-alt) var(--login-glow), transparent) 0%, transparent 66%);width:64vmax;animation-duration:38s;animation-direction:alternate-reverse;bottom:-28vmax;right:-22vmax}.login-glow.is-three{opacity:.7;width:34vmax;animation-duration:24s;animation-delay:-8s;top:18%;left:52%}.login-grid{background-image:linear-gradient(to right, var(--login-grid-line) 1px, transparent 1px), linear-gradient(to bottom, var(--login-grid-line) 1px, transparent 1px);opacity:.5;background-position:50%;background-size:44px 44px;animation:9s ease-in-out infinite login-breathe;position:absolute;inset:0;-webkit-mask-image:radial-gradient(52% 46% at 50% 44%,#000 0%,#0000 100%);mask-image:radial-gradient(52% 46% at 50% 44%,#000 0%,#0000 100%)}.login-center{text-align:center;flex-direction:column;align-self:center;align-items:center;gap:28px;width:min(100%,400px);padding-block:40px;display:flex}.login-mark{background:var(--card);width:112px;height:112px;color:var(--brand);box-shadow:0 28px 56px -28px color-mix(in srgb, var(--accent) 55%, transparent), 0 2px 6px color-mix(in srgb, var(--text) 6%, transparent);animation:login-mark-in .76s var(--ease-spring) backwards;border-radius:32px;place-items:center;display:grid;position:relative}.login-mark:before{content:"";z-index:-1;background:radial-gradient(closest-side, color-mix(in srgb, var(--accent) 22%, transparent), transparent);border-radius:44px;animation:6s ease-in-out infinite login-halo;position:absolute;inset:-18px}.login-mark .brand-logo{width:60px;height:60px;display:block}.login-name{animation:login-rise .6s var(--ease-out) .14s backwards;gap:4px;display:grid}.login-name h1{font-size:var(--fs-3xl);letter-spacing:-.02em;margin:0;font-weight:600;line-height:1.15}.login-name p{font-size:var(--fs-base);color:var(--muted);margin:0}.login-actions{width:100%;animation:login-rise .64s var(--ease-out) .26s backwards;justify-items:center;gap:14px;margin-top:8px;display:grid}.login .login-action{isolation:isolate;border-radius:var(--r-pill);background:linear-gradient(135deg, var(--accent) 0%, var(--accent-strong) 100%);color:#fff;min-height:52px;box-shadow:0 12px 26px -16px color-mix(in srgb, var(--accent) 90%, transparent), inset 0 1px 0 #ffffff2e;transition:transform var(--dur-3) var(--ease-spring), box-shadow var(--dur-3) var(--ease-out);align-items:center;gap:12px;padding:0 20px 0 8px;font-size:15px;font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.login .login-action:before{content:"";z-index:-1;background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 78%, #fff) 0%, var(--accent) 100%);opacity:0;transition:opacity var(--dur-2) ease;position:absolute;inset:0}.login .login-action:after{content:"";z-index:-1;background:linear-gradient(105deg,#0000 30%,#ffffff4d 50%,#0000 70%);position:absolute;inset:0;transform:translate(-110%)}.login-action-mark{width:36px;height:36px;transition:transform var(--dur-3) var(--ease-spring);background:#fff;border-radius:50%;flex:none;place-items:center;display:grid;box-shadow:0 1px 2px #0000001f}.login-ms{width:16px;height:16px;display:block}.login .login-action-arrow{transition:transform var(--dur-3) var(--ease-spring);flex:none}.login .login-action:hover,.login .login-action:focus-visible{box-shadow:0 20px 40px -16px color-mix(in srgb, var(--accent) 80%, transparent), 0 0 0 6px color-mix(in srgb, var(--accent) 16%, transparent), inset 0 1px 0 #ffffff3d;transform:translateY(-2px)}.login .login-action:hover:before,.login .login-action:focus-visible:before{opacity:1}.login .login-action:hover:after,.login .login-action:focus-visible:after{transition:transform .75s var(--ease-out);transform:translate(110%)}.login .login-action:hover .login-action-mark,.login .login-action:focus-visible .login-action-mark{transform:rotate(-8deg)scale(1.06)}.login .login-action:hover .login-action-arrow,.login .login-action:focus-visible .login-action-arrow{transform:translate(4px)}.login .login-action:active{box-shadow:0 8px 18px -12px color-mix(in srgb, var(--accent) 90%, transparent), 0 0 0 4px color-mix(in srgb, var(--accent) 18%, transparent);transition-duration:var(--dur-1);transform:translateY(0)scale(.98)}.login .login-action:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.login-message{max-width:340px;font-size:var(--fs-md);text-align:left;color:var(--muted);align-items:flex-start;gap:8px;margin:0;line-height:1.5;display:flex}.login-message svg{flex:none;margin-top:2px}.login-message.is-error{color:color-mix(in srgb, var(--danger) 78%, var(--text));animation:login-rise .5s var(--ease-out) .52s backwards}.login-message.is-error svg{color:var(--danger)}.login-message.is-setup svg{color:var(--warning)}.login-footer{font-size:var(--fs-sm);color:var(--muted);animation:.8s .6s backwards fade-in}@keyframes login-drift{0%{transform:translate(0,0)scale(1)}50%{transform:translate(7vmax,4vmax)scale(1.08)}to{transform:translate(-3vmax,8vmax)scale(.95)}}@keyframes login-breathe{0%,to{opacity:.35}50%{opacity:.65}}@keyframes login-halo{0%,to{opacity:.6;transform:scale(.96)}50%{opacity:1;transform:scale(1.05)}}@keyframes login-mark-in{0%{opacity:0;transform:translateY(8px)scale(.82)}}@keyframes login-rise{0%{opacity:0;transform:translateY(12px)}}.login.login-simple{grid-template-rows:none;grid-template-columns:minmax(0,480px);place-content:center;justify-items:stretch}.login-card{background:var(--card);animation:rise-in var(--dur-3) var(--ease-out) backwards;border-radius:28px;justify-items:start;gap:12px;padding:36px;display:grid}.login-card h1{font-size:var(--fs-2xl);margin:0;font-weight:600}.login-card p{color:var(--muted);margin:0 0 8px}@media (max-width:480px){.login-center{gap:24px}.login-mark{border-radius:28px;width:96px;height:96px}.login-mark .brand-logo{width:52px;height:52px}.login-name h1{font-size:26px}.login .login-action{width:100%}.login-action-label{flex:1}}@media (max-width:340px){.login .login-action{gap:8px;padding-right:14px;font-size:14px}}@media (prefers-reduced-motion:reduce){.login *,.login :before,.login :after,.login-card{transition:none!important;animation:none!important}.login .login-action:hover,.login .login-action:focus-visible,.login .login-action:active,.login .login-action:hover .login-action-mark,.login .login-action:focus-visible .login-action-mark,.login .login-action:hover .login-action-arrow,.login .login-action:focus-visible .login-action-arrow{transform:none}.login .login-action:after{display:none}}.people-group-settings{gap:var(--space-3);margin-top:var(--space-5);padding:var(--space-4);border-radius:var(--r-md);background:var(--surface-2);display:grid}.people-group-settings h3,.people-group-settings p{margin:0}.people-group-settings label{gap:var(--space-1);max-width:420px;display:grid}.people-group-settings>button{justify-self:start}.people-group-counts{font-variant-numeric:tabular-nums;font-weight:600}.people-group-others{margin:var(--space-2) 0 0;max-height:280px;padding:0;list-style:none;overflow:auto}.people-group-others li{padding:6px 0}.people-group-others small{color:var(--muted);display:block}
:root .app-shell :is(.projects-table:not(.data-table),.cross-records-table,.records-table,.team-table,.security-table,.staffing-table,.roadmap-board-table table,.notes-table-wrap table) tbody td{padding-top:6px;padding-bottom:6px;line-height:1.35}:root .app-shell :is(.projects-table:not(.data-table),.cross-records-table,.records-table,.team-table,.security-table,.staffing-table,.roadmap-board-table table,.notes-table-wrap table) thead th{padding-top:7px;padding-bottom:7px}:root .app-shell :is(.projects-table:not(.data-table),.cross-records-table,.records-table) tbody tr:is(.table-group-row,.project-group-row) th{padding-top:18px;padding-bottom:4px}:root .app-shell :is(.projects-table:not(.data-table),.cross-records-table,.records-table) tbody>tr:is(.table-group-row,.project-group-row):first-child th{padding-top:8px}:root .app-shell .table-group-toggle{padding-top:2px;padding-bottom:2px}:root .app-shell .projects-table .project-link{max-width:100%}:root .app-shell .projects-table .project-link>span{min-width:0;max-width:100%}:root .app-shell .projects-table .project-link strong{text-overflow:clip;white-space:normal;overflow-wrap:anywhere;max-width:none;overflow:visible}:root .app-shell .projects-table .project-link small,:root .app-shell .cross-records-table td>small{margin-top:1px}:root .app-shell .roadmap-board-table td>small{margin-top:2px}@media (min-width:641px){:root .app-shell .data-table tbody td{padding-top:6px;padding-bottom:6px;line-height:1.35}:root .app-shell .data-table thead th{padding-top:7px;padding-bottom:7px}:root .app-shell .data-table tbody td:not(:first-child),:root .app-shell .data-table thead th:not(:first-child){padding-left:10px;padding-right:10px}:root .app-shell .data-table tbody tr.table-group-row th{padding-top:18px;padding-bottom:4px}:root .app-shell .data-table tbody>tr.table-group-row:first-child th{padding-top:8px}:root .app-shell :is(.cross-records-table,.records-table,.team-table,.roadmap-board-table table,.notes-table-wrap table) tbody td :is(.record-title,.roadmap-title,.text-button){min-height:0}:root .app-shell :is(.cross-records-table,.records-table,.team-table) tbody td .text-button{padding-top:2px;padding-bottom:2px}}:root .app-shell .project-group-section+.project-group-section{margin-top:18px}:root .app-shell :is(.projects-table,.cross-records-table,.records-table,.team-table,.staffing-table,.notes-table-wrap table) .user-avatar{font-size:9.5px;flex-basis:22px!important;width:22px!important;height:22px!important}:root .app-shell :is(.projects-table,.cross-records-table,.records-table,.team-table,.staffing-table,.roadmap-board-table table) tbody .pill{padding-top:2px;padding-bottom:2px}@media (max-width:640px){:root .app-shell .data-table tbody tr:not(.table-group-row):not(.data-table-empty):not(.data-table-extra){gap:8px 12px;padding:10px 12px}:root .app-shell .data-table tbody{gap:6px}}
h2,h3,h4{line-height:var(--lh-snug)}p{line-height:var(--lh-body)}.app-shell .page-heading h1,.app-shell .home-hello h1,.app-shell .portal-intro h1{font-size:var(--fs-display);line-height:var(--lh-tight);letter-spacing:var(--tracking-display);margin:0 0 var(--space-2)}.app-shell .page-heading p,.app-shell .portal-intro p,.app-shell .home-hello p.muted{max-width:var(--measure);font-size:var(--fs-body);line-height:var(--lh-body)}.home-date{margin-bottom:var(--space-1);font-size:var(--fs-label);font-weight:500}.app-shell .section-heading{margin-bottom:var(--gap-heading)}.app-shell :is(.section-heading,.home-heading,.ai-settings-head) h2,.app-shell .panel>h2{font-size:var(--fs-heading);line-height:var(--lh-snug);letter-spacing:-.005em;font-weight:600}.app-shell .ai-settings-head{margin-bottom:var(--gap-heading)}.app-shell .ai-settings-head h2{margin:0}.app-shell :is(.ai-block>h3,.ai-use-panel h4,.panel>h3,.hd-card>h3){font-size:var(--fs-subheading);line-height:var(--lh-snug);font-weight:600}.app-shell .ai-block>h3{margin-bottom:var(--gap-heading)}.app-shell .ai-block+.ai-block{margin-top:var(--gap-section)}:is(.record-dialog,.modal,.hd-dialog,.hd-new-dialog,.hd-service-dialog,.image-annotator-dialog)>header h2,.record-dialog>form>header h2,.side-drawer-heading h2{font-size:var(--fs-title);letter-spacing:-.01em;line-height:1.3}.record-dialog .detail-section-title,.record-dialog .attachment-section .section-heading .detail-section-title{font-size:var(--fs-heading);font-weight:600;line-height:var(--lh-snug)}.record-dialog .detail-section-title{margin:var(--gap-section) 0 var(--gap-heading)}.record-dialog .attachment-section .section-heading{margin-bottom:var(--gap-heading)}.hd-conversation>h3{font-size:var(--fs-heading)}.form-grid,.settings-grid{gap:var(--gap-field) 20px}.form-grid label,.settings-grid label,.hd-card label,.hd-new-body>label:not(.preference-toggle),.hd-new-body .settings-grid label,.hd-field-label{font-size:var(--fs-label);font-weight:500;line-height:var(--lh-snug);color:var(--text-soft)}.settings-grid label,.hd-card label,.hd-new-body>label:not(.preference-toggle),.hd-new-body .settings-grid label,.hd-field{gap:var(--gap-label);align-content:start;display:grid}.form-grid :is(input,select,textarea){margin-top:var(--gap-label)}:is(.form-grid,.settings-grid,.hd-card,.hd-new-body) label :is(input,select,textarea,button),:is(:is(.form-grid,.settings-grid,.hd-card) label:has(>input[type=checkbox],>input[type=radio]),label.preference-toggle,label.confirmation-check){font-size:var(--fs-body);color:var(--text);font-weight:400}.note{font-size:var(--fs-meta);color:var(--muted);line-height:1.5}.app-shell .panel>p,.app-shell .panel>p.muted,.app-shell .ai-use-panel>p,.app-shell .note{max-width:var(--measure)}.section-pad{padding:var(--pad-card)}@media (pointer:coarse){input:not([type=checkbox],[type=radio],[type=range]),select,textarea{font-size:16px}}@media (max-width:640px){:root{--fs-display:24px;--fs-title:18px;--pad-card:var(--space-4);--gap-section:var(--space-5)}.form-grid,.settings-grid{grid-template-columns:1fr}.form-grid .span-2{grid-column:auto}}
:root :is(.app-shell,.side-drawer) :is(.table-group-toggle,.table-group-title,.project-group-heading>button:not(.text-button),.project-group-heading strong,.plan-group-title,.reporting-group>summary,.notes-group>summary,.agenda-group-head,.gantt-group,.people-plan-person-heading h3,.ld-items-board-group>h3,.roadmap-grouped>section>h2,.roadmap-undated>section>h3,.om-tree-group>h3,.quality-area>summary h3,.om-process>summary>span:first-child){font-size:var(--fs-title);color:var(--text);overflow-wrap:anywhere;font-weight:600;line-height:1.4}:root :is(.app-shell,.side-drawer) :is(.table-group-toggle,.project-group-heading>button,.agenda-group-head,.gantt-group){white-space:normal;text-align:left;min-width:0}:root :is(.app-shell,.side-drawer) :is(.table-group-toggle,.table-group-title,.project-group-heading>button,.agenda-group-head,.gantt-group)>strong{min-width:0;font-size:inherit;font-weight:inherit}:root :is(.app-shell,.side-drawer) :is(.table-group-toggle,.table-group-title,.project-group-heading>button,.agenda-group-head,.gantt-group)>svg{flex-shrink:0}:root :is(.app-shell,.side-drawer) :is(.table-group-row.is-nested .table-group-toggle,.table-group-row.is-nested .table-group-title,.gantt-group.is-nested,.roadmap-subgroups h3,.roadmap-undated-sub h4,.quality-rule>summary>span:first-of-type){font-size:var(--fs-heading);color:var(--text)}:root :is(.app-shell,.side-drawer) :is(.plan-group-title>span,.reporting-group>summary>span,.notes-group>summary>small,.roadmap-grouped h2>small,.roadmap-subgroups h3>small){font-size:var(--fs-meta);color:var(--muted);font-weight:500}:root :is(.app-shell,.side-drawer) table tbody>tr:is(.table-group-row,.project-group-row)>th{padding-top:var(--space-6);padding-bottom:var(--space-3);background:var(--card);border-top:0;border-radius:0}:root :is(.app-shell,.side-drawer) table tbody>tr:is(.table-group-row,.project-group-row):first-child>th{padding-top:var(--space-3)}:root :is(.app-shell,.side-drawer) .grouped-table tbody.table-group-block+tbody.table-group-block>tr:first-child>th{border-top:var(--space-6) solid var(--card)}:root :is(.app-shell,.side-drawer) :is(.project-group-section,.data-list-group,.agenda-group,.reporting-group,.notes-group)+:is(.project-group-section,.data-list-group,.agenda-group,.reporting-group,.notes-group){margin-top:var(--space-6)}:root :is(.app-shell,.side-drawer) :is(.plan-group-title,.reporting-group>summary,.notes-group>summary,.data-list-group-head,.people-plan-person-heading){padding-block:var(--space-3);margin-bottom:var(--space-3);background:0 0;border-radius:0}:root :is(.app-shell,.side-drawer) .staffing-group{background:var(--card)}:root :is(.app-shell,.side-drawer) .people-plan-person-heading{padding-inline:0}:root :is(.app-shell,.side-drawer) .om-process{background:var(--card);margin-top:var(--space-6)}:root :is(.app-shell,.side-drawer) .ld-items-board-group+.ld-items-board-group{margin-top:var(--space-6)}:root :is(.app-shell,.side-drawer) .quality-area{margin-top:var(--space-6);background:var(--card);border:0}
