:root{--ink:#282523;--muted:#9b9893;--blue:#235ecd;--paper:#fff;--project-tint-opacity:30%;--warm:#f6f3ee;--border:#00000012;--calendar-upper-top:-184px;--calendar-upper-height:38px;--calendar-lower-top:-60px;--calendar-lower-height:28px;color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-family:Arial,Helvetica,sans-serif}*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:#b9b2a8 transparent}@supports selector(::-webkit-scrollbar){*{scrollbar-width:auto;scrollbar-color:auto}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0;margin:18px}::-webkit-scrollbar-button{width:0;height:0;display:none}::-webkit-scrollbar-thumb{background:#b9b2a8 padding-box padding-box;border:2px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background-color:#938b80}::-webkit-scrollbar-corner{background:0 0}html,body{width:100%;height:100%;margin:0;overflow:hidden}button,input,select{font:inherit}button{color:inherit;cursor:pointer;touch-action:manipulation;background:0 0;border:0}button:disabled,button[aria-disabled=true]{opacity:.35;cursor:default}button:focus-visible,input:focus-visible{outline:2px solid var(--blue);outline-offset:4px}button{transition:background-color .15s,box-shadow .15s,opacity .15s}input{min-width:0}h1,h2,h3,p{margin:0}button img{pointer-events:none}button:active:not(:disabled){filter:brightness(.97)}.planner{--toolbar-bottom:clamp(20px, 2.3vh, 40px);--toolbar-height:48px;--graph-baseline-bottom:calc(var(--toolbar-bottom) + var(--toolbar-height) + 8px);isolation:isolate;touch-action:none;cursor:grab;opacity:0;background:#fff;width:100%;height:100dvh;transition:opacity .2s;position:relative;overflow:hidden}.planner.ready{opacity:1}.planner.is-panning,.planner.space-pan,.planner.space-pan button{cursor:grabbing}.dot-grid{pointer-events:none;position:absolute;inset:0}.day-backgrounds{pointer-events:none;position:absolute;inset:0;overflow:hidden}.day-backdrop{border-left:0;position:absolute;top:0;bottom:0}.day-backdrop.weekend{background:#f4f4f433 repeating-linear-gradient(45deg,#0000 0 7px,#c9c9c94d 7px 8px)}.row-stripes{pointer-events:none;position:absolute;inset:0}.row-stripes>div{height:var(--row-pitch);background:#0000000a;position:absolute;left:0;right:0}.row-hover-highlight{height:var(--row-pitch);pointer-events:none;position:absolute;left:0;right:0}.world{position:absolute;top:0;left:0}.day{position:absolute;top:0}.week-heading{left:calc(16px * var(--canvas-zoom));top:calc(var(--calendar-upper-top) * var(--canvas-zoom));white-space:nowrap;font-size:calc(32px * var(--canvas-zoom));letter-spacing:calc(-1.1px * var(--canvas-zoom));font-weight:600;line-height:calc(var(--calendar-upper-height) * var(--canvas-zoom));pointer-events:none;position:absolute}.week-heading strong{color:#171614;font-weight:600}.week-heading span{color:#a8a094}.day-heading{top:calc(var(--calendar-lower-top) * var(--canvas-zoom));align-items:center;gap:calc(4px * var(--canvas-zoom));color:#92918e;width:100%;font-size:calc(12px * var(--canvas-zoom));font-weight:500;line-height:calc(12px * var(--canvas-zoom));pointer-events:none;flex-direction:column;display:flex;position:absolute;left:0}.block-row{left:var(--day-padding);grid-template-columns:repeat(7, var(--block-width));column-gap:var(--block-gap);height:var(--block-size);display:grid;position:absolute}.block{width:100%;height:var(--block-size);border-radius:calc(4px * var(--canvas-zoom));color:#fff;font-size:calc(12px * var(--canvas-zoom));cursor:pointer;outline-offset:2px;border:1px solid #0000;padding:0;font-weight:600;transition:box-shadow .12s,filter .12s,transform .12s;position:relative}.block.empty{cursor:default;background:0 0;border-color:#0000}.project-block-row{pointer-events:none}.project-block-row:not([data-exiting=true])>.block:not(.empty){pointer-events:auto}.block.internal{background:#e5e5e5}.block:not(.empty):not(.selected):not(.drop-target):hover{outline-offset:-2px;box-shadow:none;z-index:1;filter:brightness(1.04);outline:2px solid #28252355}.project-line-hover-outline{pointer-events:none;z-index:3;border-radius:999px;position:absolute;box-shadow:0 0 0 2px #28252355}.project-line-hit-target{pointer-events:auto;z-index:3;position:absolute}.project-line-profile-outline{pointer-events:none;z-index:3;position:absolute}.block.selected,.block.drop-target,.block:focus-visible{outline:2px solid var(--blue);outline-offset:-2px;box-shadow:none}.block.drop-target{transform:scale(1.12)}.block:active{cursor:grabbing}.time-labels{top:calc(-22px * var(--canvas-zoom));left:var(--day-padding);grid-template-columns:repeat(7, var(--block-width));font-size:calc(8px * var(--canvas-zoom));column-gap:var(--block-gap);text-align:center;color:#8f8b85;pointer-events:none;display:grid;position:absolute}.graphs{z-index:4;cursor:crosshair;position:absolute;bottom:0;left:0}.planner.chrome-hidden .header,.planner.chrome-hidden .bottom-chrome,.planner.chrome-hidden .pencil-dock{display:none}.vignette{z-index:3;pointer-events:none;background:linear-gradient(90deg,#fff 0,#0000 7% 93%,#fff 100%),linear-gradient(#fff 0,#0000 9% 90%,#fff 100%);position:absolute;inset:0}.sidebar{z-index:4;pointer-events:none;background:linear-gradient(90deg,#fff 0 62.5%,#fff0 100%);position:absolute;top:0;bottom:0;left:0;overflow:hidden}.sidebar-labels{width:calc(200px * var(--canvas-zoom));position:absolute;top:0}.section-label{top:calc(-42px * var(--canvas-zoom));font-size:calc(16px * var(--canvas-zoom));font-weight:600;line-height:calc(19px * var(--canvas-zoom));white-space:nowrap;position:absolute;left:0}.person-label{height:var(--block-size);align-items:center;gap:calc(8px * var(--canvas-zoom));min-width:calc(100px * var(--canvas-zoom));font-size:calc(12px * var(--canvas-zoom));text-align:left;border-radius:calc(6px * var(--canvas-zoom));pointer-events:auto;padding:0;font-weight:500;display:flex;position:absolute;left:0}.person-label:hover{background:0 0}.person-label.active span{color:var(--blue)}.avatar{object-fit:cover;border-radius:50%;flex:none;width:24px;height:24px}.project-label{pointer-events:auto;border-radius:8px;padding:0;position:absolute;left:0}.project-label:hover{filter:brightness(.96)}.project-pill{background:color-mix(in srgb, var(--project-color) var(--project-tint-opacity), transparent);align-items:center;gap:calc(4px * var(--canvas-zoom));border-radius:calc(8px * var(--canvas-zoom));height:var(--block-size);padding:0 calc(10px * var(--canvas-zoom));font-size:calc(12px * var(--canvas-zoom));white-space:nowrap;font-weight:500;display:flex}.project-pill .project-code,.project-pill .project-scheduling-progress{font-size:calc(10px * var(--canvas-zoom))}.project-pill .project-code{opacity:.75}.project-pill .project-pill-separator{opacity:.5}.project-pill .project-scheduling-progress{opacity:.5;font-variant-numeric:tabular-nums;margin-left:auto}.header{background:var(--warm);z-index:10;cursor:default;border-radius:12px;justify-content:space-between;align-items:center;width:min(940px,100% - 80px);height:76px;padding:16px 26px;display:flex;position:absolute;top:clamp(20px,3.15vh,55px);left:50%;transform:translate(-50%)}.brand{align-items:center;gap:12px;display:flex}.brand-avatar{object-fit:cover;border-radius:50%;width:32px;height:32px}.brand h1{font-size:15px;font-weight:600;line-height:18px}.baseline{align-items:center;gap:8px;margin-top:5px;padding:0;font-size:12px;font-weight:500;display:flex}.icon{object-fit:contain;flex:none;width:16px;height:16px}.header-actions{align-items:center;gap:8px;display:flex}.settings-button{background:#fff;border-radius:8px;place-items:center;width:42px;height:42px;display:grid}.settings-button:hover{background:#e9e5de}.outline-button,.primary-button{white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;height:42px;padding:0 14px;font-size:13px;font-weight:500;display:inline-flex}.outline-button{background:0 0;border:1px solid #6c6863}.outline-button:hover{background:#eae6df}.primary-button{background:var(--blue);color:#fff;border:1px solid var(--blue)}.primary-button:hover{background:#1c51b8}.bottom-chrome{bottom:var(--toolbar-bottom);z-index:12;cursor:default;flex-direction:column;align-items:center;gap:10px;max-width:calc(100% - 24px);display:flex;position:absolute;left:50%;transform:translate(-50%)}.bottom-chrome:has(.toolbar-item>.popover){z-index:40}.graph-toggles{align-items:center;gap:10px;display:flex}.graph-toggle{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#00000008;border-radius:8px;align-items:center;gap:8px;height:28px;padding:0 10px;font-size:12px;font-weight:500;display:flex;box-shadow:0 3px 6px #00000004}.graph-toggle .icon{width:14px;height:14px}.graph-toggle:hover{background:#e8e8e8}.graph-toggle.utilisation.on{color:#235ecd;background:#eaf1ff}.graph-toggle.project-utilisation.on{color:#a56617;background:#fff2df}.graph-toggle.revenue.on{color:#21815d;background:#e5f3eb}.graph-toggle.revenue.on .icon{filter:hue-rotate(285deg)}.graph-toggle.investment.on{color:#9255b6;background:#f3eaf9}.toolbar{z-index:1;height:var(--toolbar-height);border:1px solid var(--border);white-space:nowrap;background:#fff;border-radius:12px;align-items:stretch;max-width:100%;padding:0 3px;display:flex;position:relative;box-shadow:0 6px 7px #00000012,0 25px 12.5px #0000000f,0 57px 17px #00000008}.toolbar-item{align-items:center;display:flex;position:relative}.toolbar-item+.toolbar-item{border-left:1px solid var(--border)}.toolbar-item>button{justify-content:center;align-items:center;gap:8px;height:100%;padding:0 18px;font-size:13px;font-weight:500;display:flex}.toolbar-item>button:hover{background:#f7f7f7}.toolbar-item:first-child>button{border-radius:10px 0 0 10px}.toolbar-item:last-child>button{border-radius:0 10px 10px 0}.zoom-item>button{color:#92908c;font-size:12px}.toolbar-item>button.has-filter{color:var(--blue);background:#f3f7ff}.active-filters{background:#ffffffeb;border:1px solid #e8e8e8;border-radius:8px;align-items:center;gap:14px;padding:7px 10px;font-size:11px;display:flex;box-shadow:0 3px 12px #00000008}.active-filters>span{color:#68645e}.active-filters button{color:var(--blue);padding:0;font-size:11px}.popover{white-space:normal;cursor:default;background:#fff;border:1px solid #0000000c;border-radius:14px;padding:16px;font-size:13px;box-shadow:0 12px 45px #2825231c,0 2px 7px #00000008}.toolbar-item>.popover{width:280px;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.popover h3{font-size:14px;font-weight:600;line-height:20px}.popover-heading{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.popover-heading>button{color:#8a8680;padding:4px;font-size:12px}.popover-heading>button:hover{color:var(--blue)}.popover input:not([type=checkbox]):not([type=range]){width:100%;color:var(--ink);background:#fbfaf8;border:1px solid #e4e1dc;border-radius:8px;height:39px;margin-bottom:10px;padding:10px 11px;font-size:13px}.options-list{overscroll-behavior:contain;max-height:min(370px,48vh);margin:0 -7px;overflow:auto}.filter-section-heading{color:#827c73;margin:12px 8px 4px;font-size:11px;font-weight:500}.filter-option{cursor:pointer;border-radius:7px;align-items:center;gap:10px;min-height:42px;padding:7px;display:flex}.filter-option:hover{background:#f6f5f2}.filter-option>span:not(.color-dot){flex:1}.filter-option small{color:#9a958c;margin-top:3px;font-size:10px;display:block}.filter-option input{accent-color:var(--blue);cursor:pointer;width:15px;height:15px}.filter-option .avatar{width:26px;height:26px}.color-dot{border-radius:4px;flex:none;width:13px;height:13px;display:inline-block}.popover-foot{color:#9b968e;border-top:1px solid #eee;justify-content:space-between;align-items:center;gap:8px;margin-top:10px;padding-top:12px;font-size:10px;display:flex}.popover-foot button{color:var(--blue);background:#f0f4fd;border-radius:6px;padding:6px 10px;font-size:12px}.empty-result{color:#8a8680;padding:16px 10px}.command-backdrop{z-index:26;align-items:start;padding-top:12vh}.command-menu{width:min(560px,100%);padding:14px}.command-menu .options-list{max-height:min(420px,52vh)}.command-option{text-align:left;border-radius:7px;align-items:center;gap:10px;width:100%;min-height:38px;padding:8px;font-size:13px;display:flex}.command-option>span:first-child{flex:1}.shortcut-keys{white-space:nowrap;flex-shrink:0;align-items:center;gap:3px;display:inline-flex}.command-option small{color:#9a958c;margin-top:3px;font-size:10px;display:block}.command-option.highlighted{color:var(--blue);background:#f2f5fb}.command-option[aria-disabled=true]{color:#b5b0a8;cursor:default}.command-tick{color:var(--blue)}.date-menu h3{margin-bottom:14px}.full-width{width:100%}.date-shortcuts,.week-navigation{justify-content:space-between;gap:10px;margin-top:12px;display:flex}.date-shortcuts button,.week-navigation button{border-radius:6px;padding:7px;font-size:12px}.date-shortcuts button:hover,.week-navigation button:hover{background:#f5f3ef}.date-shortcuts{border-bottom:1px solid #eee;padding-bottom:10px}.switch-row{cursor:pointer;justify-content:space-between;align-items:center;padding:10px 0;font-size:13px;display:flex}.switch-row input{appearance:none;cursor:pointer;background:#ddd;border-radius:20px;width:30px;height:18px;transition:background .15s;position:relative}.switch-row input:checked{background:var(--blue)}.switch-row input:before{content:"";background:#fff;border-radius:50%;width:12px;height:12px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #0002}.switch-row input:checked:before{transform:translate(12px)}.menu-divider{background:#eee;height:1px;margin:10px 0}.menu-choice{text-align:left;border-radius:6px;align-items:center;gap:10px;width:100%;min-height:34px;padding:8px;font-size:12px;display:flex}.menu-choice>span:last-child:not(:first-child){margin-left:auto}.menu-choice:hover{background:#f5f4f1}.menu-choice.chosen{color:var(--blue);background:#f2f5fb}.menu-choice kbd{margin-left:auto}kbd{color:#a09b93;background:#f4f2ee;border:1px solid #e8e6e1;border-radius:4px;padding:2px 5px;font-size:11px}.gesture-help{color:#96918a;padding-top:8px;font-size:11px;line-height:1.8}.zoom-menu input{width:100%;accent-color:var(--blue);margin:4px 0 16px}.zoom-presets{justify-content:space-between;gap:5px;margin-bottom:10px;display:flex}.zoom-presets button{border:1px solid #eee;border-radius:6px;padding:6px 8px;font-size:12px}.zoom-presets button:hover{color:var(--blue);background:#f0f5ff}.baseline-menu{width:260px;position:absolute;top:calc(100% + 10px);left:24px}.baseline-menu p{color:#96918a;margin:12px 8px;font-size:12px;line-height:1.6}.eyebrow{letter-spacing:1.2px;color:#99938a;margin-bottom:10px;font-size:9px;font-weight:600;display:block}.dismiss-layer{z-index:9;cursor:default;position:absolute;inset:0}.block-editor{z-index:13;width:280px;max-height:calc(100vh - 30px);position:absolute;overflow:auto}.editor-person{align-items:center;gap:9px;display:flex}.editor-date{color:#96918a;margin-bottom:16px;font-size:11px;line-height:1.8}.editor-projects .menu-choice>span:nth-child(2){margin-left:0;margin-right:auto}.editor-projects small{color:#9b968e;margin-left:8px;font-size:10px}.clear-block{color:#cb4758}.tooltip{z-index:15;pointer-events:none;background:#fff;border:1px solid #eee;border-radius:9px;flex-direction:column;gap:6px;max-width:280px;padding:11px 13px;font-size:11px;display:flex;position:absolute;box-shadow:0 6px 24px #00000012}.calendar-headers .calendar-fade{transition:none}.tooltip strong{font-weight:600}.tooltip.project-workload-tooltip{width:340px;max-width:calc(100vw - 24px)}.tooltip-summary{display:contents}.tooltip-contributors{flex-direction:column;gap:6px;min-width:0;display:flex}.tooltip.project-tooltip-columns{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;column-gap:20px;width:720px;display:grid}.project-tooltip-columns>strong{grid-column:1/-1}.project-tooltip-columns .tooltip-summary{flex-direction:column;gap:6px;min-width:0;display:flex}.project-tooltip-columns .tooltip-contributors{border-left:1px solid #eee;padding-left:20px}@media (max-width:650px){.tooltip.project-tooltip-columns{grid-template-columns:minmax(0,1fr)}.project-tooltip-columns .tooltip-contributors{border-top:1px solid #eee;border-left:0;padding-top:10px;padding-left:0}}.tooltip .workload-period-label{color:#57534e;font-size:10px;font-weight:600}.local-workload{border-top:1px solid #eee;flex-direction:column;gap:6px;margin-top:3px;padding-top:9px;display:flex}.local-workload>span:not(.workload-period-label){color:#8c8780;font-size:10px}.contributor-workloads{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;margin:4px 0}.contributor-workloads th{color:#8c8780;border-bottom:1px solid #eee;padding:7px 0;font-size:10px;font-weight:400}.contributor-workloads td{height:28px}.contributor-workloads th,.contributor-workloads td{text-align:right}.contributor-workloads th:first-child{text-align:left}.contributor-workloads td:first-child{text-align:left;align-items:center;gap:7px;display:flex}.contributor-workloads td:first-child img{border-radius:50%;width:20px;height:20px}.tooltip>span,.tooltip-summary>span,.tooltip-contributors>span{color:#8c8780;font-size:10px}.graph-tooltip{min-width:205px}.graph-tooltip.graph-tooltip-month{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;width:520px;min-width:0;max-width:calc(100vw - 24px);display:grid}.graph-tooltip-period{flex-direction:column;gap:6px;min-width:0;display:flex}.graph-tooltip-period+.graph-tooltip-period{border-left:1px solid #eee;padding-left:16px}.graph-tooltip-period>span{color:#8c8780}.graph-tooltip-period>span,.graph-financial-total,.graph-project-contribution{align-items:center;gap:7px;font-size:11px;display:flex}.graph-financial-breakdown{flex-direction:column;gap:6px;display:flex}.graph-financial-total{color:#8c8780}.graph-project-contribution{color:#78716c;padding-left:13px}.graph-project-contribution>span{overflow-wrap:anywhere;min-width:0}.graph-tooltip .metric-dot{flex-shrink:0}.graph-tooltip b{white-space:nowrap;color:#282523;margin-left:auto;font-weight:500}.graph-tooltip-period>strong,.graph-tooltip-period>span,.graph-tooltip-period>span>b,.graph-financial-total,.graph-financial-total>b{font-weight:700}.graph-project-contribution>b{color:inherit}.metric-dot{border-radius:50%;width:6px;height:6px}.metric-dot.orange{background:#db9134}.metric-dot.blue{background:#4285f4}.metric-dot.green{background:#38a580}.metric-dot.purple{background:#b576db}.notifications{left:50%;bottom:calc(clamp(20px, 2.3vh, 40px) + 112px + env(safe-area-inset-bottom));z-index:200;pointer-events:none;flex-direction:column;gap:8px;width:min(680px,100vw - 32px);max-height:calc(100dvh - 240px);display:flex;position:fixed;overflow-y:auto;transform:translate(-50%)}.notification{color:#403b35;cursor:default;pointer-events:auto;background:#fffdf8;border:1px solid #d8d5cf;border-radius:10px;flex:none;align-items:center;gap:12px;padding:12px 14px;font-size:13px;line-height:1.45;display:flex;box-shadow:0 5px 25px #0000000e}.notification-success{background:#eef8f1;border-color:#b8d9c2}.notification-warning{background:#fff4df;border-color:#e5cb9a}.notification-error{background:#fff0e4;border-color:#e6bfa8}.notification-copy{overflow-wrap:anywhere;flex:1;min-width:0}.notification-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.notification button{min-height:32px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:4px 8px}.notification-actions button{text-decoration:underline}.notification .notification-dismiss{flex:none;width:32px;font-size:22px}.notification button:hover{background:#0000000a}.notification button:focus-visible{outline-offset:2px;outline:2px solid}@media (max-width:600px){.notification{flex-wrap:wrap;gap:6px}.notification-copy{flex-basis:calc(100% - 44px)}.notification-actions{flex-basis:100%;order:2}}.modal-backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:25;cursor:default;background:#28252330;place-items:center;padding:20px;display:grid;position:absolute;inset:0}.modal{background:var(--warm);border:1px solid #fff;border-radius:20px;width:440px;max-width:100%;max-height:calc(100vh - 40px);padding:16px 34px 0;position:relative;overflow:auto;box-shadow:0 22px 90px #28252325}.modal.modal-wide{width:min(820px,100vw - 40px)}.modal-wide h2{max-width:none}.modal-close{color:#918a80;font-size:24px;position:absolute;top:12px;right:16px}.modal h2{letter-spacing:-.8px;max-width:290px;margin:20px 0 12px;font-size:25px;font-weight:500;line-height:1.15}.modal p{color:#8d877f;margin-bottom:22px;font-size:12px;line-height:1.7}.modal h3{margin:18px 0 4px;font-size:13px;font-weight:600}.form-label{flex-direction:column;gap:8px;margin-bottom:17px;font-size:12px;font-weight:500;display:flex}.form-label input{background:#fff;border:1px solid #dedad3;border-radius:8px;padding:12px;font-size:13px}.color-picker{gap:12px;margin:12px 0 25px;display:flex}.color-picker button{color:#fff;border-radius:9px;width:32px;height:32px;font-size:16px}.color-picker button[aria-pressed=true]{outline-offset:3px;outline:2px solid #282523}.modal-actions{justify-content:flex-end;gap:9px;padding-top:10px;display:flex}.settings-detail{grid-template-columns:1fr auto;gap:14px;padding:6px 0 16px;font-size:12px;display:grid}.settings-detail>span{color:#969087}.settings-detail strong{font-weight:500}.modal .gesture-help{font-size:12px;line-height:1.9}@media (min-width:2000px){.header{width:1280px;height:84px;padding:16px 32px}.brand h1{font-size:16px}.baseline,.toolbar-item>button{font-size:14px}.header .settings-button,.header .outline-button,.header .primary-button{height:44px;font-size:14px}.settings-button{width:44px}}@media (max-width:900px){.header{width:calc(100% - 40px);height:68px;padding:12px 18px}.toolbar-item>button{padding:0 13px;font-size:12px}.toolbar-item{position:static}.planner{--toolbar-height:46px}.zoom-item>button{font-size:11px}.week-heading{font-size:calc(30px * var(--canvas-zoom))}}@media (max-width:600px){.header{width:calc(100% - 28px);height:64px;padding:12px;top:16px}.brand{gap:8px}.brand h1{font-size:13px}.brand-avatar{width:28px;height:28px}.baseline{font-size:11px}.header-actions{gap:5px}.settings-button{width:34px;height:34px;margin:0}.outline-button,.primary-button{height:34px;padding:0 9px;font-size:10px}.toolbar-item>button{gap:5px;padding:0 9px;font-size:11px}.toolbar-item>button>.icon:first-child{display:none}.toolbar .icon{width:12px;height:12px}.zoom-item>button{font-size:10px}.planner{--toolbar-height:44px;--toolbar-bottom:20px}.graph-toggle{height:26px;font-size:11px}.header .outline-button{max-width:95px}.modal{padding:26px}.sidebar{background:linear-gradient(90deg,#fff 0 70%,#fff0 100%)}.tooltip{display:none}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}@media (min-width:901px) and (max-width:1999px){.header{width:clamp(640px,47.62vw,1280px);height:64px;padding:12px 20px}.brand h1{font-size:13px}.brand-avatar{width:30px;height:30px}.header .settings-button,.header .outline-button,.header .primary-button{height:38px;font-size:12px}.settings-button{width:38px}}@font-face{font-family:GT Standard;src:url(/fonts/gt-standard-regular.ttf)format("truetype");font-weight:400 500;font-display:swap}@font-face{font-family:GT Standard;src:url(/fonts/gt-standard-semibold.ttf)format("truetype");font-weight:600 800;font-display:swap}:root{font-family:GT Standard,Arial,Helvetica,sans-serif}.week-heading span{margin-left:calc(4px * var(--canvas-zoom))}.day-backdrop:before{content:"";background:#00000012;width:1px;position:absolute;top:0;bottom:0;left:-.5px}.sidebar-labels .avatar{width:calc(24px * var(--canvas-zoom));height:calc(24px * var(--canvas-zoom))}.drawing-layer,.schedule-overview{pointer-events:none;position:absolute;inset:0}.planner.pencil-active{cursor:crosshair}.planner.pencil-active .world,.planner.pencil-active .graphs{pointer-events:none}.planner.pencil-active.space-pan,.planner.pencil-active.is-panning{cursor:grabbing}.overview-mode .day-heading,.overview-mode .week-heading,.overview-mode .sidebar-labels{visibility:hidden}.pencil-dock{z-index:12;cursor:default;gap:8px;display:flex;position:absolute;bottom:24px;left:24px}.sticky-note{z-index:auto;transform-origin:0 0;background:var(--sticky-color,#fff2a8);color:#554827;border:1px solid color-mix(in srgb, var(--sticky-color,#fff2a8), #282523 15%);cursor:default;border-radius:3px 3px 14px;flex-direction:column;display:flex;position:absolute;box-shadow:0 5px 12px #54401b20}.sticky-note:not(.is-editing){cursor:grab;touch-action:none}.sticky-note:not(.is-editing):active{cursor:grabbing}.sticky-note:not(.is-editing) textarea{pointer-events:none}.sticky-note textarea{resize:none;width:100%;min-height:0;color:inherit;-webkit-user-select:text;user-select:text;cursor:text;background:0 0;border:0;outline:0;flex:1;padding:12px;font-family:inherit;font-size:14px;line-height:1.5}.sticky-note textarea::placeholder{color:#887b4e}.sticky-note:focus-within{outline:2px solid color-mix(in srgb, var(--sticky-color,#fff2a8), #282523 35%);outline-offset:2px}.pencil-button{border:1px solid var(--border);background:#fff;border-radius:12px;place-items:center;width:44px;height:44px;display:grid;box-shadow:0 4px 14px #00000012}.pencil-button>span{font-size:26px;line-height:1}.pencil-button.on{color:var(--blue);background:#eaf1ff}.pencil-options{width:230px;position:absolute;bottom:56px;left:0}.ink-colors{gap:12px;margin:16px 0;display:flex}.ink-colors button{color:#fff;border-radius:50%;width:28px;height:28px}.ink-widths{gap:8px;padding:2px 0 14px;display:flex}.ink-widths button{border:1px solid #e7e5e2;border-radius:6px;width:58px;height:32px;padding:0 12px}.ink-widths button[aria-pressed=true]{background:#eaf1ff;border-color:#b9cdf2}.ink-widths span{background:currentColor;border-radius:5px;display:block}.pencil-actions{border-top:1px solid #eee;justify-content:space-between;padding-top:12px;font-size:11px;display:flex}.pencil-actions button{padding:3px 0}.zoom-presets{flex-wrap:wrap;justify-content:flex-start}@media (max-width:700px){.pencil-dock{bottom:136px;left:16px}}.horizontal-only,.horizontal-only .sidebar{overflow:clip}.horizontal-only.overview-mode .sidebar-labels{visibility:visible}.horizontal-only .block{border-radius:min(4px, calc(var(--block-width) / 2));overflow:hidden}.horizontal-only.compact-columns .block{font-size:0}.horizontal-only .day-heading{overflow:hidden}.horizontal-only .week-heading{left:calc(16px * var(--horizontal-zoom))}.horizontal-only .block,.horizontal-only .block.empty,.horizontal-only .block.internal{color:#0000;border-color:#0000;background:0 0!important}.horizontal-only.overview-mode .day-heading,.horizontal-only.overview-mode .week-heading{visibility:visible}.month-heading{top:var(--calendar-upper-top);text-overflow:clip;white-space:nowrap;color:#92918e;pointer-events:none;padding:0 8px;font-weight:600;position:absolute;overflow:visible}.calendar-headers,.calendar-day{pointer-events:none;position:absolute;top:0;left:0}.calendar-fade{transition:opacity .22s ease-in-out}.calendar-lower-label{top:var(--calendar-lower-top);font-size:12px;font-weight:500;line-height:var(--calendar-lower-height);text-align:center;white-space:nowrap;color:#92918e;pointer-events:none;position:absolute;left:0}.calendar-block-labels{position:absolute;top:0;left:0}.period-guide{z-index:-1;pointer-events:none;background:#28252366;width:1px;position:absolute}.now-guide{pointer-events:none;z-index:1;background:#111;width:1px;position:absolute}.now-guide>span{color:#fff;background:#111;border-radius:0 3px 3px 0;padding:3px 5px;font-size:10px;position:absolute;top:110px;left:0}.phase-milestones{z-index:3;pointer-events:none;position:absolute;inset:0}.phase-milestone{pointer-events:auto;cursor:default;background:0 0;border:0;width:12px;padding:0;position:absolute;top:0}.phase-milestone:disabled{pointer-events:none}.phase-milestone i{opacity:.65;background:currentColor;width:1px;position:absolute;inset:0 auto 0 50%;transform:translate(-50%)}.phase-milestone.implicit i{opacity:.24}.phase-milestone:hover i,.phase-milestone.phase-highlighted i,.phase-milestone:focus-visible i{opacity:1;width:2px}.phase-milestone.phase-highlighted .milestone-cap,.milestone-cap.has-issue{filter:drop-shadow(0 0 3px)}.phase-hover-boundary{opacity:.8;pointer-events:none;border-left:2px dashed;width:0;position:absolute;top:0;transform:translate(-1px)}.phase-milestones,.now-marker{--indicator-y:calc(var(--milestone-canvas-y) + ( var(--calendar-upper-top) / 2 + var(--calendar-upper-height) / 4 + var(--calendar-lower-top) / 2 + var(--calendar-lower-height) / 4 ) * var(--canvas-zoom))}.milestone-cap{z-index:2;top:calc(var(--indicator-y) + var(--milestone-stack-offset,0px));width:var(--milestone-size,24px);height:var(--milestone-size,24px);display:block;position:absolute;left:50%;transform:translate(-50%,-50%)}.implicit .milestone-cap{opacity:.45}.phase-tooltip{pointer-events:auto;width:330px;max-width:calc(100vw - 28px);max-height:min(460px,60vh);overflow:auto}.milestone-detail+.milestone-detail{border-top:1px solid #eee;margin-top:10px;padding-top:10px}.milestone-type{margin-top:7px;font-weight:600}.milestone-detail p{color:#8c8780;margin:6px 0;font-size:10px}.milestone-detail table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.milestone-detail th{color:#8c8780;font-size:10px;font-weight:400}.milestone-detail th,.milestone-detail td{text-align:left;padding:3px 0}.milestone-detail th:last-child,.milestone-detail td:last-child{text-align:right}.phase-editor select{background:#fff;border:1px solid #ddd7ce;border-radius:7px;width:100%;padding:10px}.phase-card{background:#ffffff80;border:1px solid #e4ded5;border-radius:10px;margin:12px 0;padding:12px}.phase-card summary{cursor:pointer;justify-content:space-between;gap:8px;font-weight:500;display:flex}.phase-card>.work-totals-summary{margin-bottom:0}.phase-card summary small,.phase-date-fields small{color:#8c8780;font-weight:400}.phase-date-fields{grid-template-columns:1fr 1fr;gap:10px;display:grid}.phase-date-fields input{min-width:0}.project-rate-card{border:1px solid #e4ded5;border-radius:10px;margin:16px 0;padding:14px}.project-rate-card summary{cursor:pointer;font-weight:500}.project-rate-card summary small{color:#8c8780;margin-left:12px;font-weight:400}.project-rate-row{border-bottom:1px solid #e4ded5;grid-template-columns:minmax(0,1fr) minmax(120px,1fr) auto;align-items:center;gap:12px;margin-bottom:12px;padding:12px 0;display:grid}.project-rate-row strong,.project-rate-row small{display:block}.project-rate-row small{color:#8c8780;margin-top:4px}.project-rate-row input{width:100%;min-width:0}@media (max-width:520px){.project-rate-row{grid-template-columns:minmax(0,1fr) auto}.project-rate-row>div{grid-column:1/-1}}.phase-remove{color:#a95555;margin-top:12px;font-size:11px}.horizontal-only .full-day-heading{text-overflow:ellipsis;padding:0 8px;left:0;overflow:hidden}.date-scales{grid-template-columns:repeat(4,1fr);gap:4px;margin:14px 0;display:grid}.date-scales button{border:1px solid var(--border);border-radius:6px;padding:8px 5px;font-size:12px}.date-scales button:hover{background:#eef3ff}.view-option{gap:6px;margin-top:14px;font-size:12px;display:grid}.view-option select{border:1px solid var(--border);width:100%;color:var(--ink);background:#fff;border-radius:6px;padding:8px}@media (prefers-reduced-motion:reduce){.calendar-fade{transition:none}}.phase-milestone{cursor:ew-resize;touch-action:none}.phase-milestone.dragging i{opacity:1;width:2px}.phase-milestone.dragging{z-index:3}.phase-milestone.dragging .milestone-cap{opacity:1}.milestone-drag-date{z-index:2;top:calc(var(--indicator-y) + var(--milestone-stack-offset,0px));white-space:nowrap;background:#fff;border:1px solid;border-radius:5px;padding:5px 8px;font-size:11px;position:absolute;left:14px;transform:translateY(12px)}.phase-issue{background:#fff2dc;border-radius:5px;padding:7px;color:#925309!important}.scheduling-issues-button{z-index:10;color:#8c540e;background:#fff8eb;border:1px solid #ebd0a5;border-radius:10px;padding:9px 12px;font-size:11px;position:absolute;bottom:92px;left:24px;box-shadow:0 4px 14px #0000000a}.scheduling-issues-button>span{padding-right:6px;font-weight:700}.phase-issue-card{border-top:1px solid #e4ded5;padding:14px 0}.phase-issue-card strong{font-size:13px}.capacity-detail summary{cursor:pointer;font-weight:500}.capacity-detail[open] summary{margin-bottom:8px}.now-marker{z-index:3;cursor:default;background:0 0;border:0;width:12px;padding:0;position:absolute;top:0}.now-marker:disabled{opacity:1;pointer-events:none}.now-marker i{background:#111;width:1px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.now-marker.hovered i,.now-marker:focus-visible i{width:2px}.now-marker>span{top:var(--indicator-y);color:#fff;background:#111;border-radius:0 3px 3px 0;padding:3px 5px;font-size:10px;position:absolute;left:6px;transform:translateY(-50%)}.now-tooltip>span{color:#57534e;font-size:12px}.project-phase-wrappers{pointer-events:none;position:absolute;inset:0}.project-phase-wrapper{cursor:default;outline:none;position:absolute}.project-phase-wrapper:before{content:"";border-radius:inherit;opacity:var(--project-tint-opacity);background:currentColor;position:absolute;inset:0}.project-phase-wrapper-hit{border-radius:inherit;outline:none;position:absolute;inset:0}.project-phase-wrapper-hit:hover,.project-phase-wrapper-hit:focus-visible{box-shadow:0 0 0 1.5px}.phase-budget-summary{background:#f5f4f1;border-radius:8px;gap:24px;margin:18px 0;padding:12px;display:flex}.phase-budget-summary span{color:#73716d;font-size:12px}.phase-budget-summary b{color:#302e2a;margin-top:5px;font-size:14px;display:block}.job-totals-section{margin-top:24px}.work-totals-summary{grid-template-columns:repeat(3,max-content);justify-content:space-between;display:grid}.work-totals-summary.with-investment{grid-template-columns:repeat(4,max-content)}.work-totals-summary small{margin-top:5px;display:block}.phase-remove:disabled{opacity:.35;cursor:default}.phase-adjustment-history{margin:16px 0;font-size:12px}.phase-adjustment-history>div{border-bottom:1px solid #eee;padding:10px 0}.phase-adjustment-history small{color:#888;margin-left:12px}.modal:has(.phase-editor){width:760px}@media (max-width:600px){.phase-budget-summary{flex-wrap:wrap;gap:12px}.phase-card{overflow-x:auto}}.scheduler-settings select{background:#fff;border:1px solid #d8d6d2;border-radius:6px;padding:9px}.scheduler-priority,.scheduler-priority>span{align-items:center;gap:8px;display:flex}.scheduler-priority{justify-content:space-between;margin:12px 0}.schedule-report table{border-collapse:collapse;width:100%;font-size:12px}.schedule-report td,.schedule-report th{text-align:left;border-bottom:1px solid #ddd;padding:10px 4px;font-weight:400}.schedule-report .schedule-result-status{color:#292722;font-size:16px;font-weight:500}.schedule-report .scheduler-note{color:#8a8680;font-size:11px}.solver-spinner{border:2px solid #d8d6d2;border-top-color:#285bce;border-radius:50%;width:24px;height:24px;animation:.8s linear infinite solver-spin;display:inline-block}@keyframes solver-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.solver-spinner{animation:none}}.phase-together-option{cursor:pointer;background:#f1f3f8;border-radius:8px;align-items:flex-start;gap:10px;margin:14px 0;padding:12px;display:flex}.phase-together-option input{accent-color:#255bd4;margin-top:3px}.phase-together-option b{font-size:13px;font-weight:500;display:block}.phase-together-option small{color:#75736f;margin-top:4px;font-size:12px;line-height:1.5;display:block}.settings-page{background:#faf9f7;height:100dvh;display:flex;overflow:hidden}.settings-navigation{background:#f2efea;border-right:1px solid #e8e4df;flex-direction:column;flex:none;gap:36px;width:240px;padding:34px 24px;display:flex}.back-to-canvas{color:#65605b;font-size:13px;text-decoration:none}.settings-brand{gap:8px;font-size:16px;font-weight:600;display:grid}.settings-brand span{color:#918b83;font-size:13px;font-weight:400}.settings-navigation nav{gap:6px;display:grid}.settings-navigation nav :is(button,a){text-align:left;border-radius:9px;padding:12px 16px;font-size:14px}.settings-navigation nav a{color:inherit;text-decoration:none}.settings-navigation nav :is(button,a)[aria-current]{background:#fff;font-weight:600;box-shadow:0 1px 4px #3325150b}.settings-navigation nav :is(button,a):hover{background:#ffffff90}.settings-storage-note{color:#888178;margin-top:auto;font-size:12px;line-height:1.7}.settings-main{flex:1;padding:54px clamp(24px,5vw,84px) 80px;overflow:auto}.settings-main>header{max-width:1040px;margin:0 auto 32px}.settings-eyebrow{text-transform:uppercase;letter-spacing:1.3px;color:#989188;font-size:11px}.settings-main h1{letter-spacing:-1px;margin:10px 0 12px;font-size:34px}.settings-main header p{color:#817a72;font-size:14px;line-height:1.6}.settings-content{border:0;min-width:0;max-width:1040px;margin:auto;padding:0}.registry-layout{grid-template-columns:190px minmax(0,1fr);align-items:start;gap:22px;display:grid}.registry-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;display:flex}.registry-toolbar .outline-button{white-space:nowrap}.registry-table{background:#fff;border:1px solid #e8e4de;border-radius:14px;margin-bottom:24px;overflow-x:auto}.registry-columns{grid-template-columns:minmax(220px,1fr) 150px 150px;align-items:center;gap:24px;display:grid}.groups-table .registry-columns{grid-template-columns:minmax(220px,1fr) 150px}.projects-table .registry-columns{grid-template-columns:minmax(220px,1fr) 70px 120px 130px}.project-status-heading{align-items:center;gap:10px;margin:0 0 12px;font-size:16px;font-weight:500;display:flex}.project-status-heading>span{color:#8c8379;font-size:12px;font-weight:400}.project-status-section+.project-status-section{margin-top:28px}.project-status-section.status-drop-target .registry-table{outline-offset:3px;outline:2px solid #867d73}.project-status-empty{margin:0;padding:18px 24px}.projects-table .registry-heading,.projects-table .registry-row{min-width:700px}.registry-heading{color:#8c8379;background:#f5f3ef;min-width:600px;padding:14px 24px;font-size:11px}.registry-heading>span:not(:first-child),.registry-stat{text-align:right}.registry-rows{margin:0;padding:0;list-style:none}.registry-row{min-width:600px;position:relative}.registry-row+.registry-row{border-top:1px solid #eeeae5}.registry-row:hover{background:#f5f3ef}.projects-table .registry-row:has([data-inactive=true])>*{opacity:.5}.projects-table .registry-row:has([data-inactive=true]):is(:hover,:focus-within)>*{opacity:.8}.registry-row-button{text-align:left;width:100%;min-height:78px;padding:18px 24px}.registry-name{align-items:center;gap:14px;min-width:0;font-size:14px;display:flex}.registry-name b{font-weight:500}.registry-name small{color:#999087;margin-top:5px;font-size:11px;display:block}.registry-name img{object-fit:cover;border-radius:50%;flex:none;width:38px;height:38px}.registry-stat{color:#817a72;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:13px}.registry-stat small{font-size:11px}.registry-table .registry-heading,.registry-table .registry-row-button{padding-left:54px}.registry-row.dragging{opacity:.45}.registry-row.drop-target{background:#ebe7e0;box-shadow:inset 0 2px #867d73}.registry-drag-handle{z-index:1;cursor:grab;color:#989188;padding:10px 0;font-size:24px;position:absolute;top:50%;left:20px;transform:translateY(-50%)}.registry-drag-handle:active{cursor:grabbing}@media (max-width:700px){.registry-columns{grid-template-columns:minmax(170px,1fr) 125px 125px;gap:16px}.registry-heading,.registry-row{min-width:540px}.groups-table .registry-heading,.groups-table .registry-row{min-width:360px}.groups-table .registry-columns{grid-template-columns:minmax(160px,1fr) 100px}}.project-dialog-body>.settings-card,.project-dialog-body>.project-dialog-form>.settings-card{border:0;border-radius:0}.settings-actions .person-delete{color:#a53b31}.project-dialog-form>.settings-card:has(.dialog-action-footer){--person-form-padding:28px;padding:var(--person-form-padding) var(--person-form-padding) 0;margin-bottom:0}.dialog-action-footer{z-index:2;margin:24px calc(-1 * var(--person-form-padding,28px)) 0;padding:18px var(--person-form-padding,28px);background:#fff;border-top:1px solid #e8e4de;position:sticky;bottom:0}.dialog-action-footer .settings-actions{flex-wrap:wrap;justify-content:center;align-items:center}@media (max-width:900px){.project-dialog-form>.settings-card:has(.dialog-action-footer){--person-form-padding:22px}}.registry-list{gap:5px;display:grid}.registry-list>button{text-align:left;border-radius:10px;align-items:center;gap:12px;padding:12px;font-size:14px;display:flex}.registry-list>button.selected{background:#ebe7e0}.registry-list>button:hover{background:#f0ede7}.registry-list>button.outline-button{justify-content:center;margin-bottom:13px}.registry-list img,.group-members img{object-fit:cover;border-radius:50%;width:30px;height:30px}.registry-list small,.group-members small{color:#999087;margin-top:4px;font-size:11px;display:block}.settings-card{background:#fff;border:1px solid #e8e4de;border-radius:14px;min-width:0;margin-bottom:24px;padding:28px}.settings-card h3{letter-spacing:-.3px;margin:24px 0 12px;font-size:17px}.settings-card h3:first-child{margin-top:0}.avatar-editor{flex-direction:column;align-items:center;gap:12px;margin-bottom:28px;display:flex}.avatar-upload-preview{background:#f2efea;border-radius:50%;flex:0 0 80px;width:80px;height:80px;padding:0;position:relative;overflow:hidden}.avatar-upload-preview img{object-fit:cover;width:100%;height:100%;display:block}.avatar-upload-preview span{color:#fff;background:#252321a6;padding:5px 0 7px;font-size:10px;position:absolute;inset:auto 0 0}.avatar-upload-preview:hover span,.avatar-upload-preview:focus-visible span{background:#252321dd}.avatar-upload-details{text-align:center;min-width:0}.avatar-upload-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;display:flex}.avatar-remove{color:#80776d;font-size:12px}.avatar-remove:hover{color:#302a25}.avatar-upload-details p{color:#878078;margin:9px 0 0;font-size:11px;line-height:1.5}.avatar-upload-details .avatar-upload-error{color:#bd3948}.avatar-upload-status{color:#878078;margin-top:8px;font-size:11px;display:block}.settings-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;display:grid}.settings-help,.settings-card>p,.group-requirements>p{color:#878078;margin:0 0 18px;font-size:12px;line-height:1.6}.settings-card .primary-button{margin-top:14px}.settings-card .dialog-action-footer .primary-button{margin-top:0}.settings-main .form-label{font-size:12px}.settings-main .form-label input,.settings-main .form-label select{background:#fff;border-color:#e5e0d9}.settings-main input[type=checkbox]{accent-color:#235ecd;cursor:pointer;width:17px;height:17px}.week-template-scroll{overflow:auto}.week-template{border-collapse:collapse;white-space:nowrap;width:100%;margin:14px 0 18px;font-size:12px}.week-template th,.week-template td{text-align:center;border-bottom:1px solid #f0ece7;padding:12px 8px;font-weight:400}.week-template th:first-child{text-align:left;color:#7d766d}.week-template th b{color:#3e3933;min-width:15px;display:inline-block}.week-template thead{color:#8d857a}.group-members{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:20px 0;display:grid}.group-members label{background:#faf9f7;border-radius:8px;align-items:center;gap:12px;padding:12px;font-size:13px;display:flex}.settings-actions{align-items:baseline;gap:20px;display:flex}.text-button{text-underline-offset:3px;font-size:12px;text-decoration:underline}.settings-facts{border-top:1px solid #eee8e1;grid-template-columns:1fr 1fr;gap:18px;margin:24px 0;padding-top:24px;font-size:13px;display:grid}.settings-facts span{color:#8c8379}.settings-notice{background:#f0f7f0;border:1px solid #d5e4d6;border-radius:10px;max-width:1040px;margin:0 auto 24px;padding:14px 18px;font-size:13px;line-height:1.6}.settings-notice.error{background:#fff2eb;border-color:#efd6c8}.settings-main .phase-editor{background:#fff;border:1px solid #e8e4de;border-radius:14px;padding:28px}.settings-main .phase-editor>p{color:#81786f;font-size:13px;line-height:1.7}.settings-main .phase-card{margin-bottom:16px}.add-project{margin-bottom:18px}.group-requirements{border-top:1px solid #e7e2dc;margin:20px 0;padding-top:4px}.group-requirements h4{margin-bottom:8px;font-size:14px}.group-budget{background:#f7f5f1;border:1px solid #e9e4dd;border-radius:10px;margin:14px 0;padding:18px}.group-budget-title{justify-content:space-between;align-items:center;margin-bottom:4px;font-size:14px;display:flex}.group-budget small,.group-requirements>small{color:#81796f;font-size:11px;line-height:1.6;display:block}.staffing-result{color:#5e6e59;margin-top:12px;font-size:12px;line-height:1.6}.settings-solving{z-index:100;background:#fff;border:1px solid #ddd7ce;border-radius:12px;align-items:center;gap:20px;padding:20px 24px;font-size:14px;display:flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 6px 30px #0002}.settings-solving small{color:#9b9389;margin-top:5px;font-size:12px;display:block}.workspace-loading{text-align:center;color:#91887d;place-items:center;padding:24px;font-size:14px;display:grid;position:fixed;inset:0}@media (max-width:1050px){.settings-navigation{width:190px;padding:28px 18px}.registry-layout{grid-template-columns:1fr}.registry-list{grid-template-columns:repeat(3,minmax(0,1fr))}.registry-list>button.outline-button{margin:0}.settings-main{padding:35px 25px}.settings-card{padding:22px}}@media (max-width:650px){.settings-page{flex-direction:column}.settings-navigation{gap:14px;width:auto;padding:15px}.settings-brand,.settings-storage-note{display:none}.settings-navigation nav{display:flex;overflow:auto}.settings-navigation nav :is(button,a){padding:9px 12px}.settings-main{padding:25px 16px}.settings-fields,.group-members{grid-template-columns:1fr}.settings-main .phase-editor{padding:16px}.settings-solving{width:calc(100% - 24px);bottom:12px}}.settings-main .form-label select{appearance:none;width:100%;height:42px;color:var(--ink);cursor:pointer;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%236e675f' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") right 12px center no-repeat;border:1px solid #e5e0d9;border-radius:8px;padding:8px 36px 8px 12px;font-size:13px;line-height:20px}.settings-main .form-label select:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.settings-main .form-label input[type=color]{appearance:none;cursor:pointer;border:1px solid #ded8d0;border-radius:7px;width:42px;height:42px;min-height:42px;padding:3px;display:block}.settings-main input[type=color]::-webkit-color-swatch-wrapper{padding:0}.settings-main input[type=color]::-webkit-color-swatch{border:0;border-radius:3px}.settings-main input[type=color]::-moz-color-swatch{border:0;border-radius:3px}.project-registry{background:#fff;border:1px solid #e8e4de;border-radius:14px;margin-bottom:24px;overflow:hidden}.project-registry-heading,.project-registry-row{grid-template-columns:minmax(170px,1fr) 90px 130px 66px;align-items:center;gap:20px;padding:20px 24px;display:grid}.project-registry-heading{color:#8c8379;background:#f5f3ef;padding-top:14px;padding-bottom:14px;font-size:11px}.project-registry-row+.project-registry-row{border-top:1px solid #eeeae5}.project-registry-name{align-items:center;gap:14px;font-size:14px;display:flex}.project-registry-name b{font-weight:500}.project-registry-name small{color:#999087;margin-top:5px;font-size:11px;display:block}.project-colour-swatch{border-radius:7px;flex:none;width:34px;height:34px}.project-registry-stat{font-size:13px}.project-registry-stat small{color:#92887d;font-size:11px}.project-registry-row .outline-button{padding:9px 15px;font-size:12px}.project-detail-dialog{width:min(900px,100vw - 48px);max-height:calc(100dvh - 64px);color:var(--ink);background:#fff;border:1px solid #e3ddd4;border-radius:18px;padding:0;overflow:auto;box-shadow:0 24px 100px #21180e30}.project-detail-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#29231d55}.project-dialog-header{z-index:2;background:#fff;border-bottom:1px solid #ece7df;justify-content:space-between;align-items:center;gap:20px;padding:16px 28px;display:flex;position:sticky;top:0}.project-dialog-header h2{letter-spacing:-.6px;margin-top:7px;font-size:23px;font-weight:500}.project-dialog-header>button{color:#867d73;border-radius:8px;width:34px;height:34px;font-size:25px}.project-dialog-header>button:hover{background:#f5f2ed}.project-dialog-form{border:0;min-width:0;margin:0;padding:0}.settings-main .project-detail-dialog .phase-editor{border:0;border-radius:0;padding:24px 28px}.project-detail-dialog .settings-notice{margin:20px 28px 0}.project-detail-dialog .phase-editor>p{margin-bottom:22px}.project-dialog-solving{background:#f7f4ee;border-top:1px solid #e4ddd3;justify-content:space-between;align-items:center;gap:20px;padding:18px 28px;font-size:13px;display:flex;position:sticky;bottom:0}.project-dialog-solving small{color:#8b8176;margin-top:5px;font-size:12px;display:block}@media (max-width:800px){.project-registry-heading,.project-registry-row{grid-template-columns:minmax(120px,1fr) 65px 95px 60px;gap:12px;padding:16px}.project-registry-stat small{margin-top:4px;display:block}}@media (max-width:550px){.project-registry-heading{display:none}.project-registry-row{grid-template-columns:1fr 60px}.project-registry-stat{display:none}.project-detail-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 24px)}.project-dialog-header{padding:16px 18px}.settings-main .project-detail-dialog .phase-editor{padding:18px}.project-dialog-header h2{font-size:21px}}.phase-requirements{margin:22px 0}.requirements-heading h4{margin:0 0 6px;font-size:14px;font-weight:600}.requirements-heading p{color:#8b8278;margin-bottom:16px;font-size:12px;line-height:1.6}.requirement-entry{margin-bottom:8px}.requirement-entry-fields{grid-template-columns:minmax(0,1fr) repeat(2,minmax(60px,85px)) 80px 70px 28px;align-items:end;gap:14px;display:grid}.requirement-column-headings{color:#8b8278;margin-bottom:6px;font-size:11px;font-weight:500}.requirement-entry-fields .form-label{margin-bottom:0}.remove-requirement{color:#958a7e;border-radius:7px;height:42px;font-size:22px}.remove-requirement:hover:not(:disabled){color:#342a20;background:#eee8df}.add-requirement{margin-top:4px;font-size:12px}.project-pricing-help{color:#8c8174;border-top:1px solid #ece6dc;justify-content:space-between;gap:16px;padding:14px 0;font-size:12px;display:flex}.project-pricing-help strong{color:#3b3228;font-weight:500}@media (max-width:550px){.requirement-entry-fields{grid-template-columns:minmax(110px,1fr) 48px 60px 72px 56px 24px;gap:8px}.phase-requirements{overflow-x:auto}}.planner{--locked-opacity:.4}.block[data-locked=true]{cursor:default}.block-row{-webkit-mask-image:linear-gradient(to right, #0006 calc(var(--locked-cutoff) - var(--day-screen-left) - var(--day-padding)), #000 calc(var(--locked-cutoff) - var(--day-screen-left) - var(--day-padding)));mask-image:linear-gradient(to right, #0006 calc(var(--locked-cutoff) - var(--day-screen-left) - var(--day-padding)), #000 calc(var(--locked-cutoff) - var(--day-screen-left) - var(--day-padding)))}.schedule-overview{-webkit-mask-image:linear-gradient(to right, #0006 var(--locked-cutoff), #000 var(--locked-cutoff));mask-image:linear-gradient(to right, #0006 var(--locked-cutoff), #000 var(--locked-cutoff))}.project-phase-wrapper:before{-webkit-mask-image:linear-gradient(to right, #0006 calc(var(--locked-cutoff) - var(--wrapper-left)), #000 calc(var(--locked-cutoff) - var(--wrapper-left)));mask-image:linear-gradient(to right, #0006 calc(var(--locked-cutoff) - var(--wrapper-left)), #000 calc(var(--locked-cutoff) - var(--wrapper-left)))}.schedule-search-progress{text-align:left;width:100%;min-width:0}.search-stage{align-items:center;gap:12px;display:flex}.search-stage .solver-spinner{flex-shrink:0;width:22px;height:22px;margin:0}.search-elapsed,.search-note{color:#807b75;font-size:12px}.schedule-search-progress h3{margin:20px 0 8px;font-size:15px}.search-deliveries{max-height:240px;margin:14px 0;padding:0;list-style:none;overflow:auto}.search-deliveries li{border-bottom:1px solid #eeeae5;justify-content:space-between;gap:24px;padding:8px 0;font-size:13px;display:flex}.search-deliveries li>span{align-items:center;gap:8px;display:flex}.search-deliveries time{white-space:nowrap;font-variant-numeric:tabular-nums}.project-dialog-solving{flex-direction:column;align-items:stretch;max-height:80vh;overflow:auto}.workspace-gate{color:#242424;background:#f5f4f1;place-items:center;min-height:100dvh;padding:32px;display:grid}.workspace-gate section{background:#fff;border-radius:20px;max-width:460px;padding:36px;box-shadow:0 8px 40px #0000000d}.workspace-gate h1{margin:0 0 20px;font-size:32px}.workspace-gate p{margin-bottom:20px;line-height:1.5}.workspace-gate button{cursor:pointer;background:#fff;border:1px solid #ccc;border-radius:8px;width:100%;margin-top:12px;padding:12px;display:block}.calendar-settings{gap:16px;max-width:960px;display:grid}.calendar-settings h3{margin-top:20px}.calendar-settings p{line-height:1.5}.calendar-settings label{gap:8px;display:grid}.calendar-settings input{border:1px solid #ddd;border-radius:6px;padding:10px}.calendar-actions{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.calendar-settings table{border-collapse:collapse;width:100%}.calendar-settings th,.calendar-settings td{text-align:left;border-bottom:1px solid #e5e5e5;padding:10px}.calendar-review{border:1px solid #e5b567;border-radius:8px;gap:8px;padding:16px;display:grid}.block[data-calendar-busy=true]:not(.internal){outline-offset:-2px;outline:1px dashed #666}.block[data-calendar-busy=true].internal{outline-offset:-1px;outline:1px solid #999}.calendar-settings form{justify-items:start;gap:12px;display:grid}.calendar-settings form label{width:100%}.selection-marquee{pointer-events:none;z-index:19;border:1px solid var(--blue);background:#235ecd15;position:fixed}.block-selection-tools{z-index:35;border:1px solid var(--border);background:#fff;border-radius:12px;align-items:center;gap:16px;padding:10px 16px;font-size:13px;display:flex;position:fixed;bottom:122px;left:50%;transform:translate(-50%);box-shadow:0 4px 18px #0001}.block-selection-tools button{color:var(--blue);padding:5px 8px}.scenario-save-dialog{width:min(420px,100vw - 32px);padding:24px;position:relative}.scenario-save-dialog .form-label{margin:20px 0}.scenario-menu{min-width:240px}.block-drag-preview{color:#fff;background:var(--blue);border-radius:8px;padding:10px 16px;font:600 13px Arial,sans-serif;position:fixed;top:-100px}@media (max-width:600px){.header{flex-wrap:wrap;gap:8px;height:auto;min-height:64px}.header-actions{flex-wrap:wrap}.block-selection-tools{white-space:nowrap;gap:6px;max-width:calc(100vw - 24px);padding:8px;font-size:11px}}.schedule-status-copy{flex-direction:column;gap:3px;min-width:0;display:flex}.schedule-status-copy>span{color:var(--muted);font-size:11px}.schedule-status-copy strong{white-space:normal;font-weight:500}.calendar-event{z-index:2;color:#555;pointer-events:auto;background:#e5e5e5;border:1px solid #b5b5b5;border-radius:4px;align-items:center;padding:0;display:flex;position:absolute;overflow:hidden}.calendar-event[data-project=true]{border:none}.calendar-event span{text-overflow:ellipsis;white-space:nowrap;padding:0 6px;font-size:11px;overflow:hidden}.calendar-event.out-of-office{background:repeating-linear-gradient(45deg,#0000 0 7px,#c9c9c94d 7px 8px),#f3f3f3;min-width:2px}.block[data-calendar-busy=true]{visibility:hidden}.calendar-event[data-hover-enabled=true]:hover,.calendar-event[data-hover-enabled=true]:focus-visible{outline-offset:-2px;filter:brightness(1.04);z-index:3;outline:2px solid #28252355}.calendar-event{-webkit-mask-image:linear-gradient(to right, #0006 calc(var(--locked-cutoff) - var(--event-screen-left)), #000 calc(var(--locked-cutoff) - var(--event-screen-left)));mask-image:linear-gradient(to right, #0006 calc(var(--locked-cutoff) - var(--event-screen-left)), #000 calc(var(--locked-cutoff) - var(--event-screen-left)))}.tooltip .calendar-event-detail{overflow-wrap:anywhere;border-top:1px solid #ddd;flex-direction:column;gap:4px;margin-top:8px;padding-top:8px;display:flex}.calendar-settings .settings-card{margin-bottom:0}.calendar-settings .calendar-actions .settings-help{margin:0}.calendar-status{color:#645b50;background:#f0ede7;border-radius:10px;padding:12px 16px;font-size:13px}.calendar-disclosure>summary{cursor:pointer;align-items:center;gap:12px;font-size:14px;font-weight:500;list-style:none;display:flex}.calendar-disclosure>summary::-webkit-details-marker{display:none}.calendar-disclosure>summary:before{content:"›";color:#8b8278;font-size:20px;transition:transform .15s}.calendar-disclosure[open]>summary:before{transform:rotate(90deg)}.calendar-disclosure>summary small{color:#8b8278;margin-left:auto;font-size:12px;font-weight:400}.calendar-disclosure>summary:focus-visible{outline-offset:6px;border-radius:3px;outline:2px solid #645b50}.calendar-disclosure>.settings-help{margin:18px 0}.calendar-people{border-top:1px solid #e8e4de;border-bottom:1px solid #e8e4de;margin-top:12px;padding:18px 0}.calendar-people fieldset{border:0;min-width:0;margin:0;padding:18px 0 0}.calendar-people-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-top:16px;display:grid}.calendar-settings label.calendar-person{cursor:pointer;background:#faf9f7;border:1px solid #e8e4de;border-radius:10px;align-items:center;gap:10px;padding:12px;font-size:13px;display:flex}.calendar-settings label.calendar-person[data-selected=true]{background:#ebe7e0;border-color:#cfc6b9}.calendar-person:hover{box-shadow:0 0 0 1px #cfc6b9}.calendar-settings .calendar-person input[type=checkbox]{accent-color:#645b50;width:14px;height:14px;margin:0}.calendar-person-initial{color:#645b50;background:#e3ddd3;border-radius:50%;flex-shrink:0;place-items:center;width:28px;height:28px;font-size:12px;display:grid}.calendar-export-actions{margin-top:22px}.calendar-export-actions .primary-button{margin-top:0}.calendar-event-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;max-height:480px;margin-top:20px;display:grid;overflow:auto}.calendar-event-card{align-content:start;gap:6px;margin-bottom:0;display:grid}.calendar-event-card small{color:#8b8278;text-transform:capitalize;font-size:11px}.calendar-event-card strong{font-size:13px;font-weight:500;line-height:1.5}.calendar-event-card p,.calendar-empty{color:#878078;font-size:12px}.calendar-empty{padding:24px 0 0}@media (max-width:550px){.calendar-disclosure>summary{flex-wrap:wrap;gap:8px}.calendar-disclosure>summary small{margin-left:20px}.calendar-export-card .settings-fields{grid-template-columns:1fr}}.calendar-mock-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.calendar-settings .calendar-mock-heading h3{margin:0}.calendar-mock-heading small{color:#8b8278;font-size:12px}.calendar-person-avatar{object-fit:cover;border-radius:50%;flex-shrink:0;width:28px;height:28px}.calendar-change-groups{max-height:520px;margin-top:22px;overflow:auto}.calendar-change-day+.calendar-change-day{margin-top:24px}.calendar-change-date{background:#f0ede7;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.calendar-change-date h4{color:#51483d;margin:0;font-size:12px;font-weight:600}.calendar-change-date>span{color:#8b8278;white-space:nowrap;font-size:11px}.calendar-change-list{margin:0;padding:0 14px;list-style:none}.calendar-change-row{grid-template-columns:85px minmax(0,1fr) auto;align-items:center;gap:16px;padding:13px 0;font-size:13px;display:grid}.calendar-change-row+.calendar-change-row{border-top:1px solid #eeeae4}.calendar-change-row>time{color:#878078;font-variant-numeric:tabular-nums;font-size:12px}.calendar-change-person{color:#51483d;align-items:center;gap:10px;min-width:0;display:flex}.calendar-change-person>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.calendar-change-kind{color:#756b5f;text-transform:capitalize;background:#f0ede7;border-radius:6px;padding:4px 9px;font-size:11px}.calendar-change-kind[data-kind=create]{color:#637357;background:#edf2e9}.calendar-change-kind[data-kind=update]{color:#8b734a;background:#f5eedf}.calendar-change-kind[data-kind=delete]{color:#a06d5c;background:#f7ebe6}.calendar-change-zone{color:#9b9083;margin-top:18px;font-size:11px}@media (max-width:550px){.calendar-change-row{grid-template-columns:65px minmax(0,1fr) auto;gap:8px}.calendar-change-date{align-items:start}}.calendar-change-description{gap:3px;min-width:0;display:grid}.calendar-change-description strong{white-space:normal;overflow-wrap:anywhere;font-size:13px;font-weight:500;line-height:1.5}.calendar-change-description small{color:#8b8278;font-size:11px}.project-detail-dialog:has(.phase-editor){border-color:#e5e0d9;border-radius:16px}.project-detail-dialog:has(.phase-editor) .project-dialog-header{padding:16px 24px}.project-detail-dialog:has(.phase-editor) .project-dialog-header h2{font-size:22px;line-height:1.25}.settings-main .project-detail-dialog .phase-editor{padding:24px 24px 0}.project-detail-dialog .phase-editor{font-size:13px;line-height:1.5}.project-detail-dialog .phase-editor>.settings-fields{gap:20px 16px;margin-bottom:24px}.project-detail-dialog .phase-editor .form-label{gap:8px;margin-bottom:0;font-size:12px;line-height:1.4}.project-detail-dialog .phase-editor .form-label :is(input:not([type=color]),select){border-color:#e5e0d9;border-radius:8px;height:40px;font-size:13px}.project-detail-dialog .phase-editor .form-label small{color:#8b8278;font-size:11px;font-weight:400;line-height:1.5}.field-label-text{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.project-detail-dialog .phase-card,.project-detail-dialog .project-rate-card{background:#fff;border:1px solid #e5e0d9;border-radius:12px;margin:0 0 16px;padding:20px}.phase-card-header{align-items:center;gap:10px;min-height:36px;display:flex}.phase-number{color:#9b9893;font-variant-numeric:tabular-nums;flex:none;font-size:11px}.phase-title-input,.phase-title-button{width:100%;min-width:0;color:var(--ink);text-align:left;letter-spacing:-.2px;background:0 0;border:1px solid #0000;border-radius:6px;flex:1;padding:6px 8px;font-size:15px;font-weight:500;line-height:1.4}.phase-title-input:hover,.phase-title-input:focus{background:#faf9f7;border-color:#e5e0d9}.phase-title-button:hover,.phase-toggle:hover{background:#f6f3ee}.phase-toggle{color:#827b73;border-radius:6px;flex:none;place-items:center;width:32px;height:32px;display:grid}.phase-toggle[aria-expanded=true] svg{transform:rotate(90deg)}.phase-card-content:not([hidden]){border-top:1px solid #eeeae5;gap:20px;margin-top:16px;padding-top:20px;display:grid}.project-detail-dialog .phase-card-content>:is(.phase-requirements,.phase-budget-summary,.phase-together-option){margin:0}.project-detail-dialog .phase-together-option{background:#f6f5f2;border-radius:8px;gap:12px;padding:14px 16px}.project-detail-dialog .phase-together-option b{font-size:12px;font-weight:500;line-height:1.5}.project-detail-dialog .phase-together-option input{flex:0 0 17px;min-width:17px;height:17px}.project-detail-dialog .phase-together-option small{margin-top:4px;line-height:1.5}.project-detail-dialog .phase-date-fields{gap:16px}.project-detail-dialog .requirements-heading p{margin-bottom:16px;line-height:1.6}.project-detail-dialog .requirement-entry-fields{gap:12px}.requirement-entry-fields input,.requirement-entry-fields select,.requirement-entry-fields .remove-requirement{height:36px}.project-detail-dialog .phase-editor .requirement-entry-fields input,.project-detail-dialog .phase-editor .requirement-entry-fields select{min-height:36px;padding:6px 10px}.project-detail-dialog .phase-card-content>.phase-remove{justify-self:end;margin:0;padding:6px 0}.project-detail-dialog .work-totals-summary{font-variant-numeric:tabular-nums;background:#f6f5f2;border-radius:8px;gap:20px 16px;margin:20px 0 0;padding:16px}.project-detail-dialog .work-totals-summary>span{font-size:11px;line-height:1.5}.project-detail-dialog .work-totals-summary b{margin-top:4px;font-size:14px;font-weight:500}.project-detail-dialog .work-totals-summary small{color:#8b8278;font-size:10px;line-height:1.5}.project-detail-dialog .project-rate-card{margin-top:16px}.project-detail-dialog .project-rate-card>summary{align-items:center;gap:12px;font-size:13px;list-style:none;display:flex}.project-detail-dialog .project-rate-card>summary::-webkit-details-marker{display:none}.project-detail-dialog .project-rate-card>summary:after{content:"";border-bottom:1.5px solid #827b73;border-right:1.5px solid #827b73;width:6px;height:6px;margin:0 4px 0 auto;transform:rotate(-45deg)}.project-detail-dialog .project-rate-card[open]>summary:after{transform:rotate(45deg)}.project-detail-dialog .project-rate-card>summary small{margin:0;font-size:11px}.project-detail-dialog .project-pricing-help{border:0;margin:16px 0 0;padding:0;font-size:11px;line-height:1.6;display:block}.project-detail-dialog .project-rate-card>.form-label{margin-top:16px}.project-detail-dialog .project-rate-row{border-color:#eeeae5;gap:16px;margin:0;padding:16px 0}.project-detail-dialog .project-rate-row strong{font-size:13px;font-weight:500}.project-detail-dialog .project-rate-row small{font-size:11px}.project-detail-dialog .project-rate-row .phase-remove{align-self:end;min-height:40px;margin:0}.project-detail-dialog .phase-editor :is(.outline-button,.primary-button){border-radius:8px;min-height:40px;padding:10px 16px;font-size:12px}.project-detail-dialog .phase-editor .outline-button{border-color:#d9d3cb}.project-detail-dialog .job-totals-section{border-top:1px solid #eeeae5;margin-top:28px;padding-top:24px}.project-detail-dialog .job-totals-section h3{letter-spacing:-.2px;font-size:15px;font-weight:500}.project-detail-dialog .phase-editor>.modal-actions{z-index:2;background:#fff;border-top:1px solid #eeeae5;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin:24px -24px 0;padding:18px 24px;position:sticky;bottom:0}@media (max-width:550px){.project-detail-dialog:has(.phase-editor) .project-dialog-header{padding:16px}.settings-main .project-detail-dialog .phase-editor{padding:20px 16px 0}.project-detail-dialog .phase-editor>.modal-actions{margin-inline:-16px;padding-inline:16px}.project-detail-dialog .phase-card,.project-detail-dialog .project-rate-card{padding:14px}.project-detail-dialog .phase-date-fields{grid-template-columns:1fr}.project-detail-dialog .requirement-entry-fields{grid-template-columns:minmax(110px,1fr) 48px 60px 72px 56px 24px;gap:6px}.project-detail-dialog .requirement-entry-fields .form-label{font-size:11px}.project-detail-dialog .remove-requirement{width:24px;height:36px}.project-detail-dialog .work-totals-summary{gap:16px 10px;padding:12px}.project-detail-dialog .work-totals-summary>span{font-size:10px}.project-detail-dialog .work-totals-summary b{font-size:13px}}@keyframes calendar-event-appear{0%{opacity:0}to{opacity:1}}.calendar-event-enter{animation:.3s ease-out both calendar-event-appear}.calendar-loading-regions{pointer-events:none;z-index:3;position:absolute;inset:0;overflow:hidden}.calendar-loading-region{background:linear-gradient(105deg,#aaa59b08 15%,#aaa59b12 35%,#aaa59b30 50%,#aaa59b12 65%,#aaa59b08 85%) 0 0/200% 100%;border-radius:4px;animation:2.4s linear infinite calendar-loading-shimmer;position:absolute}@keyframes calendar-loading-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.calendar-event-enter{animation:none}.calendar-loading-region{background:#aaa59b0c;animation:none}}@media (max-width:550px){.work-totals-summary.with-investment{grid-template-columns:repeat(2,max-content)}}.phase-editor .form-label textarea{width:100%;min-height:76px;color:inherit;font:inherit;resize:vertical;background:#fff;border:1px solid #e5e0d9;border-radius:8px;padding:10px 12px;line-height:1.5}.summary-tooltip-trigger{cursor:help;position:relative}.summary-tooltip-trigger:focus-visible{outline-offset:5px;border-radius:3px;outline:2px solid #9b9083}.work-totals-summary .summary-tooltip{z-index:20;color:#51483d;text-align:left;cursor:default;background:#fff;border:1px solid #e5e0d9;border-radius:9px;width:min(260px,100vw - 80px);padding:11px 13px;font-size:12px;font-weight:400;line-height:1.5;position:absolute;bottom:100%;left:50%;transform:translate(-50%);box-shadow:0 6px 24px #00000012}.work-totals-summary .summary-tooltip-end{left:auto;right:0;transform:none}.work-totals-summary .summary-tooltip-start{left:0;transform:none}.phase-hover-details{gap:10px;display:grid}.phase-hover-detail{border-top:1px solid #eee;padding-top:8px}.phase-hover-heading{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.phase-hover-heading b{white-space:nowrap;font-weight:500}.phase-hover-detail dl{grid-template-columns:1fr auto;gap:3px 12px;margin:6px 0;display:grid}.phase-hover-detail dd{text-align:right;font-variant-numeric:tabular-nums;margin:0}.phase-hover-detail>span{color:#777;font-size:10px}.tooltip.phase-financial-tooltip{pointer-events:auto;overscroll-behavior:contain;max-height:calc(100dvh - 24px);overflow-y:auto}.planner:not(.horizontal-only) .block:not(.empty):not(.internal)[data-scheduler-locked]{background-color:color-mix(in srgb, var(--block-color) 45%, white);border-color:var(--block-color);color:var(--ink)}.planner:not(.horizontal-only) .block:not(.empty):not(.internal)[data-scheduler-locked=true]{background-color:var(--block-color);color:var(--block-text,white)}.planner:not(.horizontal-only) .block:not(.empty):not(.internal)[data-scheduler-locked=false]{border-width:1.5px}.time-zone-chevron{box-sizing:content-box;content:"";border-bottom:1.5px solid #6e675f;border-right:1.5px solid #6e675f;flex:none;width:7px;height:7px;margin:-4px 3px 0 auto;transform:rotate(45deg)}select:not([multiple])::picker-icon{box-sizing:content-box;content:"";border-bottom:1.5px solid #6e675f;border-right:1.5px solid #6e675f;flex:none;width:7px;height:7px;margin:-4px 3px 0 auto;transform:rotate(45deg)}@supports (appearance:base-select){select:not([multiple]){appearance:base-select!important}select:not([multiple])::picker(select){appearance:base-select!important}select:not([multiple]){align-items:center;gap:8px;background-image:none!important;padding-right:12px!important}select:not([multiple])::picker(select){color:var(--ink);font:inherit;overscroll-behavior:contain;background:#fff;border:1px solid #0000000c;border-radius:14px;max-height:min(370px,48vh);margin-top:6px;padding:7px;font-size:13px;overflow:auto;box-shadow:0 12px 45px #2825231c,0 2px 7px #00000008}select:not([multiple]) option{cursor:pointer;border-radius:7px;gap:10px;min-height:36px;padding:8px 10px}select:not([multiple]) option:is(:hover,:focus){background:#f6f5f2;outline:none}select:not([multiple]) option:checked{color:var(--ink);background:#f0eee9;font-weight:500}select:not([multiple]) option::checkmark{color:var(--blue)}select:not([multiple]) option:disabled{opacity:.4;cursor:default}select:not([multiple]) optgroup>legend{color:#827c73;padding:12px 10px 4px;font-size:11px;font-weight:500}}.header .brand{flex:1;min-width:0;margin-right:16px}.header-scenario{min-width:0;max-width:100%;position:relative}.scenario-trigger{max-width:100%;color:var(--ink);border-radius:8px;align-items:center;gap:10px;padding:10px 6px;font-size:15px;font-weight:600;display:flex}.scenario-trigger>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.scenario-trigger:hover,.scenario-trigger[aria-expanded=true],.scenario-duplicate:hover{background:#e9e5de}.scenario-duplicate{color:#65605b;border-radius:8px;flex-shrink:0;place-items:center;width:34px;height:34px;display:grid}.scenario-trigger:focus-visible,.scenario-duplicate:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.header-scenario>.scenario-menu{width:min(280px,100vw - 90px);min-width:0;max-height:min(420px,65dvh);position:absolute;top:calc(100% + 12px);left:0;overflow-y:auto}.scenario-menu .menu-choice{gap:16px}.scenario-menu .menu-choice>span:first-child{overflow-wrap:anywhere}.header-actions{flex-shrink:0}.header-actions a{color:inherit;text-decoration:none}.header-actions a.primary-button{color:#fff}.header .brand-avatar{flex-shrink:0}.scenario-save-dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#28252330}dialog.scenario-save-dialog{margin:auto}.settings-page{grid-template-rows:minmax(0,1fr);grid-template-columns:240px minmax(0,1fr);display:grid}.settings-page .settings-navigation{padding-top:calc(clamp(20px,3.15vh,55px) + 96px);overflow:auto}.settings-page .settings-main{padding-top:calc(clamp(20px,3.15vh,55px) + 96px)}.settings-main>header>h1{margin-top:0;line-height:40px}.settings-navigation nav :is(button,a){line-height:16px}@media (max-width:900px){.settings-page{grid-template-columns:190px minmax(0,1fr)}}@media (max-width:650px){.settings-page{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.settings-page .settings-navigation{padding-top:145px}.settings-page .settings-main{padding-top:25px}}@media (max-width:600px){.header .brand{flex-basis:100%;margin-right:0}.scenario-trigger{font-size:13px}.header .header-actions{width:100%}.header-actions .settings-button{margin-left:auto}}.scenario-duplicate .icon,.settings-button .canvas-icon{width:20px;height:20px}.accessibility-toggle{cursor:pointer;align-items:center;gap:10px;display:flex}.accessibility-toggle input{width:18px;height:18px}.project-colour-preview{flex-wrap:wrap;gap:8px;margin:20px 0;display:flex}.project-colour-preview>span{border:1px solid #0003;border-radius:6px;padding:10px 14px}.planner:not(.horizontal-only) .project-block-row>.block{color:var(--block-text,white)}.colour-calibration{margin:20px 0}.colour-calibration-row{border-bottom:1px solid #dedbd7;grid-template-columns:minmax(140px,1fr) repeat(3,minmax(100px,1fr)) 110px;align-items:center;gap:12px;padding:14px 0;display:grid}.colour-calibration-row small{margin:4px 0;display:block}.colour-sample{overflow-wrap:anywhere;border:1.5px solid #0000;border-radius:4px;padding:9px;display:block}.colour-calibration-row input[type=color]{width:64px;height:36px;padding:2px}@media (max-width:950px){.colour-calibration-row{grid-template-columns:repeat(2,minmax(0,1fr))}}.sticky-note-resize{color:#55482799;cursor:nwse-resize;touch-action:none;background:0 0;border:0;place-items:center;width:24px;height:24px;padding:0;display:grid;position:absolute;bottom:2px;right:2px}.sticky-note textarea{padding-bottom:26px}.sticky-note-collapsed{cursor:pointer;border-radius:4px;place-items:center;width:28px;height:28px;padding:0;display:grid}.sticky-note-collapsed:not(.is-editing){cursor:pointer}.sticky-note-paper{transform-origin:50%;transition:transform .2s cubic-bezier(.2,.8,.2,1),opacity .16s}.sticky-note-paper.is-collapsed{opacity:0;pointer-events:none}.sticky-note-collapsed{opacity:0;pointer-events:none;transform-origin:50%;transition:transform .2s cubic-bezier(.2,.8,.2,1),opacity .16s;transform:scale(.6)}.sticky-note-collapsed.is-visible{opacity:1;pointer-events:auto;transform:scale(1)}@media (prefers-reduced-motion:reduce){.sticky-note-paper,.sticky-note-collapsed{transition:none}}.sprint-editor{border-left:2px solid #d9dde3;margin-top:20px;padding-left:16px}.sprint-editor .phase-card{margin-top:12px}.sprint-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.project-sprint-wrapper{background:color-mix(in srgb, currentColor 5%, transparent);pointer-events:none;border:1px solid;position:absolute}.modal>form>.modal-actions{z-index:2;border-top:1px solid var(--border);background:var(--warm);flex-wrap:wrap;justify-content:center;align-items:center;margin:24px -34px 0;padding:18px 34px;position:sticky;bottom:0}.modal:not(:has(>form>.modal-actions)){padding-bottom:24px}.project-delete{color:#a53b31}.delete-confirmation-dialog{width:min(480px,100vw - 32px)}.delete-confirmation-dialog .project-dialog-header{padding:16px 24px}.delete-confirmation-dialog .project-dialog-header h2{margin:0;font-size:20px}.delete-confirmation-body{padding:24px;font-size:14px;line-height:1.6}.delete-confirmation-body p{margin:0}.delete-confirmation-actions{background:#fff;border-top:1px solid #ece7df;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;padding:18px 24px;display:flex;position:sticky;bottom:0}.danger-button{background:#a53b31;border-color:#a53b31}.danger-button:hover{background:#892f27;border-color:#892f27}.delete-action-error{color:#a53b31;margin:0;padding:0 24px 20px;font-size:13px}button[aria-busy=true]{cursor:progress}.time-zone-control{position:relative}.form-label .time-zone-control input{width:100%;padding-right:36px}.time-zone-chevron{pointer-events:none;position:absolute;top:calc(50% - 2.25px);right:13px}.time-zone-options{z-index:20;background:#fff;border:1px solid #d9d9d9;border-radius:8px;max-height:240px;margin:0;padding:4px;font-size:13px;font-weight:400;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #0002}.time-zone-options [role=option]{cursor:pointer;border-radius:4px;justify-content:space-between;gap:8px;padding:8px;display:flex}.time-zone-options [role=option]:hover,.time-zone-options .is-active{background:#f0f0f0}.time-zone-empty{color:#666;padding:8px}
