@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}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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;--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,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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;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:where(:not(iframe)){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{.grid{display:grid}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}}:root{color:#1b2940;font-synthesis:none;text-rendering:optimizelegibility;--navy:#173968;--navy-2:#24538d;--text:#1b2940;--muted:#68778d;--border:#dce2e9;--soft-border:#e8ecf1;--surface:#fff;--surface-subtle:#f7f8fa;--focus:#2f6fed;background:#f3f5f8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0}body{min-width:1120px;overflow:hidden}button,input,select{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--focus)}@supports (color:color-mix(in lab,red,red)){button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid color-mix(in srgb,var(--focus) 48%,transparent)}}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline-offset:1px}.app-shell{background:#f3f5f8;flex-direction:column;min-width:1120px;height:100vh;display:flex;overflow:hidden}.topbar{z-index:20;background:#fff;border-bottom:1px solid #d9e0e8;flex:0 0 66px;justify-content:space-between;align-items:center;gap:22px;min-height:66px;padding:0 16px;display:flex;box-shadow:0 1px 3px #1428430a}.brand-block{flex:none;align-items:center;gap:10px;display:flex}.brand-mark{color:#fff;letter-spacing:-.04em;background:linear-gradient(145deg,#214c84,#102f5a);border-radius:9px;place-items:center;width:34px;height:34px;font-size:17px;font-weight:800;display:grid;box-shadow:0 4px 10px #17396833}.brand-title-row{align-items:center;gap:8px;display:flex}.brand-title-row h1{color:var(--navy);letter-spacing:-.02em;margin:0;font-size:17px;font-weight:760}.brand-block p{color:#7b8799;margin:2px 0 0;font-size:10.5px}.prototype-badge{color:#295587;letter-spacing:.04em;text-transform:uppercase;background:#eff5fc;border:1px solid #bdd0e8;border-radius:999px;padding:2px 6px;font-size:9px;font-weight:750}.toolbar{white-space:nowrap;justify-content:flex-end;align-items:center;gap:6px;min-width:0;display:flex}.toolbar-button,.date-picker-button,.icon-button{color:#3c4a5e;cursor:pointer;background:#fff;border:1px solid #d7dee7;border-radius:6px;justify-content:center;align-items:center;gap:6px;height:32px;font-size:11px;font-weight:650;transition:border-color .12s,background .12s;display:inline-flex}.toolbar-button{padding:0 9px}.toolbar-button:hover,.date-picker-button:hover,.icon-button:hover:not(:disabled){background:#f8fafc;border-color:#b7c4d3}.toolbar-button.primary-button{border-color:var(--navy);color:#fff;background:var(--navy);box-shadow:0 2px 5px #17396826}.toolbar-button.primary-button:hover{background:#24538d;border-color:#24538d}.icon-button{width:32px;padding:0}.icon-button:disabled{color:#b9c0cb;cursor:not-allowed;background:#f6f7f8}.toolbar-cluster{display:inline-flex}.toolbar-cluster .icon-button{border-radius:0}.toolbar-cluster .icon-button:first-child{border-radius:6px 0 0 6px}.toolbar-cluster .icon-button:last-child{border-radius:0 6px 6px 0;margin-left:-1px}.date-picker-button{min-width:116px;padding:0 9px;position:relative;overflow:hidden}.date-picker-button input{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.segmented{background:#f5f7f9;border:1px solid #d7dee7;border-radius:6px;height:32px;padding:2px;display:inline-flex}.segmented button{color:#66758a;cursor:pointer;background:0 0;border:0;border-radius:4px;padding:0 8px;font-size:10.5px;font-weight:650}.segmented button.is-active{color:var(--navy);background:#fff;box-shadow:0 1px 3px #18315221}.popover{position:relative}.popover>summary,.more-menu>summary{list-style:none}.popover>summary::-webkit-details-marker{display:none}.more-menu>summary::-webkit-details-marker{display:none}.popover-card{z-index:100;background:#fff;border:1px solid #d9e0e8;border-radius:10px;width:290px;padding:14px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 15px 40px #172d482e}.popover-title-row{justify-content:space-between;align-items:flex-start;margin-bottom:12px;display:flex}.popover-title-row h3{color:var(--navy);margin:1px 0 0;font-size:15px}.text-button{color:#2f6fed;cursor:pointer;background:0 0;border:0;padding:2px 0;font-size:10.5px;font-weight:700}.filter-count{color:#fff;background:#2f6fed;border-radius:99px;place-items:center;min-width:16px;height:16px;font-size:9px;display:grid}.has-filter{color:#21558f;background:#f2f7fd;border-color:#9cb9df}.popover-card label{color:#58677b;gap:5px;margin-top:9px;font-size:10.5px;font-weight:650;display:grid}.popover-card input,.popover-card select{color:#26364c;background:#fff;border:1px solid #d8dfe7;border-radius:6px;width:100%;height:34px;padding:0 9px;font-size:11px;font-weight:500}.popover-hint{color:#7a8798;background:#f8f9fb;border-top:1px solid #e7ebf0;margin:12px -14px -14px;padding:9px 14px;font-size:9.5px}.workspace{flex:1;grid-template-columns:286px minmax(650px,1fr) 326px;gap:8px;min-height:0;padding:8px;display:grid;overflow:auto hidden}.panel{background:#fff;border:1px solid #dce2e9;border-radius:9px;min-height:0;box-shadow:0 1px 2px #172c4808}.input-panel,.follow-panel,.calendar-panel{flex-direction:column;min-width:0;display:flex;overflow:hidden}.panel-heading{justify-content:space-between;align-items:center;min-height:57px;padding:10px 12px 8px;display:flex}.eyebrow{color:#8290a3;letter-spacing:.11em;text-transform:uppercase;margin:0;font-size:8.5px;font-weight:800}.panel-heading h2,.calendar-panel-heading h2{color:var(--navy);letter-spacing:-.01em;margin:2px 0 0;font-size:15px;font-weight:750}.total-count{min-width:25px;height:25px;color:var(--navy);background:#edf2f8;border-radius:7px;place-items:center;font-size:11px;font-weight:800;display:grid}.job-tabs,.follow-tabs{border-top:1px solid var(--soft-border);border-bottom:1px solid var(--border);height:38px;padding:0 9px;display:flex}.job-tabs button,.follow-tabs button{color:#748195;cursor:pointer;background:0 0;border:0;flex:1;justify-content:center;align-items:center;gap:5px;min-width:0;padding:0 4px;font-size:10px;font-weight:650;display:flex;position:relative}.job-tabs button:after,.follow-tabs button:after{content:"";background:0 0;border-radius:3px 3px 0 0;height:2px;position:absolute;bottom:-1px;left:5px;right:5px}.job-tabs button.is-active,.follow-tabs button.is-active{color:var(--navy)}.job-tabs button.is-active:after,.follow-tabs button.is-active:after{background:var(--navy)}.job-tabs b,.follow-tabs b{background:#edf0f4;border-radius:99px;place-items:center;min-width:17px;height:17px;font-size:9px;display:grid}.job-tabs button.is-active b,.follow-tabs button.is-active b{color:#fff;background:var(--navy)}.input-controls{grid-template-columns:minmax(0,1fr) 101px;gap:6px;padding:9px 9px 7px;display:grid}.search-field,.sort-control{color:#7b8899;background:#fff;border:1px solid #dce2e9;border-radius:6px;align-items:center;gap:6px;min-width:0;height:32px;padding:0 8px;display:flex}.search-field:focus-within{border-color:#9ab8de;box-shadow:0 0 0 2px #2f6fed14}.search-field input{min-width:0;color:var(--text);background:0 0;border:0;outline:0;flex:1;font-size:10.5px}.search-field input::placeholder{color:#9aa5b3}.search-field button{color:#8490a0;cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid}.sort-control{gap:3px;padding-right:4px}.sort-control select{color:#576679;background:0 0;border:0;outline:0;flex:1;min-width:0;font-size:9.5px}.job-list,.follow-list{overscroll-behavior:contain;scrollbar-color:#c8d0da transparent;scrollbar-width:thin;flex:1;min-height:0;padding:2px 8px 8px;overflow-y:auto}.job-card{cursor:grab;touch-action:none;background:#fff;border:1px solid #dfe4eb;border-radius:8px;margin-bottom:7px;padding:10px 10px 8px 13px;transition:border-color .12s,box-shadow .12s;position:relative;overflow:hidden;box-shadow:0 1px 2px #142b460a}.job-card:hover{border-color:var(--frequency)}@supports (color:color-mix(in lab,red,red)){.job-card:hover{border-color:color-mix(in srgb,var(--frequency) 35%,#dfe4eb)}}.job-card:hover{box-shadow:0 3px 9px #142b4614}.job-card:active{cursor:grabbing}.job-card.is-disabled{opacity:.75;cursor:not-allowed}.job-card.is-disabled[role=button]{cursor:pointer}.job-card[aria-pressed=true]{border-color:#2f6fed;box-shadow:0 0 0 2px #2f6fed24}.job-card-accent,.follow-up-accent{background:var(--frequency);width:3px;position:absolute;inset:0 auto 0 0}.job-card-top{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.job-card h3,.follow-up-card h3{color:#203149;margin:0;font-size:12px;font-weight:750}.job-address{color:#778597;align-items:flex-start;gap:3px;margin:3px 0 0;font-size:9px;line-height:1.3;display:flex}.job-address svg{flex:none}.drag-grip{color:#a2acb9;flex:none}.job-meta-row{align-items:center;gap:6px;margin-top:9px;display:flex}.frequency-badge,.duration-chip{border-radius:99px;align-items:center;gap:4px;height:21px;padding:0 7px;font-size:8.5px;font-weight:750;display:inline-flex}.frequency-badge{color:var(--frequency);background:var(--frequency-bg)}.frequency-badge>span{font-size:9px;font-weight:900}.frequency-badge.is-compact{place-items:center;width:20px;padding:0;display:grid}.duration-chip{color:#58687c;background:#f1f3f6}.job-card-bottom{color:#8290a1;border-top:1px solid #eef1f4;justify-content:space-between;align-items:center;margin-top:8px;padding-top:7px;font-size:8.5px;display:flex}.job-card-bottom strong{color:#526176;font-weight:750}.preferred-worker{color:#5e6e82;align-items:center;gap:4px;font-weight:650;display:flex}.worker-avatar{object-fit:cover;color:#315885;background:#dce8f5;border:2px solid #fff;border-radius:50%;flex:none;place-items:center;width:27px;height:27px;font-size:8px;font-weight:850;display:grid;box-shadow:0 0 0 1px #cad7e5}.worker-avatar.is-small{border-width:1px;width:18px;height:18px;font-size:6.5px}.muted{color:#9aa4b1}.status-ribbon{color:#8b590d;letter-spacing:.03em;text-transform:uppercase;background:#fff2d8;border-radius:3px;padding:2px 5px;font-size:7px;font-weight:800;position:absolute;top:36px;right:7px}.status-ribbon.cancelled{color:#a53838;background:#fdeaea}.linked-schedule{color:#5f7085;background:#f3f5f8;border-radius:5px;align-items:center;gap:4px;margin-top:8px;padding:6px;font-size:8px;font-weight:750;display:flex}.linked-schedule svg{flex:none}.linked-schedule.is-selected{color:#1f5fa8;background:#e8f2ff}.unschedule-zone{color:#748398;text-align:center;background:#f8f9fb;border:1px dashed #b9c5d3;border-radius:7px;flex:none;justify-content:center;align-items:center;gap:7px;min-height:43px;margin:0 8px 8px;padding:6px 10px;font-size:9px;font-weight:650;transition:all .12s;display:flex}.unschedule-zone.is-over{color:#245ba2;background:#edf5ff;border-color:#2f6fed;box-shadow:inset 0 0 0 1px #2f6fed1f}.drag-preview-card{border:1px solid var(--frequency);align-items:center;gap:9px;width:210px;display:flex}@supports (color:color-mix(in lab,red,red)){.drag-preview-card{border:1px solid color-mix(in srgb,var(--frequency) 32%,#dce2e9)}}.drag-preview-card{background:#fffffff5;border-radius:8px;padding:10px;box-shadow:0 12px 30px #142c493b}.drag-preview-dot{background:var(--frequency);border-radius:4px;width:5px;height:34px}.drag-preview-card div:last-child{gap:2px;display:grid}.drag-preview-card strong{font-size:11px}.drag-preview-card span{color:#6e7c8e;font-size:9px}.calendar-panel-heading{border-bottom:1px solid #e2e7ed;flex:0 0 57px;justify-content:space-between;align-items:center;gap:12px;min-height:57px;padding:8px 12px;display:flex}.calendar-legend{color:#758397;align-items:center;gap:11px;font-size:8.5px;display:flex}.calendar-legend>span{align-items:center;gap:4px;display:flex}.legend-dot{background:#eef1f5;border-radius:2px;width:7px;height:7px}.legend-dot.scheduled{background:#2f6fed}.snap-label{color:#657387;background:#f7f8fa;border:1px solid #dfe5eb;border-radius:4px;padding:3px 5px;font-weight:700}.time-grid-scroll,.month-scroll{overscroll-behavior:contain;scrollbar-color:#bac4d0 #f4f6f8;scrollbar-width:thin;flex:1;min-height:0;position:relative;overflow:auto}.time-grid-canvas{min-width:100%;position:relative}.calendar-sticky-header{z-index:25;background:#fff;position:sticky;top:0;box-shadow:0 1px 3px #1a304a12}.calendar-group-row,.calendar-subheader-row{height:46px;display:flex}.calendar-subheader-row{border-top:1px solid #e6eaf0;border-bottom:1px solid #dce2e9;height:31px}.calendar-corner{z-index:30;color:#929dad;letter-spacing:.03em;background:#fafbfc;border-right:1px solid #dce2e9;flex:none;justify-content:center;align-items:center;font-size:7px;font-weight:700;display:flex;position:sticky;left:0}.calendar-group{background:#fff;border-right:1px solid #d7dee7;flex:none;justify-content:center;align-items:center;gap:8px;display:flex}.calendar-group strong{color:#263b57;font-size:10.5px;display:block}.calendar-group span{color:#8290a1;margin-top:1px;font-size:7.5px;display:block}.day-group-heading{text-align:center}.calendar-subheader{color:#607087;background:#f8f9fb;border-right:1px solid #e0e5eb;flex:none;justify-content:center;align-items:center;gap:4px;font-size:8.5px;display:flex}.calendar-subheader strong{color:#42536a;font-size:9px}.calendar-subheader.is-today{color:#1d5aa1;background:#eef5fd}.calendar-subheader.is-today strong{color:#1d5aa1}.time-grid-body{display:flex;position:relative}.time-label-column{z-index:10;background:repeating-linear-gradient(#fafbfc 0 95px,#e0e5eb 95px 96px);border-right:1px solid #d6dde6;flex:none;position:sticky;left:0}.time-label-column span{color:#7c899b;font-size:7.5px;font-weight:650;position:absolute;right:8px}.calendar-columns{display:flex}.calendar-column{background:#fff;border-right:1px solid #dde3ea;flex:none;position:relative}.calendar-column.is-today{background:#fbfdff}.time-slot{border-bottom:1px solid #eff2f5;width:100%;transition:background 70ms}.time-slot.is-hour{border-bottom-color:#dce2e9}.time-slot.is-over{z-index:2;background:#2f6fed1a;border-top:1px solid #2f6fed;border-bottom:1px solid #2f6fed;position:relative;box-shadow:inset 3px 0 #2f6fed}.scheduled-card{z-index:5;border:1px solid var(--frequency);min-height:21px;position:absolute;left:3px;right:3px}@supports (color:color-mix(in lab,red,red)){.scheduled-card{border:1px solid color-mix(in srgb,var(--frequency) 43%,#d7dfe7)}}.scheduled-card{border-left:3px solid var(--frequency);color:#263951;background:var(--appointment-bg);cursor:grab;touch-action:none;border-radius:5px;padding:5px 6px 7px;overflow:hidden;box-shadow:0 1px 3px #192f4a1c}.scheduled-card:hover{z-index:7;box-shadow:0 4px 10px #192f4a29}.scheduled-card.is-dragging{opacity:.2}.scheduled-card.is-selected{z-index:9;border-color:#1f5fa8;box-shadow:0 0 0 2px #2f6fed3d,0 7px 18px #192f4a33}.scheduled-card.is-cancelled{color:#556272;background:#f1f3f5;border-color:#a7afb9 #a7afb9 #a7afb9 #6b7280}.scheduled-card.is-short{padding-top:3px}.appointment-title-row{justify-content:space-between;align-items:center;gap:4px;display:flex}.appointment-title-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:800;overflow:hidden}.appointment-title-row>span{color:#fff;background:var(--frequency);border-radius:4px;place-items:center;min-width:15px;height:15px;font-size:6.5px;font-weight:900;display:grid}.appointment-time{color:#52667e;margin:2px 0 0;font-size:7.5px;font-weight:700}.appointment-address{color:#68788c;align-items:flex-start;gap:3px;margin:3px 0 0;font-size:7px;line-height:1.2;display:flex;overflow:hidden}.appointment-address svg{flex:none;margin-top:1px}.appointment-worker{color:#66758a;text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:4px;margin-top:5px;font-size:7px;display:flex;overflow:hidden}.resize-handle{cursor:ns-resize;touch-action:none;background:0 0;border:0;place-items:center;height:7px;padding:0;display:grid;position:absolute;bottom:0;left:0;right:0}.resize-handle span{background:var(--frequency);border-radius:99px;width:20px;height:2px}@supports (color:color-mix(in lab,red,red)){.resize-handle span{background:color-mix(in srgb,var(--frequency) 55%,#fff)}}.month-scroll{background:#f8f9fb}.month-grid{background:#dfe4ea;grid-template-rows:30px repeat(6,minmax(132px,1fr));grid-template-columns:repeat(7,minmax(132px,1fr));gap:1px;min-width:924px;min-height:100%;display:grid}.month-weekday{color:#5f6e82;letter-spacing:.05em;text-transform:uppercase;background:#f7f9fb;justify-content:center;align-items:center;font-size:9px;font-weight:800;display:flex}.month-cell{background:#fff;min-height:132px;padding:6px;position:relative}.month-cell.is-outside{color:#a8b0bc;background:#f8f9fa}.month-cell.is-over{background:#eef6ff;box-shadow:inset 0 0 0 2px #2f6fed}.month-date{color:#526277;border-radius:50%;place-items:center;width:21px;height:21px;font-size:9px;font-weight:750;display:grid}.month-cell.is-today .month-date{color:#fff;background:#2f6fed}.month-events{gap:3px;margin-top:3px;display:grid}.month-appointment{border:0;border-left:3px solid var(--frequency);color:#35475f;background:var(--frequency);border-radius:3px;align-items:start;gap:1px;min-width:0;min-height:43px;padding:3px 4px;display:grid;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.month-appointment{background:color-mix(in srgb,var(--frequency) 10%,#fff)}}.month-appointment{cursor:grab;text-align:left;text-overflow:ellipsis;white-space:nowrap;touch-action:none;font-size:7.5px;font-weight:700}.month-appointment.is-expanded{z-index:6;background:var(--frequency);gap:3px;min-height:128px;padding:5px 6px;overflow:visible}@supports (color:color-mix(in lab,red,red)){.month-appointment.is-expanded{background:color-mix(in srgb,var(--frequency) 14%,#fff)}}.month-appointment.is-expanded{box-shadow:inset 0 0 0 1px var(--frequency),0 6px 16px #192f4a24}@supports (color:color-mix(in lab,red,red)){.month-appointment.is-expanded{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--frequency) 32%,#d8e0e8),0 6px 16px #192f4a24}}.month-appointment.is-expanded{white-space:normal}.month-appointment.is-selected{box-shadow:inset 0 0 0 1px #1f5fa8,0 0 0 2px #2f6fed2e}.month-appointment.is-cancelled{color:#556272;background:#f1f3f5;border-left-color:#6b7280}.month-appointment-main{align-items:center;gap:4px;min-width:0;display:flex}.month-appointment-main time{color:var(--frequency);font-size:7px;font-weight:850}.month-appointment-main strong,.month-appointment-address,.month-appointment-worker{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.month-appointment-main strong{font-size:7.5px}.month-appointment.is-expanded .month-appointment-main strong{font-size:8.5px}.month-appointment-address{color:#718096;font-size:6.8px;font-weight:650}.month-appointment.is-expanded .month-appointment-address{text-overflow:unset;white-space:normal;line-height:1.25;display:block;overflow:visible}.month-appointment-worker{color:#5f7085;align-items:center;gap:3px;font-size:6.8px;font-weight:750;display:flex}.month-appointment-worker .worker-avatar.is-small{width:13px;height:13px;font-size:5px}.month-appointment-details{border-top:1px solid var(--frequency);gap:2px;margin-top:2px;display:grid}@supports (color:color-mix(in lab,red,red)){.month-appointment-details{border-top:1px solid color-mix(in srgb,var(--frequency) 18%,#e8edf2)}}.month-appointment-details{color:#53657c;white-space:normal;padding-top:4px;font-size:6.8px;line-height:1.25}.month-appointment-details>span{grid-template-columns:42px minmax(0,1fr);gap:5px;display:grid}.month-appointment-details b{color:#758397;text-transform:uppercase;font-size:6.5px;font-weight:850}.calendar-context-menu{z-index:80;background:#fff;border:1px solid #d8e0e8;border-radius:7px;width:204px;padding:5px;position:fixed;box-shadow:0 14px 34px #192f4a38}.context-menu-heading{border-bottom:1px solid #eef1f4;gap:2px;padding:7px 7px 8px;display:grid}.context-menu-heading strong{color:#203149;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.context-menu-heading span{color:#758397;font-size:8px;font-weight:700}.calendar-context-menu button{color:#43556e;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:5px;align-items:center;gap:7px;width:100%;height:29px;padding:0 7px;font-size:9px;font-weight:700;display:flex}.calendar-context-menu button:hover{background:#f1f4f7}.calendar-context-menu .danger-item{color:#a13c3c}.calendar-context-menu .danger-item:hover{background:#fdeeee}.calendar-context-menu hr{background:#eef1f4;border:0;height:1px;margin:4px 2px}.more-events{color:#708096;padding-left:5px;font-size:7.5px;font-weight:700}.follow-list{background:#fafbfc;padding-top:8px}.follow-up-card{background:#fff;border:1px solid #dfe4ea;border-radius:8px;margin-bottom:8px;padding:10px 10px 9px 13px;position:relative;overflow:visible;box-shadow:0 1px 3px #142a460d}.follow-up-card.is-complete{opacity:.75}.follow-up-accent{border-radius:8px 0 0 8px}.follow-card-header,.follow-client,.follow-header-actions{align-items:center;display:flex}.follow-card-header{justify-content:space-between;gap:8px}.follow-client{gap:7px;min-width:0}.follow-client>div{min-width:0}.follow-client h3{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.follow-client div>span{color:#7c899b;font-size:8px}.frequency-icon{color:#fff;background:var(--frequency);border-radius:7px;flex:none;place-items:center;width:25px;height:25px;font-size:8px;font-weight:900;display:grid}.follow-header-actions{gap:4px}.follow-header-actions time{color:#8c97a6;font-size:7.5px}.more-menu{position:relative}.more-menu>summary{color:#7c899b;cursor:pointer;border-radius:4px;place-items:center;width:24px;height:24px;display:grid}.more-menu>summary:hover{background:#f0f2f5}.more-menu>div{z-index:30;background:#fff;border:1px solid #dce2e9;border-radius:6px;width:132px;padding:4px;position:absolute;top:25px;right:0;box-shadow:0 8px 20px #1a2f4b29}.more-menu button{color:#526176;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:4px;align-items:center;gap:6px;width:100%;height:27px;padding:0 6px;font-size:9px;display:flex}.more-menu button:hover{background:#f2f4f7}.change-type-row{align-items:center;gap:6px;margin-top:8px;display:flex}.change-type{color:#24568c;letter-spacing:.05em;text-transform:uppercase;background:#e8f1fb;border-radius:3px;padding:2px 5px;font-size:7px;font-weight:850}.change-type.moved{color:#825415;background:#fff0d8}.change-type.resized{color:#6542a3;background:#f0eafa}.change-type.removed,.change-type.cancelled{color:#a13c3c;background:#fdeaea}.change-type.uncancelled{color:#24568c;background:#e8f1fb}.change-type-row>span:last-child{color:#8b96a5;font-size:7.5px}.change-schedule{background:#f8f9fb;border:1px solid #e6eaf0;border-radius:5px;margin-top:7px;padding:7px}.change-schedule>div{gap:1px;display:grid}.change-schedule>div>span{color:#8a95a5;text-transform:uppercase;font-size:7px;font-weight:700}.change-schedule>div>strong,.change-schedule>div>s{color:#43546b;font-size:8px;font-weight:700}.change-schedule>svg{display:none}.follow-worker{color:#617087;align-items:center;gap:4px;margin:6px 0 0;font-size:7.5px;font-weight:650;display:flex}.follow-checklist{gap:5px;margin-top:8px;display:grid}.follow-checklist label{color:#5a697d;cursor:pointer;align-items:center;gap:6px;font-size:8.5px;display:flex}.follow-checklist input{opacity:0;pointer-events:none;position:absolute}.custom-check{color:#0000;background:#fff;border:1px solid #bdc7d3;border-radius:4px;place-items:center;width:14px;height:14px;display:grid}.follow-checklist input:checked+.custom-check{color:#fff;background:#2d9360;border-color:#2d9360}.follow-checklist input:checked~span:last-child{color:#929caa;text-decoration:line-through}.card-progress{background:#eef1f4;border-radius:0 0 7px 7px;height:2px;margin:9px -10px -9px -13px;overflow:hidden}.card-progress span{background:var(--frequency);height:100%;transition:width .16s;display:block}.action-summary{background:#fff;border-top:1px solid #dce2e9;flex:none;padding:10px}.summary-heading{justify-content:space-between;align-items:center;margin-bottom:7px;display:flex}.summary-heading h3{color:#2b3d55;margin:1px 0 0;font-size:10.5px}.summary-heading>strong{color:#fff;background:var(--navy);border-radius:50%;place-items:center;width:25px;height:25px;font-size:9px;display:grid}.summary-grid{grid-template-columns:1fr 1fr;gap:4px;display:grid}.summary-grid div{color:#728095;background:#f8f9fb;border:1px solid #e4e8ed;border-radius:5px;justify-content:space-between;align-items:center;padding:5px 6px;font-size:7.5px;display:flex}.summary-grid strong{color:#34465e;font-size:9px}.empty-state{color:#8b97a7;text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:160px;padding:20px;display:flex}.empty-state.compact{min-height:130px}.empty-state svg{color:#79a48d;margin-bottom:8px}.empty-state strong{color:#536278;font-size:10.5px}.empty-state span{max-width:180px;margin-top:4px;font-size:8.5px;line-height:1.4}.status-bar{color:#738195;background:#fff;border-top:1px solid #d6dde6;flex:0 0 35px;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;min-height:35px;padding:0 12px;font-size:8.5px;display:grid}.save-state,.latest-history{align-items:center;gap:6px;min-width:0;display:flex}.save-state svg{color:#2c9460}.save-state strong{color:#526176}.draft-badge{color:#8a5c10;letter-spacing:.04em;background:#fff8e8;border:1px solid #e5c684;border-radius:3px;padding:2px 5px;font-size:7px;font-weight:850}.latest-history{justify-content:center;overflow:hidden}.latest-history>span{color:#66758a;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.latest-history button,.reset-button{color:#2f6ca9;cursor:pointer;background:0 0;border:0;flex:none;padding:0;font-size:8.5px;font-weight:700}.reset-button{color:#6c7a8d;align-items:center;gap:4px;display:flex}.toast{z-index:200;color:#34465e;background:#fff;border:1px solid #cfd9e4;border-radius:8px;align-items:center;gap:8px;min-height:38px;padding:0 13px;font-size:10px;font-weight:650;animation:.16s ease-out toast-in;display:flex;position:fixed;bottom:49px;right:18px;box-shadow:0 10px 30px #162d4a2e}.toast svg{color:#2c9460}@keyframes toast-in{0%{opacity:0;transform:translateY(5px)}}.dialog-backdrop{z-index:300;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:#13213261;place-items:center;display:grid;position:fixed;inset:0}.history-dialog{background:#fff;border:1px solid #d4dce5;border-radius:11px;flex-direction:column;width:min(560px,100vw - 40px);max-height:min(620px,100vh - 60px);display:flex;overflow:hidden;box-shadow:0 25px 70px #0c1c2f47}.dialog-heading{border-bottom:1px solid #e1e6ec;justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.dialog-heading h2{color:var(--navy);margin:2px 0 0;font-size:17px}.history-list{min-height:0;padding:8px 16px 16px;overflow-y:auto}.history-item{border-bottom:1px solid #edf0f3;gap:10px;padding:11px 2px;display:flex}.history-icon{color:#3a6799;background:#edf3fa;border-radius:50%;flex:none;place-items:center;width:28px;height:28px;display:grid}.history-item>div{gap:3px;display:grid}.history-item strong{color:#3b4c62;font-size:10px;line-height:1.35}.history-item span{color:#8792a2;font-size:8.5px}@media(max-width:1420px){.toolbar{gap:4px}.segmented button{padding:0 6px}.workspace{grid-template-columns:278px minmax(630px,1fr) 310px}.brand-block p{display:none}}@media(max-width:1260px){.app-shell{overflow-x:auto}.topbar,.status-bar,.workspace{min-width:1260px}.toolbar .segmented:nth-of-type(2){display:none}}@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}
