:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;color:oklch(23.5% .018 64);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--bg:oklch(96.5% .009 79);--surface:oklch(99.2% .004 79);--surface-raised:oklch(100% 0 0);--surface-subtle:oklch(94.8% .011 79);--text:oklch(23.5% .018 64);--text-muted:oklch(49% .018 64);--text-soft:oklch(62% .014 64);--line:oklch(88% .012 79);--line-strong:oklch(79% .017 79);--accent:oklch(45.5% .116 252);--accent-hover:oklch(40.5% .116 252);--accent-soft:oklch(93% .032 252);--positive:oklch(45% .107 151);--positive-soft:oklch(93% .034 151);--warning:oklch(52% .119 76);--warning-soft:oklch(94% .052 76);--danger:oklch(49% .164 27);--danger-soft:oklch(94% .038 27);--sidebar:oklch(21.5% .021 65);--sidebar-text:oklch(88% .014 75);--sidebar-muted:oklch(68% .018 72);--shadow-sm:0 1px 2px oklch(22% .02 65/.05), 0 4px 14px oklch(22% .02 65/.035);--shadow-md:0 12px 32px oklch(22% .02 65/.09), 0 2px 8px oklch(22% .02 65/.05);--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--text-caption:.75rem;--text-ui:.875rem;--text-body:1rem;--text-h3:1.125rem;--text-h2:1.375rem;--text-h1:clamp(1.8rem, 3vw, 2.45rem);background:oklch(96.5% .009 79);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.5}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--bg);min-width:320px}button,input,textarea,select{font:inherit}button{color:inherit}button,a{-webkit-tap-highlight-color:transparent}::selection{color:oklch(18% .02 64);background:oklch(84% .07 252)}h1,h2,h3,p{margin-block-start:0}h1,h2,h3{color:var(--text);text-wrap:balance}p{text-wrap:pretty}.boot-screen{min-height:100vh;color:var(--text-muted);place-content:center;justify-items:center;gap:12px;display:grid}.brand{letter-spacing:-.02em;align-items:center;gap:10px;font-size:.95rem;font-weight:700;display:flex}.brand--large{font-size:1.05rem}.brand__mark{color:oklch(96% .012 79);background:var(--accent);border-radius:11px;place-items:center;width:36px;height:36px;display:grid;box-shadow:inset 0 0 0 1px oklch(100% 0 0/.16)}.brand--large .brand__mark{border-radius:13px;width:42px;height:42px}.login-page{grid-template-columns:minmax(420px,1.1fr) minmax(390px,.9fr);min-height:100vh;display:grid}.login-story{color:var(--sidebar-text);background:var(--sidebar);flex-direction:column;justify-content:space-between;padding:clamp(32px,6vw,76px);display:flex;position:relative;overflow:hidden}.login-story:before,.login-story:after{content:"";pointer-events:none;border-radius:999px;position:absolute}.login-story:before{filter:blur(2px);background:oklch(45.5% .116 252/.24);width:520px;height:520px;inset:-210px -170px auto auto}.login-story:after{border:1px solid oklch(100% 0 0/.08);width:330px;height:330px;inset:auto auto -170px -80px;box-shadow:0 0 0 60px oklch(100% 0 0/.025),0 0 0 120px oklch(100% 0 0/.018)}.login-story>*{z-index:1;position:relative}.login-story .brand{color:oklch(97% .006 79)}.login-story__copy{max-width:610px}.login-story__copy h1{color:oklch(98% .005 79);letter-spacing:-.055em;margin:16px 0 24px;font-size:clamp(2.8rem,6vw,5.4rem);font-weight:580;line-height:.98}.login-story__copy p{max-width:55ch;color:var(--sidebar-muted);margin:0;font-size:1.05rem;line-height:1.65}.login-story__footer{color:oklch(60% .018 72);font-size:var(--text-caption);text-transform:uppercase;letter-spacing:.09em;gap:8px;display:flex}.login-panel{background:var(--surface-subtle);place-items:center;padding:36px;display:grid}.login-form{background:var(--surface-raised);width:min(100%,390px);box-shadow:var(--shadow-md);border-radius:24px;padding:36px}.login-form__intro{margin-bottom:30px}.login-lock{width:44px;height:44px;color:var(--accent);background:var(--accent-soft);border-radius:14px;place-items:center;margin-bottom:22px;display:grid}.login-form h2{letter-spacing:-.035em;margin-bottom:8px;font-size:1.65rem;line-height:1.1}.login-form p{color:var(--text-muted);font-size:var(--text-ui);margin-bottom:0;line-height:1.55}.login-form label{gap:7px;margin-bottom:18px;display:grid}.login-form label>span,.field__label{color:var(--text);letter-spacing:.005em;font-size:.79rem;font-weight:650}.login-form .button{width:100%;margin-top:8px}.password-gate__rule{color:var(--text-muted);margin:-2px 0 2px;font-size:.69rem;line-height:1.45}.password-gate__success{text-align:center}.password-gate__success .login-lock{margin-inline:auto}.password-gate__success h2{margin:14px 0 7px}.password-gate__success p{color:var(--text-muted);margin:0 0 16px;font-size:.78rem;line-height:1.55}.form-error{border-radius:var(--radius-sm);background:var(--danger-soft);padding:10px 12px;color:var(--danger)!important}input,textarea,select{border:1px solid var(--line);border-radius:var(--radius-sm);width:100%;color:var(--text);background:var(--surface-raised);outline:none;transition-property:border-color,box-shadow,background-color;transition-duration:.14s}input,select{height:42px;padding:0 12px}textarea{resize:vertical;min-height:92px;padding:10px 12px;line-height:1.55}input::placeholder,textarea::placeholder{color:var(--text-soft)}input:hover,textarea:hover,select:hover{border-color:var(--line-strong)}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}input:disabled,textarea:disabled,select:disabled{cursor:not-allowed;color:var(--text-soft);background:var(--surface-subtle)}.app-shell{min-height:100vh}.sidebar{z-index:30;width:242px;color:var(--sidebar-text);background:var(--sidebar);flex-direction:column;padding:22px 16px 16px;display:flex;position:fixed;inset:0 auto 0 0}.sidebar__top{justify-content:space-between;align-items:center;padding:0 8px 25px;display:flex}.sidebar nav{gap:4px;display:grid}.sidebar nav button{cursor:pointer;width:100%;min-height:42px;color:var(--sidebar-muted);font-size:var(--text-ui);text-align:start;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;padding:0 12px;transition-property:color,background-color;transition-duration:.14s;display:flex}.sidebar nav button:hover{color:oklch(97% .006 79);background:oklch(100% 0 0/.055)}.sidebar nav button.is-active{color:oklch(98% .005 79);box-shadow:inset 2px 0 var(--accent-soft);background:oklch(100% 0 0/.1)}.sidebar nav button b{color:oklch(96% .02 75);background:var(--danger);font-variant-numeric:tabular-nums;border-radius:7px;place-items:center;min-width:20px;height:20px;margin-inline-start:auto;font-size:.7rem;display:grid}.sidebar__footer{border-top:1px solid oklch(100% 0 0/.08);align-items:center;gap:8px;margin-top:auto;padding:14px 6px 0;display:flex}.sidebar__footer .icon-button{color:var(--sidebar-muted);flex:none}.user-chip{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.user-chip>span{color:oklch(97% .006 79);background:oklch(100% 0 0/.1);border-radius:11px;flex:none;place-items:center;width:34px;height:34px;font-weight:700;display:grid}.user-chip div{min-width:0}.user-chip strong,.user-chip small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.user-chip strong{color:oklch(94% .008 79);font-size:.82rem}.user-chip small{color:var(--sidebar-muted);font-size:.69rem}.mobile-close,.menu-button{display:none!important}.workspace{min-height:100vh;margin-inline-start:242px}.topbar{z-index:20;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:oklch(96.5% .009 79/.9);justify-content:flex-end;align-items:center;gap:22px;height:64px;padding:0 clamp(20px,4vw,52px);display:flex;position:sticky;inset-block-start:0}.month-control{color:var(--text-muted);align-items:center;gap:8px;display:flex}.month-control label{font-size:var(--text-caption);font-weight:600}.month-control input{font-variant-numeric:tabular-nums;background:0 0;border:0;width:136px;height:34px;font-size:.82rem}.month-control input:focus{box-shadow:none}.sync-state{color:var(--text-muted);font-size:var(--text-caption);white-space:nowrap;align-items:center;gap:7px;display:flex}.sync-state span{background:var(--positive);width:7px;height:7px;box-shadow:0 0 0 3px var(--positive-soft);border-radius:50%}.sync-state.is-loading span{background:var(--warning);box-shadow:0 0 0 3px var(--warning-soft);animation:1.1s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.4}}.workspace__content{width:min(100%,1500px);margin:0 auto;padding:36px clamp(20px,4vw,52px) 64px}.page-header{justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:30px;display:flex}.page-header>div{max-width:720px}.eyebrow{color:var(--accent);font-size:var(--text-caption);letter-spacing:.09em;text-transform:uppercase;margin-bottom:9px;font-weight:750;display:block}.page-header h1,.detail-hero h1{font-size:var(--text-h1);letter-spacing:-.045em;margin:0;font-weight:630;line-height:1.08}.page-header p{max-width:65ch;color:var(--text-muted);margin:10px 0 0;font-size:.95rem}.button{cursor:pointer;color:oklch(98% .004 79);background:var(--accent);white-space:nowrap;border:0;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:0 15px;font-size:.82rem;font-weight:650;transition-property:background-color,color,box-shadow,transform;transition-duration:.14s;display:inline-flex;box-shadow:0 1px 1px oklch(20% .03 252/.12),0 5px 12px oklch(30% .08 252/.14)}.button:hover{background:var(--accent-hover)}.button:active{transform:scale(.96)}.button:focus-visible,.icon-button:focus-visible,.table-link:focus-visible,.back-link:focus-visible{outline:3px solid var(--accent-soft);outline-offset:2px}.button:disabled{cursor:wait;opacity:.62}.button--secondary{color:var(--text);background:var(--surface-raised);box-shadow:inset 0 0 0 1px var(--line), var(--shadow-sm)}.button--secondary:hover{background:var(--surface-subtle)}.button--ghost{color:var(--text-muted);box-shadow:none;background:0 0}.button--ghost:hover,.button--quiet:hover{color:var(--text);background:var(--surface-subtle)}.button--quiet{min-height:34px;color:var(--accent);box-shadow:none;background:0 0;padding:0 10px}.button--danger{color:var(--danger);background:var(--danger-soft);box-shadow:none}.button--danger:hover{background:oklch(90% .055 27)}.icon-button{cursor:pointer;width:36px;height:36px;color:var(--text-muted);background:0 0;border:0;border-radius:10px;place-items:center;transition-property:color,background-color,transform;transition-duration:.13s;display:inline-grid}.icon-button:hover{color:var(--text);background:var(--surface-subtle)}.icon-button:active{transform:scale(.96)}.icon-button:disabled{cursor:not-allowed;opacity:.36}.icon-button:disabled:hover{color:var(--text-muted);background:0 0}.icon-button:disabled:active{transform:none}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.stat{border-radius:var(--radius-lg);background:var(--surface-raised);min-height:146px;box-shadow:var(--shadow-sm);padding:22px}.stat__label{color:var(--text-muted);font-size:var(--text-caption);margin-bottom:22px;font-weight:650;display:block}.stat strong{overflow-wrap:break-word;letter-spacing:-.035em;font-variant-numeric:tabular-nums;font-size:clamp(1.55rem,2.5vw,2rem);font-weight:620;line-height:1.08;display:block}.stat__note{color:var(--text-soft);font-size:var(--text-caption);margin-top:8px;display:block}.stat--positive strong{color:var(--positive)}.stat--warning strong{color:var(--warning)}.stat--danger strong{color:var(--danger)}.panel{border-radius:var(--radius-lg);background:var(--surface-raised);box-shadow:var(--shadow-sm);margin-bottom:18px;overflow:hidden}.panel__header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;min-height:76px;padding:17px 22px;display:flex}.panel__header h2{letter-spacing:-.015em;margin:0;font-size:1rem;font-weight:680}.panel__header p{color:var(--text-muted);font-size:var(--text-caption);margin:3px 0 0}.two-column{grid-template-columns:1fr 1fr;gap:18px;display:grid}.table-shell{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:var(--text-ui)}th{color:var(--text-soft);background:var(--surface-subtle);letter-spacing:.055em;text-align:start;text-transform:uppercase;white-space:nowrap;padding:12px 16px;font-size:.69rem;font-weight:700}td{border-top:1px solid var(--line);vertical-align:middle;padding:15px 16px}tbody tr:first-child td{border-top:0}tbody tr{transition-property:background-color;transition-duration:.12s}tbody tr:hover{background:oklch(97.2% .008 79)}.table-link{cursor:pointer;text-align:start;background:0 0;border:0;max-width:340px;padding:0;display:grid}.table-link strong{text-overflow:ellipsis;white-space:nowrap;font-size:.87rem;font-weight:660;overflow:hidden}.table-link span{color:var(--text-muted);font-size:var(--text-caption);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;overflow:hidden}.money{font-variant-numeric:tabular-nums;white-space:nowrap;min-width:106px}.money span,.money strong{display:block}.money strong{margin-top:2px;font-size:.82rem}.plan-value{color:var(--text-soft);font-size:.72rem}.negative{color:var(--danger)!important}.number{font-variant-numeric:tabular-nums}.row-actions{white-space:nowrap;justify-content:flex-end;gap:2px;display:flex}.table-legend{border-top:1px solid var(--line);color:var(--text-muted);justify-content:flex-end;gap:16px;padding:10px 18px;font-size:.7rem;display:flex}.table-legend span{align-items:center;gap:5px;display:flex}.table-legend i{border-radius:50%;width:7px;height:7px}.legend-plan{background:var(--line-strong)}.legend-fact{background:var(--accent)}.project-viewbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;min-height:72px;padding:14px 18px;display:flex}.project-viewbar h2{letter-spacing:-.015em;margin:0;font-size:.95rem;font-weight:680}.project-viewbar p{color:var(--text-muted);font-size:var(--text-caption);margin:3px 0 0}.project-view-switch button{align-items:center;gap:6px;display:inline-flex}.project-filters{border-bottom:1px solid var(--line);background:var(--surface-subtle);grid-template-columns:auto repeat(3,minmax(150px,1fr)) auto;align-items:end;gap:14px;padding:16px 18px;display:grid}.project-filters__title{height:42px;color:var(--text-muted);font-size:var(--text-caption);align-items:center;gap:8px;padding-inline-end:4px;font-weight:700;display:flex}.project-filter{gap:6px;display:grid}.project-filter>span{color:var(--text-muted);letter-spacing:.045em;text-transform:uppercase;font-size:.68rem;font-weight:700}.project-filter select{background:var(--surface-raised);height:42px}.project-filters__summary{justify-content:flex-end;align-items:center;gap:5px;min-width:112px;height:42px;display:flex}.project-filters__summary>span{color:var(--text-muted);font-size:var(--text-caption);font-variant-numeric:tabular-nums;white-space:nowrap}.task-filters{grid-template-columns:auto repeat(3,minmax(140px,1fr)) minmax(172px,auto) auto}.task-completed-filter{cursor:pointer;background:var(--surface-raised);height:42px;box-shadow:inset 0 0 0 1px var(--line);border-radius:10px;align-items:center;gap:9px;padding:0 11px;display:flex}.task-completed-filter input{width:16px;height:16px;accent-color:var(--accent);margin:0}.task-completed-filter span{line-height:1.25;display:grid}.task-completed-filter strong{color:var(--text);font-size:.72rem;font-weight:650}.task-completed-filter small{color:var(--text-soft);margin-top:1px;font-size:.62rem}.project-filter-empty{min-height:210px;color:var(--text-muted);justify-content:center;align-items:center;gap:14px;padding:32px 24px;display:flex}.project-filter-empty>svg{flex:none}.project-filter-empty strong{color:var(--text);font-size:.9rem;display:block}.project-filter-empty p{font-size:var(--text-caption);margin:3px 0 0}.project-filter-empty .button{margin-inline-start:14px}.gantt-view{min-width:0}.gantt-scroll{overscroll-behavior-inline:contain;scrollbar-color:var(--line-strong) transparent;outline:none;overflow-x:auto}.gantt-scroll:focus-visible{box-shadow:inset 0 0 0 3px var(--accent-soft)}.gantt-chart{--gantt-name-width:270px;width:100%;min-width:calc(var(--gantt-name-width) + var(--gantt-timeline-width));display:grid}.gantt-header,.gantt-row{grid-template-columns:var(--gantt-name-width) minmax(var(--gantt-timeline-width), 1fr);display:grid}.gantt-header{min-height:58px;color:var(--text-soft);background:var(--surface-subtle);letter-spacing:.055em;text-transform:uppercase;font-size:.67rem;font-weight:700}.gantt-header__project{z-index:6;border-inline-end:1px solid var(--line);background:var(--surface-subtle);align-items:flex-end;padding:0 16px 12px;display:flex;position:sticky;left:0}.gantt-header__timeline{min-width:0;position:relative}.gantt-months{height:100%;display:flex}.gantt-months>span{border-inline-start:1px solid var(--line);text-overflow:ellipsis;white-space:nowrap;flex:none;align-items:flex-end;padding:0 10px 12px;display:flex;overflow:hidden}.gantt-months>span:first-child{border-inline-start:0}.gantt-row{border-top:1px solid var(--line);min-height:64px}.gantt-project{z-index:5;border:0;border-inline-end:1px solid var(--line);cursor:pointer;min-width:0;color:var(--text);background:var(--surface-raised);text-align:start;align-items:center;gap:10px;padding:9px 12px 9px 16px;transition-property:background-color;transition-duration:.12s;display:flex;position:sticky;left:0}.gantt-project:hover{background:var(--surface-subtle)}.gantt-project:focus-visible,.gantt-bar:focus-visible,.gantt-unscheduled button:focus-visible{z-index:7;outline:3px solid var(--accent-soft);outline-offset:-3px}.gantt-project__status{border-radius:50%;flex:none;width:8px;height:8px}.gantt-project__copy{flex:1;min-width:0;display:grid}.gantt-project__copy strong,.gantt-project__copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.gantt-project__copy strong{font-size:.79rem;font-weight:660}.gantt-project__copy small{color:var(--text-muted);font-variant-numeric:tabular-nums;margin-top:2px;font-size:.66rem}.gantt-track{min-width:0;position:relative;overflow:hidden}.gantt-month-grid{pointer-events:none;display:flex;position:absolute;inset:0}.gantt-month-grid>span{border-inline-start:1px solid var(--line);flex:none}.gantt-month-grid>span:first-child{border-inline-start:0}.gantt-month-grid>span:nth-child(2n){background:oklch(96.5% .009 79/.48)}.gantt-bar{z-index:2;cursor:pointer;color:oklch(99% .003 79);background:var(--line-strong);text-align:start;border:0;border-radius:8px;min-width:14px;height:30px;padding:0 9px;font-size:.68rem;font-weight:680;transition-property:filter,box-shadow,transform;transition-duration:.12s;display:block;position:absolute;top:17px;overflow:hidden;box-shadow:inset 0 0 0 1px oklch(0% 0 0/.09),0 2px 5px oklch(22% .02 65/.12)}.gantt-bar:hover{filter:brightness(.94);box-shadow:inset 0 0 0 1px oklch(0% 0 0/.12),0 3px 8px oklch(22% .02 65/.16)}.gantt-bar:active{transform:scale(.96)}.gantt-bar>span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.gantt-bar.is-transformational{box-shadow:inset 0 0 0 2px oklch(100% 0 0/.58),0 2px 5px oklch(22% .02 65/.12)}.gantt-status--inbox,.gantt-bar--inbox{background:oklch(64% .016 64)}.gantt-status--structuring,.gantt-bar--structuring{background:oklch(56% .085 252)}.gantt-status--ready,.gantt-bar--ready{background:var(--accent)}.gantt-status--active,.gantt-bar--active{background:var(--positive)}.gantt-status--paused,.gantt-bar--paused{background:var(--warning)}.gantt-status--planned,.gantt-bar--planned{background:var(--accent)}.gantt-status--in_progress,.gantt-bar--in_progress{background:var(--warning)}.gantt-status--completed,.gantt-bar--completed{background:oklch(62% .085 151)}.gantt-status--cancelled,.gantt-bar--cancelled{background:var(--danger)}.gantt-bar--cancelled{opacity:.62}.gantt-today{z-index:3;pointer-events:none;background:var(--danger);width:1px;position:absolute;inset-block:0}.gantt-today--header b{z-index:1;color:var(--danger);background:var(--danger-soft);letter-spacing:.02em;text-transform:none;border-radius:5px;padding:2px 5px;font-size:.58rem;position:absolute;inset:5px auto auto 50%;transform:translate(-50%)}.gantt-legend{border-top:1px solid var(--line);min-height:46px;color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:8px 16px;padding:9px 18px;font-size:.68rem;display:flex}.gantt-legend span{align-items:center;gap:6px;display:inline-flex}.gantt-legend i{border-radius:3px;width:8px;height:8px}.gantt-legend__today{background:var(--danger);border-radius:1px!important;width:2px!important;height:13px!important}.gantt-empty{min-height:190px;color:var(--text-muted);justify-content:center;align-items:center;gap:14px;padding:30px 24px;display:flex}.gantt-empty>svg{flex:none}.gantt-empty strong{color:var(--text);font-size:.9rem;display:block}.gantt-empty p{font-size:var(--text-caption);margin:3px 0 0}.gantt-unscheduled{border-top:1px solid var(--line);background:var(--surface-subtle)}.gantt-unscheduled>header{justify-content:space-between;align-items:center;gap:16px;padding:13px 18px;display:flex}.gantt-unscheduled>header strong,.gantt-unscheduled>header span{display:block}.gantt-unscheduled>header strong{font-size:.78rem}.gantt-unscheduled>header div>span{color:var(--text-muted);margin-top:2px;font-size:.66rem}.gantt-unscheduled>div{background:var(--line);border-top:1px solid var(--line);grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1px;display:grid}.gantt-unscheduled button{cursor:pointer;min-width:0;min-height:58px;color:var(--text-muted);background:var(--surface-raised);text-align:start;border:0;align-items:center;gap:10px;padding:10px 14px;transition-property:color,background-color;transition-duration:.12s;display:flex}.gantt-unscheduled button:hover{color:var(--text);background:var(--surface-subtle)}.gantt-unscheduled button>span{flex:1;min-width:0;display:grid}.gantt-unscheduled button strong,.gantt-unscheduled button small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.gantt-unscheduled button strong{color:var(--text);font-size:.76rem}.gantt-unscheduled button small{color:var(--text-muted);margin-top:2px;font-size:.64rem}.task-project{min-width:0;display:grid}.task-project strong{text-overflow:ellipsis;font-size:.82rem;font-weight:650;overflow:hidden}.task-project span{color:var(--text-muted);margin-top:2px;font-size:.7rem}.task-table{table-layout:fixed}.task-table th,.task-table td{padding-inline:12px}.task-table th:first-child{width:44%}.task-table th:nth-child(2){width:21%}.task-table th:nth-child(3){width:12%}.task-table th:nth-child(4){width:16%}.task-table th:nth-child(5){width:7%}.task-table tbody tr.is-completed td:not(.row-actions){color:var(--text-soft)}.task-title-cell{min-width:0;align-items:center;gap:7px;padding-inline-start:calc(var(--task-depth,0) * 18px);display:flex}.task-tree-toggle{cursor:pointer;width:26px;height:26px;color:var(--text-muted);background:0 0;border:0;border-radius:8px;flex:none;place-items:center;padding:0;transition-property:color,background-color;transition-duration:.12s;display:inline-grid}.task-tree-toggle:hover{color:var(--text);background:var(--surface-subtle)}.task-tree-toggle svg{transition-property:transform;transition-duration:.14s;transition-timing-function:cubic-bezier(.2,0,0,1)}.task-tree-toggle.is-expanded svg{transform:rotate(90deg)}.task-tree-toggle:focus-visible{outline:3px solid var(--accent-soft);outline-offset:1px}.task-tree-spacer{flex:none;width:26px}.task-title-copy{flex:1;min-width:110px}.task-table tr.is-completed .task-title-copy strong{color:var(--text-soft);text-decoration:line-through;text-decoration-thickness:1px}.task-table tr.is-completed .task-title-copy span,.task-table tr.is-completed .task-project,.task-table tr.is-completed .badge,.task-table tr.is-completed .task-due{opacity:.64}.task-progress{color:var(--text-muted);background:var(--surface-subtle);font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:7px;flex:none;padding:3px 7px;font-size:.66rem;font-weight:650}.task-actions{display:inline-grid;position:relative}.task-actions__trigger[aria-expanded=true]{color:var(--accent);background:var(--accent-soft)}.task-action-menu{z-index:250;background:var(--surface-raised);width:224px;box-shadow:0 0 0 1px oklch(22% .02 65/.08), var(--shadow-md);border-radius:12px;padding:6px;display:grid;position:fixed}.task-action-menu button{cursor:pointer;width:100%;min-height:40px;color:var(--text-muted);text-align:start;background:0 0;border:0;border-radius:7px;align-items:center;gap:10px;padding:0 10px;font-size:.78rem;font-weight:580;transition-property:color,background-color;transition-duration:.1s;display:flex}.task-action-menu button:hover{color:var(--text);background:var(--surface-subtle)}.task-action-menu button:focus-visible{outline:3px solid var(--accent-soft);outline-offset:-1px}.task-action-menu button:disabled{cursor:not-allowed;opacity:.38}.task-action-menu button:disabled:hover{color:var(--text-muted);background:0 0}.task-action-menu button.is-danger{color:var(--danger)}.task-action-menu__divider{background:var(--line);height:1px;margin:5px 4px}.task-due{color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:6px;font-size:.78rem;display:inline-flex}.task-due.is-overdue{color:var(--danger);font-weight:650}.task-deadline-trigger{cursor:pointer;min-height:28px;color:inherit;font-size:inherit;font-weight:inherit;letter-spacing:inherit;text-transform:inherit;background:0 0;border:0;border-radius:8px;align-items:center;gap:5px;padding:0 7px;transition-property:color,background-color,transform;transition-duration:.12s;display:inline-flex}.task-deadline-trigger:hover{color:var(--accent);background:var(--accent-soft)}.task-deadline-trigger:active{transform:scale(.96)}.task-deadline-trigger:focus-visible{outline:3px solid var(--accent-soft);outline-offset:1px}.task-deadline-trigger svg{color:var(--accent)}.task-mobile-sortbar{display:none}.task-parent-context{border-radius:var(--radius-md);background:var(--line);box-shadow:inset 0 0 0 1px var(--line);grid-template-columns:1fr 1fr;gap:1px;display:grid;overflow:hidden}.task-parent-context>div{background:var(--surface-subtle);gap:3px;padding:12px 14px;display:grid}.task-parent-context span{color:var(--text-soft);letter-spacing:.04em;text-transform:uppercase;font-size:.66rem;font-weight:700}.task-parent-context strong{text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;font-weight:650;overflow:hidden}.modal__footer .task-add-subtask{margin-inline-end:auto}.badge{min-height:23px;color:var(--text-muted);background:var(--surface-subtle);letter-spacing:.025em;white-space:nowrap;border-radius:7px;align-items:center;padding:0 8px;font-size:.67rem;font-weight:720;display:inline-flex}.badge--positive{color:var(--positive);background:var(--positive-soft)}.badge--warning{color:var(--warning);background:var(--warning-soft)}.badge--danger{color:var(--danger);background:var(--danger-soft)}.badge--accent{color:var(--accent);background:var(--accent-soft)}.compact-list,.attention-list{padding:6px 18px 12px}.compact-list__item{border-bottom:1px solid var(--line);align-items:center;gap:11px;min-height:58px;display:flex}.compact-list__item:last-child{border-bottom:0}.compact-list__item>div{flex:1;min-width:0;display:grid}.compact-list__item strong,.compact-list__item small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.compact-list__item strong{font-size:.82rem}.compact-list__item small{color:var(--text-muted);font-size:.7rem}.type-mark{background:var(--accent);border-radius:4px;flex:none;width:7px;height:28px}.type-mark--transformational{background:var(--warning)}.attention-list{display:grid}.attention-list button{border:0;border-bottom:1px solid var(--line);cursor:pointer;text-align:start;background:0 0;gap:2px;padding:12px 2px;display:grid}.attention-list button:last-child{border-bottom:0}.attention-list button span{font-size:.82rem;font-weight:620}.attention-list button small{color:var(--warning);font-size:.7rem}.empty-state{text-align:center;place-content:center;justify-items:center;min-height:280px;padding:40px 24px;display:grid}.empty-state__icon{width:48px;height:48px;color:var(--accent);background:var(--accent-soft);border-radius:16px;place-items:center;margin-bottom:16px;display:grid}.empty-state h3{font-size:var(--text-h3);margin:0 0 7px}.empty-state p{max-width:48ch;color:var(--text-muted);font-size:var(--text-ui);margin:0 0 20px}.inline-empty{color:var(--text-muted);font-size:var(--text-ui);margin:0;padding:22px}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.entity-card{border-radius:var(--radius-lg);background:var(--surface-raised);min-height:178px;box-shadow:var(--shadow-sm);grid-template-columns:auto 1fr auto;gap:15px;padding:22px;display:grid}.entity-card__icon{width:42px;height:42px;color:var(--accent);background:var(--accent-soft);border-radius:13px;place-items:center;display:grid}.entity-card__title{justify-content:space-between;align-items:start;gap:12px;display:flex}.entity-card h2{margin:1px 0 9px;font-size:1.02rem}.entity-card p{color:var(--text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:20px;font-size:.82rem;line-height:1.55;display:-webkit-box;overflow:hidden}.entity-card__meta{color:var(--text-soft);font-variant-numeric:tabular-nums;gap:14px;font-size:.7rem;display:flex}.entity-card__actions{flex-direction:column;gap:2px;display:flex}.back-link{cursor:pointer;color:var(--text-muted);background:0 0;border:0;align-items:center;gap:7px;margin-bottom:24px;padding:0;font-size:.8rem;display:inline-flex}.back-link:hover{color:var(--text)}.detail-hero{justify-content:space-between;align-items:end;gap:28px;margin-bottom:26px;display:flex}.detail-hero>div:first-child{max-width:750px}.detail-hero__title{align-items:center;gap:12px;display:flex}.detail-hero p{max-width:65ch;color:var(--text-muted);margin:11px 0 0}.detail-hero__actions{gap:8px;display:flex}.detail-facts{border-radius:var(--radius-lg);background:var(--surface-raised);box-shadow:var(--shadow-sm);grid-template-columns:repeat(5,1fr);margin-bottom:16px;display:grid;overflow:hidden}.detail-facts>div{border-inline-start:1px solid var(--line);padding:17px 20px}.detail-facts>div:first-child{border-inline-start:0}.detail-facts span,.detail-facts strong,.detail-facts small{display:block}.detail-facts span{color:var(--text-soft);margin-bottom:5px;font-size:.69rem}.detail-facts strong{text-overflow:ellipsis;white-space:nowrap;font-size:.83rem;overflow:hidden}.detail-facts small{color:var(--text-muted);margin-top:4px;font-size:.65rem}.module-access-panel{border-radius:var(--radius-lg);background:var(--surface-raised);box-shadow:var(--shadow-sm);grid-template-columns:minmax(230px,.9fr) minmax(190px,.65fr) minmax(300px,1.35fr);margin-bottom:16px;display:grid;overflow:hidden}.module-access-panel>div{border-inline-start:1px solid var(--line);min-width:0;padding:18px 20px}.module-access-panel>div:first-child{border-inline-start:0}.module-access-panel__intro{align-items:flex-start;gap:11px;display:flex}.module-access-panel__intro>span{width:36px;height:36px;color:var(--accent);background:var(--accent-soft);border-radius:11px;flex:none;place-items:center;display:grid}.module-access-panel h2{margin:1px 0 4px;font-size:.88rem}.module-access-panel p{color:var(--text-muted);margin:0;font-size:.7rem;line-height:1.45}.module-access-panel__manager,.module-access-panel__beneficiaries{align-content:start;gap:4px;display:grid}.module-access-panel__manager>span,.module-access-panel__beneficiaries>span{color:var(--text-soft);letter-spacing:.04em;text-transform:uppercase;margin-bottom:4px;font-size:.66rem;font-weight:700}.module-access-panel__manager strong{text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.module-access-panel__manager small,.module-access-panel__beneficiaries small{color:var(--text-muted);font-size:.67rem}.module-access-panel__beneficiaries ul{gap:8px;max-height:126px;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.module-access-panel__beneficiaries li{justify-content:space-between;align-items:center;gap:12px;display:flex}.module-access-panel__beneficiaries li>div{min-width:0;display:grid}.module-access-panel__beneficiaries li strong,.module-access-panel__beneficiaries li small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.module-access-panel__beneficiaries li strong{font-size:.76rem}.module-access-panel__beneficiaries li b{color:var(--accent);font-variant-numeric:tabular-nums;font-size:.75rem}.finance-strip{border-radius:var(--radius-lg);color:oklch(94% .008 79);background:var(--sidebar);box-shadow:var(--shadow-sm);grid-template-columns:1.2fr repeat(3,1fr);margin-bottom:16px;display:grid;overflow:hidden}.finance-strip>div{border-inline-start:1px solid oklch(100% 0 0/.08);padding:18px 20px}.finance-strip__head{align-content:space-between;display:grid;border-inline-start:0!important}.finance-strip__head span{align-items:center;gap:8px;font-size:.82rem;font-weight:630;display:flex}.finance-strip__head button{cursor:pointer;color:oklch(72% .055 252);background:0 0;border:0;width:fit-content;padding:0;font-size:.72rem}.finance-strip>div:not(.finance-strip__head) span,.finance-strip small,.finance-strip strong{display:block}.finance-strip>div:not(.finance-strip__head) span{color:var(--sidebar-muted);font-size:.7rem}.finance-strip small{color:oklch(60% .016 72);font-variant-numeric:tabular-nums;margin:7px 0 2px;font-size:.66rem}.finance-strip strong{color:oklch(95% .008 79);font-variant-numeric:tabular-nums;font-size:1.05rem}.context-grid{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;display:grid}.context-card{border-radius:var(--radius-lg);background:var(--surface-raised);min-height:270px;box-shadow:var(--shadow-sm);overflow:hidden}.context-card:first-child{grid-column:1/-1}.context-card>header{border-bottom:1px solid var(--line);align-items:center;gap:12px;min-height:70px;padding:14px 18px;display:flex}.context-card__icon{width:36px;height:36px;color:var(--accent);background:var(--accent-soft);border-radius:11px;flex:none;place-items:center;display:grid}.context-card header>div:nth-child(2){flex:1;min-width:0}.context-card h2{margin:0;font-size:.9rem}.context-card header p{color:var(--text-muted);margin:2px 0 0;font-size:.68rem}.context-card__actions{align-items:center;gap:3px;display:flex}.context-card__empty{color:var(--text-muted);font-size:var(--text-ui);padding:24px}.markdown{overflow-wrap:break-word;color:oklch(31% .017 64);max-width:72ch;padding:22px 24px 30px;font-size:.89rem;line-height:1.6}.markdown h1,.markdown h2,.markdown h3{margin:1.5em 0 .55em;line-height:1.2}.markdown h1:first-child,.markdown h2:first-child,.markdown h3:first-child{margin-top:0}.markdown p,.markdown ul,.markdown ol{margin:0 0 1em}.markdown a{color:var(--accent);text-underline-position:from-font;text-decoration-thickness:from-font}.markdown code{background:var(--surface-subtle);border-radius:5px;padding:2px 5px;font-size:.86em}.project-list{padding:4px 20px 12px}.project-list article{border-bottom:1px solid var(--line);align-items:center;gap:12px;min-height:66px;display:flex}.project-list article:last-child{border-bottom:0}.project-list article>div{flex:1;min-width:0;display:grid}.project-list strong,.project-list small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-list strong{font-size:.84rem}.project-list small{color:var(--text-muted);font-size:.7rem}.agent-list{gap:12px;display:grid}.agent-card{border-radius:var(--radius-lg);background:var(--surface-raised);box-shadow:var(--shadow-sm);grid-template-columns:minmax(260px,1.2fr) minmax(190px,.65fr) minmax(220px,1fr) auto;align-items:center;gap:20px;padding:18px 20px;display:grid}.agent-card__identity{align-items:center;gap:13px;min-width:0;display:flex}.agent-card__identity>span{width:42px;height:42px;color:var(--accent);background:var(--accent-soft);border-radius:13px;flex:none;place-items:center;display:grid}.agent-card__identity>div{min-width:0}.agent-card__title{align-items:center;gap:8px;margin-bottom:3px;display:flex}.agent-card h2{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.92rem;overflow:hidden}.agent-card p{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.68rem;overflow:hidden}.agent-card__identity small{color:var(--text-soft);margin-top:3px;font-size:.64rem;display:block}.agent-card__mode span{color:var(--text-soft);margin-bottom:5px;font-size:.67rem;display:block}.agent-card__mode select{height:34px;font-size:.75rem}.agent-card__permissions{flex-wrap:wrap;gap:5px;display:flex}.agent-card__actions{gap:5px;display:flex}.agent-mode-note{border-radius:var(--radius-sm);color:var(--text-muted);background:var(--surface-subtle);margin:0;padding:12px 13px;font-size:.72rem;line-height:1.5}.agent-mode-note--active{color:var(--warning);background:var(--warning-soft)}.recommendation-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.recommendation-list article{border-radius:var(--radius-lg);background:var(--surface-raised);box-shadow:var(--shadow-sm);padding:20px}.recommendation-list header{justify-content:space-between;gap:12px;display:flex}.recommendation-list header>div{align-items:center;gap:8px;display:flex}.recommendation-list header span,.recommendation-list time{color:var(--text-muted);font-size:.7rem}.recommendation-list h2{margin:18px 0 7px;font-size:.95rem}.recommendation-list p{min-height:44px;color:var(--text-muted);margin-bottom:15px;font-size:.8rem}.recommendation-list pre{border-radius:var(--radius-md);color:oklch(84% .02 75);background:var(--sidebar);max-height:210px;margin:0;padding:14px;font-size:.72rem;line-height:1.5;overflow:auto}.recommendation-list footer{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.recommendation-list article.is-inaccessible{box-shadow:inset 0 0 0 1px var(--line), var(--shadow-sm)}.recommendation-hidden{border-radius:var(--radius-md);min-height:92px;color:var(--text-muted);background:var(--surface-subtle);text-align:center;justify-content:center;align-items:center;gap:10px;padding:16px;font-size:.74rem;display:flex}.users-panel{overflow:hidden}.user-table-identity{align-items:center;gap:10px;min-width:260px;display:flex}.user-table-identity>span{width:34px;height:34px;color:var(--accent);background:var(--accent-soft);border-radius:10px;flex:none;place-items:center;font-size:.76rem;font-weight:720;display:grid}.user-table-identity>div{min-width:0;margin-inline-end:4px;display:grid}.user-table-identity strong{text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.user-table-identity small{color:var(--text-muted);align-items:center;gap:5px;margin-top:2px;font-size:.67rem;display:flex}.user-role-counts{color:var(--text-muted);white-space:nowrap;flex-wrap:wrap;gap:5px 12px;font-size:.7rem;display:flex}.timeline{margin-inline-start:12px;position:relative}.timeline:before{content:"";background:var(--line);width:1px;position:absolute;inset:8px auto 8px 15px}.timeline article{grid-template-columns:31px 1fr;gap:14px;padding-bottom:16px;display:grid;position:relative}.timeline__marker{z-index:1;border:1px solid var(--line);width:31px;height:31px;color:var(--text-muted);background:var(--surface-raised);border-radius:10px;place-items:center;display:grid}.timeline article>div{border-radius:var(--radius-md);background:var(--surface-raised);box-shadow:var(--shadow-sm);padding:14px 17px}.timeline header{align-items:center;gap:8px;display:flex}.timeline header strong{font-size:.8rem}.timeline time{color:var(--text-soft);margin-inline-start:auto;font-size:.68rem}.timeline p{color:var(--text-muted);overflow-wrap:break-word;margin:7px 0 0;font-size:.72rem}.timeline small{color:var(--text-soft);font-size:.65rem}.modal-open{overflow:hidden}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:oklch(12% .015 64/.58);place-items:center;padding:18px;display:grid;position:fixed;inset:0}.modal{background:var(--surface-raised);border-radius:22px;flex-direction:column;width:min(100%,590px);max-height:min(90vh,920px);display:flex;overflow:hidden;box-shadow:0 24px 70px oklch(12% .02 64/.3)}.modal--wide{width:min(100%,820px)}.modal__header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:start;gap:20px;padding:22px 24px 18px;display:flex}.modal__header h2{font-size:var(--text-h2);letter-spacing:-.025em;margin:0;line-height:1.15}.modal__header p{color:var(--text-muted);margin:5px 0 0;font-size:.78rem}.modal__body{padding:22px 24px;overflow-y:auto}.modal__footer{border-top:1px solid var(--line);background:var(--surface-subtle);justify-content:flex-end;gap:8px;padding:15px 24px;display:flex}.form-grid{grid-template-columns:1fr 1fr;gap:17px;display:grid}.field{gap:7px;min-width:0;display:grid}.field--full{grid-column:1/-1}.field__hint{color:var(--text-muted);font-size:.69rem}.computed-field{border:1px solid var(--line);min-height:42px;color:var(--text);background:var(--surface-subtle);border-radius:9px;align-items:center;padding:0 12px;font-size:.8rem;font-weight:650;display:flex}.schedule-preview{border:1px solid var(--line);background:var(--surface-subtle);border-radius:14px;grid-template-columns:minmax(190px,.7fr) 1.3fr;gap:14px;padding:14px;display:grid}.schedule-preview>div{align-content:start;gap:4px;padding:3px 4px;display:grid}.schedule-preview span,.schedule-preview small{color:var(--text-muted);font-size:.68rem}.schedule-preview strong{font-size:.78rem}.schedule-preview ol{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0;padding:0;list-style:none;display:grid}.schedule-preview li{background:var(--surface-raised);min-width:0;box-shadow:inset 0 0 0 1px var(--line);border-radius:9px;gap:2px;padding:9px 10px;display:grid}.schedule-preview li strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.select-wrap{display:block;position:relative}.select-wrap select{appearance:none;padding-inline-end:34px}.select-wrap>svg{pointer-events:none;color:var(--text-muted);position:absolute;inset:13px 11px auto auto}.toggles{border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden}.toggle-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;min-height:58px;padding:9px 13px;display:flex}.toggle-row:last-child{border-bottom:0}.toggle-row strong,.toggle-row small{display:block}.toggle-row strong{font-size:.8rem}.toggle-row small{color:var(--text-muted);margin-top:2px;font-size:.68rem}.toggle{cursor:pointer;background:var(--line-strong);border:0;border-radius:12px;width:42px;height:24px;padding:3px;transition-property:background-color;transition-duration:.15s}.toggle>span{width:18px;height:18px;color:var(--accent);background:var(--surface-raised);border-radius:50%;place-items:center;transition-property:transform;transition-duration:.15s;display:grid;box-shadow:0 1px 4px oklch(20% .02 65/.2)}.toggle.is-on{background:var(--accent)}.toggle.is-on>span{transform:translate(18px)}.toggle:disabled{cursor:not-allowed;opacity:.48}.owner-editor{border:1px solid var(--line);border-radius:var(--radius-md);padding:14px}.owner-editor__head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.owner-editor__head>div{gap:2px;display:grid}.owner-editor__head small{color:var(--text-muted);font-size:.67rem}.share-total{color:var(--danger);font-variant-numeric:tabular-nums;margin-inline-start:auto;font-size:.76rem}.share-total.is-valid{color:var(--positive)}.owner-row{grid-template-columns:minmax(130px,1fr) 170px 110px 36px;gap:8px;margin-top:8px;display:grid}.owner-row__empty{color:var(--text-muted);place-items:center;font-size:.72rem;display:grid}.share-input{position:relative}.share-input input{padding-inline-end:28px}.share-input>span{color:var(--text-muted);font-size:.75rem;position:absolute;inset:10px 10px auto auto}.form-section-title{border-bottom:1px solid var(--line);color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;padding-bottom:7px;font-size:.72rem;font-weight:700}.project-finance{border:1px solid var(--line);border-radius:var(--radius-md);grid-column:1/-1;grid-template-columns:1fr 1fr;display:grid;overflow:hidden}.project-finance__header{border-bottom:1px solid var(--line);background:var(--surface-subtle);grid-column:1/-1;padding:13px 15px}.project-finance__header strong,.project-finance__header span{display:block}.project-finance__header strong{font-size:.8rem}.project-finance__header span{color:var(--text-muted);margin-top:3px;font-size:.68rem}.project-finance__group{gap:13px;padding:15px;display:grid}.project-finance__group+.project-finance__group{border-inline-start:1px solid var(--line)}.project-finance__fields{grid-template-columns:1fr 1fr;gap:11px;display:grid}.project-finance__margin{border-radius:var(--radius-sm);background:var(--surface-subtle);justify-content:space-between;align-items:center;gap:14px;min-height:42px;padding:9px 11px;display:flex}.project-finance__margin span{color:var(--text-muted);font-size:.69rem}.project-finance__margin strong{font-variant-numeric:tabular-nums;font-size:.82rem}.project-finance__rule{border-top:1px solid var(--line);color:var(--text-muted);grid-column:1/-1;margin:0;padding:10px 15px;font-size:.68rem}.project-finance--actual{grid-template-columns:1fr}.project-finance--actual .project-finance__group{padding:15px}.financial-plan{border:1px solid var(--line);border-radius:var(--radius-md);grid-column:1/-1;display:grid;overflow:hidden}.financial-plan__header{border-bottom:1px solid var(--line);background:var(--surface-subtle);justify-content:space-between;align-items:center;gap:18px;padding:14px 15px;display:flex}.financial-plan__header strong,.financial-plan__header span{display:block}.financial-plan__header strong{font-size:.82rem}.financial-plan__header>div>span{max-width:66ch;color:var(--text-muted);margin-top:3px;font-size:.68rem;line-height:1.45}.plan-status{border-radius:7px;flex:none;padding:5px 8px;font-size:.66rem;font-weight:700}.plan-status--approved{color:var(--positive);background:var(--positive-soft)}.plan-status--draft{color:var(--text-muted);background:var(--surface-raised);box-shadow:inset 0 0 0 1px var(--line)}.financial-plan__settings{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;gap:12px;padding:15px;display:grid}.financial-stages{gap:10px;padding:15px;display:grid}.financial-stages__head{justify-content:space-between;align-items:center;gap:16px;min-height:36px;display:flex}.financial-stages__head strong,.financial-stages__head span{display:block}.financial-stages__head strong{font-size:.77rem}.financial-stages__head span{color:var(--text-muted);margin-top:2px;font-size:.66rem}.financial-stage{background:var(--surface-subtle);box-shadow:inset 0 0 0 1px var(--line);border-radius:10px;grid-template-columns:minmax(150px,1.3fr) 145px 125px 125px 110px 36px;align-items:end;gap:8px;padding:11px;display:grid}.financial-stage__profit{align-content:center;gap:2px;min-height:38px;display:grid}.financial-stage__profit span{color:var(--text-muted);font-size:.65rem}.financial-stage__profit strong{font-variant-numeric:tabular-nums;font-size:.76rem}.financial-stages__empty{min-height:74px;color:var(--text-muted);background:var(--surface-subtle);border-radius:10px;justify-content:space-between;align-items:center;gap:16px;padding:13px;display:flex}.financial-stages__empty p{margin:0;font-size:.72rem}.financial-plan__totals{border-top:1px solid var(--line);background:var(--surface-subtle);justify-content:space-between;align-items:center;gap:20px;padding:13px 15px;display:flex}.financial-plan__totals>span{color:var(--text-muted);font-size:.7rem;font-weight:680}.financial-plan__totals>div{flex-wrap:wrap;justify-content:end;gap:18px;display:flex}.financial-plan__totals small{color:var(--text-muted);font-size:.67rem}.financial-plan__totals strong{color:var(--text);font-variant-numeric:tabular-nums;margin-inline-start:5px;font-size:.75rem}.project-detail-hero{grid-template-columns:auto minmax(0,1fr) auto}.project-stage-summary{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:18px;display:grid;overflow:hidden}.project-stage-summary>div{border-inline-end:1px solid var(--line);align-content:center;gap:5px;min-height:108px;padding:18px 20px;display:grid}.project-stage-summary>div:last-child{border-inline-end:0}.project-stage-summary span,.project-stage-summary small{color:var(--text-muted);font-size:.68rem}.project-stage-summary strong{text-overflow:ellipsis;font-variant-numeric:tabular-nums;font-size:1.02rem;line-height:1.3;overflow:hidden}.project-stages-panel{padding:0;overflow:hidden}.project-stages-header{padding:18px 20px}.project-stages-header__actions{align-items:end;gap:10px;display:flex}.stage-split-select{gap:5px;min-width:220px;display:grid}.stage-split-select>span{color:var(--text-muted);font-size:.64rem;font-weight:680}.financial-plan-banner{border-block:1px solid var(--line);background:var(--surface-subtle);justify-content:space-between;align-items:center;gap:18px;padding:12px 20px;display:flex}.financial-plan-banner>div{align-items:baseline;gap:10px;display:flex}.financial-plan-banner span,.financial-plan-banner small{color:var(--text-muted);font-size:.67rem}.financial-plan-banner strong{font-size:.75rem}.stage-table{border:0;border-radius:0}.stage-table th{white-space:nowrap}.stage-table tr.is-historical{background:var(--surface-subtle)}.stage-period{white-space:nowrap;min-width:145px;font-size:.71rem;display:block}.stage-actual-period{color:var(--text-muted);white-space:nowrap;margin-top:4px;font-size:.62rem;display:block}.stage-metric{font-variant-numeric:tabular-nums;min-width:126px}.stage-metric__row{grid-template-columns:30px minmax(72px,auto);justify-content:start;align-items:baseline;gap:7px;line-height:1.35;display:grid}.stage-metric__row+.stage-metric__row{margin-top:3px}.stage-metric__row small{color:var(--text-muted);font-size:.59rem}.stage-metric__row strong{white-space:nowrap;font-size:.7rem;font-weight:650}.stage-metric__row--variance{border-top:1px solid var(--line);padding-top:5px;margin-top:5px!important}.stage-metric__value--positive{color:var(--positive)}.stage-metric__value--negative{color:var(--danger)}.stage-task-count{color:inherit;text-align:start;cursor:pointer;background:0 0;border:0;gap:2px;padding:0;display:grid}.stage-task-count strong{font-size:.78rem}.stage-task-count span{color:var(--text-muted);white-space:nowrap;font-size:.61rem}.stage-task-count:active{transform:scale(.96)}.stage-task-row>td{background:var(--surface-subtle);padding:0!important}.stage-task-list{padding:12px 20px 16px 52px;display:grid}.stage-task-list>header{justify-content:space-between;align-items:center;gap:16px;padding-bottom:9px;display:flex}.stage-task-list>header div{gap:2px;display:grid}.stage-task-list>header strong{font-size:.72rem}.stage-task-list>header span{color:var(--text-muted);font-size:.62rem}.stage-task-list>div{border-top:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 0;display:grid}.stage-task-link{color:inherit;text-align:start;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;padding:0;display:flex}.stage-task-link strong{font-size:.71rem}.stage-task-link small{color:var(--text-muted);white-space:nowrap;font-size:.62rem}.project-pnl-panel{margin-top:18px}.stage-zero-confirm{border:1px solid var(--line);background:var(--surface-subtle);cursor:pointer;border-radius:10px;align-items:flex-start;gap:10px;padding:12px;display:flex}.stage-zero-confirm input{width:16px;height:16px;margin-top:2px}.stage-zero-confirm span{gap:3px;display:grid}.stage-zero-confirm strong{font-size:.72rem}.stage-zero-confirm small{color:var(--text-muted);font-size:.64rem}.split-preview-summary{align-items:baseline;gap:10px;margin-bottom:14px;display:flex}.split-preview-summary span,.split-preview-summary small{color:var(--text-muted);font-size:.67rem}.split-preview-summary strong{font-size:.8rem}.split-preview-table{max-height:min(52vh,520px);overflow:auto}.pnl-panel{margin-top:0}.pnl-panel__header{align-items:center}.segmented-control{background:var(--surface-subtle);box-shadow:inset 0 0 0 1px var(--line);border-radius:10px;flex:none;gap:2px;padding:3px;display:inline-flex}.segmented-control button{cursor:pointer;min-height:31px;color:var(--text-muted);background:0 0;border:0;border-radius:7px;padding:0 10px;font-size:.7rem;font-weight:620;transition-property:color,background-color,box-shadow,transform;transition-duration:.13s}.segmented-control button:hover{color:var(--text)}.segmented-control button:active{transform:scale(.96)}.segmented-control button.is-active{color:var(--text);background:var(--surface-raised);box-shadow:0 1px 4px oklch(20% .02 65/.1)}.pnl-summary{border-bottom:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid}.pnl-summary>div{border-inline-start:1px solid var(--line);padding:16px 20px}.pnl-summary>div:first-child{border-inline-start:0}.pnl-summary span,.pnl-summary strong,.pnl-summary small{display:block}.pnl-summary span{color:var(--text-soft);font-size:.67rem}.pnl-summary strong{font-variant-numeric:tabular-nums;margin:5px 0 2px;font-size:1rem}.pnl-summary small{color:var(--text-muted);font-size:.65rem}.pnl-notice{color:var(--warning);background:var(--warning-soft);margin:0;padding:9px 20px;font-size:.68rem}.pnl-table__month>td{vertical-align:middle}.pnl-month-button,.pnl-count{cursor:pointer;color:inherit;background:0 0;border:0;padding:0}.pnl-month-button{text-align:start;align-items:center;gap:7px;display:inline-flex}.pnl-month-button svg{color:var(--text-muted)}.pnl-month-button strong{text-transform:capitalize;white-space:nowrap}.pnl-count{color:var(--accent);font-size:.7rem}.pnl-detail-row:hover,.pnl-detail-row>td{background:var(--surface-subtle)}.pnl-detail-row__name{padding-inline-start:50px}.pnl-detail-row__name strong,.pnl-detail-row__name small{display:block}.pnl-detail-row__name strong{font-size:.72rem}.pnl-detail-row__name small{color:var(--text-muted);margin-top:2px;font-size:.63rem}.pnl-detail-row__kind{color:var(--text-muted);font-size:.64rem}.pnl-detail-empty:hover{background:0 0}.pnl-detail-empty>td{color:var(--text-muted);background:var(--surface-subtle);padding:12px 20px 14px 50px;font-size:.7rem}.pnl-empty{min-height:120px;color:var(--text-muted);justify-content:center;align-items:center;gap:13px;padding:24px;display:flex}.pnl-empty strong{color:var(--text);font-size:.82rem;display:block}.pnl-empty p{margin:4px 0 0;font-size:.7rem}.context-editor{min-height:min(46vh,480px);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.84rem;line-height:1.65}.permissions{flex-wrap:wrap;gap:7px;display:flex}.permissions>.field__label{width:100%;margin-bottom:2px}.check-row{border:1px solid var(--line);border-radius:8px;align-items:center;gap:7px;padding:7px 9px;font-size:.71rem;font-weight:620;display:flex}.check-row input{width:15px;height:15px;accent-color:var(--accent)}.token-reveal{gap:12px;display:grid}.token-reveal code{overflow-wrap:anywhere;border-radius:var(--radius-md);color:oklch(88% .02 75);background:var(--sidebar);-webkit-user-select:all;user-select:all;padding:15px;font-size:.75rem;line-height:1.55;display:block}.callout{border-radius:var(--radius-sm);margin:15px 0 0;padding:11px 13px;font-size:.74rem}.callout--warning{color:var(--warning);background:var(--warning-soft)}.task-move-callout{margin:0;line-height:1.45}.toast{z-index:150;color:oklch(94% .008 79);background:var(--sidebar);max-width:min(420px,100vw - 28px);box-shadow:var(--shadow-md);border-radius:13px;align-items:center;gap:14px;padding:10px 11px 10px 15px;font-size:.8rem;display:flex;position:fixed;inset:auto 22px 22px auto}.toast span{flex:1}.toast .icon-button{color:var(--sidebar-muted)}.toast--error{background:oklch(33% .12 27)}@media (width<=1180px){.stats-grid{grid-template-columns:repeat(2,1fr)}.agent-card{grid-template-columns:minmax(240px,1fr) 190px auto}.agent-card__permissions{grid-column:1/3}.project-filters{grid-template-columns:repeat(3,minmax(150px,1fr)) auto}.task-filters{grid-template-columns:repeat(2,minmax(150px,1fr)) minmax(172px,1fr) auto}.project-filters__title{display:none}}@media (width<=920px){.sidebar{width:220px}.workspace{margin-inline-start:220px}.project-filters,.task-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.two-column,.context-grid,.card-grid{grid-template-columns:1fr}.context-card:first-child{grid-column:auto}.detail-facts{grid-template-columns:repeat(2,1fr)}.module-access-panel{grid-template-columns:1fr 1fr}.module-access-panel__beneficiaries{border-top:1px solid var(--line);grid-column:1/-1;border-inline-start:0!important}.detail-facts>div:nth-child(3){border-top:1px solid var(--line);border-inline-start:0}.detail-facts>div:nth-child(4){border-top:1px solid var(--line)}.finance-strip{grid-template-columns:1fr 1fr 1fr}.finance-strip__head{border-bottom:1px solid oklch(100% 0 0/.08);grid-column:1/-1;grid-template-columns:1fr auto;align-items:center;min-height:58px}.financial-stage{grid-template-columns:1fr 1fr}.financial-stage__profit{min-height:36px}.project-stage-summary{grid-template-columns:1fr 1fr}.project-stage-summary>div:nth-child(2){border-inline-end:0}.project-stage-summary>div:nth-child(n+3){border-top:1px solid var(--line)}}@media (width<=760px){.login-page{grid-template-columns:1fr}.login-story{min-height:38vh;padding:30px 24px}.login-story__copy h1{margin-block:28px 14px;font-size:clamp(2.45rem,12vw,4rem)}.login-story__copy p,.login-story__footer{display:none}.login-panel{padding:20px}.login-form{margin-top:-34px;padding:26px 22px}.sidebar{width:min(82vw,290px);box-shadow:var(--shadow-md);transition-property:transform;transition-duration:.2s;transition-timing-function:cubic-bezier(.2,0,0,1);transform:translate(-102%)}.sidebar.is-open{transform:translate(0)}.workspace{margin-inline-start:0}.mobile-close,.menu-button{display:inline-grid!important}.mobile-close{color:var(--sidebar-muted)}.nav-backdrop{z-index:25;background:oklch(12% .015 64/.48);border:0;position:fixed;inset:0}.topbar{justify-content:space-between;height:58px;padding:0 16px}.month-control label,.sync-state{display:none}.workspace__content{padding:26px 16px 50px}.page-header{align-items:start;margin-bottom:24px}.page-header p{font-size:.86rem}.page-header>.button{min-width:42px;padding:0 12px}.page-header>.button span{display:none}.stats-grid{grid-template-columns:1fr 1fr;gap:10px}.stat{min-height:128px;padding:17px}.stat__label{margin-bottom:17px}.two-column{gap:12px}.panel{border-radius:15px}.panel__header{padding:15px 16px}.project-viewbar{flex-direction:column;align-items:stretch;gap:12px;padding:15px 16px}.project-view-switch{width:100%}.project-view-switch button{flex:1;justify-content:center}.project-filters{grid-template-columns:1fr;gap:12px;padding:16px}.project-filters__title{height:auto;display:flex}.project-filters__summary{justify-content:space-between;min-width:0;height:34px}.task-mobile-sortbar{border-bottom:1px solid var(--line);min-height:48px;color:var(--text-soft);background:var(--surface-subtle);letter-spacing:.045em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:12px;padding:7px 16px;font-size:.68rem;font-weight:700;display:flex}.task-mobile-sortbar .task-deadline-trigger{min-height:34px;color:var(--accent);letter-spacing:normal;text-transform:none;font-size:.72rem;font-weight:650}.project-filter-empty{text-align:center;flex-direction:column;min-height:240px}.project-filter-empty .button{margin:4px 0 0}.gantt-chart{--gantt-name-width:215px}.gantt-project{padding-inline:12px 9px}.gantt-empty{text-align:center;flex-direction:column;min-height:220px}.gantt-unscheduled>div{grid-template-columns:1fr}.table-shell{overflow:visible}table,thead,tbody,tr,th,td{display:block}thead{display:none}tbody{padding:4px 12px}tbody tr{border-bottom:1px solid var(--line);padding:12px 44px 12px 0;position:relative}.task-table tbody tr{padding-inline-end:44px}tbody tr:last-child{border-bottom:0}td{border:0;justify-content:space-between;align-items:center;gap:16px;padding:5px 0;display:flex}td:before{content:attr(data-label);color:var(--text-soft);font-size:.67rem}td:first-child{padding-bottom:9px;display:block}td:first-child:before,td.row-actions:before{display:none}.table-link{max-width:none}.row-actions{position:absolute;inset:8px -4px auto auto}.row-actions .icon-button:not(:first-child){display:none}.task-row-actions .icon-button{display:inline-grid!important}.task-title-cell{padding-inline-start:calc(var(--task-depth,0) * 10px)}.task-title-copy strong,.task-title-copy span{white-space:normal}.task-progress{align-self:flex-start}.money span,.money strong{display:inline}.money strong{margin-inline-start:7px}.table-legend{display:none}.card-grid,.recommendation-list{grid-template-columns:1fr}.entity-card{min-height:0;padding:18px}.detail-hero{align-items:start;display:grid}.detail-hero__actions{grid-row:2}.project-detail-hero{grid-template-columns:auto minmax(0,1fr)}.project-detail-hero .detail-hero__actions{grid-column:2}.project-stages-header{display:grid}.project-stages-header__actions{flex-direction:column;align-items:stretch}.stage-split-select{min-width:0}.financial-plan-banner{align-items:flex-start}.financial-plan-banner>div{gap:3px;display:grid}.stage-table .row-actions .icon-button{display:inline-grid!important}.stage-task-row{padding:0;position:static}.stage-task-row td:before{display:none}.stage-task-list{padding:10px 4px 14px}.detail-facts{grid-template-columns:1fr 1fr}.finance-strip{grid-template-columns:1fr 1fr 1fr}.finance-strip>div{padding:15px 13px}.context-grid{gap:12px}.context-card{min-height:220px}.context-card>header{padding:12px 14px}.context-card__actions .button{padding:0 9px}.context-card__actions .button span{display:none}.markdown{padding:18px;font-size:.87rem}.agent-card{grid-template-columns:1fr;gap:15px}.agent-card__permissions{grid-column:auto}.agent-card__actions{justify-content:flex-end}.module-access-panel{grid-template-columns:1fr}.module-access-panel>div{border-top:1px solid var(--line);border-inline-start:0}.module-access-panel>div:first-child{border-top:0}.module-access-panel__beneficiaries{grid-column:auto}.modal-backdrop{align-items:end;padding:0}.modal,.modal--wide{border-radius:22px 22px 0 0;width:100%;max-height:94vh}.modal__header{padding:19px 18px 15px}.modal__body{padding:18px}.modal__footer{padding:13px 18px}.modal__footer:has(.task-add-subtask){flex-wrap:wrap}.modal__footer .task-add-subtask{width:100%;margin:0 0 4px}.form-grid{grid-template-columns:1fr}.field--full{grid-column:auto}.schedule-preview{grid-template-columns:1fr}.owner-row{border-top:1px solid var(--line);grid-template-columns:1fr 36px;padding:10px 0}.owner-row .select-wrap,.owner-row .share-input,.owner-row__empty{grid-column:1}.owner-row .icon-button{grid-area:1/2}.project-finance{grid-template-columns:1fr}.project-finance__header,.project-finance__rule{grid-column:1}.project-finance__group+.project-finance__group{border-top:1px solid var(--line);border-inline-start:0}.financial-plan__header,.financial-plan__totals{align-items:start}.financial-plan__settings,.financial-stage{grid-template-columns:1fr}.financial-stage .icon-button{justify-self:end}.financial-plan__totals{display:grid}.financial-plan__totals>div{justify-content:start}.pnl-panel__header{display:grid}.segmented-control{width:100%}.segmented-control button{flex:1}.pnl-summary{grid-template-columns:1fr 1fr}.pnl-summary>div:nth-child(3){border-top:1px solid var(--line);border-inline-start:0}.pnl-summary>div:nth-child(4){border-top:1px solid var(--line)}.pnl-table tbody{padding:4px 12px}.pnl-detail-row{background:var(--surface-subtle);padding:10px 0}.pnl-detail-row__name{padding:0 0 8px}.pnl-detail-empty{padding:0}.pnl-detail-empty>td{padding:12px 4px;display:block}.pnl-detail-empty>td:before{display:none}input,textarea,select{font-size:16px}.toast{inset:auto 14px 14px}}@media (width<=440px){.stats-grid{grid-template-columns:1fr}.stat{min-height:112px}.detail-facts,.finance-strip{grid-template-columns:1fr}.detail-facts>div{border-top:1px solid var(--line);border-inline-start:0}.detail-facts>div:first-child{border-top:0}.finance-strip__head{grid-column:auto}.finance-strip>div{border-inline-start:0;border-top:1px solid oklch(100% 0 0/.08)}.detail-hero__actions{grid-template-columns:1fr 1fr;display:grid}.task-parent-context{grid-template-columns:1fr}.financial-plan__header{display:grid}.pnl-summary{grid-template-columns:1fr}.pnl-summary>div{border-top:1px solid var(--line);border-inline-start:0}.pnl-summary>div:first-child{border-top:0}.project-stage-summary{grid-template-columns:1fr}.project-stage-summary>div{border-top:1px solid var(--line);border-inline-end:0}.project-stage-summary>div:first-child{border-top:0}.project-detail-hero{grid-template-columns:1fr}.project-detail-hero .back-link,.project-detail-hero .detail-hero__actions{grid-column:1}.financial-plan-banner{display:grid}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
