/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.hidden{display:none}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--ink:#13231f;--muted:#68736f;--line:#e3e8e5;--paper:#f7f8f5;--green:#1e493e;--lime:#d8e6a8;--orange:#d66b3c}*{box-sizing:border-box}html{background:var(--paper)}body{color:var(--ink);background:var(--paper);margin:0;font-family:Arial,Helvetica,sans-serif}button,input,textarea{font:inherit}button{color:inherit}.topbar{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;height:76px;padding:0 clamp(20px,4vw,64px);display:flex}.brand{align-items:center;gap:12px;display:flex}.brand-mark{color:#fff;background:var(--green);border-radius:12px;place-items:center;width:39px;height:39px;font:700 18px Georgia,serif;display:grid}.brand div{flex-direction:column;display:flex}.brand strong{letter-spacing:-.01em;font-size:15px}.brand small{color:var(--muted);margin-top:2px;font-size:11px}.primary{background:var(--green);color:#fff;cursor:pointer;border:0;border-radius:10px;padding:13px 20px;font-weight:700;box-shadow:0 4px 14px #143f3226}.primary:hover{background:#153d33}.primary.compact{padding:10px 15px;font-size:13px}.hero{justify-content:space-between;align-items:flex-end;gap:20px;max-width:1440px;margin:auto;padding:54px clamp(20px,6vw,92px) 38px;display:flex}.eyebrow{color:#698173;letter-spacing:.18em;margin:0 0 9px;font-size:10px;font-weight:800}.hero h1{letter-spacing:-.045em;margin:0;font:500 clamp(34px,4.2vw,58px)/1.03 Georgia,Times New Roman,serif}.subtitle{color:var(--muted);margin:14px 0 0;font-size:15px}.sync-pill{color:#476258;background:#fbfdf9;border:1px solid #dfe8e0;border-radius:100px;flex:none;padding:8px 12px;font-size:11px;font-weight:700}.sync-pill i{background:#57a472;border-radius:50%;width:7px;height:7px;margin-right:7px;display:inline-block;box-shadow:0 0 0 4px #57a4721c}.summary-grid{grid-template-columns:repeat(3,1fr);gap:12px;max-width:1260px;margin:0 auto 26px;padding:0 20px;display:grid}.summary-card{border:1px solid var(--line);background:#fff;border-radius:15px;grid-template-columns:1fr auto;min-height:118px;padding:20px 22px;display:grid}.summary-card.urgent{background:#fffcf8;border-color:#e8dbcf}.summary-card>div{align-items:center;gap:9px;display:flex}.summary-card p{color:var(--muted);margin:0;font-size:12px;font-weight:700}.summary-icon{width:26px;height:26px;color:var(--green);background:#edf3ed;border-radius:8px;place-items:center;font-weight:800;display:grid}.summary-card strong{grid-area:1/2/3;align-self:center;font:500 34px Georgia,serif}.summary-card small{color:#8a928f;align-self:end;font-size:10px}.operations-command{max-width:1260px;margin:0 auto 26px;padding:34px 20px 0}.operations-command>header{justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:16px;display:flex}.operations-command h1{letter-spacing:-.035em;margin:0;font:500 clamp(30px,4vw,48px)/1.05 Georgia,Times New Roman,serif}.operations-command header p:last-child{color:var(--muted);margin:9px 0 0;font-size:13px}.operations-stats{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.operations-stats button{border:1px solid var(--line);text-align:left;min-height:104px;color:var(--ink);cursor:pointer;background:#fff;border-radius:14px;grid-template-columns:1fr auto;gap:5px 12px;padding:17px;display:grid}.operations-stats button:hover{border-color:#b9c9c1;box-shadow:0 7px 22px #17392f0d}.operations-stats span{color:var(--muted);font-size:11px;font-weight:800}.operations-stats strong{grid-area:1/2/3;align-self:center;font:500 31px Georgia,serif}.operations-stats small{color:#84908b;font-size:10px}.next-action{text-align:left;color:#5d4d20;cursor:pointer;background:#fff9df;border:1px solid #e4d8ad;border-radius:12px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;width:100%;margin-top:10px;padding:13px 16px;display:grid}.next-action span{color:#fff;text-transform:uppercase;background:#9b7a18;border-radius:7px;padding:5px 8px;font-size:9px;font-weight:800}.next-action strong{font-size:13px}.next-action small{color:#7c6d42;font-size:10px}.workspace{max-width:1260px;margin:auto;padding:0 20px 70px}.toolbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.board-label{align-items:center;gap:10px;display:flex}.board-label>div{flex-direction:column;gap:2px;display:flex}.board-label strong{font:600 14px Georgia,serif}.board-label small{color:var(--muted);font-size:9px}.view-switch{border:1px solid var(--line);background:#fff;border-radius:11px;padding:4px;display:flex}.view-switch button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:8px 15px;font-size:10px;font-weight:800}.view-switch button.active{color:#fff;background:var(--green)}.tabs{scrollbar-width:none;border:1px solid var(--line);background:#fff;border-radius:12px;flex:1;gap:3px;padding:4px;display:flex;overflow-x:auto}.tabs button{white-space:nowrap;color:#707976;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:9px 11px;font-size:11px;font-weight:700}.tabs button.active{background:var(--green);color:#fff}.tabs button span{opacity:.7;margin-left:6px}.search{border:1px solid var(--line);background:#fff;border-radius:11px;align-items:center;gap:7px;width:250px;padding:0 12px;display:flex}.search input{border:0;outline:0;width:100%;height:42px;font-size:12px}.list-heading{justify-content:space-between;align-items:flex-end;padding:28px 3px 12px;display:flex}.list-heading h2{margin:0;font:500 24px Georgia,serif}.list-heading p{color:var(--muted);margin:4px 0 0;font-size:11px}.list-heading>span{color:#89918e;font-size:10px}.board-heading-actions{align-items:center;gap:10px;display:flex}.board-heading-actions button{color:var(--green);cursor:pointer;background:#fff;border:1px solid #d7dfdb;border-radius:8px;padding:7px 10px;font-size:10px;font-weight:800}.board-save-state.saving{color:#9b7620;font-weight:800}.board-save-state.saved{color:#33805f;font-weight:800}.board-save-state.error{color:#a54b35;font-weight:800}.month-controls{gap:5px;display:flex}.month-controls button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;min-width:34px;height:32px;padding:0 10px;font-size:10px;font-weight:700}.project-list{flex-direction:column;gap:9px;display:flex}.archived-board-view{gap:16px;display:grid}.archived-board-heading{justify-content:space-between;align-items:flex-end;padding:18px 2px 0;display:flex}.archived-board-heading h3{margin:0;font:500 25px Georgia,serif}.archived-board-heading>span{color:var(--muted);font-size:11px}.archived-project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.archived-project-grid>button{border:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;border-radius:13px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0;padding:15px;display:grid}.archived-project-grid>button>span:nth-child(2){gap:4px;min-width:0;display:grid}.archived-project-grid strong,.archived-project-grid small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.archived-project-grid small,.archived-project-grid time{color:var(--muted);font-size:10px}.board-scroll-region{position:relative}.kanban-board{scroll-snap-type:x proximity;scrollbar-color:#bdc8c2 transparent;grid-template-columns:repeat(7,minmax(268px,1fr));gap:12px;padding:2px 2px 24px;display:grid;overflow-x:auto}.mobile-stage-sticky{display:none}.desktop-stage-sticky{z-index:18;visibility:hidden;opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f8faf8f2;border:1px solid #dbe3df;border-radius:12px;height:52px;margin-bottom:-52px;transition:opacity .16s,transform .16s,visibility .16s;position:sticky;top:8px;overflow:clip;transform:translateY(-8px);box-shadow:0 8px 22px #13231f14}.desktop-stage-sticky.visible{visibility:visible;opacity:1;transform:translateY(0)}.desktop-stage-track{grid-template-columns:repeat(7,minmax(268px,1fr));gap:12px;width:max(100%,1948px);padding:8px 2px;transition:transform 50ms linear;display:grid}.desktop-stage-item{border-right:1px solid #e1e7e3;align-items:center;gap:8px;min-width:0;min-height:34px;padding:0 12px;display:flex}.desktop-stage-item strong{text-overflow:ellipsis;white-space:nowrap;flex:1;font:600 14px/1.2 Georgia,serif;overflow:hidden}.desktop-stage-item b{color:#66736d;background:#fff;border-radius:7px;place-items:center;min-width:24px;height:24px;font-size:9px;display:grid}.kanban-board.dragging-board{scroll-snap-type:none;cursor:grabbing}.kanban-column{scroll-snap-align:start;background:#eef1ee;border:1px solid #e0e5e2;border-radius:15px;min-height:490px;padding:10px;transition:background .15s,border-color .15s}.kanban-column.drag-over{background:#e7ede8;border-color:#839c90}.column-head{align-items:center;gap:8px;min-height:39px;padding:2px 4px 10px;display:flex}.column-head h3{flex:1;margin:0;font:600 12px/1.25 Georgia,serif}.column-head b{color:#6f7a75;background:#fff;border-radius:7px;place-items:center;min-width:22px;height:22px;font-size:9px;display:grid}.status-dot{background:#789386;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 3px #78938618}.status-1,.status-2{background:#5b8e78}.status-3{background:#b99a4c}.status-4,.status-5{background:#c77448}.status-6{background:#63776e}.column-cards{flex-direction:column;gap:9px;min-height:420px;display:flex}.column-empty{color:#8a948f;border:1px dashed #ccd5d0;border-radius:11px;place-items:center;min-height:78px;font-size:9px;display:grid}.kanban-card{text-align:left;cursor:grab;touch-action:none;background:#fff;border:1px solid #dce3df;border-radius:12px;flex-direction:column;gap:11px;width:100%;min-height:190px;padding:15px;transition:transform .15s,opacity .15s,box-shadow .15s;display:flex;position:relative;box-shadow:0 2px 7px #17392f0b}.kanban-card:hover{transform:translateY(-1px);box-shadow:0 8px 20px #17392f12}.kanban-card:active{cursor:grabbing}.kanban-card.dragging{opacity:.35;transform:rotate(1deg)scale(.98)}.drag-handle{color:#a3ada8;letter-spacing:-3px;font-size:12px;position:absolute;top:12px;right:12px}.card-top{grid-template-columns:auto 1fr;align-items:center;gap:10px;padding-right:16px;display:grid}.card-top .avatar{border-radius:10px;align-self:center;width:34px;height:34px;font-size:10px}.card-top>span:last-child{flex-direction:column;gap:3px;min-width:0;display:flex}.card-top strong{overflow-wrap:anywhere;white-space:normal;font:600 14px/1.12 Georgia,serif}.card-top strong.board-title-long{font-size:12.5px}.card-top strong.board-title-compact{font-size:11.5px;line-height:1.16}.card-top small{color:#909995;font-size:8px}.card-address{-webkit-line-clamp:2;color:var(--muted);-webkit-box-orient:vertical;font-size:9px;line-height:1.45;display:-webkit-box;overflow:hidden}.card-areas{-webkit-line-clamp:2;color:#34453f;-webkit-box-orient:vertical;min-height:30px;font-size:9px;line-height:1.5;display:-webkit-box;overflow:hidden}.kanban-card .tags{min-height:23px}.kanban-card .tags i{font-size:8px}.card-footer{border-top:1px solid #edf0ee;justify-content:space-between;align-items:center;margin-top:auto;padding-top:10px;display:flex}.card-footer b{color:var(--green);font-size:9px}.drop-line{background:#6d9482;border-radius:4px;height:4px;margin:2px 0;box-shadow:0 0 0 3px #6d94821c}.calendar-shell{border:1px solid var(--line);background:#fff;border-radius:16px;grid-template-columns:260px minmax(0,1fr) 285px;align-items:start;min-height:900px;display:grid;overflow:visible}.mobile-calendar-controls,.mobile-panel-close,.mobile-panel-scrim{display:none}.calendar-cancel-drop{z-index:92;color:#733c33;pointer-events:auto;background:#fff7f4f2;border:2px dashed #bd6b5e;border-radius:14px;grid-template-columns:auto 1fr;align-items:center;gap:2px 10px;min-width:250px;padding:12px 18px;display:grid;position:fixed;bottom:18px;right:50%;transform:translate(50%);box-shadow:0 12px 34px #4b1f1829}.calendar-cancel-drop b{color:#fff;background:#a85243;border-radius:50%;grid-row:1/3;place-items:center;width:32px;height:32px;font-size:20px;display:grid}.calendar-cancel-drop span{font-size:12px;font-weight:800}.calendar-cancel-drop small{opacity:.75;font-size:9px}.calendar-cancel-drop.active{color:#fff;background:#9f493b;border-color:#7d3026;transform:translate(50%)scale(1.04)}.unscheduled-rail{border-right:1px solid var(--line);overscroll-behavior:contain;scrollbar-gutter:stable;background:#f1f3f0;border-radius:16px 0 0 16px;height:calc(100dvh - 24px);min-height:0;padding:20px 15px;position:sticky;top:12px;overflow-y:auto}.unscheduled-rail>header{justify-content:space-between;align-items:center;padding:0 3px;display:flex}.unscheduled-rail.prep-return-ready{outline-offset:-3px;outline:2px dashed #d66b3c}.unscheduled-rail.prep-return-hover{background:#fff0e5;outline:3px solid #d66b3c}.rail-header-actions{align-items:center;gap:6px;display:flex}.rail-header-actions>button{width:27px;height:27px;color:var(--green);cursor:pointer;background:#fff;border:1px solid #d8dfdb;border-radius:8px;place-items:center;font-size:17px;display:grid}.rail-search{background:#fff;border:1px solid #d5ddd9;border-radius:9px;align-items:center;gap:7px;margin:12px 0 4px;padding:8px 9px;display:flex}.rail-search input{background:0 0;border:0;outline:0;width:100%;min-width:0;font-size:11px}.rail-search button{color:#53635c;cursor:pointer;background:#e8eeeb;border:0;border-radius:50%;flex:none;width:22px;height:22px}.unscheduled-rail h3{margin:0;font:600 17px Georgia,serif}.unscheduled-rail header b{background:#fff;border-radius:8px;place-items:center;min-width:25px;height:25px;font-size:10px;display:grid}.rail-help{color:var(--muted);margin:12px 3px 18px;font-size:9px;line-height:1.55}.rail-cards{flex-direction:column;gap:8px;display:flex}.rail-card{text-align:left;cursor:grab;background:#fff;border:1px solid #dce3df;border-radius:11px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;min-height:78px;padding:11px;display:grid;box-shadow:0 2px 8px #17392f08}.rail-card.dragging{opacity:.4}.rail-card .avatar{border-radius:9px;align-self:center;width:32px;height:32px;font-size:9px}.rail-card>span:nth-child(2){flex-direction:column;gap:4px;min-width:0;display:flex}.rail-card strong{text-overflow:ellipsis;white-space:nowrap;font:600 12px Georgia,serif;overflow:hidden}.rail-card small{text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:8px;overflow:hidden}.rail-card>b{color:var(--green);font-size:9px}.rail-project-group{border-radius:13px;overflow:hidden}.rail-project-group.has-prep{background:#fff;border:1px solid #dce3df;padding:4px;box-shadow:0 3px 10px #17392f0b}.rail-project-group.has-prep>.rail-card{box-shadow:none;border:0;border-radius:9px 9px 5px 5px}.rail-prep-stack{flex-direction:column;gap:5px;padding:0 7px 7px 23px;display:flex}.rail-prep-docked{min-height:68px;box-shadow:none;border-radius:9px;position:relative}.rail-prep-docked:before{content:"";background:#e0a27f;width:1px;height:9px;position:absolute;top:-9px;left:15px}.calendar-panel{flex-direction:column;min-width:0;display:flex}.calendar-month-banner{border-bottom:1px solid var(--line);background:#fbfcfa;align-items:baseline;gap:9px;min-height:58px;padding:12px 16px;display:flex}.calendar-month-banner span{color:#818b87;text-transform:uppercase;letter-spacing:.1em;font-size:8px;font-weight:800}.calendar-month-banner strong{color:var(--green);font:600 21px Georgia,serif}.calendar-filters{border-bottom:1px solid var(--line);background:#fff;padding:10px 14px;font-size:14px}.calendar-filters.is-filtered{background:#edf5ff;border-bottom-color:#b6d2f2}.calendar-filter-toolbar{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.calendar-filters button,.agenda-filter-notice button{cursor:pointer;background:#fff;border:1px solid #c3d1cb;border-radius:8px;min-height:40px;padding:8px 12px;font-size:14px}.calendar-filters button:focus-visible,.calendar-filters select:focus-visible,.calendar-filters input:focus-visible{outline-offset:2px;outline:3px solid #2563eb}.calendar-filters .calendar-filter-toggle{color:var(--green);font-weight:700}.calendar-filter-status{color:#42554d;flex:1;font-size:14px}.calendar-filters .calendar-filter-clear{color:#174d83;border-color:#9dc0e5;font-weight:700}.calendar-filters .calendar-filter-clear:disabled{opacity:.45;cursor:default}.calendar-filter-chips{flex-wrap:wrap;gap:6px;margin-top:9px;display:flex}.calendar-filters .calendar-filter-chips button{color:#174d83;border-color:#a9c7e7;border-radius:18px;min-height:32px;padding:5px 10px}.calendar-filter-panel{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:14px;display:grid}.calendar-filter-panel fieldset{background:#fff;border:1px solid #cad8d0;border-radius:9px;min-width:0;margin:0;padding:10px 12px}.calendar-filter-panel legend{color:var(--green);padding:0 5px;font-size:14px;font-weight:700}.calendar-filter-options{overscroll-behavior:contain;flex-direction:column;gap:2px;max-height:280px;display:flex;overflow-y:auto}.calendar-filter-panel label{min-height:38px;color:var(--ink);letter-spacing:normal;text-transform:none;cursor:pointer;flex-direction:row;align-items:center;gap:9px;font-size:14px;font-weight:400;display:flex}.calendar-filter-panel input[type=checkbox]{appearance:auto;width:18px;height:18px;accent-color:var(--green);flex-shrink:0;margin:0}.calendar-filter-panel label:has(input:checked){color:#164e3d;font-weight:700}.calendar-filter-panel label i{border-radius:50%;flex-shrink:0;width:12px;height:12px}.calendar-filter-team p{color:#55665e;margin:8px 0 3px;font-size:14px;font-weight:700}.calendar-filter-unassigned{border-top:1px solid var(--line);margin-top:10px;padding-top:9px}.calendar-filter-panel .calendar-filter-confirmation{flex-direction:column;align-items:stretch}.calendar-filter-confirmation select{width:100%;min-width:0;font:inherit;background:#fff;border:1px solid #bbc9c2;border-radius:7px;padding:9px}.calendar-filter-help{color:#52675a;grid-column:1/-1;margin:0;font-size:14px;line-height:1.5}.calendar-filters .calendar-filter-done{background:var(--green);color:#fff;justify-self:start;padding-inline:24px}.calendar-filter-hidden{color:#425d7b;padding:3px 1px;font-size:11px;line-height:1.3}.agenda-filter-notice{color:#174d83;background:#edf5ff;border-radius:8px;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:10px;padding:10px;font-size:14px;display:flex}@media (width<=600px){.calendar-filters{padding:9px 10px}.calendar-filter-panel{grid-template-columns:minmax(0,1fr)}.calendar-filter-status{flex-basis:100%;order:3}.calendar-filters .calendar-filter-clear{margin-left:auto}}.calendar-status{border-bottom:1px solid var(--line);min-height:44px;color:var(--muted);align-items:center;gap:7px;padding:0 14px;font-size:9px;font-weight:700;display:flex}.connection-dot{background:#c76c4a;border-radius:50%;width:8px;height:8px;display:inline-block;box-shadow:0 0 0 3px #c76c4a18}.connection-dot.connected{background:#57a472;box-shadow:0 0 0 3px #57a4721c}.availability-key{align-items:center;gap:6px;margin-left:auto;display:flex}.availability-key i{background:#f4f8e9;border:1px solid #bfd0a5;border-radius:3px;width:9px;height:9px}.calendar-weekdays{z-index:12;border-bottom:1px solid var(--line);background:#fbfcfa;grid-template-columns:repeat(7,1fr);display:grid;position:sticky;top:0;box-shadow:0 5px 12px #17392f0d}.calendar-weekdays span{text-align:center;color:#77817d;text-transform:uppercase;letter-spacing:.08em;padding:9px;font-size:8px;font-weight:800}.calendar-grid{flex:1;grid-template-rows:repeat(6,minmax(105px,1fr));grid-template-columns:repeat(7,minmax(100px,1fr));display:grid}.calendar-day{cursor:pointer;background:#fff;border-bottom:1px solid #edf0ee;border-right:1px solid #edf0ee;min-width:0;padding:8px;transition:background .15s,box-shadow .15s}.calendar-day.current-day{z-index:1;background:#f2faf6;position:relative;box-shadow:inset 0 0 0 2px #2d7d61}.calendar-day.current-day>header span{color:#fff;background:#2d7d61;box-shadow:0 2px 8px #2d7d6140}.calendar-day:nth-child(7n){border-right:0}.calendar-day.outside{color:#a6adaa;background:#fafbfa}.calendar-day.available{background:#fbfdf6}.calendar-day.accepting:hover{z-index:1;background:#edf5e5;position:relative;box-shadow:inset 0 0 0 2px #8ca66f}.calendar-day.drag-hover{z-index:2;background:#dfeeda;position:relative;box-shadow:inset 0 0 0 3px #688f58,0 5px 14px #385b2b24}.calendar-day>header{justify-content:space-between;align-items:center;min-height:18px;margin-bottom:5px;display:flex}.calendar-day>header span{border-radius:7px;place-items:center;width:22px;height:22px;font-size:9px;font-weight:700;display:grid}.calendar-day>header small{color:#789050;text-transform:uppercase;font-size:7px;font-weight:800}.photo-editor{min-width:0}.photo-editor>label{gap:8px;display:grid}.photo-upload{text-transform:none;letter-spacing:normal;margin:12px 0}.photo-dropzone{color:#20493d;text-align:center;cursor:pointer;background:#f0f6f3;border:2px dashed #91ada2;border-radius:12px;flex-direction:column;align-items:center;gap:10px;width:100%;min-height:150px;padding:22px 16px;display:flex}.photo-dropzone:hover,.photo-dropzone.dragging{background:#dfefe7;border-color:#20493d}.photo-dropzone:focus-visible{outline-offset:3px;outline:3px solid #34836c}.photo-dropzone:disabled{opacity:.65;cursor:progress}.photo-dropzone b{font-size:17px}.photo-dropzone span{font-size:15px}.photo-dropzone small{font-size:13px;line-height:1.5}.photo-upload p{font-size:14px;line-height:1.5}.photo-upload-errors{color:#a33221;overflow-wrap:anywhere;padding-left:20px;font-size:14px}.day-events{flex-direction:column;gap:4px;display:flex}.day-event{text-align:left;cursor:pointer;border:0;border-radius:6px;flex-direction:column;gap:2px;min-width:0;padding:5px 24px 5px 6px;text-decoration:none;display:flex;position:relative}.day-event.spans-days{z-index:3}.day-event.continues-before{border-top-left-radius:0;border-bottom-left-radius:0;margin-left:-12px;padding-left:12px}.day-event.continues-after{border-top-right-radius:0;border-bottom-right-radius:0;width:calc(100% + 12px)}.appointment-menu{z-index:6;color:inherit;font-style:normal;position:absolute;top:2px;right:3px}.appointment-menu>b{letter-spacing:-2px;cursor:pointer;border-radius:4px;padding:1px 3px;font-size:8px;line-height:1;display:block}.appointment-menu>b:hover{background:#ffffff40}.appointment-menu>em{z-index:8;min-width:86px;color:var(--ink);cursor:pointer;background:#fff;border:1px solid #d6ded9;border-radius:8px;padding:8px 10px;font-size:10px;font-style:normal;font-weight:800;position:absolute;top:15px;right:0;box-shadow:0 8px 22px #17392f26}.appointment-menu>em:hover{background:#eef4f1}.calendar-sync-alert{z-index:5;background:#ffd66b;border:1px solid #fff8;border-radius:50% 50% 50% 3px;place-items:center;width:15px;height:15px;font-weight:900;line-height:1;display:grid;position:absolute;top:3px;right:20px;transform:rotate(-5deg);box-shadow:0 2px 5px #35200038;color:#6e4300!important;font-size:10px!important;overflow:visible!important}.calendar-sync-alert:after{content:"";background:#ffd66b;border-radius:0 0 0 2px;width:5px;height:5px;position:absolute;bottom:-3px;left:0;transform:skewY(-30deg)}.rail-project-group.rail-drag-over{box-shadow:0 -3px #688f58}.day-event strong{font-size:7px}.day-event span{text-overflow:ellipsis;white-space:nowrap;color:inherit;font-size:8px;overflow:hidden}.day-event.unassigned{color:#30423c;border:1px solid #cfd7d3}.project-event{color:#fff;background:var(--green)}.google-event{color:#51605a;background:#ebefec}.google-event.external-import{color:#214b72;border:1px solid #b8d8f4}.project-card{text-align:left;border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:14px;grid-template-columns:auto 1fr auto;align-items:center;gap:17px;width:100%;min-height:132px;padding:19px 22px;transition:all .2s;display:grid}.project-card:hover{border-color:#c8d5ce;transform:translateY(-1px);box-shadow:0 8px 26px #17392f0b}.avatar{width:41px;height:41px;color:var(--green);background:#e7ece7;border-radius:12px;align-self:start;place-items:center;font:700 13px Georgia,serif;display:grid}.project-main{flex-direction:column;gap:8px;min-width:0;display:flex}.project-title{align-items:center;gap:9px;display:flex}.project-title strong{font:600 18px Georgia,serif}.project-title em{color:#a85232;text-transform:uppercase;background:#fff0e9;border-radius:6px;padding:4px 7px;font-size:9px;font-style:normal;font-weight:800}.address{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.tags{flex-wrap:wrap;gap:5px;display:flex}.tags i{color:#65706c;background:#f1f3f1;border-radius:7px;padding:5px 8px;font-size:9px;font-style:normal}.tags i.need{color:#5e692d;background:#f0f4dd}.project-meta{flex-direction:column;align-items:flex-end;gap:11px;min-width:126px;display:flex}.project-meta small{color:#8a928f;font-size:9px}.completion{color:#a65334;text-transform:uppercase;font-size:9px;font-weight:800}.completion.done{color:#398261}.project-meta b{color:var(--green);font-size:10px}.empty{min-height:250px;color:var(--muted);border:1px dashed #d6deda;border-radius:15px;align-content:center;place-items:center;gap:8px;display:grid}.empty span{width:38px;height:38px;color:var(--green);background:#e9f0e9;border-radius:50%;place-items:center;display:grid}.empty h3,.empty p{margin:0}.empty h3{color:var(--ink);font:500 18px Georgia,serif}.empty p{font-size:11px}.drawer-backdrop,.modal-backdrop{z-index:20;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#13231f66;position:fixed;inset:0}.drawer{background:var(--paper);width:min(720px,94vw);animation:.25s enter;position:absolute;inset:0 0 0 auto;overflow-y:auto;box-shadow:-20px 0 50px #13231f24}@keyframes enter{0%{opacity:.5;transform:translate(50px)}}.drawer-head{color:#fff;background:var(--green);padding:34px 40px 28px;position:relative}.drawer-head .eyebrow{color:#bad0c5}.drawer-head h2{margin:0;font:500 33px Georgia,serif}.drawer-head .drawer-project-client{color:#f4faf7;margin:8px 0 0;font-size:14px}.drawer-head .drawer-project-client strong{color:#fff}.drawer-head>p:last-child,.drawer-head .drawer-project-address{color:#c9d9d3;margin:8px 0 0;font-size:12px}.drawer-view-switch{background:#ffffff17;border-radius:999px;gap:3px;margin-top:18px;padding:4px;display:inline-flex}.drawer-view-switch button{color:#dceae4;cursor:pointer;background:0 0;border:0;border-radius:999px;min-height:32px;padding:7px 14px;font-size:10px;font-weight:800;position:relative}.drawer-view-switch button.active{color:var(--green);background:#fff;box-shadow:0 4px 12px #102d2526}.drawer-view-switch button b{border:2px solid var(--green);color:#fff;background:#d96b43;border-radius:999px;place-items:center;min-width:19px;height:19px;padding:0 5px;font-size:9px;display:grid;position:absolute;top:-7px;right:-5px}.close{cursor:pointer;background:0 0;border:0;font-size:27px}.drawer-head .close{color:#fff;position:absolute;top:24px;right:28px}.brief-stage-control,.schedule-stage-control{align-items:center;display:flex}.brief-stage-control{position:absolute;top:24px;right:70px}.brief-stage-control span,.schedule-stage-control span{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.brief-stage-control select,.schedule-stage-control select{color:#fff;text-overflow:ellipsis;background:#ffffff17;border:1px solid #ffffff38;border-radius:7px;width:104px;min-height:26px;padding:0 20px 0 7px;font-size:8px;font-weight:800}.schedule-stage-control{z-index:2;position:absolute;top:24px;right:64px}.schedule-stage-control span{color:#68736f}.schedule-stage-control select{color:var(--green);background:#f4f7f5;border-color:#d5ded9}.drawer-body{padding:0 32px 40px}.management-notes-panel{flex-direction:column;min-height:520px;padding:30px 0;display:flex}.management-notes-panel>header{border-bottom:1px solid var(--line);padding-bottom:18px}.management-notes-panel>header .eyebrow{color:#6c8178}.management-notes-panel>header h3{margin:3px 0 5px;font:600 25px Georgia,serif}.management-notes-panel>header span{color:var(--muted);font-size:11px}.management-note-thread{flex-direction:column;flex:1;gap:12px;padding:22px 0;display:flex}.management-note-thread article{color:#fff;background:var(--green);border-radius:16px 16px 4px;align-self:flex-end;max-width:86%;padding:13px 15px;box-shadow:0 6px 18px #17392f16}.management-note-thread article p{white-space:pre-wrap;margin:0;font-size:13px;line-height:1.55}.management-note-thread article time{color:#c8dbd3;text-align:right;margin-top:7px;font-size:9px;display:block}.management-note-empty{text-align:center;color:var(--muted);gap:5px;margin:auto;padding:36px;display:grid}.management-note-empty b{color:var(--ink);font:600 18px Georgia,serif}.management-note-empty span{font-size:11px}.management-note-composer{background:#fff;border:1px solid #d6e1db;border-radius:16px;gap:9px;padding:14px;display:grid;position:sticky;bottom:0;box-shadow:0 -8px 30px #17392f0d}.management-note-composer textarea{min-height:95px;box-shadow:none;border:0;margin:0;padding:3px;font-size:13px}.management-note-composer>div{justify-content:space-between;align-items:center;gap:12px;display:flex}.management-note-composer small{color:var(--muted);font-size:9px}.management-note-composer button{min-height:38px;padding:9px 17px}.form-section{border-bottom:1px solid var(--line);padding:30px 0}.section-title{align-items:flex-start;gap:12px;margin-bottom:19px;display:flex}.section-title>span{background:var(--lime);border-radius:8px;place-items:center;width:28px;height:28px;font:700 10px Georgia,serif;display:grid}.section-title h3,.section-title p{margin:0}.section-title h3{font:600 18px Georgia,serif}.section-title p{color:var(--muted);margin-top:3px;font-size:10px}.prep-section-title>div{flex:1}.add-prep-button{color:#fff;background:var(--green);cursor:pointer;border:1px solid #d7dfdb;border-radius:9px;flex:none;width:30px;height:30px;margin-left:auto;font-size:20px;line-height:1}.add-prep-button:hover{background:#285e4e}.form-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.form-grid label,.modal label{color:#65706c;text-transform:uppercase;letter-spacing:.05em;font-size:9px;font-weight:800}.form-grid label.wide{grid-column:1/-1}input,textarea,select{width:100%;color:var(--ink);text-transform:none;letter-spacing:0;background:#fff;border:1px solid #dce3df;border-radius:9px;outline:0;margin-top:6px;padding:11px 12px;font-size:12px;font-weight:400}input:focus,textarea:focus,select:focus{border-color:#769486;box-shadow:0 0 0 3px #76948616}textarea{resize:vertical;min-height:72px}.checks{flex-wrap:wrap;gap:7px;margin-top:7px;display:flex}.checks button{cursor:pointer;background:#fff;border:1px solid #dce3df;border-radius:8px;padding:8px 10px;font-size:10px}.checks button.checked{color:#4f5d1c;background:#eff4dd;border-color:#c7d59b}.schedule-section{background:#fbfdf3;border:1px solid #d9e1c4;border-radius:14px;margin-top:28px;padding:22px}.sync-status{color:#4f6e61;align-items:center;gap:6px;margin:13px 0 0;font-size:9px;font-weight:700;display:flex}.sync-status i{background:#57a472;border-radius:50%;width:7px;height:7px}.calendar-button{color:#35421a;cursor:pointer;background:#dfe9b5;border:0;border-radius:9px;justify-content:space-between;width:100%;margin-top:15px;padding:13px 17px;font-size:11px;font-weight:800;display:flex}.drawer-actions{justify-content:space-between;align-items:center;gap:12px;padding-top:25px;display:flex}.drawer-action-buttons{align-items:center;gap:9px;display:flex}.danger-link{color:#a34f37;cursor:pointer;background:0 0;border:0;font-size:10px;text-decoration:underline}.confirm-delete{background:#fff7f3;border:1px solid #efcabb;border-radius:10px;flex:1;align-items:center;gap:8px;padding:12px;display:flex}.confirm-delete p{color:#76584d;flex:1;margin:0;font-size:9px;line-height:1.5}.confirm-delete button{cursor:pointer;background:#fff;border:1px solid #e6c7ba;border-radius:7px;padding:8px 10px;font-size:9px}.confirm-delete button.danger{color:#fff;background:#a7452e;border-color:#a7452e}.modal{background:var(--paper);border-radius:18px;width:min(460px,100vw - 32px);margin:8vh auto;padding:32px;position:relative;box-shadow:0 24px 70px #10211c3d}.modal .close{position:absolute;top:14px;right:18px}.modal h2{margin:0;font:500 28px Georgia,serif}.modal>p:not(.eyebrow){color:var(--muted);margin:8px 0 24px;font-size:11px}.modal label{margin-top:13px;display:block}.modal .primary{width:100%;margin-top:22px}.schedule-modal{width:min(760px,100vw - 32px);margin-top:4vh}.appointment-preview{border:1px solid var(--line);background:#fff;border-radius:11px;flex-direction:column;gap:6px;padding:14px;display:flex}.appointment-preview strong{font:600 14px Georgia,serif}.appointment-preview span{color:var(--muted);font-size:9px;line-height:1.45}.dispatch-details-toggle{color:#294a40;cursor:pointer;background:#f7faf8;border:1px solid #d8e0dc;border-radius:9px;justify-content:space-between;align-items:center;width:100%;margin-top:10px;padding:11px 13px;font-size:10px;font-weight:800;display:flex}.dispatch-details-toggle b{font-size:16px}.dispatch-details{background:#fff;border:1px solid #dbe3df;border-radius:10px;grid-template-columns:1fr 1fr;gap:8px;max-height:300px;margin-top:8px;padding:10px;display:grid;overflow-y:auto}.dispatch-details article{background:#f5f8f6;border-radius:8px;flex-direction:column;gap:4px;min-width:0;padding:10px;display:flex}.dispatch-details small{color:#6d7d76;letter-spacing:.08em;text-transform:uppercase;font-size:7px;font-weight:800}.dispatch-details strong,.dispatch-details p,.dispatch-details span{color:#294239;margin:0;font-size:9px;line-height:1.5}.dispatch-details .dispatch-prep{color:#844424;background:#ffeadc;border-radius:6px;padding:5px 7px;font-weight:800}.dispatch-details>button{grid-column:1/-1}.schedule-fields{grid-template-columns:1fr 1fr;gap:13px;margin-top:18px;display:grid}.schedule-fields label.wide{grid-column:1/-1}.schedule-fields label small{color:#89918e;text-transform:none;letter-spacing:0;margin:7px 2px 0;font-size:8px;font-weight:400;line-height:1.45;display:block}.schedule-confirmation{color:#60706a;background:#eef2ef;border-radius:9px;align-items:center;gap:8px;margin-top:18px;padding:10px 12px;font-size:9px;font-weight:700;display:flex}.primary:disabled{opacity:.55;cursor:wait}.toast{z-index:50;color:#fff;background:#152b25;border-radius:10px;padding:12px 17px;font-size:11px;position:fixed;bottom:25px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #122b2342}.installer-brief-page{background:#eef2ef;min-height:100vh;padding:28px 16px 60px}.installer-brief{background:#fff;border:1px solid #d5ddd8;border-radius:20px;width:min(860px,100%);margin:0 auto;overflow:hidden;box-shadow:0 18px 50px #183a3020}.installer-brief>header{color:#fff;background:var(--green);padding:34px}.installer-brief>header .eyebrow{color:#cfe2d9}.installer-brief h1{margin:5px 0 7px;font:600 clamp(30px,6vw,48px) Georgia,serif}.installer-brief>header>p:not(.eyebrow){color:#dce8e3;margin:0}.installer-brief>header .installer-project-client{color:#f4faf7;margin:10px 0 6px;font-size:15px}.installer-brief>header .installer-project-client strong{color:#fff}.installer-brief-status{flex-wrap:wrap;gap:8px;margin-top:20px;display:flex}.installer-brief-status span{color:#173d32;background:#e5efc0;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:800}.installer-brief-highlight{background:#dfe5e1;grid-template-columns:1.5fr 1fr 1fr;gap:1px;display:grid;padding:0!important}.installer-brief-highlight>div{background:#f8faf9;min-width:0;padding:20px}.installer-brief-highlight small{color:#73817b;letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px;font-size:9px;font-weight:800;display:block}.installer-brief-highlight strong,.installer-brief-highlight a{color:#223c34;font-size:13px;line-height:1.5;display:block}.installer-client-phone{color:#53665f;margin-top:4px;font-size:12px;font-weight:700;line-height:1.45;display:block}.installer-brief>section{border-bottom:1px solid #e5eae7;padding:24px 34px}.installer-brief h2{margin:0 0 10px;font:600 21px Georgia,serif}.installer-brief section p{color:#40534c;margin:0;font-size:14px;line-height:1.7}.preserve-lines{white-space:pre-wrap}.linked-text{white-space:pre-wrap;overflow-wrap:anywhere}.linked-text a{color:#176b55;text-underline-offset:3px;font-weight:800;text-decoration:underline;text-decoration-thickness:1px}.linked-text a:hover{color:#0f493b}.brief-link{color:#174c3d;background:#eaf1ed;border-radius:8px;margin:12px 10px 0 0;padding:9px 11px;font-size:11px;font-weight:800;text-decoration:none;display:inline-flex}.brief-tags{flex-wrap:wrap;gap:7px;margin-top:14px;display:flex}.brief-tags span{color:#576325;background:#eff3dc;border-radius:7px;padding:7px 9px;font-size:10px;font-weight:700}.installer-prep-section{background:#fff8f3}.installer-access-section{background:#fff8e8;border-left:6px solid #d7a34b}.installer-request-section{background:#f0f6f3;border-left:6px solid #769486}.installer-prep-item{border:1px solid #edb899;border-left:4px solid var(--orange);color:#784127;background:#fff;border-radius:10px;gap:4px;margin-top:10px;padding:13px;display:grid}.installer-prep-item span,.installer-prep-item small{font-size:11px;line-height:1.5}.installer-prep-item small{color:#8d654f}.brief-resource-grid{flex-wrap:wrap;display:flex}.installer-photo-section{background:#f7faf8}.installer-photo-heading{justify-content:space-between;align-items:start;gap:18px;margin-bottom:14px;display:flex}.installer-photo-heading h2{margin-bottom:4px}.installer-photo-heading span{color:#2f5a4d;background:#e2eee8;border-radius:999px;flex:none;padding:6px 9px;font-size:10px;font-weight:800}.installer-photo-gallery,.project-photo-gallery{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.installer-photo-gallery a,.project-photo-gallery a{background:#e8eeeb;border:1px solid #d7e0db;border-radius:11px;min-width:0;text-decoration:none;position:relative;overflow:hidden;box-shadow:0 4px 14px #17392f12}.installer-photo-gallery img,.project-photo-gallery img{aspect-ratio:4/3;object-fit:cover;background:#e8eeeb;width:100%;display:block}.installer-photo-gallery a span,.project-photo-gallery a span{color:#fff;text-transform:none;letter-spacing:0;background:#173d32d9;border-radius:7px;padding:5px 7px;font-size:8px;font-weight:800;position:absolute;bottom:7px;right:7px}.project-photo-gallery{grid-template-columns:repeat(auto-fill,minmax(115px,1fr));margin-top:9px}.project-attachments{gap:10px;margin-top:9px;display:grid}.project-document-list,.installer-document-list{gap:8px;display:grid}.project-document-list a,.installer-document-list a{color:#29483f;text-transform:none;letter-spacing:0;background:#fff;border:1px solid #d9e1dd;border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px;text-decoration:none;display:grid}.project-document-list i,.installer-document-list i{color:#fff;background:#a94a3d;border-radius:6px;padding:6px;font-size:8px;font-style:normal;font-weight:900}.project-document-list b,.installer-document-list b{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.project-document-list span,.installer-document-list span{color:#2f6a59;font-size:9px;font-weight:800}.installer-document-section{background:#fbfaf7}.installer-document-list a{padding:14px}.installer-document-list b{font-size:12px}.installer-brief footer{color:#718079;background:#f7f9f8;padding:18px 34px;font-size:10px}@media (width<=680px){.installer-brief-page{padding:0}.installer-brief{border:0;border-radius:0}.installer-brief>header,.installer-brief>section{padding:24px 20px}.installer-brief-highlight{grid-template-columns:1fr}.installer-photo-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}.tags i.staffing{color:#2d5578;background:#e8f1f8}.tags i.prep-linked{color:#8b431f;background:#ffeadc;box-shadow:inset 0 0 0 1px #efb38d}.kanban-card-shell{min-width:0}.kanban-card-shell.has-prep{background:#fffaf6;border:1px solid #ead7cc;border-radius:13px;padding:8px}.kanban-card-shell.has-prep>.kanban-card{margin:0}.kanban-docked-prep{gap:6px;margin-top:7px;display:grid}.docked-prep{border:1px solid #edb899;border-left:4px solid var(--orange);color:#7b3f26;cursor:grab;background:#fff3eb;border-radius:9px;flex-direction:column;gap:3px;padding:9px 10px;display:flex}.kanban-docked-prep .docked-prep{text-align:left;width:100%}.docked-prep b{text-transform:uppercase;letter-spacing:.04em;font-size:9px}.docked-prep small{font-size:8px;line-height:1.35}.docked-prep.done{color:#346044;background:#edf7ef;border-color:#b9d2be #b9d2be #b9d2be #4a9364}.prep-rail-card{background:#fff8f3;border-color:#edb899}.prep-rail-card>b{color:#b65830}.prep-avatar,.prep-event{color:#fff;background:var(--orange)}.prep-scheduled-card{border-color:#edb899;border-left:4px solid var(--orange);cursor:pointer;background:#fff8f3;min-height:165px}.prep-scheduled-card:hover{box-shadow:0 8px 20px #9f4d2418}.prep-scheduled-time{color:#8a4a2d;font-size:9px;font-weight:800}.prep-scheduled-card .prep-tag{color:#fff;background:var(--orange)}.prep-scheduled-card .card-footer span{color:#7b5a4a;font-size:9px}.calendar-item-backdrop{z-index:70;place-items:center;padding:18px;display:grid}.calendar-item-card{background:#fff;border:1px solid #dce3df;border-radius:18px;width:min(520px,100%);padding:26px;position:relative;box-shadow:0 24px 70px #102c2352}.calendar-item-card>.close{position:absolute;top:14px;right:14px}.calendar-item-heading{grid-template-columns:auto 1fr;align-items:center;gap:13px;padding-right:30px;display:grid}.calendar-item-heading h3{margin:2px 0 0;font:600 21px/1.2 Georgia,serif}.calendar-item-color{border-radius:6px;width:12px;height:48px}.calendar-item-details{gap:12px;margin:22px 0;display:grid}.calendar-item-details div{border-bottom:1px solid #edf0ee;padding-bottom:11px}.calendar-item-details dt{color:#87918d;text-transform:uppercase;letter-spacing:.08em;margin-bottom:5px;font-size:8px;font-weight:800}.calendar-item-details dd{color:#2e403a;margin:0;font-size:11px;line-height:1.45}.calendar-item-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.external-calendar-button{color:#fff;background:#141414;border-radius:50%;flex:none;justify-content:center;align-items:center;width:50px;height:50px;transition:width .3s,border-radius .3s,background .3s;display:flex;position:relative;overflow:hidden;box-shadow:0 0 0 4px #b4a0ff40}.external-calendar-button img{object-fit:contain;width:18px;height:18px;transition:transform .3s}.external-calendar-button span{opacity:0;white-space:nowrap;font-size:0;position:absolute;bottom:-20px}.external-calendar-button:hover{background:#1f493e;border-radius:50px;width:190px}.external-calendar-button:hover img{transform:translateY(-220%)}.external-calendar-button:hover span{opacity:1;font-size:11px;transition:opacity .3s 50ms;bottom:auto}.day-agenda-card{flex-direction:column;width:min(1080px,100%);height:calc(100dvh - 36px);max-height:calc(100dvh - 36px);padding:22px;display:flex;overflow:hidden}.agenda-top-actions{z-index:2;align-items:center;gap:8px;display:flex;position:absolute;top:13px;right:13px}.agenda-top-actions .close{position:static}.compact-external-button{width:34px;height:34px;box-shadow:0 0 0 3px #b4a0ff33}.compact-external-button img{width:14px;height:14px}.compact-external-button:hover{width:168px}.compact-external-button:hover span{font-size:10px}.agenda-date-header{border-bottom:1px solid var(--line);grid-template-columns:36px 1fr 36px;align-items:center;gap:12px;min-height:68px;padding:0 95px 16px 0;display:grid}.agenda-date-header>button{cursor:pointer;background:#fff;border:1px solid #d8dfdb;border-radius:10px;width:34px;height:34px}.agenda-date-header>div{text-align:center}.agenda-date-header h3{margin:2px 0;font:600 24px Georgia,serif}.agenda-date-header small{color:var(--muted);font-size:11px}.agenda-add-project-row{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:11px 0;display:flex}.agenda-add-project-row>span{color:var(--muted);font-size:10px}.agenda-project-picker{z-index:6;background:#f8faf8;border:1px solid #ccd8d2;border-radius:13px;max-height:calc(100% - 140px);padding:16px;position:absolute;top:116px;left:22px;right:22px;overflow-y:auto;box-shadow:0 18px 42px #17392f29}.agenda-project-picker>header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.agenda-project-picker>header h3{margin:2px 0 0;font:600 20px Georgia,serif}.agenda-project-picker>header>button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:50%;width:30px;height:30px}.agenda-project-picker-actions{grid-template-columns:1fr auto;align-items:end;gap:10px;margin:14px 0;display:grid}.agenda-project-picker-actions label{color:#65706c;text-transform:uppercase;letter-spacing:.05em;font-size:9px;font-weight:800}.agenda-project-picker-actions input{background:#fff;border:1px solid #d6ded9;border-radius:9px;width:100%;margin-top:6px;padding:11px 12px}.agenda-project-results{gap:7px;display:grid}.agenda-project-results>button{text-align:left;cursor:pointer;background:#fff;border:1px solid #dce3df;border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;display:grid}.agenda-project-results>button:hover{background:#f1f5f2;border-color:#789386}.agenda-project-results .avatar{background:#e5ebe7;border-radius:10px;place-items:center;width:34px;height:34px;font:700 10px Georgia,serif;display:grid}.agenda-project-results>button>span:nth-child(2){flex-direction:column;gap:3px;min-width:0;display:flex}.agenda-project-results strong,.agenda-project-results small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.agenda-project-results strong{font:600 13px Georgia,serif}.agenda-project-results small{color:var(--muted);font-size:9px}.agenda-project-results em{color:var(--green);text-transform:uppercase;font-size:8px;font-style:normal;font-weight:800}.manual-project-modal{max-height:calc(100dvh - 36px);overflow-y:auto}.day-agenda-layout{flex:1;grid-template-columns:285px minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.agenda-appointments{border-right:1px solid var(--line);padding:14px 12px 14px 0;overflow-y:auto}.agenda-appointment{text-align:left;cursor:pointer;background:#fff;border:1px solid #e1e6e3;border-radius:10px;grid-template-columns:6px 1fr;gap:11px;width:100%;margin-bottom:9px;padding:13px;display:grid}.agenda-appointment.active{background:#f1f5f2;border-color:#789386;box-shadow:0 0 0 2px #78938618}.agenda-appointment i{border-radius:4px;width:5px;height:100%;min-height:38px}.agenda-appointment span{flex-direction:column;gap:4px;min-width:0;display:flex}.agenda-appointment strong{text-overflow:ellipsis;white-space:nowrap;font:600 15px Georgia,serif;overflow:hidden}.agenda-appointment small{color:var(--muted);font-size:11px;line-height:1.35}.agenda-empty,.agenda-editor-empty{color:#87918d;text-align:center;place-items:center;min-height:180px;padding:20px;font-size:10px;display:grid}.agenda-editor{overscroll-behavior:contain;scrollbar-gutter:stable;min-height:0;padding:20px 12px 90px 20px;overflow-y:auto}.day-agenda-card .agenda-editor .calendar-item-heading h3{font-size:25px}.day-agenda-card .agenda-editor .eyebrow{font-size:11px}.agenda-form{grid-template-columns:1fr 1fr;gap:11px;margin-top:18px;display:grid}.agenda-form label{color:#65706c;text-transform:uppercase;letter-spacing:.05em;font-size:10px;font-weight:800}.agenda-form label.wide,.agenda-form .agenda-field.wide{grid-column:1/-1}.agenda-field-label{color:#65706c;text-transform:uppercase;letter-spacing:.05em;font-size:10px;font-weight:800}.agenda-form input,.agenda-form textarea,.agenda-form select{color:#243b34;text-transform:none;letter-spacing:0;background:#fff;border:1px solid #d6ded9;border-radius:8px;width:100%;margin-top:7px;padding:11px 12px;font-size:13px;line-height:1.45}.agenda-form textarea{resize:vertical;min-height:72px}.agenda-form select[multiple]{min-height:76px}.assigned-installer-names{color:#405b51;text-transform:none;letter-spacing:0;margin-top:7px;font-size:12px;font-weight:700;display:block}.field-links{flex-wrap:wrap;gap:6px;margin-top:7px;display:flex}.field-links a,.single-field-link{color:#285f50;text-transform:none;letter-spacing:0;background:#e9f2ee;border-radius:7px;width:fit-content;margin-top:7px;padding:7px 9px;font-size:11px;font-weight:800;text-decoration:none;display:inline-flex}.field-links a:hover,.single-field-link:hover{color:#fff;background:#285f50}.agenda-save-row{z-index:2;background:linear-gradient(#0000,#fff 30%);justify-content:flex-end;gap:8px;margin-top:18px;padding:24px 0 12px;display:flex;position:sticky;bottom:0}.agenda-note{color:#69756f;background:#eef2ef;border-radius:9px;padding:13px;font-size:11px;line-height:1.55}.team-layout{gap:18px;display:grid}.staffing-rules{background:#fbfdf5;border:1px solid #dae2d1;border-radius:16px;padding:22px}.staffing-rules h3{margin:0;font:600 21px Georgia,serif}.staffing-rules>p:not(.eyebrow){color:var(--muted);font-size:10px}.rule-grid{grid-template-columns:1fr 1fr;gap:12px;max-width:650px;margin:18px 0;display:grid}.rule-grid label,.team-card label,.prep-detail-card label{color:#65706c;text-transform:uppercase;letter-spacing:.05em;font-size:9px;font-weight:800}.team-grid{grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:12px;display:grid}.team-card{border:1px solid var(--line);background:#fff;border-radius:15px;padding:18px;box-shadow:0 4px 16px #17392f08}.team-card.excluded{opacity:.62;background:#f2f3f1}.team-card-head{grid-template-columns:auto 1fr auto;align-items:center;gap:10px;margin-bottom:13px;display:grid}.team-color{border-radius:5px;width:12px;height:36px}.team-card-head div{flex-direction:column;gap:3px;display:flex}.team-card-head strong{font:600 16px Georgia,serif}.team-card-head small{color:var(--muted);font-size:9px}.team-status{color:#31704f;text-transform:uppercase;background:#e9f5ed;border-radius:7px;padding:5px 7px;font-size:8px;font-weight:800}.team-status.off{color:#8a5c4d;background:#f5ebe6}.team-actions,.prep-actions{justify-content:flex-end;gap:8px;margin-top:14px;display:flex}.secondary{cursor:pointer;background:#fff;border:1px solid #d8dfdb;border-radius:9px;padding:9px 12px;font-size:10px;font-weight:700}.prep-section{border-bottom:0}.muted-copy{color:var(--muted);font-size:10px}.add-prep-panel{background:#fbfdf3;border:1px solid #d9e1c4;border-radius:12px;grid-template-columns:minmax(150px,.7fr) 1.3fr;gap:12px;margin-bottom:15px;padding:15px;display:grid}.add-prep-panel label{color:#65706c;text-transform:uppercase;letter-spacing:.05em;font-size:9px;font-weight:800}.add-prep-panel textarea{min-height:58px}.prep-service-picker{grid-column:1/-1}.prep-service-picker>span{color:#65706c;text-transform:uppercase;letter-spacing:.05em;margin-bottom:7px;font-size:9px;font-weight:800;display:block}.prep-service-picker>div{flex-wrap:wrap;gap:7px;display:flex}.prep-service-picker button{color:#52625a;cursor:pointer;background:#fff;border:1px solid #d7dfd1;border-radius:8px;padding:8px 10px;font-size:10px;font-weight:800}.prep-service-picker button.selected{color:#fff;border-color:var(--green);background:var(--green)}.prep-price-grid,.prep-service-amounts,.prep-card-fields{grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:9px;display:grid}.add-prep-actions{grid-column:1/-1;justify-content:flex-end;gap:8px;display:flex}.prep-detail-card{border:1px solid #edb899;border-left:5px solid var(--orange);background:#fff8f3;border-radius:12px;grid-template-columns:repeat(3,1fr);gap:11px;padding:16px;display:grid}.prep-detail-card>div:first-child{grid-column:1/-1;justify-content:space-between;align-items:center;display:flex}.prep-detail-card>div:first-child b{font:600 16px Georgia,serif}.prep-detail-card>div:first-child span{color:#a9512c;text-transform:uppercase;font-size:8px;font-weight:800}.delete-prep-button{color:#a4472d;cursor:pointer;background:#fff;border:1px solid #e7b9a3;border-radius:8px;place-items:center;width:28px;height:28px;font-size:18px;display:grid}.delete-prep-button:hover{color:#fff;background:#a4472d;border-color:#a4472d}.prep-detail-card>p{color:var(--muted);grid-column:1/-1;margin:0;font-size:9px}.prep-imported-scope{background:#fff;border-radius:9px;grid-column:1/-1;gap:5px;padding:12px;justify-content:stretch!important;display:grid!important}.prep-imported-scope small{color:#a9512c;text-transform:uppercase;letter-spacing:.06em;font-size:8px;font-weight:900}.prep-imported-scope p{color:#503d34;white-space:pre-wrap;margin:0;font-size:11px;line-height:1.6}.prep-completed-note{background:#e8f4ed;border-radius:8px;align-self:end;padding:9px 10px;font-weight:800;color:#2d684f!important}.prep-detail-card .prep-actions{grid-column:1/-1}.schedule-fields select[multiple]{min-height:92px}.all-day-toggle{text-align:left;cursor:pointer;background:#f5f7f6;border:1px solid #d6ded9;border-radius:10px;grid-column:1/-1;grid-template-columns:28px auto 1fr;align-items:center;gap:9px;padding:11px;display:grid}.all-day-toggle>span{background:#fff;border:1px solid #b9c6c0;border-radius:7px;place-items:center;width:25px;height:25px;display:grid}.all-day-toggle b{font-size:10px}.all-day-toggle small{color:var(--muted);text-align:right;font-size:8px}.all-day-toggle.active{background:#edf5f1;border-color:#6d9482}.all-day-toggle.active>span{color:#fff;border-color:var(--green);background:var(--green)}.installer-picker{margin-top:6px}.installer-picker details{position:relative}.installer-picker summary{color:#31453e;cursor:pointer;text-transform:none;letter-spacing:0;background:#fff;border:1px solid #d6ded9;border-radius:9px;align-items:center;gap:8px;padding:10px;list-style:none;display:flex}.installer-picker summary b{color:#fff;background:var(--green);border-radius:7px;place-items:center;width:22px;height:22px;display:grid}.installer-picker summary span{font-size:15px}.installer-picker.compact{margin:0 0 0 auto;position:relative}.installer-picker.compact summary{border-radius:50%;justify-content:center;width:34px;height:34px;padding:0}.installer-picker.compact summary b{color:#fff;background:0 0;width:auto;height:auto;font-size:18px;font-weight:500}.installer-picker.compact .installer-menu{width:260px;left:auto;right:0}.installer-menu{z-index:12;background:#fff;border:1px solid #d6ded9;border-radius:10px;max-height:310px;padding:8px;position:absolute;top:calc(100% + 5px);left:0;right:0;overflow-y:auto;box-shadow:0 12px 28px #17392f24}.installer-option{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:9px;grid-template-columns:22px 36px 1fr auto;align-items:center;gap:11px;width:100%;min-height:54px;padding:10px;display:grid}.installer-option:hover,.installer-option.selected{background:#eef4f1}.installer-check{color:#0000;background:#fff;border:1px solid #b9c8c1;border-radius:5px;place-items:center;width:18px;height:18px;font-size:12px;font-weight:900;display:grid}.installer-option.selected .installer-check{color:#fff;border-color:var(--green);background:var(--green);box-shadow:0 0 0 3px #2d68541a}.installer-option>b{color:var(--green);font-size:9px}.installer-menu i,.installer-badges>span{color:#fff;border-radius:50%;place-items:center;font-style:normal;font-weight:800;display:grid}.installer-menu i{background:#73827c;width:34px;height:34px}.installer-option>span:not(.installer-check){color:#2c4039;text-transform:none;letter-spacing:0;flex-direction:column;font-size:13px;font-weight:700;display:flex}.installer-option small{color:var(--muted);font-size:10px;font-weight:400}.installer-custom-email{border-top:1px solid #e3e8e5;margin-top:5px;padding:9px}.installer-custom-email>label{color:#65706c;letter-spacing:.05em;text-transform:uppercase;margin-bottom:6px;font-size:8px;font-weight:800;display:block}.installer-custom-email>div{grid-template-columns:1fr auto;gap:6px;display:grid}.installer-custom-email input{min-width:0;margin:0;padding:8px 9px;font-size:10px}.installer-custom-email button{color:#fff;background:var(--green);width:auto;padding:8px 10px;font-size:9px;font-weight:800;display:block}.installer-custom-email button:disabled{opacity:.45;cursor:not-allowed}.installer-badges{gap:5px;min-height:30px;padding-top:7px;display:flex}.installer-badges>span{width:28px;height:28px;font-size:10px;box-shadow:0 0 0 2px #fff,0 0 0 3px #d5ddd9}.installer-selection-confirmation{color:#35715d;text-transform:none;letter-spacing:0;margin-top:7px;font-size:11px;font-weight:800;display:block}.installer-selection-confirmation.saving{color:#8a6729}.schedule-crew-groups{grid-template-columns:1fr;gap:14px;display:grid}.schedule-crew-card{background:#f8faf8;border:1px solid #dce3df;border-radius:12px;min-width:0;padding:16px}.schedule-crew-card>strong{color:#263b34;font-size:13px;display:block}.schedule-crew-card>small{color:var(--muted);margin-top:8px;font-size:10px;line-height:1.45;display:block}.calendar-sync-confirmation{text-transform:none;letter-spacing:0;border-radius:7px;margin-top:5px;padding:7px 9px;font-size:10px;font-weight:800;display:block}.calendar-sync-confirmation.synced{color:#286149;background:#e5f5eb}.calendar-sync-confirmation.pending{color:#785d26;background:#fff3d7}.calendar-shell.availability-collapsed{grid-template-columns:260px minmax(0,1fr) 48px}.availability-panel{border-left:1px solid var(--line);background:#f4f6f4;border-radius:0 16px 16px 0;flex-direction:column;min-width:0;height:calc(100dvh - 24px);min-height:0;transition:width .2s;display:flex;position:sticky;top:12px;overflow:hidden}.availability-panel>header{border-bottom:1px solid var(--line);align-items:flex-start;gap:10px;padding:18px 15px;display:flex}.availability-heading{flex:1;min-width:0}.availability-panel h3{margin:1px 0 4px;font:600 18px Georgia,serif}.availability-panel header small{color:var(--muted);font-size:8px}.availability-toggle{width:27px;height:27px;color:var(--green);cursor:pointer;background:#fff;border:1px solid #d6ded9;border-radius:8px;flex:0 0 27px;place-items:center;font:700 20px/1 Georgia,serif;display:grid}.availability-panel.collapsed>header{border-bottom:0;flex-direction:column;align-items:center;height:100%;padding:12px 9px}.availability-panel.collapsed .availability-heading{display:none}.availability-collapsed-label{writing-mode:vertical-rl;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:8px;font-weight:800;transform:rotate(180deg)}.availability-days{flex:1;min-height:0;padding:10px;overflow-y:auto}.city-matching-pool{background:#edf4f0;border:1px solid #cfdcd5;border-radius:11px;margin-bottom:10px;padding:10px}.city-pool-heading{align-items:center;gap:8px;margin-bottom:8px;display:flex}.city-pool-heading>span{color:#fff;background:var(--green);border-radius:7px;place-items:center;width:24px;height:24px;font-size:11px;display:grid}.city-pool-heading div{min-width:0}.city-pool-heading .eyebrow{margin:0;font-size:7px}.city-pool-heading small{color:var(--muted);font-size:7px}.city-matching-pool article{border-top:1px solid #d7e2dc;margin-top:7px;padding-top:7px}.city-matching-pool article>header{justify-content:space-between;align-items:center;display:flex}.city-matching-pool article>header strong{font:600 12px Georgia,serif}.city-matching-pool article>header span{color:var(--muted);text-transform:uppercase;font-size:7px;font-weight:800}.city-project-icons{flex-wrap:wrap;gap:5px;margin-top:7px;display:flex}.city-project-icons button{text-align:left;color:#294239;cursor:pointer;background:#fff;border:1px solid #d4dfd9;border-radius:8px;flex:95px;align-items:center;gap:5px;min-width:0;padding:5px;display:flex}.city-project-icons button:hover{border-color:#7f9e91}.city-project-icons i{color:#fff;background:var(--green);border-radius:50%;flex:0 0 22px;place-items:center;width:22px;height:22px;font-size:6px;font-style:normal;font-weight:800;display:grid}.city-project-icons button span{text-overflow:ellipsis;white-space:nowrap;font-size:7px;font-weight:800;overflow:hidden}.location-review-pool{background:#fff8e9;border:1px solid #e8cfa0;border-radius:11px;margin-bottom:10px;padding:10px}.location-review-pool>header{justify-content:space-between;align-items:center;display:flex}.location-review-pool>header strong{font:600 12px Georgia,serif}.location-review-pool>header span{color:#fff;text-align:center;background:#a46b19;border-radius:999px;min-width:21px;padding:3px 6px;font-size:8px}.location-review-pool>small{color:#7b6541;margin:4px 0 7px;font-size:8px;line-height:1.4;display:block}.location-review-pool>div{gap:5px;display:grid}.location-review-pool button{text-align:left;cursor:pointer;background:#fff;border:1px solid #ead8b6;border-radius:8px;flex-direction:column;gap:2px;padding:7px 8px;display:flex}.location-review-pool button b{font-size:9px}.location-review-pool button span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.availability-day{background:#fff;border:1px solid #dce3df;border-radius:11px;margin-bottom:8px;padding:11px}.availability-date{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.availability-date b{font-size:10px}.availability-date span{text-transform:uppercase;border-radius:6px;padding:4px 6px;font-size:7px;font-weight:800}.availability-date .open{color:#31704f;background:#e7f4eb}.availability-date .booked{color:#815b27;background:#f6eddc}.availability-day p{border-left:3px solid var(--green);flex-direction:column;gap:2px;margin:7px 0;padding-left:7px;font-size:8px;display:flex}.availability-day p span{color:var(--muted)}.nearby-warning{color:#875523;background:#fff1d7;border-radius:8px;flex-direction:column;gap:5px;margin:8px 0;padding:8px;font-size:8px;font-weight:700;line-height:1.4;display:flex}.nearby-warning>b{text-transform:uppercase;letter-spacing:.04em;margin-bottom:2px;font-size:8px}.nearby-warning button{text-align:left;color:#64411e;cursor:pointer;background:#fffaf0;border:1px solid #ebd4aa;border-radius:7px;flex-direction:column;gap:2px;padding:7px;display:flex}.nearby-warning button:hover{background:#fff;border-color:#c9944d}.nearby-warning button span{font-size:9px;font-weight:800}.nearby-warning button small{color:#8b6b47;font-size:7px}.crew-availability{border-top:1px solid #edf0ee;flex-wrap:wrap;gap:5px;padding-top:6px;display:flex}.crew-availability span{color:#426153;align-items:center;gap:4px;font-size:7px;display:flex}.crew-availability span.busy{color:#8b7668}.crew-availability i{color:#fff;border-radius:50%;place-items:center;width:16px;height:16px;font-size:7px;font-style:normal;font-weight:800;display:grid}@media (width>=761px){.workspace.calendar-workspace{max-width:1800px;padding-inline:clamp(14px,1.5vw,28px)}.calendar-workspace .calendar-shell{grid-template-columns:270px minmax(0,1fr) 330px;min-height:800px}.calendar-workspace .calendar-shell.availability-collapsed{grid-template-columns:270px minmax(0,1fr) 52px}.calendar-workspace .unscheduled-rail{max-height:none}.calendar-workspace .calendar-month-banner{min-height:66px;padding:14px 20px}.calendar-workspace .calendar-month-banner span{font-size:10px}.calendar-workspace .calendar-month-banner strong{font-size:26px}.calendar-workspace .calendar-status{min-height:50px;padding-inline:18px;font-size:11px}.calendar-workspace .calendar-weekdays span{padding:12px 8px;font-size:11px}.calendar-workspace .calendar-grid{grid-template-rows:repeat(6,minmax(120px,1fr));grid-template-columns:repeat(7,minmax(112px,1fr))}.calendar-workspace .calendar-day{padding:10px}.calendar-workspace .calendar-day>header{min-height:26px;margin-bottom:7px}.calendar-workspace .calendar-day>header span{width:28px;height:28px;font-size:12px}.calendar-workspace .calendar-day>header small{font-size:9px}.calendar-workspace .day-events{gap:5px}.calendar-workspace .day-event{border-radius:7px;gap:3px;padding:7px 8px;line-height:1.25}.calendar-workspace .day-event strong,.calendar-workspace .day-event span{font-size:10px}.calendar-workspace .unscheduled-rail h3{font-size:19px}.calendar-workspace .rail-help{font-size:10px}.calendar-workspace .rail-card strong{font-size:13px}.calendar-workspace .rail-card small{font-size:9px}.calendar-workspace .availability-panel h3{font-size:21px}.calendar-workspace .availability-panel header small{font-size:11px;line-height:1.4}.calendar-workspace .availability-toggle{flex-basis:31px;width:31px;height:31px}.calendar-workspace .availability-days{padding:12px}.calendar-workspace .city-pool-heading .eyebrow{font-size:9px}.calendar-workspace .city-pool-heading small{font-size:10px;line-height:1.35}.calendar-workspace .city-matching-pool article>header strong,.calendar-workspace .location-review-pool>header strong{font-size:14px}.calendar-workspace .city-matching-pool article>header span{font-size:9px}.calendar-workspace .city-project-icons button{padding:7px}.calendar-workspace .city-project-icons i{flex-basis:27px;width:27px;height:27px;font-size:8px}.calendar-workspace .city-project-icons button span,.calendar-workspace .location-review-pool>header span,.calendar-workspace .location-review-pool>small{font-size:10px}.calendar-workspace .location-review-pool button b{font-size:11px}.calendar-workspace .location-review-pool button span{font-size:10px}.calendar-workspace .availability-day{padding:13px}.calendar-workspace .availability-date b{font-size:13px}.calendar-workspace .availability-date span{font-size:9px}.calendar-workspace .availability-day p{font-size:11px;line-height:1.4}.calendar-workspace .nearby-warning,.calendar-workspace .nearby-warning>b{font-size:10px}.calendar-workspace .nearby-warning button span{font-size:11px}.calendar-workspace .nearby-warning button small{font-size:9px}.calendar-workspace .crew-availability span{font-size:10px}.calendar-workspace .crew-availability i{width:21px;height:21px;font-size:9px}}.topbar-actions{align-items:center;gap:10px;display:flex}.site-menu-wrap{position:relative}.hamburger-button{cursor:pointer;background:#fff;border:1px solid #d8dfdb;border-radius:10px;place-content:center;gap:4px;width:38px;height:38px;display:grid}.hamburger-button span{background:var(--ink);border-radius:2px;width:17px;height:2px}.site-menu{z-index:50;border:1px solid var(--line);background:#fff;border-radius:13px;width:265px;padding:7px;position:absolute;top:46px;right:0;box-shadow:0 18px 50px #162a2033}.site-menu button{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:9px;flex-direction:column;gap:2px;padding:11px 12px;display:flex}.site-menu button:hover{background:#eef3ef}.site-menu b{font-size:11px}.site-menu small{color:var(--muted);font-size:8px}.financial-layout{grid-template-columns:minmax(0,1fr) 330px;align-items:start;gap:16px;display:grid}.financial-editor,.transfer-summary,.installer-ledger,.access-panel{border:1px solid var(--line);background:#fff;border-radius:15px}.financial-project-picker{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;align-items:end;gap:18px;padding:20px;display:grid}.financial-project-picker label,.financial-fields label{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;flex-direction:column;gap:7px;font-size:11px;font-weight:800;display:flex}.financial-project-picker select,.financial-fields input,.financial-fields select{min-height:39px;color:var(--ink);font:inherit;text-transform:none;background:#fff;border:1px solid #d8dfdb;border-radius:8px;padding:9px 10px}.financial-project-picker>div{flex-direction:column;align-items:flex-end;gap:2px;display:flex}.financial-project-picker>div strong{max-width:220px;color:var(--muted);text-overflow:ellipsis;font-size:8px;overflow:hidden}.financial-project-picker>div small{color:var(--green);font-size:9px;font-weight:700}.financial-section{border-bottom:1px solid var(--line);padding:20px}.financial-section>header{gap:10px;margin-bottom:16px;display:flex}.financial-section>header>span{color:#fff;background:var(--green);border-radius:50%;place-items:center;width:28px;height:28px;font-size:8px;font-weight:800;display:grid}.financial-section h3{margin:0;font:600 18px Georgia,serif}.financial-section p{color:var(--muted);margin:3px 0 0;font-size:11px;line-height:1.45}.financial-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;display:grid}.financial-fields.five{grid-template-columns:repeat(5,minmax(0,1fr))}.money-input{position:relative}.money-input i{z-index:1;color:var(--muted);font-style:normal;position:absolute;top:12px;left:10px}.money-input input{width:100%;padding-left:24px}.field-action{color:var(--green);cursor:pointer;background:0 0;border:0;align-self:flex-start;padding:0;font-size:8px;font-weight:800}.toggle-field{justify-content:flex-end}.toggle-field>span{margin-bottom:auto}.toggle{cursor:pointer;background:#cbd2ce;border:0;border-radius:20px;width:39px;height:23px;padding:3px}.toggle i{background:#fff;border-radius:50%;width:17px;height:17px;transition:transform .2s;display:block}.toggle.on{background:var(--green)}.toggle.on i{transform:translate(16px)}.calculated-field{background:#eef3ef;border-radius:9px;flex-direction:column;justify-content:center;gap:4px;min-height:70px;padding:10px;display:flex}.calculated-field span,.calculated-field small{color:var(--muted);font-size:10px}.calculated-field strong{font-size:16px}.financial-save{margin:18px 20px}.financial-actions{flex-wrap:wrap}.archive-financial-button{color:#1f6048;cursor:pointer;background:#edf7f1;border:1px solid #b9d1c5;border-radius:9px;min-height:38px;margin-left:auto;padding:9px 14px;font-size:10px;font-weight:850}.transfer-summary{padding:20px;position:sticky;top:12px}.transfer-summary h3{margin:2px 0 14px;font:600 23px Georgia,serif}.grand-total{color:#fff;background:var(--green);border-radius:12px;flex-direction:column;gap:4px;padding:15px;display:flex}.grand-total span,.grand-total small{opacity:.8;font-size:10px}.grand-total strong{font-size:25px}.transfer-summary dl{margin:12px 0 0}.transfer-summary dl div{border-bottom:1px solid #edf0ee;justify-content:space-between;gap:12px;padding:11px 2px;font-size:11px;display:flex}.transfer-summary dt{color:var(--muted)}.transfer-summary dt small{color:#719083;margin-top:3px;font-size:8px;font-weight:800;line-height:1.35;display:block}.transfer-summary dd{margin:0;font-weight:800}.transfer-summary .profit{color:var(--green);background:#e8f3eb;border:0;border-radius:8px;margin-top:7px;padding:12px 10px}.transfer-merge-help{color:var(--muted);margin:12px 0 0;font-size:9px;line-height:1.4}.transfer-plan-list>div{align-items:center}.transfer-plan-list dt{flex:1;min-width:0}.transfer-combine-button{width:21px;height:21px;color:var(--green);cursor:pointer;background:#fff;border:1px solid #cfd9d4;border-radius:50%;flex:0 0 21px;place-items:center;padding:0;font-size:14px;font-weight:900;display:grid}.transfer-combine-button.active{border-color:var(--green);color:#fff;background:var(--green)}.transfer-plan-list .combined-source{opacity:.62}.transfer-plan-list .combined-source dd{opacity:1}.combined-transfer-input{width:88px;display:block;position:relative}.combined-transfer-input i{color:var(--muted);font-size:10px;font-style:normal;position:absolute;top:7px;left:8px}.combined-transfer-input input{width:100%;min-height:30px;color:var(--ink);text-align:right;background:#fff;border:1px solid #b8c9c0;border-radius:7px;padding:5px 7px 5px 18px;font-family:inherit;font-size:11px;font-weight:800}.transfer-plan-list .combined-transfer-total{color:var(--green);opacity:1;background:#edf7f1;border:1px solid #b7d4c7;border-radius:10px;margin-top:12px;padding:14px 10px}.transfer-plan-list .combined-transfer-total dt{color:var(--green);font-weight:900}.transfer-plan-list .combined-transfer-total dd{font-size:14px}.transfer-plan-list .installer-transfer-handled .transfer-line-title,.transfer-plan-list .installer-transfer-handled .transfer-line-amount{color:#78827e;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none;-webkit-text-decoration:line-through #b35b48;text-decoration:line-through #b35b48;text-decoration-thickness:2px}.installer-transfer-status{color:#39705e;text-transform:uppercase;letter-spacing:.06em;margin-top:4px;font-size:8px;font-weight:800;display:block}.transfer-plan-list .installer-transfer-row dt{padding-right:6px}.transfer-plan-list .installer-transfer-row dd{white-space:nowrap}.payout-view{gap:16px;min-width:0;display:grid}.payout-switch{gap:7px;padding-bottom:4px;display:flex;overflow-x:auto}.payout-switch button{border:1px solid var(--line);white-space:nowrap;cursor:pointer;background:#fff;border-radius:999px;padding:9px 16px;font-weight:750}.payout-switch button.active{background:var(--ink);color:#fff;border-color:var(--ink)}.payout-filters{border:1px solid var(--line);background:#f7f9f7;border-radius:13px;grid-template-columns:minmax(220px,1.5fr) repeat(7,minmax(125px,1fr)) auto;align-items:end;gap:9px;padding:14px;display:grid;overflow-x:auto}.payout-filters label{min-width:125px;color:var(--muted);gap:5px;font-size:10px;font-weight:800;display:grid}.payout-filters input,.payout-filters select{width:100%;min-height:38px;color:var(--ink);font:inherit;background:#fff;border:1px solid #d5ddd9;border-radius:8px;padding:7px 9px}.payout-filter-search{background:#fff;border:1px solid #d5ddd9;border-radius:8px;grid-template-columns:18px 1fr auto;align-items:center;padding:0 8px;position:relative;gap:4px!important}.payout-filter-search input{border:0;outline:0;min-width:160px;padding-inline:2px}.payout-filter-search button{width:23px;height:23px;color:var(--muted);cursor:pointer;background:#e8eeeb;border:0;border-radius:50%}.payout-clear-filters{min-height:38px;color:var(--green);white-space:nowrap;cursor:pointer;background:#fff;border:1px solid #cdd8d2;border-radius:8px;padding:8px 13px;font-weight:800}.payout-calculator{background:#f1f8fd;border:1px solid #b8d8ec;border-radius:13px;grid-template-columns:minmax(190px,.75fr) minmax(280px,2fr) auto;align-items:center;gap:16px;padding:16px 18px;display:grid;box-shadow:0 6px 18px #245b7b0c}.payout-calculator h3{margin:2px 0 3px;font:600 18px Georgia,serif}.payout-calculator small{color:var(--muted);font-size:10px}.payout-calculation-chips{gap:7px;padding:3px;display:flex;overflow-x:auto}.payout-calculation-chips>button{text-align:left;cursor:pointer;background:#fff;border:1px solid #bdd9e9;border-radius:9px;flex-direction:column;gap:3px;min-width:150px;padding:9px 28px 9px 10px;display:flex;position:relative}.payout-calculation-chips span{text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:800;overflow:hidden}.payout-calculation-chips b{color:#547384;font-size:16px;position:absolute;top:7px;right:8px}.payout-calculation-total{flex-direction:column;align-items:flex-end;gap:3px;min-width:150px;display:flex}.payout-calculation-total>span{color:var(--muted);text-transform:uppercase;font-size:9px;font-weight:800}.payout-calculation-total strong{color:#225d7e;font-size:23px}.payout-calculation-total button{color:#365d72;cursor:pointer;background:#dceef8;border:0;border-radius:7px;margin-top:3px;padding:5px 8px;font-size:9px;font-weight:800}.payout-calculation-total .copy-payout-report{color:#fff;background:#225d7e;min-width:105px;padding:8px 12px;font-size:11px}.payout-ledgers{gap:16px;display:grid}.payout-ledgers.show-all{scroll-snap-type:x proximity;padding-bottom:12px;display:flex;overflow-x:auto}.payout-ledgers.show-all .installer-ledger{scroll-snap-align:start;flex:0 0 min(720px,88vw)}.installer-ledger{font-size:16px}.installer-ledger .ledger-row{font-size:15px}.financial-search button{cursor:pointer;background:#e3e8e4;border:0;border-radius:50%;width:24px;height:24px;font-size:17px;line-height:1}.installer-ledger{overflow:hidden}.installer-ledger>header{align-items:center;gap:11px;padding:18px;display:flex}.ledger-add-button{color:#fff;background:var(--green);cursor:pointer;border:0;border-radius:50%;place-items:center;width:38px;height:38px;margin-left:auto;font-size:26px;line-height:1;display:grid;box-shadow:0 5px 14px #1f493e33}.installer-color-field{grid-template-columns:48px 1fr;align-items:center;gap:9px;display:grid}.installer-color-field input[type=color]{cursor:pointer;background:#fff;border:1px solid #d8dfdb;border-radius:9px;width:48px;height:40px;padding:3px}.installer-color-field input:not([type=color]){text-transform:uppercase;min-width:0}.installer-color-field>span{color:var(--muted);text-transform:none;font-size:12px;font-weight:650}.installer-ledger>header>i,.access-panel article>i{color:#fff;border-radius:50%;place-items:center;width:38px;height:38px;font-style:normal;font-weight:800;display:grid}.installer-ledger h3{margin:1px 0;font:600 19px Georgia,serif}.installer-ledger header small{color:var(--muted);font-size:8px}.ledger-totals{border-block:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid}.ledger-totals div{border-right:1px solid var(--line);padding:15px 18px}.ledger-totals span{color:var(--muted);font-size:8px;display:block}.ledger-totals strong{margin-top:4px;font-size:17px;display:block}.ledger-statuses{background:#f5f7f5;gap:8px;padding:11px 18px;display:flex}.ledger-statuses span{background:#fff;border:1px solid #dfe5e1;border-radius:20px;padding:6px 9px;font-size:8px}.ledger-table{overflow-x:auto}.ledger-row{border-top:1px solid #edf0ee;grid-template-columns:1.5fr .8fr 1fr 1fr 1fr 1fr 96px;align-items:center;gap:8px;min-width:980px;padding:10px 18px;font-size:8px;display:grid}.ledger-row.heading{color:var(--muted);background:#fbfcfb;font-weight:800}.ledger-row.calculation-selected{background:#e8f5fd;box-shadow:inset 4px 0 #66abd4}.ledger-project-select{text-align:left;min-width:0;color:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;flex-direction:column;gap:2px;padding:7px 9px;display:flex}.ledger-project-select:hover{background:#f2f9fd;border-color:#bed9e9}.ledger-project-select[aria-pressed=true]{color:#184f70;background:#d9effb}.ledger-project-select b{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ledger-date-select{text-align:left;min-height:34px;color:inherit;cursor:default;background:0 0;border:1px solid #0000;border-radius:8px;padding:7px 8px}.ledger-date-select:hover{background:#f7faf8;border-color:#d6e2dc}.ledger-row>span{flex-direction:column;gap:2px;display:flex}.ledger-row small{color:var(--muted);font-size:7px}.ledger-row select{background:#fff;border:1px solid #d8dfdb;border-radius:7px;min-height:32px;font-size:8px}.ledger-work-status.scheduled{color:#44271b;background:#ee946d;border-color:#dc805a}.ledger-work-status.in-progress{color:#3c3710;background:#e1d551;border-color:#c7ba38}.ledger-work-status.done{color:#184b33;background:#b4f4d3;border-color:#8edcaf}.ledger-pay-input{display:block;position:relative}.ledger-pay-input:before{content:"$";z-index:1;color:var(--muted);position:absolute;top:50%;left:9px;transform:translateY(-50%)}.ledger-pay-input input{background:#fff;border:1px solid #cbd8d1;border-radius:7px;width:100%;min-height:32px;padding:5px 7px 5px 20px;font:800 13px inherit}.ledger-row-actions{align-items:center;flex-direction:row!important;gap:5px!important;display:flex!important}.ledger-row-actions .secondary{min-height:32px;padding:6px 9px}.ledger-delete-button{color:#8d4132;cursor:pointer;background:#fae8e2;border:0;border-radius:50%;flex:0 0 32px;width:32px;height:32px;font-size:19px}.ledger-delete-button:hover{color:#fff;background:#a74835}.financial-history-section{grid-column:1/-1}.financial-history-list{gap:7px;display:grid}.financial-history-list article{background:#f4f7f5;border-radius:8px;justify-content:space-between;align-items:center;gap:16px;padding:10px 12px;display:flex}.financial-history-list article>div{flex-direction:column;gap:3px;display:flex}.financial-history-list small,.financial-history-list p{color:var(--muted);font-size:10px}.financial-history-list article>span{white-space:nowrap;font-weight:800}.ledger-history{border-top:1px solid var(--line);padding:12px 18px 16px}.ledger-history summary{color:var(--green);cursor:pointer;font-weight:800}.ledger-history .financial-history-list{margin-top:10px}.installer-ledger h3{font-size:25px}.installer-ledger header small,.ledger-totals span,.ledger-statuses span,.ledger-row,.ledger-row select{font-size:13px}.installer-ledger .ledger-totals strong{font-size:22px}.ledger-row small{font-size:11px}.brief-action{color:#fff;background:var(--green);border-radius:999px;align-self:flex-start;align-items:center;margin-top:7px;padding:7px 10px;font-size:12px;font-weight:800;text-decoration:none;display:inline-flex}.brief-icon-action{background:#fff;border:1px solid #dbe3de;border-radius:12px;align-self:flex-start;place-items:center;width:44px;height:44px;margin-top:8px;transition:transform .2s,box-shadow .2s;display:grid;box-shadow:0 5px 14px #17382f1a}.brief-icon-action:hover{transform:translateY(-2px);box-shadow:0 8px 18px #17382f29}.brief-icon-action img{object-fit:contain;width:30px;height:30px}.payment-button{--clr:#00ad54;color:#121212;background:#fff;border-radius:1.5rem;align-self:flex-start;margin-top:8px;line-height:1;text-decoration:none;display:inline-block;position:relative;overflow:hidden;box-shadow:10px 10px 20px #0000000d}.payment-button-decor{z-index:0;background:var(--clr);transition:transform .3s;position:absolute;inset:0;transform:translate(-100%)}.payment-button-content{align-items:center;font-weight:600;display:flex;position:relative;overflow:hidden}.payment-button__icon{background:var(--clr);flex:none;place-items:center;width:48px;height:40px;display:grid}.payment-button__text{white-space:nowrap;text-overflow:ellipsis;max-width:150px;padding:2px 1.5rem 2px .75rem;transition:color .2s;display:inline-block;overflow:hidden}.payment-button:hover .payment-button__text{color:#fff}.payment-button:hover .payment-button-decor{transform:translate(0)}.wallpaper-resource-grid{gap:12px;display:grid}.wallpaper-resource{border:1px solid var(--line);background:#f8faf8;border-radius:12px;grid-template-columns:88px 1fr;gap:13px;padding:11px;display:grid;overflow:hidden}.wallpaper-resource>img{object-fit:cover;border-radius:9px;width:88px;height:88px}.wallpaper-resource>div{flex-direction:column;align-items:flex-start;gap:5px;min-width:0;display:flex}.wallpaper-resource small{color:var(--green);text-transform:uppercase;font-weight:800}.wallpaper-resource strong{line-height:1.3}.wallpaper-resource span{color:var(--muted);font-size:12px}.installer-payout-list{gap:9px;display:grid}.installer-payout-card{border:1px solid var(--line);color:inherit;background:#f8faf8;border-radius:10px;justify-content:space-between;gap:18px;padding:16px;text-decoration:none;transition:border-color .2s,transform .2s;display:flex}.installer-payout-card:hover{border-color:var(--green);transform:translateY(-1px)}.installer-payout-card>div{flex-direction:column;gap:5px;display:flex}.installer-payout-card>div:last-child{text-align:right;align-items:flex-end}.installer-payout-card b{color:var(--green);font-size:12px}.installer-payout-list span{color:var(--muted);font-size:12px}.payout-project-date{color:var(--ink);align-items:baseline;gap:7px;font-size:14px;font-weight:800;display:flex}.payout-project-date small{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:750}.payout-summary-grid,.payout-status-summary{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.payout-summary-grid>div{color:#fff;background:var(--green);border-radius:12px;flex-direction:column;gap:5px;padding:18px;display:flex}.payout-summary-grid small,.payout-summary-grid span{opacity:.78}.payout-summary-grid strong{font-size:24px}.payout-summary-grid.with-pending{grid-template-columns:repeat(2,minmax(0,1fr))}.payout-summary-grid>.payout-pending{color:#664409;background:#fff4d6;border:1px solid #e8c576}.payout-pending a{color:inherit;margin-top:4px;font-weight:700;text-decoration:underline}@media (width<=700px){.payout-summary-grid.with-pending{grid-template-columns:1fr}}.payout-status-summary>div{border:1px solid var(--line);background:#f8faf8;border-radius:10px;flex-direction:column;gap:4px;padding:14px;display:flex}.payout-status-summary small,.payout-status-summary span{color:var(--muted);font-size:12px}.payout-status-summary strong{font-size:19px}.payout-list-heading{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:14px;display:flex}.payout-list-heading h2,.payout-list-heading p{margin:0}.payout-list-heading p{color:var(--muted);margin-top:4px;font-size:13px}.payout-status-filter{gap:6px;display:flex;overflow-x:auto}.payout-status-filter a{border:1px solid var(--line);color:var(--ink);white-space:nowrap;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:800;text-decoration:none}.payout-status-filter a.active{color:#fff;border-color:var(--green);background:var(--green)}.payout-search{gap:6px;margin-bottom:14px;display:grid}.payout-search>label{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:10px;font-weight:800}.payout-search>div{border:1px solid var(--line);background:#fff;border-radius:11px;align-items:center;gap:8px;padding:7px 8px 7px 12px;display:flex}.payout-search input:not([type=hidden]){width:100%;min-width:0;font:inherit;background:0 0;border:0;outline:0}.payout-search a{width:25px;height:25px;color:var(--muted);background:#edf1ef;border-radius:50%;flex:none;place-items:center;font-size:18px;text-decoration:none;display:grid}.payout-search button{color:#fff;background:var(--green);cursor:pointer;border:0;border-radius:9px;min-height:34px;padding:7px 14px;font-weight:800}.installer-session{justify-content:space-between;align-items:center;gap:12px;margin-top:10px;display:flex}.installer-session span{opacity:.8;font-size:13px}.installer-session a{color:inherit;border:1px solid;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:800;text-decoration:none}@media (width<=700px){.payout-summary-grid,.payout-status-summary{grid-template-columns:1fr}.payout-list-heading{flex-direction:column;align-items:stretch}}.ledger-empty{color:var(--muted);padding:18px;font-size:9px}.access-panel{max-width:720px;margin:0 auto;padding:22px}.access-panel>header h3{margin:3px 0 8px;font:600 25px Georgia,serif}.access-panel>header p:last-child,.access-note{color:var(--muted);font-size:10px;line-height:1.5}.access-panel article{border-top:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:center;gap:11px;padding:13px 0;display:grid}.access-panel article div{flex-direction:column;gap:3px;display:flex}.access-panel article small{color:var(--muted);font-size:8px}.access-panel article>span{color:var(--green);background:#e8f3eb;border-radius:20px;padding:6px 8px;font-size:8px;font-weight:800}.access-note{background:#f4f6f4;border-radius:9px;margin-top:12px;padding:12px}.empty-financials{color:var(--muted);text-align:center;padding:40px}.financial-workspace{gap:14px;display:grid}.scope-change-card{border:1px solid var(--line);background:#fff;border-radius:15px;padding:20px}.scope-change-card>header h3{margin:2px 0 4px;font:600 20px Georgia,serif}.scope-change-card>header p:last-child{color:var(--muted);margin:0;font-size:10px}.scope-change-entry{grid-template-columns:minmax(240px,1fr) 190px 190px auto;align-items:center;gap:9px;margin-top:16px;display:grid}.scope-change-entry>input,.scope-change-entry .money-input input,.scope-change-entry select{width:100%;min-height:40px;color:var(--ink);background:#fff;border:1px solid #d8dfdb;border-radius:8px;padding:9px 10px;font-size:11px}.scope-change-entry .money-input input{padding-left:24px}.scope-change-list{gap:7px;margin-top:14px;display:grid}.scope-change-list>p{color:var(--muted);background:#f5f7f5;border-radius:8px;margin:0;padding:12px;font-size:10px}.scope-change-list>div{background:#fafbfa;border:1px solid #e1e6e3;border-radius:9px;grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:10px 12px;display:grid}.scope-change-list span{flex-direction:column;gap:3px;display:flex}.scope-change-list strong{font-size:11px}.scope-change-list small{color:var(--muted);font-size:9px}.scope-change-list b{font-size:12px}.scope-change-list b.positive{color:var(--green)}.scope-change-list b.negative{color:#9b4f43}.scope-change-list button{color:#87554b;cursor:pointer;background:#f6e9e6;border:0;border-radius:50%;width:26px;height:26px}.financial-project-bar{border:1px solid var(--line);background:#fff;border-radius:15px;min-width:0;overflow:hidden}.financial-project-bar>header{border-bottom:1px solid var(--line);grid-template-columns:1fr minmax(220px,320px) auto;align-items:center;gap:12px;padding:15px 17px;display:grid}.financial-project-actions{align-items:center;gap:7px;display:flex}.financial-project-bar h3{margin:2px 0 0;font:600 19px Georgia,serif}.financial-search{background:#fafbfa;border:1px solid #d8dfdb;border-radius:9px;align-items:center;gap:7px;padding:8px 10px;display:flex}.financial-search input{background:0 0;border:0;outline:0;width:100%;font-size:11px}.financial-project-scroll{scrollbar-color:#9aaba2 #edf1ef;scrollbar-width:auto;gap:9px;width:100%;padding:12px 15px 15px;display:flex;overflow-x:auto}.financial-project-option{background:#fff;border:1px solid #dfe4e1;border-radius:10px;flex:0 0 250px;align-items:stretch;display:flex}.financial-project-option.selected{background:#edf6ff;border-color:#3979b2}.financial-project-check{cursor:pointer;justify-content:center;align-items:center;min-width:42px;display:flex}.financial-project-check input{accent-color:#3979b2;cursor:pointer;width:18px;height:18px;margin:0}.financial-project-option>button{text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;flex:1;grid-template-columns:auto minmax(0,1fr);gap:3px 7px;min-width:0;padding:11px;display:grid}.financial-project-option>button i{border-radius:50%;grid-row:1/3;align-self:center;width:9px;height:9px}.financial-project-option>button.pending i{background:#e2b143}.financial-project-option>button.dispatched i{background:#459469}.financial-project-option>button strong{overflow-wrap:anywhere;font-size:.875rem}.financial-project-option>button small{color:var(--muted);font-size:.8125rem}.financial-project-option>button.active{border-color:var(--green);box-shadow:0 0 0 2px #1f493e1f}.financial-bulk-actions{border-bottom:1px solid var(--line);background:#edf6ff;flex-wrap:wrap;align-items:center;gap:10px;padding:12px 17px;font-size:.875rem;display:flex}.financial-bulk-actions button{font-size:.875rem}.financial-project-bar button:disabled,.financial-actions button:disabled{opacity:.6;cursor:wait}.financial-project-scroll>p{color:var(--muted);font-size:10px}.restore-financial-button{color:#285778;cursor:pointer;background:#eef6fc;border:1px solid #b7cae0;border-radius:9px;min-height:38px;margin-left:auto;padding:9px 14px;font-size:10px;font-weight:850}.installer-payment-cards{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.financial-installer-header{grid-template-columns:auto 1fr auto!important}.installer-payment-cards article{background:#f8faf8;border:1px solid #dce3df;border-radius:11px;padding:14px;position:relative}.installer-payment-cards article>header{align-items:center;gap:10px;margin-bottom:13px;display:flex}.installer-payment-cards article>header i{color:#fff;border-radius:50%;place-items:center;width:34px;height:34px;font-style:normal;font-weight:800;display:grid}.installer-payment-cards article>header div{flex-direction:column;gap:3px;display:flex}.installer-payment-cards article>header strong{font-size:13px}.installer-payment-cards article>header small{color:var(--muted);font-size:10px}.installer-payment-cards label{color:var(--muted);text-transform:uppercase;flex-direction:column;gap:6px;margin-top:10px;font-size:10px;font-weight:800;display:flex}.installer-payment-cards input{width:100%;min-height:40px;color:var(--ink);background:#fff;border:1px solid #d8dfdb;border-radius:8px;padding:9px 10px 9px 24px;font-size:13px}.unassigned-financial{background:#fff3dc;border-radius:9px;color:#775c31!important;padding:15px!important}.remove-installer{color:#87554b;cursor:pointer;background:#f6e9e6;border:0;border-radius:50%;width:25px;height:25px;position:absolute;top:8px;right:8px}.reference-rate{color:var(--muted);margin:4px 0 10px;font-size:9px}.reference-rate summary{cursor:pointer}.reference-rate label{margin-top:9px}.financial-item-entry{grid-template-columns:1fr 160px auto;align-items:center;gap:9px;display:grid}.financial-item-entry>input,.financial-item-entry .money-input input{border:1px solid #d8dfdb;border-radius:8px;width:100%;min-height:40px;padding:9px 10px;font-size:11px}.financial-item-entry .money-input input{padding-left:24px}.financial-item-list{gap:6px;margin:10px 0;display:grid}.financial-item-list>div{background:#f3f6f4;border-radius:8px;grid-template-columns:1fr auto auto;align-items:center;gap:10px;padding:9px 11px;font-size:10px;display:grid}.financial-item-list button{color:#87554b;cursor:pointer;background:#f6e9e6;border:0;border-radius:50%;width:24px;height:24px}.financial-actions{justify-content:flex-end;gap:9px;padding:18px 20px;display:flex}.mobile-app-nav{display:none}@media (width<=760px){html{scroll-padding-bottom:92px}body{padding-bottom:calc(78px + env(safe-area-inset-bottom));overscroll-behavior-y:contain}button,a,summary,input,textarea,select{-webkit-tap-highlight-color:transparent}input,textarea,select{font-size:16px!important}.topbar{z-index:40;height:62px;padding:0 14px;position:sticky;top:0;box-shadow:0 4px 18px #13231f0d}.brand{gap:8px}.brand-mark{width:36px;height:36px}.brand strong{font-size:14px}.brand small{display:none}.topbar-actions{gap:7px}.topbar-actions .primary.compact{border-radius:13px;width:42px;height:42px;padding:0;font-size:0}.topbar-actions .primary.compact span{font-size:24px}.hamburger-button{display:none}.hero{align-items:flex-start;padding:22px 16px 16px}.hero h1{font-size:clamp(30px,9vw,38px)}.subtitle{margin-top:9px;font-size:13px;line-height:1.45}.sync-pill{display:none}.summary-grid{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:18px;padding:0 12px}.summary-card{min-height:92px;padding:13px}.summary-card:nth-child(3){display:none}.summary-card strong{font-size:28px}.summary-card p{font-size:11px}.operations-command{margin-bottom:17px;padding:20px 12px 0}.operations-command>header{align-items:flex-start;margin-bottom:12px}.operations-command h1{font-size:30px}.operations-command header p:last-child{max-width:290px;font-size:12px;line-height:1.45}.operations-command .sync-pill{display:none}.operations-stats{scroll-snap-type:x mandatory;scrollbar-width:none;gap:8px;padding:2px 1px 8px;display:flex;overflow-x:auto}.operations-stats button{scroll-snap-align:start;flex:0 0 148px;min-height:94px;padding:14px}.operations-stats strong{font-size:28px}.next-action{grid-template-columns:auto 1fr;padding:12px 13px}.next-action small{grid-column:2}.toolbar{z-index:15;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f7f8f5f2;flex-direction:column;align-items:stretch;gap:9px;margin-inline:-14px;padding:10px 14px;position:sticky;top:62px}.board-label{padding:0 2px}.board-label strong{font-size:16px}.board-label small{font-size:10px}.view-switch{display:none}.search{width:100%}.search input{height:46px}.workspace{padding-inline:14px}.list-heading{padding-top:18px}.list-heading h2{font-size:26px}.board-heading-actions{flex-direction:column;align-items:flex-end;gap:6px}.archived-project-grid{grid-template-columns:1fr}.archived-board-heading{flex-direction:column;align-items:flex-start;gap:6px}.kanban-board{scroll-snap-type:x mandatory;grid-template-columns:repeat(7,minmax(88vw,320px));margin-inline:-14px;padding-inline:14px}.desktop-stage-sticky{display:none}.mobile-stage-sticky{z-index:14;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff2;border:1px solid #dbe3df;border-radius:11px;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;min-height:44px;margin:0 -2px 8px;padding:8px 12px;display:grid;position:sticky;top:171px;box-shadow:0 7px 18px #13231f14}.mobile-stage-sticky strong{text-overflow:ellipsis;white-space:nowrap;font:600 15px Georgia,serif;overflow:hidden}.mobile-stage-sticky b{color:#61706a;background:#eef2ef;border-radius:8px;place-items:center;min-width:27px;height:27px;font-size:10px;display:grid}.kanban-column{min-height:450px}.column-head h3{font-size:16px}.kanban-card{touch-action:pan-x pan-y;-webkit-user-select:none;user-select:none;border-radius:15px;min-height:205px;padding:17px}.kanban-card .drag-handle{z-index:3;color:#60726a;letter-spacing:-4px;touch-action:none;background:#eef2ef;border-radius:12px;place-items:center;width:42px;height:42px;font-size:17px;display:grid;top:7px;right:7px}.kanban-card.dragging .drag-handle{color:#fff;background:var(--green);box-shadow:0 5px 15px #17392f33}.card-top strong{font-size:17px}.card-top strong.board-title-long{font-size:14px}.card-top strong.board-title-compact{font-size:12.5px}.card-top small,.card-address,.card-areas{font-size:12px}.kanban-card .tags i,.card-footer b{font-size:10px}.mobile-calendar-controls{z-index:36;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f7f8f5ee;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:7px;margin:0 -4px 9px;padding:7px 4px;display:grid;position:sticky;top:128px}.mobile-calendar-controls>button{border:1px solid var(--line);background:#fff;border-radius:11px;min-height:38px;padding:0 10px;font-size:11px;font-weight:800}.mobile-calendar-controls>div{border:1px solid var(--line);background:#fff;border-radius:11px;grid-template-columns:1fr 1fr;padding:3px;display:grid}.mobile-calendar-controls>div button{min-height:32px;color:var(--muted);background:0 0;border:0;border-radius:8px;font-size:11px;font-weight:800}.mobile-calendar-controls>div button.active{color:#fff;background:var(--green)}.calendar-shell{background:0 0;border:0;height:auto;min-height:0;max-height:none;display:block;position:relative;overflow:visible}.calendar-shell .unscheduled-rail,.calendar-shell .availability-panel{z-index:86;top:0;bottom:calc(70px + env(safe-area-inset-bottom));width:min(82vw,360px);height:auto;max-height:none;padding:calc(72px + env(safe-area-inset-top)) 15px 24px;border:0;border-radius:0;margin:0;transition:transform .22s;position:fixed;overflow-y:auto;box-shadow:0 12px 38px #13231f2b}.calendar-shell .unscheduled-rail{left:0;transform:translate(-105%)}.calendar-shell .availability-panel{right:0;transform:translate(105%)}.calendar-shell .unscheduled-rail.mobile-open,.calendar-shell .availability-panel.mobile-open{transform:translate(0)}.mobile-panel-close{z-index:2;top:calc(18px + env(safe-area-inset-top));border:1px solid var(--line);background:#fff;border-radius:50%;place-items:center;width:40px;height:40px;font-size:18px;display:grid;position:absolute;right:14px}.mobile-panel-scrim{z-index:84;background:#13231f52;border:0;display:block;position:fixed;inset:0}.mobile-panel-scrim.dragging{pointer-events:none}.unscheduled-rail h3{font-size:20px}.rail-help{font-size:11px}.rail-cards{flex-direction:column;padding:2px;display:flex;overflow:visible}.rail-project-group{flex:none}.rail-card{touch-action:pan-y;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;min-height:92px;padding:13px}.rail-card *,.rail-project-group,.rail-project-group *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.rail-card.dragging{touch-action:none;cursor:grabbing}.rail-card strong{font-size:15px}.rail-card small,.rail-card>b{font-size:10px}.calendar-panel{border:1px solid var(--line);background:#fff;border-radius:14px;width:100%;overflow:hidden}.calendar-month-banner,.calendar-status{width:100%}.calendar-month-banner{min-height:50px;padding:9px 12px}.calendar-month-banner strong{font-size:22px}.calendar-status{min-height:37px;padding:0 9px;font-size:8px}.availability-key{display:none}.calendar-shell.availability-collapsed{grid-template-columns:1fr}.availability-panel.collapsed>header{flex-direction:row;justify-content:flex-start;height:auto}.availability-collapsed-label{writing-mode:horizontal-tb;transform:none}.calendar-status,.calendar-weekdays,.calendar-grid{width:100%;min-width:0}.calendar-weekdays{grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekdays span{padding:7px 1px;font-size:9px}.calendar-grid{grid-template-rows:repeat(6,minmax(102px,1fr));grid-template-columns:repeat(7,minmax(0,1fr));min-height:0}.calendar-day{min-height:102px;padding:3px 2px;overflow:hidden}.calendar-day>header{justify-content:center;margin-bottom:2px}.calendar-day>header span{width:23px;height:23px;font-size:10px}.calendar-day>header small{display:none}.day-events{gap:2px}.day-event{touch-action:pan-y;-webkit-user-select:none;user-select:none;border-radius:3px;width:100%;min-height:18px;padding:3px 2px;overflow:hidden}.day-event strong{display:none}.day-event span:not(.appointment-menu){text-overflow:ellipsis;white-space:nowrap;font-size:8px;line-height:1.2;overflow:hidden}.day-event .appointment-menu{display:none}.day-event .calendar-sync-alert{width:13px;height:13px;top:2px;right:2px;font-size:9px!important}.calendar-shell.week-view .calendar-weekdays{display:none}.calendar-shell.week-view .calendar-grid{grid-template-rows:none;grid-template-columns:1fr;display:grid}.calendar-shell.week-view .calendar-day{grid-template-columns:54px minmax(0,1fr);gap:8px;min-height:94px;padding:10px;display:grid;overflow:visible}.calendar-shell.week-view .calendar-day>header{flex-direction:column;justify-content:flex-start;gap:2px;display:flex}.calendar-shell.week-view .calendar-day>header:after{content:attr(data-calendar-date);color:var(--muted);font-size:8px}.calendar-shell.week-view .day-event{border-radius:7px;min-height:35px;padding:7px 9px}.calendar-shell.week-view .day-event strong{font-size:9px;display:block}.calendar-shell.week-view .day-event span:not(.appointment-menu){font-size:11px}.calendar-cancel-drop{right:12px;bottom:calc(78px + env(safe-area-inset-bottom));grid-template-columns:auto 1fr;min-width:0;left:12px;transform:none}.calendar-cancel-drop.active{transform:scale(1.02)}.availability-panel h3{font-size:22px}.availability-panel header small,.availability-day p,.nearby-warning{font-size:11px}.availability-date b{font-size:13px}.availability-date span,.crew-availability span{font-size:10px}.calendar-item-backdrop{padding:8px}.day-agenda-card{height:100dvh;max-height:100dvh;padding:calc(14px + env(safe-area-inset-top)) 14px calc(14px + env(safe-area-inset-bottom));border:0;border-radius:0}.agenda-date-header{padding:44px 0 12px}.agenda-add-project-row{flex-direction:column;align-items:stretch;gap:6px}.agenda-project-picker{inset:calc(70px + env(safe-area-inset-top)) 10px calc(76px + env(safe-area-inset-bottom));max-height:none;position:fixed}.agenda-project-picker-actions,.schedule-crew-groups{grid-template-columns:1fr}.agenda-date-header h3{font-size:17px}.day-agenda-layout{grid-template-columns:1fr;min-height:0;overflow-y:auto}.agenda-appointments{border-right:0;border-bottom:1px solid var(--line);max-height:190px;padding:10px 0}.agenda-editor{padding:16px 0 100px;overflow:visible}.agenda-form{grid-template-columns:1fr}.agenda-form label.wide{grid-column:auto}.agenda-save-row{flex-direction:column;bottom:0}.project-card{grid-template-columns:auto 1fr;padding:16px}.project-meta{flex-direction:row;grid-column:2;justify-content:space-between;align-items:center;width:100%}.project-meta b{margin-left:auto}.project-meta small{display:none}.drawer-backdrop{z-index:110}.drawer{width:100vw;padding-bottom:env(safe-area-inset-bottom);position:fixed}.drawer-head{min-height:calc(116px + env(safe-area-inset-top));padding:calc(34px + env(safe-area-inset-top)) 66px 24px 20px}.drawer-head h2{overflow-wrap:anywhere;font-size:clamp(25px,7.5vw,32px);line-height:1.08}.drawer-head .close{top:calc(20px + env(safe-area-inset-top));background:#ffffff18;border-radius:50%;place-items:center;width:44px;height:44px;display:grid;right:16px}.brief-stage-control{margin:12px 0 4px;position:static}.schedule-stage-control{justify-content:flex-end;margin:0 44px 12px 0;position:static}.drawer-body{padding:0 16px 110px}.form-grid{grid-template-columns:1fr}.form-grid label.wide{grid-column:auto}.add-prep-panel{grid-template-columns:1fr}.add-prep-actions{grid-column:auto}.schedule-fields{grid-template-columns:1fr}.schedule-fields label.wide{grid-column:auto}.rule-grid,.prep-detail-card{grid-template-columns:1fr}.prep-detail-card>div:first-child,.prep-detail-card>p,.prep-detail-card .prep-actions{grid-column:auto}.drawer-actions{flex-direction:column-reverse;align-items:stretch}.drawer-action-buttons{flex-direction:column;align-items:stretch}.drawer-actions .primary{width:100%}.dispatch-details{grid-template-columns:1fr}.dispatch-details>button{grid-column:auto}.confirm-delete{flex-wrap:wrap}.confirm-delete p{flex-basis:100%}.financial-layout,.financial-project-bar>header,.financial-fields,.financial-fields.five,.financial-item-entry,.scope-change-entry{grid-template-columns:1fr}.transfer-summary{position:static}.ledger-totals{grid-template-columns:1fr 1fr}.site-menu{z-index:95;top:auto;right:10px;bottom:calc(76px + env(safe-area-inset-bottom));width:min(330px,100vw - 20px);position:fixed}.site-menu button{min-height:58px}.site-menu b{font-size:14px}.site-menu small{font-size:11px}.modal-backdrop{z-index:100;padding:0}.modal{width:100%;min-height:100dvh;max-height:100dvh;padding:calc(28px + env(safe-area-inset-top)) 20px calc(30px + env(safe-area-inset-bottom));border-radius:0;margin:0;overflow-y:auto}.modal label{font-size:12px}.modal input,.modal textarea,.modal select{min-height:48px}.primary,.secondary{min-height:46px}.toast{bottom:calc(88px + env(safe-area-inset-bottom));text-align:center;width:calc(100vw - 28px);font-size:13px}.mobile-app-nav{z-index:90;padding:7px 7px calc(7px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff2;border-top:1px solid #dce3df;grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 28px #13231f14}.mobile-app-nav button{color:#6d7874;background:0 0;border:0;border-radius:11px;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-width:0;min-height:56px;padding:4px 2px;display:flex}.mobile-app-nav button span{font-size:20px;line-height:1}.mobile-app-nav button b{font-size:10px}.mobile-app-nav button.active{color:#fff;background:var(--green)}}.installer-auth-page{color:#173b32;background:#edf2ef;place-items:center;min-height:100vh;padding:24px;display:grid}.installer-auth-card{background:#fff;border:1px solid #d8e2dc;border-radius:28px;gap:18px;width:min(460px,100%);padding:38px;display:grid;box-shadow:0 24px 70px #14372d1f}.installer-auth-card h1{margin:0;font-family:Georgia,serif;font-size:clamp(2rem,7vw,3rem);line-height:1}.installer-auth-card p{color:#66736e;margin:0}.installer-auth-card label{gap:7px;font-weight:700;display:grid}.installer-auth-card input{min-height:50px;font:inherit;border:1px solid #cbd8d1;border-radius:12px;padding:0 14px}.installer-auth-card button{color:#fff;cursor:pointer;background:#1f493e;border:0;border-radius:999px;min-height:52px;font-size:1rem;font-weight:800}.installer-auth-card button:disabled{opacity:.55}.installer-auth-card .auth-error{color:#a63f2d;font-weight:700}.installer-auth-card small{color:#75817d;text-align:center}.installer-auth-card .auth-success{color:#1f6b4f;background:#edf7f1;border-radius:12px;padding:12px 14px;font-weight:700}.auth-text-link{color:#1f493e;text-underline-offset:3px;font-weight:800;text-decoration:underline}.auth-text-link.centered{text-align:center}.ledger-phase-add{color:#174b3d;white-space:nowrap;cursor:pointer;background:#edf7f2;border:1px solid #aac8bd;border-radius:999px;min-height:34px;padding:0 10px;font-size:11px;font-weight:800}.ledger-phase-group{background:#f7faf8;border-left:4px solid #b8d7cc;min-width:980px;margin:0 0 10px;overflow:hidden}.ledger-phase-summary{color:#41645a;border-bottom:1px solid #dce7e1;justify-content:space-between;align-items:center;gap:12px;padding:9px 13px;font-size:11px;display:flex}.ledger-phase-summary>div{align-items:center;gap:12px;display:flex}.ledger-phase-summary>button{color:#24594a;cursor:pointer;background:#fff;border:1px solid #b8d7cc;border-radius:999px;align-items:center;gap:7px;padding:6px 10px;font-size:11px;font-weight:800;display:flex}.ledger-phase-summary>button b{font-size:15px}.ledger-phase-group.collapsed .ledger-phase-summary{border-bottom:0}.ledger-phase-row{border-bottom:1px solid #e2ebe6;grid-template-columns:1.5fr .8fr 1fr 1fr 1fr 1fr 96px;align-items:center;gap:8px;padding:10px 18px 10px 14px;font-size:13px;display:grid}.ledger-phase-row:last-child{border-bottom:0}.ledger-phase-row button{color:inherit}.phase-name{text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:8px;min-width:0;padding:7px 9px;display:flex}.phase-name:hover{background:#eef7f3;border-color:#bed9e9}.phase-name>span:last-child{gap:2px;min-width:0;display:grid}.phase-name b{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ledger-phase-row small{color:#71807a;font-size:10px;display:block}.phase-branch{color:#4e8b78;font-size:17px}.phase-date{width:100%;min-height:34px;font:inherit;background:#fff;border:1px solid #d8dfdb;border-radius:8px;padding:7px 8px}.phase-duration{color:#6c7974;font-weight:700}.ledger-phase-row select{background:#fff;border:1px solid #d8dfdb;border-radius:7px;min-height:32px;font-size:13px}.ledger-phase-row .ledger-pay-input{display:block}.ledger-phase-row .ledger-row-actions{display:flex}.ledger-phase-row.calculation-selected{background:#e8f5fd;box-shadow:inset 4px 0 #66abd4}.ledger-phase-row.calculation-selected .phase-name{color:#184f70;background:#d9effb}.installer-transfer-partial{background:#fff8df!important}.installer-transfer-partial .transfer-line-title{text-decoration:none}.installer-transfer-status{margin-top:3px;font-size:9px;line-height:1.35;display:block}.installer-payout-project{gap:0;display:grid}.installer-visible-phases{background:#f3f8f5;border-left:3px solid #91c5b2;border-radius:0 0 12px 12px;margin:-5px 16px 12px 34px;overflow:hidden}.installer-visible-phases header,.installer-visible-phases>div{border-bottom:1px solid #dbe8e1;grid-template-columns:auto 1fr auto auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.installer-visible-phases header{color:#49685e;justify-content:space-between;font-size:12px;display:flex}.installer-visible-phases>div:last-child{border-bottom:0}.installer-visible-phases small{color:#73817c;display:block}.installer-visible-phases em{color:#366959;font-size:11px;font-style:normal;font-weight:700}@media (width<=760px){.ledger-phase-summary{flex-direction:column;align-items:flex-start}.installer-visible-phases{margin-left:14px}.installer-visible-phases>div{grid-template-columns:auto 1fr auto}.installer-visible-phases em{grid-column:2}}.admin-login{background:#eef3f0;place-items:center;min-height:100dvh;padding:24px;display:grid}.admin-login form{background:#fff;border:1px solid #d4ded9;border-radius:20px;gap:18px;width:min(100%,480px);padding:32px;display:grid;box-shadow:0 12px 48px #163c2f12}.admin-login h1{margin:0;font-size:28px;line-height:1.2}.admin-login p,.admin-login label,.admin-login a{font-size:16px;line-height:1.45}.admin-login label{gap:6px;display:grid}.admin-login input{border:1px solid #aabbaf;border-radius:8px;width:100%;min-height:46px;padding:10px;font-size:16px}.admin-login label.remember{align-items:center;gap:10px;display:flex}.admin-login .remember input{width:20px;min-height:20px}.admin-login small{color:#52665e;font-size:14px}.admin-login a{color:#214f41;text-decoration:underline}.ledger-sequence{color:#42685f;font-variant-numeric:tabular-nums;margin-bottom:.3rem;font-size:.875rem;display:block}.financial-project-title{min-width:0}.financial-project-picker>.financial-project-title{align-items:flex-start}.financial-project-picker>.financial-project-title small{font-size:.875rem;font-weight:400}.financial-project-title h3{overflow-wrap:anywhere;cursor:text;margin:8px 0;font-size:1.4rem;line-height:1.3}.financial-project-title input{border:1px solid #789e91;border-radius:8px;width:100%;padding:10px;font-size:1.15rem}.financial-project-title small{margin-top:6px;display:block}.history-project{overflow-wrap:anywhere;margin-top:6px;font-size:.875rem;display:block}.calendar-search{z-index:15;border-bottom:1px solid #dce4e1;padding:12px;position:relative}.calendar-search>label{background:#fff;border:1px solid #bdccc7;border-radius:12px;align-items:center;gap:10px;padding:8px 12px;display:flex}.calendar-search input{background:0 0;border:0;flex:1;width:100%;min-width:0;font-size:1rem}.calendar-search button{cursor:pointer}.calendar-search-results{background:#fff;border:1px solid #bdccc7;border-radius:12px;max-height:50vh;position:absolute;top:100%;left:12px;right:12px;overflow:auto;box-shadow:0 8px 32px #142c3329}.calendar-search-results>button{text-align:left;background:#fff;border:0;border-bottom:1px solid #e3ebe7;width:100%;padding:12px 16px;display:block}.calendar-search-results>button:hover{background:#e7f0fc}.calendar-search-results span{color:#52655f;margin-top:5px;font-size:.875rem;display:block}.calendar-search-results p{padding:12px 16px}.calendar-search-results .search-close{text-align:right;color:#1f5545}.calendar-day.search-match{outline-offset:-3px;background:#edf5ff;outline:3px solid #438bdf;box-shadow:inset 0 0 0 3px #438bdf}.unavailability-manager{background:#fff;border:1px solid #dce4e1;border-radius:18px;grid-column:1/-1;padding:24px}.unavailability-manager h3{font-size:1.4rem}.unavailability-manager p{color:#53655e;margin:8px 0 16px;font-size:1rem}.unavailability-manager form{flex-wrap:wrap;align-items:end;gap:14px;display:flex}.unavailability-manager label{flex:170px;gap:6px;font-size:.95rem;display:grid}.unavailability-manager input,.unavailability-manager select{border:1px solid #bdccc7;border-radius:8px;width:100%;min-width:0;padding:10px;font-size:1rem}.unavailability-manager small{font-size:.875rem}.unavailable-list{max-height:340px;overflow:auto}.unavailable-list article{border-top:1px solid #dce4e1;justify-content:space-between;align-items:center;gap:10px;padding:12px 0;display:flex}.unavailable-list span{margin-top:5px;display:block}.unavailable-list button{cursor:pointer;background:#fbe6df;border:0;border-radius:50%;min-width:36px;height:36px}.crew-availability .unavailable{color:#853b22;background:#ffe2da}.installer-option:disabled{opacity:.6;cursor:not-allowed}.day-event.appointment-tbc,.agenda-appointment.appointment-tbc{border:4px solid #f0c;outline:none;box-shadow:inset 0 0 0 2px #fff}.day-event.appointment-tbc{padding:12px 8px 6px}.day-event.appointment-tbc,.agenda-appointment.appointment-tbc{margin-top:10px;position:relative;overflow:visible}.day-event.appointment-tbc>span.pending-confirmation-alert,.agenda-appointment .pending-confirmation-alert{z-index:6;color:#fff;text-overflow:clip;background:#dc2626;border:2px solid #fff;border-radius:50%;flex:none;place-items:center;width:22px;height:22px;display:grid;position:absolute;top:-13px;left:0;overflow:visible;box-shadow:0 2px 5px #7f1d1d66;font:900 16px/1 system-ui,sans-serif!important}.tbc-label{color:#fff;font:inherit;vertical-align:baseline;background:#ad008b;border-radius:4px;margin-right:4px;padding:2px 4px;font-weight:800;line-height:1.2;display:inline-block}@media (width<=900px){.day-event.appointment-tbc{padding:12px 2px 4px}.day-event .tbc-label{margin-right:2px;padding:1px 2px}}.appointment-confirmation-choice{border:1px solid #bdccc7;border-radius:10px;flex-wrap:nowrap;grid-column:1/-1;align-items:center;gap:16px;min-width:0;margin:0;padding:2px 12px;display:flex}.appointment-confirmation-choice>strong{margin-right:auto;font-size:.875rem;font-weight:700}.schedule-fields .appointment-confirmation-choice label{text-transform:none;letter-spacing:normal;white-space:nowrap;cursor:pointer;flex-direction:row;align-items:center;gap:6px;min-height:44px;margin:0;font-size:.875rem;display:flex}.schedule-fields .appointment-confirmation-choice input{accent-color:#b00086;flex-shrink:0;width:18px;height:18px;margin:0}@media (width<=420px){.appointment-confirmation-choice{gap:8px;padding-inline:8px}.schedule-fields .appointment-confirmation-choice label{gap:4px}}.appointment-confirmation-bar{background:#f4f8f6;border:1px solid #bdccc7;border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:18px;padding:14px;display:flex}.appointment-confirmation-bar.is-tbc{background:#fff4fc;border:2px solid #e000aa}.appointment-confirmation-bar strong{flex:180px;font-size:1rem}.appointment-confirmation-bar button{min-height:42px}.modal-backdrop.scheduling-backdrop{z-index:110;height:100dvh;padding:max(16px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));overscroll-behavior:none;grid-template-rows:minmax(0,1fr);place-items:center;display:grid;overflow:hidden}.scheduling-backdrop .schedule-modal{overscroll-behavior:contain;scrollbar-gutter:stable;scrollbar-width:auto;scrollbar-color:#829b91 #e8eeeb;-webkit-overflow-scrolling:touch;border-radius:16px;width:min(760px,100%);min-height:0;max-height:100%;margin:0;padding:28px;overflow-y:auto}.scheduling-backdrop .schedule-modal::-webkit-scrollbar{width:10px}.scheduling-backdrop .schedule-modal::-webkit-scrollbar-thumb{background:#829b91;border:2px solid #e8eeeb;border-radius:8px}.scheduling-backdrop .schedule-modal::-webkit-scrollbar-track{background:#e8eeeb;border-radius:8px}@media (width<=600px){.modal-backdrop.scheduling-backdrop{padding:max(12px, env(safe-area-inset-top)) 12px max(12px, env(safe-area-inset-bottom))}.scheduling-backdrop .schedule-modal{padding:24px 16px}}.purchase-todos{color:#3e2b16;min-width:0;margin:0 0 12px}.purchase-todos header,.wallpaper-purchase-details header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.purchase-todos>header{margin-bottom:8px}.purchase-todos h2{margin:0;font-family:inherit;font-size:15px;font-weight:700;line-height:1.4}.purchase-pending-count{color:#8f4b13;background:#ffe4b8;border-radius:20px;padding:3px 9px;font-size:12px;font-weight:750}.purchase-todo-strip{scroll-snap-type:x proximity;gap:10px;padding:2px 2px 8px;display:flex;overflow-x:auto}.purchase-todo-strip>button{text-align:left;color:#453018;cursor:pointer;scroll-snap-align:start;background:#fff8e9;border:1px solid #d89839;border-left:4px solid #cb791d;border-radius:14px;flex:0 0 calc(25% - 7.5px);align-items:center;gap:10px;min-width:230px;min-height:104px;padding:13px;display:flex}.purchase-todo-strip>button:hover{background:#ffefd4;border-color:#b56918}.purchase-todo-strip>button:focus-visible,.purchase-todo-strip:focus-visible{outline-offset:2px;outline:3px solid #276b98}.purchase-todo-copy{flex:1;min-width:0}.purchase-todo-arrow{color:#9a5719;flex-shrink:0}.purchase-todo-message{background:#fff8e9;border:1px solid #e5d4b8;border-radius:12px;margin:0;padding:12px 14px;font-size:14px}.purchase-todo-strip strong,.purchase-todo-strip small{white-space:normal;overflow-wrap:anywhere;display:block}.purchase-todo-strip strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:15px;line-height:1.35;display:-webkit-box;overflow:hidden}.purchase-todo-strip small{margin-top:5px;font-size:12px;line-height:1.4}.purchase-todo-icon{color:#fff;background:#bd6219;border-radius:50%;flex-shrink:0;place-items:center;width:22px;height:22px;font-weight:800;display:grid}.wallpaper-purchase-details{color:#3e2b16;background:#fff9ee;border:1px solid #e2b46e;border-radius:14px;margin:0 0 22px;padding:20px}.wallpaper-purchase-details.purchased{background:#eef8f2;border-color:#85b598}.wallpaper-purchase-details h3{margin:4px 0;font-size:23px}.wallpaper-purchase-details h4{margin:18px 0 8px;font-size:16px}.wallpaper-purchase-details p,.purchase-copy{font-size:15px;line-height:1.6}.purchase-copy{white-space:pre-wrap;overflow-wrap:anywhere}.purchase-copy a{color:#126656;text-decoration:underline}.purchase-status{background:#fff;border:1px solid;border-radius:30px;padding:6px 10px;font-size:13px;font-weight:750}.purchase-warning{color:#9a4319;font-weight:700}@media (width<=600px){.purchase-todo-strip>button{flex-basis:min(250px,78vw);min-width:0}.wallpaper-purchase-details{padding:15px}}.time-page{color:#163e35;max-width:900px;margin:auto;padding:22px 18px}.time-page-header{border-bottom:1px solid #cedbd5;justify-content:space-between;align-items:center;gap:16px;padding:8px 0 24px;display:flex}.time-page-header>a{letter-spacing:.08em;color:#1e493e;font-weight:800;text-decoration:none}.time-page-header span{letter-spacing:.25em;font-size:12px;display:block}.time-page-header>div{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.time-page footer{text-align:center;color:#5c716b;padding:24px;font-size:13px}.time-panel{color:#173d34;min-width:0;font:16px/1.5 Arial,sans-serif}.time-panel *{box-sizing:border-box}.time-panel button,.time-rate-settings button{color:#173d34;cursor:pointer;background:#fff;border:1px solid #bacdc5;border-radius:9px;min-height:44px;padding:11px 15px;font:600 14px/1.3 Arial,sans-serif}.time-panel button:disabled{opacity:.5;cursor:default}.time-panel a{color:#155d89;text-decoration:underline}.time-panel :focus-visible,.time-rate-settings :focus-visible{outline-offset:3px;outline:3px solid #339bce}.time-panel label,.time-rate-settings label{flex-direction:column;gap:6px;font-size:14px;font-weight:600;display:flex}:is(.time-panel label:has(input[type=checkbox]),.time-rate-settings label:has(input[type=checkbox])){flex-direction:row;align-items:center;gap:10px}.time-panel input:not([type=checkbox]),.time-panel select,.time-rate-settings input:not([type=checkbox]),.time-rate-settings select{color:#173d34;background:#fff;border:1px solid #bacdc5;border-radius:8px;width:100%;min-height:44px;padding:10px;font:16px Arial,sans-serif}.time-panel input[type=checkbox],.time-rate-settings input[type=checkbox]{accent-color:#1e493e;flex-shrink:0;width:20px;height:20px}.time-panel small{color:#536a61;display:block}.time-panel h2,.time-panel h3{margin:8px 0;font-family:Georgia,serif}.time-clock{text-align:center;background:#eef5f1;border:1px solid #cbded3;border-radius:20px;margin:24px 0;padding:28px}.time-today{margin:4px 0}.time-now{font-variant-numeric:tabular-nums;letter-spacing:-.04em;font-size:clamp(32px,7vw,54px);display:block}.time-elapsed{margin:12px;font-size:24px;display:block}.time-panel .time-main-action{color:#fff;background:#1e493e;border-color:#1e493e;min-width:170px;padding:17px 24px;font-size:19px;font-weight:700}.time-clock>.time-main-action{width:100%;margin-top:16px}.time-project-picker{text-align:left;grid-template-columns:1fr 1.4fr;gap:12px;margin:20px 0;display:grid}.time-help{color:#536a61;font-size:13px;line-height:1.5}.time-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:14px;display:flex}.time-clock .time-actions{justify-content:center}.time-toolbar{flex-wrap:wrap;align-items:end;gap:12px;margin:24px 0 16px;display:flex}.time-summary{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.time-summary>div{background:#fff;border:1px solid #d4dfd9;border-radius:12px;padding:16px}.time-summary strong{margin-top:6px;font-size:23px;display:block}.time-summary small{font-size:12px}.time-form{background:#f7fbf8;border:2px solid #91b5a7;border-radius:14px;gap:14px;margin:20px 0;padding:20px;display:grid}.time-form header,.time-audit header{justify-content:space-between;align-items:center;gap:12px;display:flex}.time-form p{margin:0}.time-error,.time-warning,.time-success{border-radius:9px;margin:12px 0;padding:12px 14px}.time-error{color:#983e2e;background:#fff0ed;border:1px solid #e7a394}.time-error button{margin:8px}.time-warning{color:#775918;background:#fff5d9;font-size:14px}.time-success{color:#1b6743;background:#def3e6}.time-selection{border-bottom:1px solid #cadbd2;flex-wrap:wrap;align-items:center;gap:12px;margin-top:10px;padding:16px 0;display:flex}.time-selection>label:has(input){font-size:13px}.time-records{gap:14px;margin-top:16px;display:grid}.time-record{background:#fff;border:1px solid #d1dfd8;border-left:4px solid #6a9685;border-radius:12px;padding:18px}.time-record.selected{background:#eef8ff;border-color:#7cbbe4}.time-record header{justify-content:space-between;align-items:center;gap:12px;display:flex}.time-record p{margin:8px 0;font-size:14px}.time-record-total{justify-content:space-between;gap:10px;font-size:21px;display:flex}.time-badge{white-space:nowrap;background:#e4efe8;border-radius:6px;padding:4px 8px;font-size:11px}.time-badge.reimbursement{color:#725318;background:#fff0d6}.time-locations{color:#5c716b;flex-wrap:wrap;gap:12px;font-size:12px;display:flex}.time-audit{background:#fff;border:1px solid #cedbd5;border-radius:12px;max-height:440px;margin:18px 0;padding:16px;overflow:auto}.time-audit p{overflow-wrap:anywhere;border-bottom:1px solid #e2e9e4;padding:8px 0;font-size:13px}.time-review,.time-rate-settings{border-top:1px solid #d1dfd8;padding:16px}.time-review>summary,.time-rate-settings>summary{cursor:pointer;color:#1e493e;font-weight:700}.time-rate-settings>div{gap:12px;padding-top:14px;display:grid}.time-rate-settings p{font-size:12px}.time-admin .time-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.time-admin .time-summary strong{font-size:18px}.time-admin .time-project-picker{grid-template-columns:1fr}.time-admin .time-record header{align-items:start}.time-admin .time-record header label{overflow-wrap:anywhere}@media (width<=600px){.time-page{padding:14px 12px}.time-page-header{align-items:start}.time-page-header>div{justify-content:end;font-size:12px}.time-clock{padding:22px 16px}.time-project-picker,.time-summary{grid-template-columns:1fr}.time-summary>div{justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.time-toolbar>label{flex:1;min-width:120px}.time-record header{align-items:start}.time-record header label{font-size:16px}.time-record{padding:14px}.time-summary strong{margin:0;font-size:22px}.time-admin .time-summary{grid-template-columns:1fr}.time-panel .time-main-action{flex:1;min-width:0}.time-actions button{flex:1}.time-review{padding:12px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
