.rdp-root{--rdp-accent-color: blue;--rdp-accent-background-color: #f0f0ff;--rdp-day-height: 44px;--rdp-day-width: 44px;--rdp-day_button-border-radius: 100%;--rdp-day_button-border: 2px solid transparent;--rdp-day_button-height: 42px;--rdp-day_button-width: 42px;--rdp-selected-border: 2px solid var(--rdp-accent-color);--rdp-disabled-opacity: .5;--rdp-outside-opacity: .75;--rdp-today-color: var(--rdp-accent-color);--rdp-dropdown-gap: .5rem;--rdp-months-gap: 2rem;--rdp-nav_button-disabled-opacity: .5;--rdp-nav_button-height: 2.25rem;--rdp-nav_button-width: 2.25rem;--rdp-nav-height: 2.75rem;--rdp-range_middle-background-color: var(--rdp-accent-background-color);--rdp-range_middle-color: inherit;--rdp-range_start-color: white;--rdp-range_start-background: linear-gradient( var(--rdp-gradient-direction), transparent 50%, var(--rdp-range_middle-background-color) 50% );--rdp-range_start-date-background-color: var(--rdp-accent-color);--rdp-range_end-background: linear-gradient( var(--rdp-gradient-direction), var(--rdp-range_middle-background-color) 50%, transparent 50% );--rdp-range_end-color: white;--rdp-range_end-date-background-color: var(--rdp-accent-color);--rdp-week_number-border-radius: 100%;--rdp-week_number-border: 2px solid transparent;--rdp-week_number-height: var(--rdp-day-height);--rdp-week_number-opacity: .75;--rdp-week_number-width: var(--rdp-day-width);--rdp-weeknumber-text-align: center;--rdp-weekday-opacity: .75;--rdp-weekday-padding: .5rem 0rem;--rdp-weekday-text-align: center;--rdp-gradient-direction: 90deg;--rdp-animation_duration: .3s;--rdp-animation_timing: cubic-bezier(.4, 0, .2, 1)}.rdp-root[dir=rtl]{--rdp-gradient-direction: -90deg}.rdp-root[data-broadcast-calendar=true]{--rdp-outside-opacity: unset}.rdp-root{position:relative;box-sizing:border-box}.rdp-root *{box-sizing:border-box}.rdp-day{width:var(--rdp-day-width);height:var(--rdp-day-height);text-align:center}.rdp-day_button{background:none;padding:0;margin:0;cursor:pointer;font:inherit;color:inherit;justify-content:center;align-items:center;display:flex;width:var(--rdp-day_button-width);height:var(--rdp-day_button-height);border:var(--rdp-day_button-border);border-radius:var(--rdp-day_button-border-radius)}.rdp-day_button:disabled{cursor:revert}.rdp-caption_label{z-index:1;position:relative;display:inline-flex;align-items:center;white-space:nowrap;border:0}.rdp-dropdown:focus-visible~.rdp-caption_label{outline:5px auto Highlight;outline:5px auto -webkit-focus-ring-color}.rdp-button_next,.rdp-button_previous{border:none;background:none;padding:0;margin:0;cursor:pointer;font:inherit;color:inherit;-moz-appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;position:relative;appearance:none;width:var(--rdp-nav_button-width);height:var(--rdp-nav_button-height)}.rdp-button_next:disabled,.rdp-button_next[aria-disabled=true],.rdp-button_previous:disabled,.rdp-button_previous[aria-disabled=true]{cursor:revert;opacity:var(--rdp-nav_button-disabled-opacity)}.rdp-chevron{display:inline-block;fill:var(--rdp-accent-color)}.rdp-root[dir=rtl] .rdp-nav .rdp-chevron{transform:rotate(180deg);transform-origin:50%}.rdp-dropdowns{position:relative;display:inline-flex;align-items:center;gap:var(--rdp-dropdown-gap)}.rdp-dropdown{z-index:2;opacity:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;inset-block-start:0;inset-block-end:0;inset-inline-start:0;width:100%;margin:0;padding:0;cursor:inherit;border:none;line-height:inherit}.rdp-dropdown_root{position:relative;display:inline-flex;align-items:center}.rdp-dropdown_root[data-disabled=true] .rdp-chevron{opacity:var(--rdp-disabled-opacity)}.rdp-month_caption{display:flex;align-content:center;height:var(--rdp-nav-height);font-weight:700;font-size:large}.rdp-root[data-nav-layout=around] .rdp-month,.rdp-root[data-nav-layout=after] .rdp-month{position:relative}.rdp-root[data-nav-layout=around] .rdp-month_caption{justify-content:center;margin-inline-start:var(--rdp-nav_button-width);margin-inline-end:var(--rdp-nav_button-width);position:relative}.rdp-root[data-nav-layout=around] .rdp-button_previous{position:absolute;inset-inline-start:0;top:0;height:var(--rdp-nav-height);display:inline-flex}.rdp-root[data-nav-layout=around] .rdp-button_next{position:absolute;inset-inline-end:0;top:0;height:var(--rdp-nav-height);display:inline-flex;justify-content:center}.rdp-months{position:relative;display:flex;flex-wrap:wrap;gap:var(--rdp-months-gap);max-width:-moz-fit-content;max-width:fit-content}.rdp-month_grid{border-collapse:collapse}.rdp-nav{position:absolute;inset-block-start:0;inset-inline-end:0;display:flex;align-items:center;height:var(--rdp-nav-height)}.rdp-weekday{opacity:var(--rdp-weekday-opacity);padding:var(--rdp-weekday-padding);font-weight:500;font-size:smaller;text-align:var(--rdp-weekday-text-align);text-transform:var(--rdp-weekday-text-transform)}.rdp-week_number{opacity:var(--rdp-week_number-opacity);font-weight:400;font-size:small;height:var(--rdp-week_number-height);width:var(--rdp-week_number-width);border:var(--rdp-week_number-border);border-radius:var(--rdp-week_number-border-radius);text-align:var(--rdp-weeknumber-text-align)}.rdp-today:not(.rdp-outside){color:var(--rdp-today-color)}.rdp-selected{font-weight:700;font-size:large}.rdp-selected .rdp-day_button{border:var(--rdp-selected-border)}.rdp-outside{opacity:var(--rdp-outside-opacity)}.rdp-disabled:not(.rdp-selected){opacity:var(--rdp-disabled-opacity)}.rdp-hidden{visibility:hidden;color:var(--rdp-range_start-color)}.rdp-range_start{background:var(--rdp-range_start-background)}.rdp-range_start .rdp-day_button{background-color:var(--rdp-range_start-date-background-color);color:var(--rdp-range_start-color)}.rdp-range_middle{background-color:var(--rdp-range_middle-background-color)}.rdp-range_middle .rdp-day_button{border:unset;border-radius:unset;color:var(--rdp-range_middle-color)}.rdp-range_end{background:var(--rdp-range_end-background);color:var(--rdp-range_end-color)}.rdp-range_end .rdp-day_button{color:var(--rdp-range_start-color);background-color:var(--rdp-range_end-date-background-color)}.rdp-range_start.rdp-range_end{background:revert}.rdp-focusable{cursor:pointer}@keyframes rdp-slide_in_left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes rdp-slide_in_right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes rdp-slide_out_left{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes rdp-slide_out_right{0%{transform:translate(0)}to{transform:translate(100%)}}.rdp-weeks_before_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_before_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}@keyframes rdp-fade_in{0%{opacity:0}to{opacity:1}}@keyframes rdp-fade_out{0%{opacity:1}to{opacity:0}}.rdp-caption_after_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_after_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}html,body,#root{height:100vh;min-height:100vh;width:100%;max-width:100%;overflow:hidden;overflow-x:hidden!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:root{color-scheme:light dark;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;--radius-sm: .35rem;--radius-md: .5rem;--radius-lg: .65rem;--radius-xl: .75rem}.time-tracking-page{display:flex;flex-direction:column;gap:1rem}.time-tracking-toolbar{display:flex;flex-wrap:wrap;gap:1rem;align-items:end}.time-tracking-period-nav{display:flex;flex-direction:column;gap:.35rem;min-width:220px}.time-tracking-period-nav>span{font-size:.9rem;font-weight:600}.time-tracking-toolbar label{display:flex;flex-direction:column;gap:.35rem;min-width:180px}.time-tracking-toolbar__reason{flex:1 1 260px}.time-tracking-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.time-tracking-status-card__content{display:flex;justify-content:space-between;gap:1rem;align-items:center}.time-tracking-status-card__metric{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem;text-align:right}.time-tracking-status-card__metric strong{font-size:1.3rem}.time-tracking-status{font-size:1.1rem;font-weight:600;margin-bottom:.35rem}.time-tracking-badges{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.badge--warning{background:#fef3c7;color:#92400e}.time-tracking-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem}.time-tracking-actions--full-width{justify-content:center}.time-tracking-actions--compact{margin-top:0}.time-tracking-helper{margin-top:.85rem;margin-bottom:0}.time-tracking-approval-copy{display:flex;flex-direction:column;gap:.15rem;margin-bottom:.65rem}.time-tracking-approval-copy p{margin:0}.time-tracking-approval-selector,.time-tracking-queue-list,.time-tracking-queue-days{display:flex;flex-direction:column;gap:.75rem}.time-tracking-approval-selector{margin-top:.75rem}.time-tracking-approval-selector__item{display:flex;align-items:center;gap:.75rem;justify-content:space-between;padding:.85rem 1rem;border:1px solid rgba(148,163,184,.25);border-radius:12px;background:transparent}.time-tracking-approval-selector__item input{width:1rem;height:1rem}.time-tracking-approval-selector__item.is-disabled{opacity:.6}.time-tracking-approval-summary{display:flex;flex-direction:column;gap:.3rem;margin-top:.75rem;margin-bottom:.75rem;padding:1rem 1.1rem;border:1px solid rgba(59,130,246,.45);border-radius:14px;background:linear-gradient(135deg,#eff6ff,#dbeafe);box-shadow:0 10px 30px #2563eb29}.time-tracking-approval-summary strong{font-size:2rem;line-height:1.1;font-weight:900;color:#0f172a;letter-spacing:-.03em}.time-tracking-approval-summary span{font-size:1rem;font-weight:800;color:#1d4ed8}.time-tracking-approval-summary__detail{font-size:.92rem;font-weight:700;color:#1e3a8a}.time-tracking-approval-submit{width:100%;justify-content:center;text-align:center}.time-tracking-approval-queue-heading{margin:.8rem 0 .65rem}body[data-theme=dark] .time-tracking-approval-summary{border-color:#60a5fa8c;background:linear-gradient(135deg,#1d4ed8,#1e40af);box-shadow:0 12px 32px #00000059}body[data-theme=dark] .time-tracking-approval-summary strong,body[data-theme=dark] .time-tracking-approval-summary span{color:#eff6ff}body[data-theme=dark] .time-tracking-approval-summary__detail{color:#dbeafe}.time-tracking-approval-calendar{display:flex;flex-direction:column;gap:.9rem}.time-tracking-approval-legend{display:flex;flex-wrap:wrap;gap:.75rem 1rem;margin-top:.15rem}.time-tracking-approval-legend__item{display:inline-flex;align-items:center;gap:.45rem;font-size:.9rem;font-weight:700;color:#475569}.time-tracking-approval-legend__swatch{width:.9rem;height:.9rem;border-radius:999px;box-shadow:inset 0 0 0 1px #0f172a1f}.time-tracking-approval-legend__swatch--awaiting{background:#16a34a3d}.time-tracking-approval-legend__swatch--approved{background:#94a3b847}.time-tracking-approval-legend__swatch--paid{background:#3b82f63d}.time-tracking-approval-legend__swatch--blocked{background:#fbbf244d}.time-tracking-approval-warning{padding:.85rem 1rem;border:1px solid rgba(245,158,11,.35);border-radius:12px;background:#fffbebf2;color:#92400e;font-weight:700}.time-tracking-approval-calendar__header{display:flex;justify-content:space-between;gap:1rem;align-items:end}.time-tracking-approval-calendar__header strong{display:block;font-size:1.35rem;line-height:1.15}.time-tracking-approval-calendar__range-label{display:flex;flex-direction:column;gap:.25rem;padding:.85rem 1rem;border:1px solid rgba(22,163,74,.22);border-radius:12px;background:linear-gradient(135deg,#f0fdf4f0,#dcfce7f0)}.time-tracking-approval-calendar__month{padding:.9rem;border:1px solid rgba(148,163,184,.24);border-radius:16px;background:#ffffffc7;-moz-user-select:none;user-select:none;-webkit-user-select:none}.time-tracking-approval-calendar__weekdays,.time-tracking-approval-calendar__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.2rem}.time-tracking-approval-calendar__weekdays{margin-bottom:.45rem}.time-tracking-approval-calendar__weekday{padding-bottom:.45rem;font-size:.82rem;font-weight:800;color:#64748b;text-align:center}.time-tracking-approval-calendar__day{position:relative;width:100%;min-height:4.15rem;border:0;border-radius:14px;font-weight:800;color:#0f172a;background:transparent;cursor:pointer;transition:background-color .12s ease,color .12s ease,box-shadow .12s ease;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:.24rem;padding:.42rem .24rem .3rem}.time-tracking-approval-calendar__day-number{line-height:1}.time-tracking-approval-calendar__badges{display:flex;flex-wrap:wrap;justify-content:center;gap:.18rem;max-width:100%}.time-tracking-approval-calendar__badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.55rem;padding:.1rem .32rem;border-radius:999px;font-size:.58rem;font-weight:800;line-height:1;letter-spacing:.02em;box-shadow:inset 0 0 0 1px #ffffff1f}.time-tracking-approval-calendar__day--today{color:#f8fafc;background:#2563eb66;box-shadow:inset 0 0 0 1px #93c5fd73}.time-tracking-approval-calendar__day--outside{opacity:.28}.time-tracking-approval-calendar__day:hover:not(:disabled){background:#16a34a1f}.time-tracking-approval-calendar__day:disabled{opacity:.42;cursor:not-allowed}.time-tracking-approval-calendar__day--range{background:#16a34a2e;color:#14532d;border-radius:0}.time-tracking-approval-calendar__day--range-start{border-top-left-radius:14px;border-bottom-left-radius:14px}.time-tracking-approval-calendar__day--range-end{border-top-right-radius:14px;border-bottom-right-radius:14px;background:#16a34a3d;box-shadow:inset 0 0 0 1px #15803d3d}.time-tracking-approval-calendar__day--blank{background:#16a34a1a;color:#4b5563}.time-tracking-approval-calendar__day--awaiting{box-shadow:inset 0 0 0 1px #16a34a4d}.time-tracking-approval-calendar__day--approved{color:#475569;background:#94a3b814}.time-tracking-approval-calendar__day--paid{color:#1d4ed8;background:#3b82f624}.time-tracking-approval-calendar__day--blocked{color:#92400e;background:#fbbf2424}.time-tracking-approval-calendar__day--handle{overflow:visible;background:#22c55e;color:#052e16;cursor:ew-resize;box-shadow:inset 0 0 0 2px #f0fdf4d9,0 0 0 3px #22c55e38}.time-tracking-approval-calendar__handle-dot{position:absolute;right:.28rem;top:.22rem;width:.9rem;height:.9rem;border-radius:999px;background:#dcfce7;border:2px solid #166534;box-shadow:0 0 0 3px #f0fdf42e}.time-tracking-approval-calendar__day:focus-visible{outline:2px solid #f8fafc;outline-offset:2px}body[data-theme=dark] .time-tracking-approval-calendar__range-label{border-color:#4ade8047;background:linear-gradient(135deg,#14532deb,#15803de6)}body[data-theme=dark] .time-tracking-approval-calendar__range-label strong,body[data-theme=dark] .time-tracking-approval-calendar__range-label .muted{color:#ecfdf5}body[data-theme=dark] .time-tracking-approval-warning{border-color:#f59e0b66;background:#78350f59;color:#fde68a}body[data-theme=dark] .time-tracking-approval-legend__item{color:#cbd5e1}body[data-theme=dark] .time-tracking-approval-calendar__month{background:#0f172ae6;border-color:#94a3b838}body[data-theme=dark] .time-tracking-approval-calendar__weekday{color:#94a3b8}body[data-theme=dark] .time-tracking-approval-calendar__day{color:#e2e8f0}body[data-theme=dark] .time-tracking-approval-calendar__day--today{background:#2563eb85;box-shadow:inset 0 0 0 1px #7dd3fc80}body[data-theme=dark] .time-tracking-approval-calendar__day:hover:not(:disabled){background:#4ade8029}body[data-theme=dark] .time-tracking-approval-calendar__day--range{background:#22c55e38;color:#dcfce7}body[data-theme=dark] .time-tracking-approval-calendar__day--range-end{background:#22c55e47}body[data-theme=dark] .time-tracking-approval-calendar__day--blank{background:#22c55e1f;color:#cbd5e1}body[data-theme=dark] .time-tracking-approval-calendar__day--approved{background:#3341559e;color:#94a3b8}body[data-theme=dark] .time-tracking-approval-calendar__day--paid{background:#1e40af6b;color:#bfdbfe}body[data-theme=dark] .time-tracking-approval-calendar__day--blocked{background:#d9770638;color:#fde68a}body[data-theme=dark] .time-tracking-approval-calendar__day--handle{background:#22c55e;color:#052e16}.time-tracking-queue-card{padding:1rem;border:1px solid rgba(148,163,184,.25);border-radius:14px;background:transparent}.time-tracking-queue-card__header,.time-tracking-queue-day{display:flex;justify-content:space-between;gap:1rem;align-items:center}.time-tracking-queue-card__header{margin-bottom:.9rem;padding:.8rem .9rem;border-radius:12px;color:#f8fafc;font-size:1.02rem}.time-tracking-queue-card__totals{display:flex;flex-direction:column;align-items:flex-end}.time-tracking-queue-card__totals .muted{color:#e2e8f0d9}.time-tracking-queue-day p{margin:.2rem 0 0}.time-tracking-queue-day{padding-top:.75rem;border-top:1px solid rgba(148,163,184,.18)}.time-tracking-approval-actions-stack{display:flex;flex-direction:column;gap:.35rem;margin-top:.35rem;margin-bottom:.75rem}.time-tracking-summary-accordion{display:flex;flex-direction:column;gap:.75rem}.time-tracking-summary-accordion__toggle{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:100%;padding:.95rem 1rem;border:1px solid rgba(148,163,184,.25);border-radius:14px;background:#f8fafcd9;color:#0f172a;font-weight:800;text-align:left}.time-tracking-summary-accordion__toggle.is-open{border-color:#3b82f659;background:linear-gradient(135deg,#eff6fff2,#dbeafee6)}.time-tracking-summary-accordion__toggle strong{min-width:2rem;text-align:right;color:#1d4ed8}.button.time-tracking-approval-submit--paid{background:linear-gradient(135deg,#16a34a,#22c55e);color:#f0fdf4}.button.time-tracking-approval-submit--paid:hover:not(:disabled){background:linear-gradient(135deg,#16a34a,#22c55e);box-shadow:none;transform:none}.button.time-tracking-approval-submit--reopen{background:linear-gradient(135deg,#b91c1c,#ef4444);color:#fef2f2}.button.time-tracking-approval-submit--reopen:hover:not(:disabled){background:linear-gradient(135deg,#b91c1c,#ef4444);box-shadow:none;transform:none}body[data-theme=dark] .time-tracking-summary-accordion__toggle{border-color:#94a3b838;background:#0f172ae6;color:#e2e8f0}body[data-theme=dark] .time-tracking-summary-accordion__toggle.is-open{border-color:#60a5fa66;background:linear-gradient(135deg,#1e40af73,#1d4ed859)}body[data-theme=dark] .time-tracking-summary-accordion__toggle strong{color:#bfdbfe}.time-tracking-live-list,.time-tracking-summary-list,.time-tracking-entry-list{display:flex;flex-direction:column;gap:.75rem}.time-tracking-review-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:1rem;align-items:start}.time-tracking-live-item,.time-tracking-summary-item,.time-tracking-entry{border:1px solid rgba(148,163,184,.25);border-radius:12px;padding:.9rem 1rem;background:transparent}.time-tracking-employee-groups{display:flex;flex-direction:column;gap:.85rem}.time-tracking-employee-group{border:1px solid rgba(71,85,105,.85);border-radius:16px;overflow:hidden;background:linear-gradient(180deg,#0f172afa,#111827f5);box-shadow:inset 0 1px #94a3b814}.time-tracking-employee-group__toggle{width:100%;border:0;background:transparent;padding:.9rem 1rem;display:flex;justify-content:space-between;gap:1rem;align-items:center;text-align:left;cursor:pointer}.time-tracking-employee-group__identity,.time-tracking-employee-group__summary{display:flex;flex-direction:column;gap:.15rem;min-width:0}.time-tracking-employee-group__summary{flex-shrink:0;text-align:left}.time-tracking-employee-group__summary span:first-child{color:#cbd5e1;font-size:.82rem}.time-tracking-employee-group__summary strong{line-height:1.2;color:#f8fafc}.time-tracking-employee-group__identity strong,.time-tracking-entry__range strong,.time-tracking-entry__duration strong,.time-tracking-summary-item strong{color:#f8fafc}.time-tracking-employee-group__identity .muted,.time-tracking-entry .muted,.time-tracking-summary-item .muted{color:#cbd5e1}.time-tracking-employee-group__chevron{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;border-radius:999px;background:#94a3b829;color:#f8fafc;font-size:1rem;font-weight:700}.time-tracking-employee-group .time-tracking-entry-list{padding:.2rem .85rem .55rem;gap:0}.time-tracking-employee-group.is-expanded .time-tracking-employee-group__toggle{border-bottom:1px solid rgba(71,85,105,.9)}.time-tracking-employee-group--accent-a{border-left:4px solid #0f766e}.time-tracking-employee-group--accent-a .time-tracking-employee-group__toggle{background:linear-gradient(180deg,#0f766e42,#0f172a00)}.time-tracking-employee-group--accent-b{border-left:4px solid #b45309}.time-tracking-employee-group--accent-b .time-tracking-employee-group__toggle{background:linear-gradient(180deg,#b453093d,#0f172a00)}.time-tracking-employee-group--accent-c{border-left:4px solid #1d4ed8}.time-tracking-employee-group--accent-c .time-tracking-employee-group__toggle{background:linear-gradient(180deg,#1d4ed840,#0f172a00)}.time-tracking-employee-group--accent-d{border-left:4px solid #be185d}.time-tracking-employee-group--accent-d .time-tracking-employee-group__toggle{background:linear-gradient(180deg,#be185d38,#0f172a00)}.time-tracking-queue-card__header.time-tracking-employee-group--accent-a{background:linear-gradient(90deg,#06b6d442,#0f172a29);border:1px solid rgba(34,211,238,.28)}.time-tracking-queue-card__header.time-tracking-employee-group--accent-b{background:linear-gradient(90deg,#10b9813d,#0f172a29);border:1px solid rgba(52,211,153,.28)}.time-tracking-queue-card__header.time-tracking-employee-group--accent-c{background:linear-gradient(90deg,#1d4ed842,#0f172a29);border:1px solid rgba(96,165,250,.28)}.time-tracking-queue-card__header.time-tracking-employee-group--accent-d{background:linear-gradient(90deg,#be185d3d,#0f172a29);border:1px solid rgba(244,114,182,.26)}.time-tracking-live-item{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr) minmax(0,.8fr);gap:1rem;align-items:center}.time-tracking-live-item__identity,.time-tracking-live-item__detail{display:flex;flex-direction:column;gap:.2rem;min-width:0}.time-tracking-live-item__identity strong,.time-tracking-live-item__detail strong{line-height:1.3}.time-tracking-live-item__identity .muted,.time-tracking-live-item__detail .muted{margin:0}.time-tracking-summary-item,.time-tracking-entry__top,.time-tracking-entry__meta{display:flex;justify-content:space-between;gap:1rem;align-items:center}.time-tracking-entry__top{align-items:start}.time-tracking-entry__meta{margin-top:.32rem;flex-wrap:wrap;gap:.4rem;color:#cbd5e1;font-size:.82rem}.time-tracking-entry{padding:.5rem 0;background:transparent;border:0;border-radius:0}.time-tracking-entry+.time-tracking-entry{border-top:1px solid rgba(71,85,105,.7)}.time-tracking-entry__main,.time-tracking-entry__footer{display:flex;justify-content:flex-start;gap:.75rem;align-items:start}.time-tracking-entry__main{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem}.time-tracking-entry__range,.time-tracking-entry__duration{min-width:0}.time-tracking-entry__range strong,.time-tracking-entry__duration strong{line-height:1.35}.time-tracking-entry__duration{display:flex;flex-direction:column;align-items:flex-start;flex-shrink:0;min-width:4.5rem}.time-tracking-entry__duration .muted{margin:0;font-size:.8rem;color:#94a3b8}.time-tracking-entry__footer{margin-top:.32rem;flex-wrap:wrap;justify-content:space-between;align-items:center}.time-tracking-badges--compact{gap:.35rem}.time-tracking-meta-pill{display:inline-flex;align-items:center;border:1px solid rgba(71,85,105,.9);border-radius:999px;padding:.14rem .45rem;background:#1e293bf2;color:#e2e8f0}@media (max-width: 768px){.time-tracking-approval-calendar__header,.time-tracking-status-card__content,.time-tracking-review-grid,.time-tracking-summary-item,.time-tracking-entry__top,.time-tracking-entry__main,.time-tracking-entry__footer,.time-tracking-employee-group__toggle,.time-tracking-queue-card__header,.time-tracking-queue-day,.time-tracking-approval-selector__item{display:flex;flex-direction:column;align-items:start}.time-tracking-live-item{grid-template-columns:1fr}.time-tracking-employee-group__summary,.time-tracking-entry__duration,.time-tracking-status-card__metric{align-items:start;text-align:left}}.record-notes-card{display:flex;flex-direction:column;gap:.9rem}.record-notes-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.record-notes-card__header h3{margin:0}.record-notes-card__header p{margin:.25rem 0 0}.record-notes-card__preview{display:flex;flex-direction:column;gap:.35rem;padding:.9rem 1rem;border-radius:14px;background:#1e293b;color:#f8fafc}.record-notes-card__preview p{margin:0;white-space:pre-wrap}.record-notes-modal{width:min(1520px,calc(100vw - 1rem))!important;max-width:min(1520px,calc(100vw - 1rem))!important}.record-notes-modal__content{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.9fr);gap:1rem}.record-notes-thread,.record-notes-composer{display:flex;flex-direction:column;gap:.9rem}.record-notes-thread{max-height:min(70vh,720px);overflow:auto;padding-right:.25rem}.record-note-item{display:flex;flex-direction:column;gap:.6rem;padding:1rem;border:1px solid rgba(148,163,184,.3);border-radius:16px;background:#1e293b;color:#f8fafc}.record-note-item p{margin:0;white-space:pre-wrap;color:inherit}.record-note-files{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem}.record-note-file-tile{display:flex;flex-direction:column;gap:.5rem;border:1px solid rgba(148,163,184,.2);border-radius:14px;padding:.55rem;background:#0f172a61}.record-note-file-tile__preview{border:1px solid rgba(148,163,184,.2);border-radius:12px;background:#0f172ae6;width:100%;aspect-ratio:4 / 3;padding:0;overflow:hidden;cursor:pointer;display:flex;align-items:center;justify-content:center}.record-note-file-tile__preview img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.record-note-file-tile__meta{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.record-note-file-tile__meta .muted{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.record-note-item strong{color:inherit}.record-note-item__header{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem}.record-note-item__links{display:flex;flex-wrap:wrap;gap:.5rem}.record-notes-tabs{display:flex;gap:.75rem}.button.secondary.button--active{border-color:#60a5fa8c;background:#2563eb3d;color:#eff6ff}.record-note-scope-badge{display:inline-flex;align-items:center;width:-moz-fit-content;width:fit-content;padding:.3rem .65rem;border-radius:999px;font-size:.82rem;font-weight:600;letter-spacing:.01em}.record-note-scope-badge--client{background:#38bdf829;color:#e0f2fe}.record-note-scope-badge--quote{background:#60a5fa29;color:#dbeafe}.record-note-scope-badge--job{background:#2dd4bf29;color:#ccfbf1}.record-note-scope-badge--task{background:#818cf829;color:#e0e7ff}.record-note-scope-badge--invoice{background:#facc1529;color:#fef3c7}.record-note-scope-badge--request{background:#f472b629;color:#fce7f3}.record-note-link-pill{display:inline-flex;align-items:center;gap:.45rem;padding:.55rem .8rem;border-radius:999px;background:#60a5fa29;color:#dbeafe;font-size:.95rem;text-decoration:none;border:1px solid rgba(96,165,250,.22);transition:background .15s ease,border-color .15s ease,color .15s ease}.record-note-link-pill:hover,.record-note-link-pill:focus-visible{background:#60a5fa3d;border-color:#93c5fd73;color:#eff6ff}.record-note-item__actions{display:flex;justify-content:flex-end;gap:.5rem;flex-wrap:wrap}.record-note-item__delete{padding:.4rem .55rem;border-color:#f8717147;background:#f8717114;color:#f87171}.record-note-item__delete:hover,.record-note-item__delete:focus-visible{background:#f8717124;border-color:#f8717166;color:#ef4444}.record-notes-composer__header h3{margin:0}.record-notes-composer__attachments{display:flex;flex-direction:column;gap:.75rem}.record-notes-links{display:flex;flex-direction:column;align-items:flex-start;gap:.75rem}.record-notes-links__options{display:grid;gap:.5rem;width:100%}.record-notes-links__option{display:flex;align-items:center;gap:.6rem}.record-notes-links__icon{flex:0 0 auto;opacity:.8}.record-notes-composer__actions{display:flex;justify-content:flex-end}.record-note-lightbox-backdrop{z-index:140}.record-note-lightbox-backdrop__dismiss{position:absolute;top:0;right:0;bottom:0;left:0;border:0;background:transparent}.record-note-lightbox{position:relative;z-index:1;margin:auto;width:min(92vw,1100px);display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:1rem;align-items:center}.record-note-lightbox__close{position:absolute;top:-3rem;right:0}.record-note-lightbox__nav{width:2.75rem;height:2.75rem;padding:0;display:inline-flex;align-items:center;justify-content:center}.record-note-lightbox__image-wrap{display:flex;flex-direction:column;gap:.75rem;align-items:center}.record-note-lightbox__image{max-width:100%;max-height:min(76vh,900px);border-radius:16px;-o-object-fit:contain;object-fit:contain;background:#0f172aeb}.record-note-lightbox__caption{color:#e2e8f0;text-align:center}@media (max-width: 900px){.record-notes-modal__content{grid-template-columns:1fr}.record-notes-thread{max-height:none}.record-note-lightbox{width:min(96vw,1100px);grid-template-columns:1fr}.record-note-lightbox__close{top:-2.75rem}.record-note-lightbox__nav{justify-self:center}}*,*:before,*:after{box-sizing:border-box}body{margin:0;background:#0f172a;color:#f8fafc;overscroll-behavior-y:none}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}a{color:inherit}.app-shell{display:grid;grid-template-columns:280px minmax(0,1fr);height:100%;min-height:100%;width:100%;max-width:100%;background:linear-gradient(135deg,#1e293b,#0f172a);overflow:hidden}.app-shell aside{padding:2rem 1.5rem;background:#0f172ad9;border-right:1px solid rgba(148,163,184,.2);display:flex;flex-direction:column;gap:2rem;min-width:0;min-height:0;overflow:hidden}.app-shell aside nav{flex:1;min-height:0;overflow-y:auto;padding-right:.25rem}.app-shell aside .branding{font-size:1.2rem;font-weight:600;letter-spacing:.02em}.header-actions{display:flex;align-items:center;gap:.25rem}.universal-search{position:relative}.universal-search__panel{position:absolute;top:calc(100% + .6rem);right:0;width:min(26rem,calc(100vw - 2rem));max-height:min(34rem,calc(100vh - 8rem));padding:.9rem;border-radius:18px;border:1px solid rgba(148,163,184,.2);background:linear-gradient(180deg,#0f172afa,#111827fa);box-shadow:0 24px 60px #02061780;display:flex;flex-direction:column;gap:.75rem;z-index:40}.universal-search__input{margin:0}.universal-search__status{min-height:1rem;font-size:.82rem;color:#94a3b8e0}.universal-search__results{display:flex;flex-direction:column;gap:.9rem;overflow-y:auto;padding-right:.15rem}.universal-search__group{display:flex;flex-direction:column;gap:.45rem}.universal-search__group-header{display:flex;align-items:center}.universal-search__group-badge{display:inline-flex;align-items:center;min-height:1.8rem;padding:.25rem .65rem;border-radius:999px;font-size:.78rem;font-weight:800;letter-spacing:.01em}.universal-search__group-badge--clients{background:#0d94882e;border:1px solid rgba(45,212,191,.4);color:#99f6e4}.universal-search__group-badge--requests{background:#d977062e;border:1px solid rgba(251,191,36,.42);color:#fde68a}.universal-search__group-badge--quotes{background:#7c3aed2e;border:1px solid rgba(167,139,250,.42);color:#ddd6fe}.universal-search__group-badge--jobs{background:#2563eb2e;border:1px solid rgba(96,165,250,.42);color:#bfdbfe}.universal-search__group-badge--invoices{background:#e11d482e;border:1px solid rgba(251,113,133,.42);color:#fecdd3}.universal-search__group-badge--tasks{background:#65a30d2e;border:1px solid rgba(163,230,53,.42);color:#d9f99d}.universal-search__group-list{display:flex;flex-direction:column;gap:.4rem}.universal-search__result{display:flex;flex-direction:column;align-items:flex-start;gap:.18rem;width:100%;padding:.8rem .9rem;border-radius:14px;border:1px solid rgba(51,65,85,.9);background:#0f172ab8;color:#f8fafc;text-align:left;cursor:pointer;transition:border-color .18s ease,background .18s ease,transform .18s ease}.universal-search__result:hover{border-color:#60a5fa73;background:#1e293beb;transform:translateY(-1px)}.universal-search__result-title{font-size:.94rem;font-weight:700;line-height:1.3}.universal-search__result-subtitle{font-size:.8rem;line-height:1.35;color:#bfdbfecc}.activity-feed-trigger{position:relative}.activity-feed-trigger__badge{position:absolute;top:-.2rem;right:-.15rem;min-width:1.1rem;height:1.1rem;padding:0 .25rem;border-radius:999px;background:#ef4444;color:#fff;font-size:.7rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 0 0 2px #0f172af2}.app-shell aside ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1rem}.app-shell aside li{list-style:none}.nav-link{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:var(--radius-md);transition:background .2s ease,color .2s ease;color:#e2e8f0bf;text-decoration:none}.nav-link__badge{margin-left:auto;min-width:1.4rem;height:1.4rem;padding:0 .35rem;border-radius:999px;background:#0ea5e933;border:1px solid rgba(56,189,248,.55);color:#e0f2fef2;font-size:.75rem;font-weight:700;line-height:1.3rem;text-align:center}.nav-link:hover{background:#3b82f633;color:#f8fafc}.nav-link--active{background:#3b82f659;color:#f8fafc;box-shadow:0 12px 30px #2563eb59}.nav-link--group{color:#e2e8f0f2;font-weight:600;pointer-events:none;cursor:default}.nav-submenu{list-style:none;margin:.35rem 0 0;padding:0 0 0 1.5rem;display:flex;flex-direction:column;gap:.5rem}.nav-submenu--inventory{margin-left:2.25rem;padding-left:1.75rem;border-left:2px solid rgba(148,163,184,.2);gap:.35rem}.nav-submenu--inventory>li{padding-left:.5rem}.nav-submenu--inventory .nav-link--child{padding-left:.75rem;color:#e2e8f0d9;font-weight:500}.nav-link--child{padding:.5rem 1rem;border-radius:var(--radius-sm);gap:.5rem}.nav-link--disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.app-shell main{display:flex;flex-direction:column;padding:3rem 3.5rem;gap:2rem;min-width:0;min-height:0;max-width:100%;overflow-x:hidden!important;overflow-y:auto;overscroll-behavior-y:contain}.app-shell main>section{flex:1 1 auto;min-width:0;min-height:0}.app-shell main.app-shell-main--jobs-calendar{padding-top:1.75rem}.env-alerts{display:flex;flex-direction:column;gap:.75rem}.env-alert{padding:.75rem 1rem;border-radius:var(--radius-md);font-weight:500;border:1px solid transparent}.env-alert--error{background:#dc262633;border-color:#f87171a6;color:#fecaca}.env-alert--warning{background:#eab3082e;border-color:#facc158c;color:#fef08a}.app-shell header{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;min-width:0;max-width:100%;flex-wrap:wrap}.header-titles{display:flex;flex-direction:column;gap:.35rem;min-width:0}.app-shell header h1{font-size:2.5rem;margin:0;font-weight:700}.header-titles span{font-size:.95rem;color:#94a3b8d9}.ui-card{background:#0f172aa6;border:1px solid rgba(148,163,184,.15);border-radius:var(--radius-lg);padding:1.5rem;display:flex;flex-direction:column;gap:.5rem;box-shadow:0 20px 45px #0f172a59}.ui-card__title{margin:0;font-size:1rem;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8d9}.ui-card__content{display:flex;flex-direction:column;gap:.25rem}.dashboard-page{gap:1.75rem}.dashboard-page__header h2{margin:0}.dashboard-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.dashboard-card--loading{min-height:8.5rem}.dashboard-loading-block{height:.9rem;border-radius:999px;background:#94a3b824}.dashboard-loading-block--title{width:60%}.dashboard-loading-block--value{width:45%;height:2.1rem}.dashboard-summary-grid .dashboard-card>.ui-card__content>strong{font-size:2rem;line-height:1}.dashboard-summary-grid .dashboard-card>.ui-card__content>span{color:#94a3b8bf;font-size:.9rem}.dashboard-detail-grid{display:grid;grid-template-columns:minmax(0,1.7fr) repeat(2,minmax(280px,1fr));gap:1rem;align-items:start}.dashboard-card--feature,.dashboard-card--stack,.dashboard-card--full{gap:1rem}.dashboard-card--full{width:100%}.dashboard-feature-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.75rem}.dashboard-feature-metric,.dashboard-stack-summary>div{display:flex;flex-direction:column;gap:.35rem;padding:.85rem 1rem;border-radius:.9rem;background:#0f172a8c;border:1px solid rgba(148,163,184,.1)}.dashboard-feature-metric span,.dashboard-stack-summary span,.dashboard-section__header span,.dashboard-preview-item__meta span{color:#94a3b8c7;font-size:.85rem}.dashboard-feature-metric strong,.dashboard-stack-summary strong{font-size:1.35rem;line-height:1.1}.dashboard-stack-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.dashboard-section{display:flex;flex-direction:column;gap:.75rem}.dashboard-section__header{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem}.dashboard-section__header h4{margin:0;font-size:1rem}.dashboard-preview-list{display:flex;flex-direction:column;gap:.75rem}.dashboard-preview-item{display:flex;justify-content:space-between;gap:1rem;padding:.95rem 1rem;border-radius:.95rem;border:1px solid rgba(148,163,184,.12);background:#0f172a73;color:inherit;text-decoration:none;transition:border-color .18s ease,background .18s ease,transform .18s ease}.dashboard-preview-item:hover{border-color:#38bdf88c;background:#0f172ab3;transform:translateY(-1px)}.dashboard-preview-item>div,.dashboard-preview-item__meta{display:flex;flex-direction:column;gap:.3rem;min-width:0}.dashboard-preview-item p,.dashboard-preview-item strong{margin:0}.dashboard-preview-item p{font-weight:600}.dashboard-preview-item__meta{align-items:flex-end;text-align:right}.dashboard-preview-item__meta strong{font-size:1rem}.page{display:flex;flex-direction:column;gap:1.5rem;min-width:0;max-width:100%;overflow-x:hidden}@media (max-width: 1180px){.dashboard-detail-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width: 720px){.dashboard-stack-summary{grid-template-columns:minmax(0,1fr)}.dashboard-preview-item{flex-direction:column}.dashboard-preview-item__meta{align-items:flex-start;text-align:left}}.page-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;min-width:0;max-width:100%;flex-wrap:wrap}.page-title{display:flex;flex-direction:column;gap:.25rem;min-width:0;max-width:100%}.nav-divider{height:1px;background:#94a3b833;margin:1.5rem 0 .75rem}.nav-divider--compact{margin:.8rem 0}.nav-section-title{display:flex;align-items:center;gap:.5rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8bf;padding:0 1rem;margin-bottom:.35rem}.nav-section-title svg{opacity:.8}.nav-section-title--with-icon{font-weight:600}.nav-section-title--active{color:#e2e8f0f2}.page-title__heading{display:flex;align-items:center;gap:.75rem}.page-title h2{margin:0;font-size:2rem}.page-title span{color:#94a3b8cc}.page-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;min-width:0;max-width:100%}.page-actions>*{min-width:0}.page-actions .input-with-icon{flex:1 1 22rem;min-width:min(22rem,100%)}.page-actions .input-with-icon .input{width:100%}.input,.textarea,.select{display:block;width:100%;max-width:100%;padding:.65rem .85rem;border-radius:var(--radius-md);border:1px solid rgba(148,163,184,.2);background:#0f172ab3;color:#e2e8f0;font-size:.95rem;transition:border .2s ease,box-shadow .2s ease}.input:focus,.textarea:focus,.select:focus{outline:none;border-color:#3b82f699;box-shadow:0 0 0 3px #3b82f64d}input[type=date],input[type=datetime-local]{color-scheme:dark;padding-right:2.5rem}input[list]{padding-right:2.5rem;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23e2e8f0' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .85rem center;background-size:.8rem}body[data-theme=light] input[list]{background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23122b39' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}input[type=date]::-webkit-calendar-picker-indicator,input[type=datetime-local]::-webkit-calendar-picker-indicator{filter:brightness(1.6);opacity:.9}body[data-theme=light] input[type=date],body[data-theme=light] input[type=datetime-local]{color-scheme:light}body[data-theme=light] input[type=date]::-webkit-calendar-picker-indicator,body[data-theme=light] input[type=datetime-local]::-webkit-calendar-picker-indicator{filter:none;opacity:1}.field-helper{font-size:.8rem;color:#94a3b8d9}.field-error{font-size:.8rem;color:#fca5a5}.booking-form__field-error{margin-top:.2rem}.product-search,.address-autocomplete{position:relative}.product-search__dropdown{position:absolute;top:calc(100% + .35rem);left:0;right:0;z-index:65;max-height:260px;overflow-y:auto;border-radius:var(--radius-md);border:1px solid rgba(148,163,184,.25);background:#0f172af5;box-shadow:0 18px 36px #02061773;-webkit-backdrop-filter:none;backdrop-filter:none}.product-search__dropdown--up{top:auto;bottom:calc(100% + .35rem)}.product-search__status{padding:.7rem .85rem;color:#94a3b8e6;font-size:.88rem}.product-search__option{width:100%;border:none;border-bottom:1px solid rgba(148,163,184,.15);background:transparent;color:#e2e8f0;padding:.7rem .85rem;text-align:left;display:flex;justify-content:space-between;gap:.75rem;cursor:pointer}.product-search__option:last-child{border-bottom:none}.product-search__option:hover,.product-search__option--active{background:#3b82f633}body[data-theme=light] .product-search__dropdown{background:#fff;border-color:#94a3b84d;box-shadow:0 18px 36px #64748b4d}body[data-theme=light] .product-search__option{color:#1e293b;border-bottom-color:#94a3b833}.address-autocomplete__dropdown{position:absolute;top:calc(100% + .35rem);left:0;right:0;z-index:65;max-height:260px;overflow-y:auto;border-radius:var(--radius-md);border:1px solid rgba(148,163,184,.25);background:#0f172af5;box-shadow:0 18px 36px #02061773;-webkit-backdrop-filter:none;backdrop-filter:none}.address-autocomplete__dropdown--up{top:auto;bottom:calc(100% + .35rem)}.address-autocomplete__status{padding:.7rem .85rem;color:#94a3b8e6;font-size:.88rem}.address-autocomplete__option{width:100%;border:none;border-bottom:1px solid rgba(148,163,184,.15);background:transparent;color:#e2e8f0;padding:.7rem .85rem;text-align:left;display:block;cursor:pointer}.address-autocomplete__option:last-child{border-bottom:none}.address-autocomplete__option:hover,.address-autocomplete__option--active{background:#3b82f633}body[data-theme=light] .address-autocomplete__dropdown{background:#fff;border-color:#94a3b84d;box-shadow:0 18px 36px #64748b4d}body[data-theme=light] .address-autocomplete__option{color:#1e293b;border-bottom-color:#94a3b833}.transfer-summary{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}.transfer-summary li{font-size:.9rem;color:#e2e8f0f2}.transfer-audit-layout{display:grid;grid-template-columns:minmax(280px,340px) minmax(0,1fr);gap:1rem;align-items:start}.transfer-history__header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.transfer-history__header h3{margin:0}.transfer-calendar{display:flex;flex-direction:column;gap:.75rem}.transfer-calendar__picker{padding:.9rem;border-radius:var(--radius-lg);border:1px solid rgba(148,163,184,.22);background:#0f172a8c}.transfer-calendar__picker .rdp-root{--rdp-accent-color: rgb(56 189 248);--rdp-background-color: rgba(56, 189, 248, .18);margin:0}.transfer-calendar__picker .rdp-day_button{color:#e2e8f0f2}.transfer-calendar__picker .rdp-day_button:hover{background:#38bdf82e}.transfer-calendar__picker .rdp-selected .rdp-day_button{background:#38bdf8cc;color:#0f172af2}.transfer-calendar__picker .transfer-calendar__day--has-transfers .rdp-day_button{box-shadow:inset 0 0 0 2px #f8fafcd1}.transfer-calendar__picker .rdp-selected.transfer-calendar__day--has-transfers .rdp-day_button{box-shadow:inset 0 0 0 2px #0f172aeb,0 0 0 2px #38bdf852}.transfer-calendar__legend{display:flex;flex-wrap:wrap;gap:.75rem 1rem}.transfer-calendar__legend-item{display:inline-flex;align-items:center;gap:.5rem}.transfer-calendar__legend-swatch{width:1.5rem;height:1.5rem;border-radius:999px;flex:0 0 auto}.transfer-calendar__legend-swatch--has-transfers{box-shadow:inset 0 0 0 2px #f8fafcd1}.transfer-calendar__legend-swatch--selected{background:#38bdf8cc;box-shadow:inset 0 0 0 2px #0f172aeb,0 0 0 2px #38bdf852}.transfer-calendar__details{display:flex;flex-direction:column;gap:.75rem;min-width:0}.transfer-calendar__details-header h4{margin:0;font-size:1rem}.transfer-calendar__detail-card{display:flex;flex-direction:column;gap:.75rem;padding:1rem;border-radius:var(--radius-lg);border:1px solid rgba(148,163,184,.2);background:#0f172a6b}@media (max-width: 960px){.transfer-audit-layout{grid-template-columns:1fr}}.button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.65rem 1.1rem;border-radius:var(--radius-md);border:none;cursor:pointer;font-weight:600;background:linear-gradient(135deg,#2563ebcc,#0ea5e9b3);color:#f8fafc;transition:transform .15s ease,box-shadow .15s ease}.button:hover{transform:translateY(-1px);box-shadow:0 10px 25px #2563eb59}.button.secondary{background:#0f172aa6;border:1px solid rgba(148,163,184,.25);color:#e2e8f0f2}.button.secondary:hover{box-shadow:0 10px 25px #94a3b840}.button:disabled,.button.secondary:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none;pointer-events:none}.button.secondary.button--active:disabled{opacity:1;border-color:#93c5fdf2;box-shadow:inset 0 0 0 1px #bfdbfeb3}.button.secondary[data-empty=true]{opacity:.35;border-color:#94a3b826;color:#e2e8f08c}.button--inline{background:none;border:none;color:#60a5faf2;font-size:.85rem;padding:0;cursor:pointer;text-decoration:underline}.button--inline:hover{color:#818cf8f2}.button.danger{background:#f8717133;border:1px solid rgba(248,113,113,.5);color:#fca5a5}.button.danger:hover{box-shadow:0 10px 25px #f8717140}.table{width:100%;border-collapse:collapse;background:#0f172aa6;border-radius:var(--radius-lg);overflow:hidden;border:1px solid rgba(148,163,184,.15)}.table thead{background:#0f172ad9;text-transform:uppercase;font-size:.75rem;letter-spacing:.08em;color:#94a3b8bf}.table th,.table td{padding:.85rem 1rem;border-bottom:1px solid rgba(148,163,184,.12)}.table td{vertical-align:top}.table tbody tr:hover{background:#1e293ba6}.table tbody tr.purchase-orders__row--backorder{background:#dc26261f}.table tbody tr.purchase-orders__row--backorder:hover{background:#dc26262e}.purchase-orders__legend{display:inline-flex;align-items:center;gap:.65rem;margin-top:.9rem}.purchase-orders__legend-swatch{width:1rem;height:1rem;border-radius:.3rem;border:1px solid rgba(248,113,113,.35);background:#dc26261f;flex:0 0 auto}.table tbody tr:last-child td{border-bottom:none}.invoice-row-link,.jobs-list-row-link{cursor:pointer}.invoice-row-link:focus-visible{outline:2px solid rgba(96,165,250,.95);outline-offset:-2px;background:#1e293bd9}.jobs-list-row-link:focus-visible{outline:2px solid rgba(96,165,250,.95);outline-offset:-2px;background:#1e293bd9}.clients-list-row-link{cursor:pointer}.clients-list-row-link:focus-visible{outline:2px solid rgba(96,165,250,.95);outline-offset:-2px;background:#1e293bd9}.table-actions-cell{width:1%;white-space:nowrap;text-align:right}.list-delete-button{min-width:auto;padding:.35rem .45rem}.table td .job-block__assignees{gap:.25rem}.table td .job-block__assignee-badge{min-width:1.5rem;height:1.5rem;border-radius:.45rem;font-size:.72rem}.table-link{color:#93c5fd;text-decoration:none;font-weight:600;background:none;border:0;padding:0;font:inherit;cursor:pointer}.table-link:hover{color:#bfdbfe;text-decoration:underline}.pagination{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1rem}.pagination__summary{display:flex;flex:1;align-items:center;justify-content:center;gap:.75rem;text-align:center}.pagination button{min-width:110px}.badge{display:inline-flex;align-items:center;justify-content:center;padding:.25rem .5rem;border-radius:999px;background:#3b82f640;color:#bfdbfef2;font-size:.75rem;font-weight:600}.invoice-status-badge--draft{background:#3b82f640;color:#bfdbfef2}.invoice-status-badge--awaiting_payment{background:#f59e0b40;color:#fef3c7f2}.invoice-status-badge--paid{background:#22c55e40;color:#bbf7d0f2}.invoice-status-badge--late_payment{background:#ef44444d;color:#fee2e2f2}.invoice-status-badge--void{background:#64748b59;color:#e2e8f0f2}.quote-status-badge--draft{background:#3b82f640;color:#bfdbfef2}.quote-status-badge--awaiting_response{background:#f59e0b40;color:#fef3c7f2}.quote-status-badge--approved{background:#22c55e40;color:#bbf7d0f2}.quote-status-badge--rejected{background:#ef44444d;color:#fee2e2f2}.quote-status-badge--converted{background:#10b98140;color:#a7f3d0f2}.invoices-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;flex-wrap:wrap}.invoices-toolbar__filters{display:flex;align-items:flex-end;gap:.85rem;flex-wrap:wrap;flex:1 1 auto;min-width:0}.invoices-toolbar__actions{margin-left:auto}.invoices-filter{display:flex;flex-direction:column;gap:.35rem;min-width:0}.invoices-filter .toolbar__label{font-size:.9rem;color:#94a3b8e6}.invoices-filter--status{width:200px;flex:0 0 200px}.invoices-filter--customer{width:260px;flex:0 0 260px}.invoices-filter--search{min-width:220px;flex:1 1 300px}@media (max-width: 900px){.invoices-toolbar{align-items:stretch}.invoices-toolbar__actions{width:100%;margin-left:0;display:flex;justify-content:flex-end}.invoices-filter--status,.invoices-filter--customer{flex:1 1 220px;width:auto}}.reports-page{display:flex;flex-direction:column;gap:2rem}.reports-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem}.reports-summary-card strong{font-size:2rem}.reports-summary-card .muted{font-size:.85rem}.reports-charts{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.5rem}.chart-card{min-height:320px;display:flex;flex-direction:column}.chart-container{flex:1;width:100%;min-height:260px}.reports-workbench{display:flex;flex-direction:column;gap:1.5rem}.reports-workbench__filters{display:flex;flex-direction:column;gap:.9rem;padding:1rem 1.1rem;border:1px solid rgba(148,163,184,.18);border-radius:1rem;background:linear-gradient(180deg,#ffffffeb,#f1f5f9f0)}.reports-workbench__filters-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.8rem}.reports-workbench__filters-row label{display:flex;flex-direction:column;gap:.35rem;font-size:.82rem;font-weight:600;letter-spacing:.01em;color:#475569;min-width:0}.reports-workbench__filters-row input,.reports-workbench__filters-row select,.async-entity-select{min-width:0}.async-entity-select>.muted{font-size:.82rem;font-weight:600;letter-spacing:.01em;color:#475569}.reports-filter-control{min-height:2.8rem;box-sizing:border-box}.async-entity-select__trigger{width:100%;justify-content:flex-start;text-align:left;padding-right:2.5rem;position:relative}.async-entity-select__trigger:after{content:"";position:absolute;right:.95rem;top:50%;width:.75rem;height:.5rem;transform:translateY(-50%);pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23e2e8f0' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:contain}.async-entity-select__placeholder{color:#94a3b8cc}.async-entity-select__dropdown{z-index:1200;display:flex;flex-direction:column;box-sizing:border-box;border:1px solid rgba(148,163,184,.18);border-radius:1rem;background:#0f172afa;box-shadow:0 24px 55px #0f172a73;overflow:hidden}.async-entity-select__search{padding:.85rem;border-bottom:1px solid rgba(148,163,184,.12)}.async-entity-select__search-input{width:100%;box-sizing:border-box}.async-entity-select__options{max-height:280px;overflow-y:auto;overflow-x:hidden}.async-entity-select__option,.async-entity-select__status{width:100%;box-sizing:border-box;padding:.9rem 1rem}.async-entity-select__option{display:flex;align-items:center;text-align:left;color:#f8fafc;background:transparent;border:none;border-bottom:1px solid rgba(148,163,184,.08);overflow-wrap:anywhere}.async-entity-select__option small{color:#94a3b8c7;font-size:.78rem}.async-entity-select__option:hover,.async-entity-select__option--active{background:#1e293bf2}.async-entity-select__status{color:#94a3b8db}.reports-workbench .page-header{justify-content:flex-end}.reports-workbench__filters .select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:2.5rem;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23e2e8f0' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .95rem center;background-size:.75rem .5rem}.reports-workbench__filters-row--compact{display:flex;align-items:center;justify-content:space-between;gap:1rem}.reports-workbench__preset-group{display:flex;flex-wrap:wrap;gap:.65rem}.reports-workbench__section-nav{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.9rem}.reports-section-pill{display:flex;flex-direction:column;gap:.35rem;padding:1rem;text-align:left;border:1px solid rgba(148,163,184,.22);border-radius:1rem;background:#fff;color:#0f172a}.reports-section-pill strong{font-size:.98rem}.reports-section-pill span{font-size:.82rem;color:#475569}.reports-section-pill--active{border-color:#0284c773;background:linear-gradient(180deg,#e0f2fecc,#f0f9fff2);box-shadow:0 14px 30px #0284c71f}.reports-data-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1rem;align-items:start}.reports-data-grid>*{min-width:0}.reports-workbench .ui-card,.reports-workbench .ui-card__content{min-width:0}.reports-table{table-layout:fixed}.reports-table td,.reports-table th{vertical-align:top;overflow-wrap:anywhere;word-break:break-word}@media (max-width: 900px){.reports-workbench__filters-row--compact{flex-direction:column;align-items:stretch}.reports-workbench__preset-group{width:100%}}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.form-grid>*{min-width:0;width:100%}.field-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));-moz-column-gap:4rem;column-gap:4rem;row-gap:1.25rem;align-items:start}.field-row--line-items{grid-template-columns:minmax(300px,2.25fr) minmax(120px,.35fr) minmax(140px,.5fr)}.field-row--compact{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.invoice-editor__title-row{grid-template-columns:minmax(0,1fr) minmax(140px,180px);-moz-column-gap:1rem;column-gap:1rem}.field-row>*{min-width:0;width:100%}.purchase-orders__receive-location-row{grid-template-columns:minmax(0,1fr) auto;-moz-column-gap:1rem;column-gap:1rem}.purchase-orders__receive-location-row>:last-child{width:auto;justify-self:end}.card section.customer-details-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:1rem;align-items:start}.customer-details-field{min-width:0;grid-column:span 12}.customer-details-field--title{grid-column:span 2}.customer-details-field--first-name,.customer-details-field--last-name{grid-column:span 3}.customer-details-field--company{grid-column:span 4}.customer-details-field--emails,.customer-details-field--phones{grid-column:span 12}.customer-details-field--billing-street{grid-column:span 5}.customer-details-field--billing-city{grid-column:span 3}.customer-details-field--billing-province,.customer-details-field--billing-postal{grid-column:span 2}.customer-contact-list{display:flex;flex-direction:column;gap:.5rem}.customer-contact-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.5rem .75rem;align-items:start}.customer-contact-row>.input,.customer-contact-row>.input-with-icon{min-width:0}.customer-contact-row__actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:.5rem .85rem;min-height:100%}.customer-contact-row__meta{white-space:normal}.customer-contact-add{width:100%}@media (max-width: 1100px){.customer-details-field--title,.customer-details-field--first-name,.customer-details-field--last-name,.customer-details-field--company,.customer-details-field--billing-street,.customer-details-field--billing-city{grid-column:span 6}.customer-details-field--billing-province,.customer-details-field--billing-postal{grid-column:span 3}}@media (max-width: 720px){.card section.customer-details-grid{grid-template-columns:1fr}.customer-details-field,.customer-details-field--title,.customer-details-field--first-name,.customer-details-field--last-name,.customer-details-field--company,.customer-details-field--emails,.customer-details-field--phones,.customer-details-field--billing-street,.customer-details-field--billing-city,.customer-details-field--billing-province,.customer-details-field--billing-postal{grid-column:1}.customer-contact-row,.field-row,.field-row--line-items,.field-row--compact{grid-template-columns:1fr}}.card{background:#0f172aa6;border-radius:var(--radius-lg);padding:1.5rem;border:1px solid rgba(148,163,184,.15);display:flex;flex-direction:column;gap:1rem;min-width:0;box-shadow:0 15px 35px #0f172a59}.card h3{margin:0}.card section{display:flex;flex-direction:column;gap:1rem}.site-list{display:grid;gap:1rem}.site-item{border-radius:var(--radius-lg);border:1px solid rgba(148,163,184,.12);background:#0f172a99;padding:1rem;display:grid;gap:.5rem}.empty-state{padding:2rem;text-align:center;color:#94a3b8cc;border:1px dashed rgba(148,163,184,.3);border-radius:var(--radius-lg);background:#0f172a59}.quote-customer-card{border-left:3px solid rgba(59,130,246,.45);background:#0f172abf;gap:.75rem}.quote-customer-card__header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.quote-customer-card__header h3{margin:0;font-size:1.35rem}.quote-customer-card__details{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.quote-customer-card__value{display:inline-flex;align-items:center;gap:.5rem;font-weight:600;color:#e2e8f0}.quote-customer-card__link{text-decoration:none}.quote-customer-card__link:hover{text-decoration:underline}.quote-customer-card__property-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.job-client-details{display:grid;gap:.6rem}.job-client-details__name{font-size:1.9rem;font-weight:700;line-height:1.15}.quote-customer-card__value.muted{font-weight:500;color:#94a3b8bf}.muted{color:#94a3b8bf}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172ab3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:50}.modal-backdrop--scrollable{align-items:flex-start;overflow-y:auto;padding:1rem}.modal{width:min(480px,90%);max-height:calc(100vh - 2rem);overflow:hidden;background:#0f172aeb;border-radius:var(--radius-lg);border:1px solid rgba(148,163,184,.2);box-shadow:0 25px 55px #0f172a73;padding:1.5rem;display:flex;flex-direction:column;gap:1rem;min-width:0}.modal form{width:100%;min-width:0}.modal header{display:flex;justify-content:space-between;align-items:center}.modal header h3{margin:0}.modal footer{display:flex;justify-content:flex-end;gap:.75rem}.invoice-create-modal{width:min(1120px,calc(100vw - 2rem));max-height:calc(100vh - 2rem)}.invoice-create-modal__content{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;overflow-y:auto;padding-right:.25rem}.invoice-create-modal__section{min-height:100%;justify-content:space-between}.invoice-create-modal__section h4,.invoice-create-modal__section p{margin:0}@media (max-width: 1080px){.invoice-create-modal__content{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 720px){.invoice-create-modal{width:min(100vw - 1rem,42rem);padding:1rem}.invoice-create-modal__content{grid-template-columns:minmax(0,1fr);gap:1rem}}.input-with-icon{position:relative}.input-with-icon svg{position:absolute;left:.9rem;top:50%;transform:translateY(-50%);color:#94a3b8b3}.input-with-icon .input{padding-left:2.5rem}.stack{display:flex;flex-direction:column;gap:.5rem}.stack>*{min-width:0}.stack.horizontal{flex-direction:row;align-items:center;gap:.75rem}.client-create-form{gap:1rem}.client-create-form .client-create-section{border:1px solid rgba(148,163,184,.22);border-radius:var(--radius-md);padding:1rem;display:flex;flex-direction:column;gap:.75rem;background:#0f172a59}.client-create-form .client-create-section h3{margin:0}.client-create-form .client-create-section__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.client-create-form .client-create-grid--identity{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.client-create-form .client-create-method-list{display:flex;flex-direction:column;gap:.55rem}.client-create-form .client-create-method-row{display:grid;align-items:start;gap:.5rem}.client-create-form .client-create-method-row--email,.client-create-form .client-create-method-row--phone{grid-template-columns:minmax(0,1fr) auto}.client-create-form .client-create-method-row__actions{display:inline-flex;align-items:center;gap:.5rem;flex-wrap:wrap;justify-self:start;white-space:nowrap}.client-create-form .client-create-radio{display:inline-flex;align-items:center;gap:.35rem}.client-create-form .client-create-inline-actions{display:flex;align-items:center;gap:.5rem}.client-create-form .client-create-inline-actions .input{flex:1 1 auto}.client-create-form .client-create-button--compact{width:auto;align-self:flex-start;flex:0 0 auto}.client-create-form .client-create-property-list{display:flex;flex-direction:column;gap:.75rem}.client-create-form .client-create-property-item{display:flex;flex-direction:column;gap:.55rem}.client-create-form .client-create-property-card{gap:.65rem}.client-create-form .client-create-property-card .form-grid{gap:.75rem}.client-create-form .client-create-property-card__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.client-create-form .client-create-notes .textarea{min-height:6rem}.client-create-form .client-create-footer{display:flex;justify-content:flex-end;align-items:center;gap:.75rem;flex-wrap:wrap}@media (max-width: 1100px){.client-create-form .client-create-grid--identity{grid-template-columns:repeat(2,minmax(0,1fr))}.client-create-form .client-create-method-row--phone{grid-template-columns:minmax(0,1fr)}}@media (max-width: 720px){.client-create-form .client-create-grid--identity,.client-create-form .client-create-method-row--email,.client-create-form .client-create-method-row--phone{grid-template-columns:1fr}.client-create-form .client-create-inline-actions{flex-wrap:wrap}}.job-form{display:flex;flex-direction:column;gap:1rem}.job-section{gap:.9rem;padding:1.1rem;border:1px solid rgba(148,163,184,.25)}.job-section__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.job-section__header h4{margin:0}.job-customer-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:1rem}.job-customer-layout--single{grid-template-columns:1fr}.job-customer-panel,.job-assignees-panel{display:grid;gap:.75rem;border:1px solid rgba(148,163,184,.22);border-radius:.75rem;padding:.85rem;min-width:0}.job-schedule-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:1rem}.job-schedule-main,.job-schedule-assignees{display:grid;gap:.75rem;border:1px solid rgba(148,163,184,.22);border-radius:.75rem;padding:.85rem;min-width:0}.job-two-col-grid,.job-schedule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.job-field{position:relative;display:block;min-width:0}.job-field__label{position:absolute;top:.38rem;left:.85rem;z-index:2;font-size:.75rem;line-height:1;color:#94a3b8e6;pointer-events:none}.job-field__control{padding-top:1.35rem}.job-field__control--textarea{min-height:5.5rem}.job-assignee-picker{min-height:5.1rem;max-height:10rem;overflow-y:auto;padding-bottom:.25rem}.job-field--client{z-index:3}.job-field--site{z-index:3;align-self:start}.job-field--active{z-index:20}.job-client-dropdown,.job-site-dropdown{position:absolute;top:calc(100% + .35rem);left:0;right:0;z-index:25}.job-client-dropdown__list{max-height:220px;overflow-y:auto}.job-client-option{justify-content:flex-start}.job-inline-actions{gap:.5rem}.job-billing-split-toggle{gap:.45rem;align-items:center}.job-payment-schedule{display:grid;gap:.75rem}.job-payment-schedule__summary{margin-left:0}.job-payment-schedule__table{display:grid;gap:.4rem;width:100%}.job-payment-schedule__total{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.65rem .75rem;border:1px solid rgba(148,163,184,.2);border-radius:var(--radius-sm)}.job-payment-schedule__header,.job-payment-schedule__row{display:grid;grid-template-columns:minmax(110px,1fr) minmax(110px,.7fr) minmax(140px,.9fr) minmax(120px,.8fr) auto;gap:.75rem;align-items:center}.job-payment-schedule__header{color:#94a3b8f2;font-size:.82rem}.job-payment-schedule__row{padding:.6rem;border:1px solid rgba(148,163,184,.2);border-radius:var(--radius-sm)}.job-payment-schedule__row>*{min-width:0}.job-payment-schedule__row strong{font-weight:600}.job-payment-schedule__actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-start;align-items:center}.job-payment-schedule__auto-send{margin-left:.25rem}.job-payment-schedule__preset{width:auto;min-width:160px}.job-payment-schedule__channel-options{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.job-payment-schedule__warning{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;padding:.75rem;border:1px solid rgba(245,158,11,.4);border-radius:var(--radius-sm);background:#f59e0b14;color:#f59e0b}.form-checkbox-inline{display:inline-flex;align-items:center;gap:.45rem;width:-moz-fit-content;width:fit-content}.job-line-item{width:100%;min-width:0;border:1px solid rgba(148,163,184,.25)}.job-line-item__top{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,.8fr) minmax(0,1fr) minmax(0,1fr) auto;gap:.75rem;width:100%;min-width:0;align-items:end}.job-line-item__top>*{min-width:0}.job-schedule-options{display:flex;flex-wrap:wrap;gap:1rem}.job-field--product-search{min-width:0}.job-field--product-search .product-search{position:relative;width:100%;min-width:0;gap:0}.job-line-item__delete{align-self:end}.job-field--product-search .product-search>.muted{position:absolute;top:.38rem;left:.85rem;z-index:2;font-size:.75rem;line-height:1;color:#94a3b8e6;pointer-events:none}.job-field--product-search .product-search>.input{padding-top:1.35rem}.job-field--product-search .product-search .field-helper,.job-field--product-search .product-search .field-error{margin-top:.35rem}.job-line-items__footer{display:flex;justify-content:flex-start}.job-line-items__totals{margin-left:auto;width:min(560px,100%);display:grid;gap:.35rem}.job-line-items__total-row{display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;text-align:right}.job-line-items__total-row--tax,.job-line-items__tax-control{position:relative}.job-line-items__total-row strong{font-weight:600}.job-line-items__total-row--grand{padding-top:.25rem;border-top:1px solid rgba(148,163,184,.2);font-weight:600}.job-line-items__tax-trigger{color:#94a3b8f2;text-decoration:underline;text-underline-offset:2px}.job-line-items__tax-menu{position:absolute;left:0;top:calc(100% + .35rem);width:min(280px,90vw);z-index:15;display:grid;gap:.45rem}.job-line-items__tax-menu .button{justify-content:flex-start}.invoice-line-items{display:grid;gap:1rem}.invoice-line-item{border:1px solid rgba(148,163,184,.2);border-radius:var(--radius-md);padding:1rem;display:grid;gap:.75rem}.invoice-line-item__top{display:grid;grid-template-columns:minmax(0,1fr) 120px 160px 160px auto;gap:.75rem;align-items:start}.invoice-schedule-banner{border:1px solid rgba(59,130,246,.35);background:#2563eb1a;color:#dbeafe;border-radius:8px;padding:.85rem 1rem}.invoice-schedule-banner a{color:#bfdbfe}.invoice-line-item__product .product-search{position:relative;min-width:0}.invoice-line-item__product .product-search>.muted{display:none}.invoice-line-item__product .product-search:before{content:"Product/Service";position:absolute;top:.45rem;left:.75rem;z-index:1;font-size:.72rem;letter-spacing:.03em;color:#94a3b8e6;pointer-events:none}.invoice-line-item__product .product-search .input{padding-top:1.35rem}.invoice-line-item__qty,.invoice-line-item__price,.invoice-line-item__line-total,.invoice-line-item__portion-due{min-width:0}.invoice-line-item input[type=number],.job-line-item input[type=number],.request-line-item input[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.invoice-line-item input[type=number]::-webkit-outer-spin-button,.invoice-line-item input[type=number]::-webkit-inner-spin-button,.job-line-item input[type=number]::-webkit-outer-spin-button,.job-line-item input[type=number]::-webkit-inner-spin-button,.request-line-item input[type=number]::-webkit-outer-spin-button,.request-line-item input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.invoice-line-item__delete{width:42px;height:42px;padding:0;display:inline-flex;align-items:center;justify-content:center;align-self:start;margin-top:.35rem}.invoice-line-item__description{width:100%}.invoice-line-item__total{text-align:right}.invoice-line-items__footer{display:flex;justify-content:flex-start}.job-form__footer{display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:.75rem}.job-save-actions{position:relative;display:inline-flex;gap:.25rem}.job-save-menu{position:absolute;right:0;bottom:110%;min-width:260px;z-index:30}.job-modal-header-actions{display:inline-flex;align-items:center;gap:.4rem}.job-modal-icon-action{width:2rem;height:2rem;padding:0;display:inline-flex;align-items:center;justify-content:center}.job-modal-icon-action--placeholder{opacity:.55;cursor:not-allowed}.job-confirmation-modal{width:min(860px,96%);max-height:92vh;overflow:auto}.job-confirmation-compose{gap:.9rem}.job-confirmation-prior-banner{margin-top:.75rem;margin-bottom:.25rem;display:flex;align-items:flex-start;gap:.5rem;padding:.65rem .75rem;border-radius:var(--radius-md);border:1px solid rgba(251,191,36,.35);background:#78350f4d;color:#fde68a}.job-confirmation-recipients{display:flex;flex-direction:column;gap:.5rem}.job-confirmation-recipient-row{display:grid;grid-template-columns:1fr auto;gap:.5rem;align-items:center}.job-confirmation-recipient-error{color:#fca5a5;font-size:.8rem;grid-column:1 / -1}.recipient-suggestions{display:flex;flex-direction:column;gap:.4rem}.recipient-suggestions-label{color:#94a3b8;font-size:.85rem}.recipient-suggestions-list{display:flex;flex-wrap:wrap;gap:.4rem}.recipient-suggestion-chip{border:1px solid rgba(148,163,184,.35);background:#1e293ba6;color:#cbd5e1;border-radius:999px;padding:.2rem .65rem;font-size:.82rem;cursor:pointer}.recipient-suggestion-chip:hover:not(:disabled){border-color:#60a5fa99;color:#dbeafe}.recipient-suggestion-chip:disabled{opacity:.6;cursor:not-allowed}.job-confirmation-body-tabs{display:flex;gap:.5rem}.job-confirmation-body-tabs .button.active{border-color:#60a5fa99;background:#3b82f633}.job-confirmation-preview{border:1px solid rgba(148,163,184,.25);background:#1e293bb3;border-radius:var(--radius-md);padding:.8rem;min-height:210px;white-space:pre-wrap}.job-confirmation-preview-editor{min-height:220px}.job-confirmation-save-contacts{align-items:center;gap:.5rem}.job-confirmation-footer{display:flex;justify-content:flex-end;gap:.5rem}.job-confirmation-minute-options{display:flex;flex-wrap:wrap;gap:.5rem}.job-confirmation-minute-custom{width:7rem}.automation-config-card{color:#e2e8f0}.automation-config-card h3{color:#f8fafc}body[data-theme=light] .job-confirmation-prior-banner{border-color:#d9770659;background:#fef3c7cc;color:#92400e}.job-image-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem}.job-image-tile{display:flex;flex-direction:column;gap:.5rem;border:1px solid rgba(148,163,184,.2);border-radius:var(--radius-md);padding:.5rem;background:#0f172a73}.job-image-tile__preview{border:1px solid rgba(148,163,184,.2);border-radius:var(--radius-sm);background:#0f172acc;width:100%;aspect-ratio:4 / 3;padding:0;overflow:hidden;cursor:pointer;display:flex;align-items:center;justify-content:center}.job-image-tile__preview img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.job-image-tile__meta{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.job-image-tile__meta .muted{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.job-image-viewer-backdrop{z-index:90}.job-image-viewer-backdrop__dismiss{position:absolute;top:0;right:0;bottom:0;left:0;border:0;background:transparent;cursor:default}.job-image-viewer{position:relative;z-index:1;width:min(1080px,94vw);max-height:90vh;border:1px solid rgba(148,163,184,.3);border-radius:var(--radius-lg);background:#020617eb;padding:.75rem;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.5rem;align-items:center}.job-image-viewer__close{position:absolute;top:1rem;right:1rem}.job-image-viewer__nav{min-width:2.5rem;min-height:2.5rem;padding:0}.job-image-viewer__image-wrap{position:relative;display:flex;align-items:center;justify-content:center;max-height:84vh;min-height:300px}.job-image-viewer__image{max-width:100%;max-height:84vh;border-radius:var(--radius-md)}.job-image-viewer__caption{position:absolute;left:.6rem;right:.6rem;bottom:.6rem;border-radius:var(--radius-sm);padding:.35rem .5rem;background:#0f172ab8;color:#e2e8f0f2;font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (max-width: 1180px){.job-line-item__top{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 820px){.job-customer-layout,.job-schedule-layout,.job-two-col-grid,.job-schedule-grid{grid-template-columns:1fr}}@media (max-width: 720px){.job-line-item__top{grid-template-columns:1fr}.job-payment-schedule__header{display:none}.job-payment-schedule__row,.invoice-line-item__top{grid-template-columns:1fr}.job-line-item__delete{justify-self:start}.invoice-line-item__delete{margin-top:0;justify-self:start}.job-line-items__totals{margin-left:0}}.jobs-page{display:flex;flex-direction:column;gap:1rem;min-width:0;max-width:100%;overflow-x:hidden}.jobs-toolbar{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem}.jobs-toolbar__left{display:flex;flex-direction:column;gap:.35rem}.jobs-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:.75rem}.jobs-tabs{display:flex;gap:.5rem}.jobs-tab{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .9rem;border-radius:var(--radius-md);border:1px solid transparent;background:#0f172a8c;color:#e2e8f0d9;cursor:pointer;transition:background .2s ease,color .2s ease}.jobs-tab--active{background:#3b82f64d;border-color:#3b82f659;color:#f8fafc;box-shadow:0 12px 30px #2563eb59}.jobs-date-row{margin-top:0;margin-bottom:0}.jobs-date-picker{position:relative;display:inline-flex;flex-direction:column;gap:.5rem}.jobs-date-trigger{border:none;background:transparent;color:#93c5fdf2;text-decoration:underline;font-weight:600;padding:0;cursor:pointer}.jobs-date-trigger:hover{color:#bfdbfefa}.jobs-date-popover{position:absolute;top:calc(100% + .4rem);left:0;z-index:40;min-width:320px;padding:.75rem;background:#0f172af5;border:1px solid rgba(148,163,184,.28)}.jobs-date-popover .rdp-root{--rdp-accent-color: rgb(56 189 248);--rdp-background-color: rgba(56, 189, 248, .18)}.jobs-date-popover .rdp-day_button{color:#e2e8f0f2}.jobs-date-popover .rdp-selected .rdp-day_button{background:#38bdf8cc;color:#0f172af2}.jobs-date-popover .jobs-date-popover__holiday .rdp-day_button{box-shadow:inset 0 0 0 2px #4ade80cc}.jobs-map-layout{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:1rem;align-items:start}.jobs-map-panel{padding:1rem}.jobs-map-panel-toggle{display:none}.jobs-map-chip{display:inline-flex;align-items:center;gap:.4rem;border-radius:999px;border:1px solid rgba(148,163,184,.25);background:#0f172a80;color:#e2e8f0f2;font-size:.82rem;padding:.35rem .65rem}.jobs-map-status{min-height:2.2rem}.jobs-map-stats{display:flex;flex-wrap:wrap;gap:.4rem}.jobs-map-stat{display:inline-flex;align-items:center;gap:.25rem;border:1px solid rgba(148,163,184,.2);border-radius:999px;padding:.18rem .55rem;font-size:.74rem;color:#e2e8f0e6}.jobs-map-stops h3,.jobs-map-unmapped h4{margin:0}.jobs-map-stop{border-radius:var(--radius-md);border:1px solid rgba(148,163,184,.18);background:#0f172a6b;padding:.7rem;display:flex;flex-direction:column;gap:.45rem;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.jobs-map-stop--active{border-color:#60a5fa80;box-shadow:0 10px 24px #2563eb38}.jobs-map-stop:hover{border-color:#60a5fa73}.jobs-map-stop__header{display:flex;align-items:center;gap:.55rem}.jobs-map-stop__index{width:1.3rem;height:1.3rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#2563eb59;color:#f8fafc;font-size:.75rem;font-weight:600}.jobs-map-stop__meta{display:flex;flex-direction:column;gap:.32rem;color:#bfdbfeeb;font-size:.82rem}.jobs-map-stop__meta span{display:inline-flex;align-items:center;gap:.35rem}.jobs-map-unmapped ul{margin:.4rem 0 0;padding-left:1rem;color:#e2e8f0e0;font-size:.82rem}.jobs-map-canvas-wrap{padding:.75rem}.jobs-map-canvas{width:100%;min-height:68vh;border-radius:var(--radius-md);border:1px solid rgba(148,163,184,.25)}.jobs-calendar{--calendar-times-offset: 2.75rem;--calendar-grid-offset: 0rem;display:flex;flex-direction:column;gap:.75rem;min-width:0;max-width:100%}.jobs-legend{margin-top:.5rem;display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;padding:.75rem 1rem;border-radius:var(--radius-md);background:#0f172a99;border:1px solid rgba(148,163,184,.2)}.jobs-legend__item{display:inline-flex;align-items:center;gap:.5rem;color:#e2e8f0d9;font-size:.9rem}.jobs-legend__swatch{width:.75rem;height:.75rem;border-radius:.25rem;border:1px solid rgba(15,23,42,.45);box-shadow:0 0 0 1px #0f172a40}.jobs-view-toggle{display:flex;gap:.5rem}.jobs-view-options-modal{width:min(520px,96%)}.jobs-view-options-card{padding:.8rem}.jobs-calendar__grid-header{display:flex;justify-content:center;align-items:center;row-gap:.6rem}.jobs-calendar__grid-controls{display:flex;align-items:center;justify-content:center;gap:.75rem;flex-wrap:wrap}.jobs-calendar__navigation{display:flex;gap:.5rem}.jobs-calendar__controls{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.jobs-calendar__history{display:flex;gap:.5rem;flex-wrap:wrap}.jobs-calendar__range{justify-self:end;text-align:right;font-weight:600;color:#e2e8f0e6}.jobs-calendar__unscheduled{display:flex;flex-direction:column;gap:.75rem;min-width:0;max-width:100%;overflow:hidden}.jobs-calendar__unscheduled-toggle{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:inherit;display:inline-flex;align-items:center;gap:.5rem;width:-moz-fit-content;width:fit-content;padding:0;font:inherit;font-weight:700;cursor:pointer}.jobs-calendar__unscheduled-count{display:inline-flex;align-items:center;justify-content:center;min-width:1.5rem;min-height:1.5rem;border-radius:999px;padding:0 .45rem;background:#3b82f62e;color:#bfdbfef2;font-size:.78rem;font-weight:700}.jobs-calendar__unscheduled-list{display:flex;gap:.75rem;overflow-x:auto;overflow-y:hidden;width:100%;max-width:100%;min-width:0;padding-bottom:.25rem;-webkit-overflow-scrolling:touch}.jobs-calendar__unscheduled-empty{color:#e2e8f0b8;font-size:.9rem;padding:.25rem 0}.job-card{min-width:220px;flex:0 0 auto;border-radius:var(--radius-md);border:1px solid rgba(148,163,184,.2);background:#0f172a8c;padding:1rem;display:flex;flex-direction:column;gap:.5rem;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.job-card:hover{transform:translateY(-2px);box-shadow:0 12px 30px #2563eb4d}.job-card__title{font-weight:600;color:#f8fafc}.job-card__meta{display:flex;flex-wrap:wrap;gap:.5rem .75rem;font-size:.8rem;color:#bfdbfed9}.job-card__meta span{display:inline-flex;align-items:center;gap:.35rem}.job-badge{display:inline-flex;align-items:center;justify-content:center;padding:.25rem .6rem;border-radius:999px;font-size:.75rem;font-weight:600;background:#3b82f640;color:#bfdbfef2}.job-badge--in_progress{background:#10b98140;color:#a7f3d0f2}.job-badge--completed{background:#22c55e40;color:#bbf7d0f2}.job-badge--cancelled,.job-badge--late{background:#ef44444d;color:#fee2e2f2}.jobs-calendar__grid{display:grid;grid-template-columns:70px repeat(7,minmax(0,1fr));gap:0rem;width:100%;max-width:100%;min-width:0}@media (max-width: 980px){.jobs-calendar__grid-header{justify-content:center}}.jobs-calendar__times{display:flex;flex-direction:column;gap:.5rem;font-size:.75rem;color:#94a3b8cc;margin-top:var(--calendar-times-offset)}.jobs-calendar__time{height:64px;display:flex;align-items:flex-start;padding-left:.25rem}.jobs-calendar__day{background:#0f172a73;border-radius:.25rem;border:1px solid rgba(148,163,184,.18);position:relative;display:flex;flex-direction:column}.jobs-calendar__day--unassigned{border-color:#f59e0b80;box-shadow:inset 0 0 0 1px #f59e0b33}.jobs-calendar__day--unassigned.jobs-calendar__day--holiday,.jobs-calendar__day--unassigned.jobs-calendar__day--today,.jobs-calendar__day--unassigned.jobs-calendar__day--today.jobs-calendar__day--holiday{border-color:#f59e0b99;box-shadow:inset 0 0 0 1px #f59e0b40,0 12px 30px #d9770633}.jobs-calendar__day--today{border-color:#60a5fa73;box-shadow:0 0 0 1px #3b82f640,0 12px 30px #2563eb33}.jobs-calendar__day--today .jobs-calendar__day-header{border-bottom-color:#60a5fa73;background:#3b82f61f}.jobs-calendar__day--today .jobs-calendar__day-body{background-color:#3b82f614;-webkit-backdrop-filter:brightness(1.02);backdrop-filter:brightness(1.02)}.jobs-calendar__day-header{display:flex;align-items:baseline;justify-content:space-between;padding:.75rem 1rem;border-bottom:4px solid rgba(148,163,184,.15)}.jobs-calendar__day-assignee{font-size:.78rem;color:#94a3b8e6;margin-left:.5rem}.jobs-calendar__day-assignee--unassigned{color:#fbbf24f2}.jobs-calendar__day--holiday{border-color:#f472b659}.jobs-calendar__holiday-pill{position:absolute;top:-.7rem;left:50%;transform:translate(-50%);z-index:8;display:inline-flex;align-items:center;max-width:calc(100% - 1rem);font-size:.7rem;font-weight:700;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-radius:999px;padding:.25rem .55rem;border:1px solid rgba(251,113,133,.45);color:#ffe4e6f2;background:#be185d4d}.jobs-calendar__day-body{position:relative;height:1728px;padding:.25rem .75rem;background-image:repeating-linear-gradient(to bottom,rgba(148,163,184,.18) 0px,rgba(148,163,184,.18) 1px,transparent 1px,transparent 72px),repeating-linear-gradient(to bottom,rgba(148,163,184,.08) 0px,rgba(148,163,184,.08) 1px,transparent 1px,transparent 36px);background-size:100% 72px,100% 36px;background-position:0 var(--calendar-grid-offset),0 var(--calendar-grid-offset);background-repeat:repeat}.jobs-calendar__holiday-overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;background:#be185d14}.job-block{position:absolute;left:0rem;right:0rem;border-radius:.2rem;padding:0rem .2rem;background:#a6c7fb;color:#0f172a;display:flex;flex-direction:column;gap:0rem;box-shadow:0 8px 24px #0f172a4d;box-sizing:border-box;overflow:hidden;z-index:5}.job-block--completed{box-shadow:0 10px 28px #15803d47}.job-block--late{border:2px solid #ef4444}.jobs-calendar__off-hours{position:absolute;left:0rem;right:0rem;background:#0f172a8c;border-radius:.35rem;pointer-events:none;z-index:1;-webkit-backdrop-filter:brightness(.85);backdrop-filter:brightness(.85)}body[data-theme=light] .jobs-calendar__off-hours{background:#94a3b84d;-webkit-backdrop-filter:brightness(1.05);backdrop-filter:brightness(1.05)}body[data-theme=light] .slot-create-preview{background:#93c5fd59;border-color:#3b82f6a6;box-shadow:inset 0 0 0 1px #3b82f640}body[data-theme=light] .slot-click-preview{background:#0ea5e91f;border-color:#0369a18c;box-shadow:inset 0 0 0 1px #0e749033}body[data-theme=light] .jobs-calendar__slot-menu{background:#fff;border-color:#94a3b873;box-shadow:0 12px 24px #0f172a2e}body[data-theme=light] .jobs-calendar__slot-menu-item{color:#0f172a}body[data-theme=light] .jobs-calendar__slot-menu-item:hover,body[data-theme=light] .jobs-calendar__slot-menu-item:focus-visible{background:#3b82f61f;color:#0f172a}body[data-theme=light] .jobs-calendar__slot-menu-item:disabled{background:#94a3b833;color:#475569cc}.current-time-line{position:absolute;left:.25rem;right:.25rem;height:2px;background:#ff4d4f;z-index:40}.current-time-line:before{content:"";position:absolute;left:-8px;top:-6px;width:10px;height:10px;border-radius:50%;background:#ff4d4f}.job-block__title{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:.12rem;font-weight:600;font-size:.9rem}.job-block__status-action{position:absolute;top:.25rem;right:.25rem;width:1.35rem;height:1.35rem;padding:0;border:1px solid rgba(15,23,42,.24);border-radius:999px;background:#ffffffd9;color:#0f172ad9;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;z-index:2}.job-block__status-action--completed{background:#0f172a29;color:#fff;border-color:#ffffff59}.job-block__status-action:disabled{opacity:.6;cursor:progress}.job-block--completed .job-block__title>span:last-child{text-decoration:line-through}.job-block__assignees{display:flex;align-items:flex-start;align-content:flex-start;justify-content:flex-start;flex-wrap:wrap;-moz-column-gap:0;column-gap:0;row-gap:.05rem;width:100%;flex-shrink:0}.job-block__assignee-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:.35rem;min-width:1.45rem;height:1.1rem;padding:0 .3rem;margin-right:-.08rem;font-size:.64rem;letter-spacing:.02em;font-weight:700;line-height:1;text-transform:uppercase}.job-block__meta{display:flex;flex-direction:column;gap:0rem;font-size:.75rem}.job-block__meta span{display:inline-flex;align-items:center;gap:.35rem}.job-block__resize-handle{position:absolute;left:0;right:0;bottom:0;height:10px;display:flex;align-items:center;justify-content:center;cursor:ns-resize;opacity:0;transition:opacity .15s ease}.job-block__resize-handle--top{top:0;bottom:auto}.job-block__resize-handle:before{content:"";width:40%;height:2px;border-radius:9999px;background:#0f172a73}.job-block:hover .job-block__resize-handle,.job-block--resizing .job-block__resize-handle{opacity:1}.job-block--dragging{opacity:.5;pointer-events:none}.slot-create-preview{position:absolute;left:0rem;right:0rem;border-radius:.2rem;background:#60a5fa4d;border:1px dashed rgba(191,219,254,.95);box-shadow:inset 0 0 0 1px #3b82f659;pointer-events:none;z-index:4}.slot-click-preview{position:absolute;left:0rem;right:0rem;border-radius:.2rem;background:#38bdf829;border:1px solid rgba(125,211,252,.95);box-shadow:inset 0 0 0 1px #0ea5e973;pointer-events:none;z-index:3}.jobs-calendar__slot-menu{position:fixed;z-index:70;min-width:10rem;padding:.4rem;border-radius:.5rem;border:1px solid rgba(148,163,184,.28);background:#0f172afa;box-shadow:0 14px 30px #0f172a73}.jobs-calendar__slot-menu-item{width:100%;border:0;border-radius:.375rem;padding:.45rem .6rem;background:transparent;color:#e2e8f0;text-align:left;font:inherit;cursor:pointer}.jobs-calendar__slot-menu-item:hover,.jobs-calendar__slot-menu-item:focus-visible{background:#3b82f633;color:#f8fafc;outline:none}.jobs-calendar__slot-menu-item:disabled{background:#94a3b814;color:#94a3b8b3;cursor:not-allowed}.jobs-list{display:flex;flex-direction:column;gap:1rem}.jobs-list__sort-button{background:transparent;border:none;color:inherit;font:inherit;font-weight:600;text-transform:inherit;letter-spacing:inherit;cursor:pointer;padding:0}.jobs-list__sort-button:hover{color:#bfdbfe}.jobs-list__filters{display:flex;gap:1rem;flex-wrap:wrap}.job-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172aa6;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;justify-content:flex-end;z-index:60}.job-drawer{width:min(420px,90%);height:100vh;background:#0f172af2;border-left:1px solid rgba(148,163,184,.2);padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem;overflow-y:auto}.job-drawer__header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.job-drawer__section{display:flex;flex-direction:column;gap:1rem;border:1px solid rgba(148,163,184,.12);border-radius:var(--radius-md);padding:1rem;background:#0f172a99}.job-drawer__section h4{margin:0}.job-drawer__schedule{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem}.job-task-form{display:flex;gap:.75rem}.job-task-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.65rem}.job-task-item{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.5rem .75rem;border-radius:var(--radius-md);background:#0f172a8c;border:1px solid rgba(148,163,184,.18)}.job-task-item label{display:inline-flex;align-items:center;gap:.5rem;font-size:.9rem}.job-task-item--done span{text-decoration:line-through;color:#94a3b8b3}.job-activity-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem;font-size:.85rem}.job-activity-list li{display:flex;flex-direction:column;gap:.35rem;border-left:2px solid rgba(59,130,246,.4);padding-left:.75rem}.invoice-summary-money{margin-left:auto;width:min(480px,100%);display:flex;flex-direction:column;gap:.55rem;border:1px solid rgba(148,163,184,.2);border-radius:var(--radius-md);padding:.85rem 1rem;background:#0f172a66}.invoice-summary-money__note{color:#94a3b8f2;font-size:.92rem}.invoice-summary-money__row{position:relative;display:flex;align-items:center;justify-content:space-between;gap:1rem}.invoice-summary-money__tax-trigger{color:#94a3b8f2;text-underline-offset:2px}.invoice-summary-money__tax-menu{position:absolute;left:0;top:calc(100% + .35rem);width:min(280px,90vw);z-index:25;display:grid;gap:.45rem}.invoice-summary-money__tax-menu .button{justify-content:flex-start}.invoice-summary-money__row strong{font-variant-numeric:tabular-nums}.app-loading{display:flex;align-items:center;justify-content:center;min-height:60vh;font-size:1rem;color:#94a3b8d9}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem}.auth-card{width:min(420px,100%);background:#0f172ad9;border:1px solid rgba(148,163,184,.18);border-radius:var(--radius-lg);padding:2rem;display:flex;flex-direction:column;gap:1.5rem;box-shadow:0 25px 45px #0f172a73}.auth-card h1{margin:0;font-size:1.75rem}.auth-card .muted{color:#94a3b8bf}.auth-form{display:flex;flex-direction:column;gap:1rem}.auth-links{display:flex;justify-content:space-between;font-size:.9rem}.auth-links a{color:#60a5fae6;text-decoration:none}.auth-links a:hover{text-decoration:underline}.auth-token{display:flex;flex-direction:column;gap:.35rem;padding:.75rem;border-radius:var(--radius-md);background:#3b82f61f;border:1px solid rgba(59,130,246,.35);word-break:break-all}.auth-token span{font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8b3}.auth-token code{font-family:Fira Code,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.95rem;color:#e2e8f0f2}.profile-menu{position:relative;display:flex;align-items:center}.profile-menu__trigger{display:inline-flex;align-items:center;gap:.6rem;padding:.45rem .75rem;border-radius:999px;border:1px solid rgba(148,163,184,.2);background:#0f172abf;color:#e2e8f0f2;cursor:pointer}.profile-menu__trigger:hover{border-color:#94a3b866}.profile-menu__trigger--icon{width:2.2rem;height:2.2rem;justify-content:center;padding:0;border-radius:999px}.profile-menu__account{display:flex;flex-direction:column;gap:.2rem;padding-bottom:.55rem;border-bottom:1px solid rgba(148,163,184,.2)}.profile-menu__account-email{font-size:.85rem;color:#e2e8f0f2;word-break:break-all}.profile-menu__account-subtitle{font-size:.75rem;color:#94a3b8bf}.profile-menu__info{display:flex;flex-direction:column;align-items:flex-start;line-height:1.1}.profile-menu__email{font-size:.85rem}.profile-menu__subtitle{font-size:.75rem;color:#94a3b8b3}.profile-menu__panel{position:absolute;top:120%;right:0;width:240px;background:#0f172af2;border:1px solid rgba(148,163,184,.2);border-radius:var(--radius-md);padding:1rem;display:flex;flex-direction:column;gap:.75rem;z-index:80;box-shadow:0 25px 45px #0f172a99}.activity-feed-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a61;z-index:110;overflow-y:auto;display:flex}.activity-feed-backdrop__scrim{position:fixed;top:0;right:0;bottom:0;left:0;border:0;background:transparent;padding:0;margin:0}.activity-feed-panel{margin-left:auto;width:min(30rem,100vw);height:100vh;background:linear-gradient(180deg,#0f172afa,#0f172af0),#0f172af5;border-left:1px solid rgba(148,163,184,.18);box-shadow:-24px 0 60px #0206176b;display:flex;flex-direction:column;min-height:0;position:relative;z-index:1}.activity-feed-panel__header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.25rem 1.25rem 1rem;border-bottom:1px solid rgba(148,163,184,.12);position:relative}.activity-feed-panel__header h2{margin:0;font-size:1.05rem}.activity-feed-panel__header-actions{display:flex;align-items:center;gap:.55rem}.activity-feed-panel__icon-button{width:2.1rem;height:2.1rem;padding:0;display:inline-flex;align-items:center;justify-content:center}.activity-feed-panel__filter-menu{position:relative}.activity-feed-panel__filter-popover{position:absolute;top:calc(100% + .55rem);right:0;width:min(18rem,calc(100vw - 3rem));padding:.75rem;border-radius:1rem;border:1px solid rgba(148,163,184,.16);background:#0f172afa;box-shadow:0 18px 44px #0f172a57;display:flex;flex-wrap:wrap;gap:.55rem;z-index:3}.activity-feed-filter{border:1px solid rgba(148,163,184,.18);background:#1e293b99;color:#e2e8f0d1;border-radius:999px;padding:.42rem .75rem;font-size:.83rem;white-space:nowrap}.activity-feed-filter--active{background:#3b82f62e;border-color:#60a5fa73;color:#eff6fffa}.activity-feed-panel__body{flex:1;min-height:0;overflow-y:auto;padding:1.1rem 1.25rem 1.5rem;display:flex;flex-direction:column;gap:1.25rem}.activity-feed-group{display:flex;flex-direction:column;gap:.75rem}.activity-feed-group h3{margin:0;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8c7}.activity-feed-group__items{display:flex;flex-direction:column;gap:.7rem}.activity-feed-event{width:100%;border:1px solid rgba(148,163,184,.12);background:#1e293b85;border-radius:1rem;padding:.85rem .9rem;display:flex;align-items:flex-start;gap:.85rem;color:inherit;text-align:left}.activity-feed-event:hover{border-color:#60a5fa52;background:#1e293bb8}.activity-feed-event--new{border-color:#60a5fa4d}.activity-feed-event__icon{width:2.1rem;height:2.1rem;border-radius:.8rem;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.activity-feed-event__icon--teal{background:#14b8a633;color:#2dd4bf}.activity-feed-event__icon--cyan{background:#06b6d433;color:#22d3ee}.activity-feed-event__icon--sky{background:#0ea5e933;color:#38bdf8}.activity-feed-event__icon--blue{background:#3b82f633;color:#60a5fa}.activity-feed-event__icon--amber{background:#f59e0b33;color:#fbbf24}.activity-feed-event__icon--stone{background:#78716c38;color:#d6d3d1}.activity-feed-event__icon--orange{background:#f9731633;color:#fb923c}.activity-feed-event__icon--violet{background:#8b5cf633;color:#a78bfa}.activity-feed-event__icon--indigo{background:#6366f138;color:#818cf8}.activity-feed-event__icon--fuchsia{background:#d946ef33;color:#e879f9}.activity-feed-event__icon--green{background:#22c55e33;color:#4ade80}.activity-feed-event__icon--emerald{background:#10b98133;color:#34d399}.activity-feed-event__icon--cobalt{background:#3b82f638;color:#93c5fd}.activity-feed-event__icon--lime{background:#84cc1633;color:#a3e635}.activity-feed-event__icon--orange-red{background:#ea580c33;color:#fdba74}.activity-feed-event__icon--red{background:#ef444433;color:#f87171}.activity-feed-event__icon--rose{background:#f43f5e33;color:#fb7185}.activity-feed-event__icon--yellow{background:#eab30833;color:#fde047}.activity-feed-event__icon--pink{background:#ec489933;color:#f472b6}.activity-feed-event__icon--plum{background:#9333ea33;color:#d8b4fe}.activity-feed-event__icon--slate{background:#64748b33;color:#cbd5e1}.activity-feed-event__content{min-width:0;flex:1;display:flex;flex-direction:column;gap:.35rem}.activity-feed-event__meta{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.activity-feed-event__new-dot{width:.55rem;height:.55rem;border-radius:999px;background:#60a5fa;box-shadow:0 0 0 .18rem #60a5fa2e;flex:0 0 auto}.activity-feed-event__description,.activity-feed-event__timestamp{line-height:1.35}.activity-feed-event__description{white-space:pre-line}.activity-feed-event__timestamp-button{border:0;background:transparent;padding:0;color:inherit;font:inherit;cursor:pointer;text-align:left}.activity-feed-event__timestamp-button:hover{color:#bfdbfefa}html.activity-feed-open,body.activity-feed-open,html.modal-scroll-lock,body.modal-scroll-lock{overflow:hidden}body.activity-feed-open .app-shell,body.activity-feed-open .app-shell main{overflow:hidden!important}body.modal-scroll-lock .app-shell,body.modal-scroll-lock .app-shell main{overflow:hidden!important}body[data-theme=light] .activity-feed-trigger__badge{box-shadow:0 0 0 2px #fff}body[data-theme=light] .activity-feed-backdrop{background:#94a3b842}body[data-theme=light] .activity-feed-panel{background:linear-gradient(180deg,#fff,#f8fafc);border-left-color:#94a3b83d}body[data-theme=light] .activity-feed-panel__filter-popover{background:#fffffffa;border-color:#94a3b83d;box-shadow:0 18px 44px #94a3b82e}body[data-theme=light] .activity-feed-filter{background:#f1f5f9f2;color:#0f172acc}body[data-theme=light] .activity-feed-filter--active{background:#dbeafef2;color:#1e40aff2}body[data-theme=light] .activity-feed-event{background:#fffffff2;border-color:#94a3b838}body[data-theme=light] .activity-feed-event--new{border-color:#3b82f647}body[data-theme=light] .activity-feed-event__new-dot{background:#2563eb;box-shadow:0 0 0 .18rem #2563eb1f}.profile-menu__list{display:flex;flex-direction:column;gap:.5rem}.profile-menu__item{display:flex;align-items:center;gap:.6rem;padding:.5rem .65rem;border-radius:var(--radius-md);border:none;background:#3b82f61f;color:#e2e8f0f2;cursor:pointer;font-size:.9rem}.profile-menu__item:hover{background:#3b82f633}.profile-menu__form{display:flex;flex-direction:column;gap:.75rem}.profile-menu__form label{font-size:.85rem;color:#94a3b8d9}.profile-menu__actions{display:flex;justify-content:flex-end;gap:.75rem}.technician-jobs{display:flex;flex-direction:column;gap:1.5rem}.technician-jobs__header{display:flex;flex-direction:column;gap:.35rem}.technician-jobs__list{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.technician-jobs__card{border:1px solid rgba(148,163,184,.15);border-radius:var(--radius-xl);padding:1rem;background:#0f172ab3;display:flex;flex-direction:column;gap:.75rem}.technician-jobs__card-header{display:flex;align-items:center;justify-content:space-between}.technician-jobs__card dl{display:grid;gap:.6rem;margin:0}.technician-jobs__card dt{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8a6}.technician-jobs__card dd{margin:0;font-size:.95rem}.badge{display:inline-flex;align-items:center;gap:.35rem;padding:.15rem .6rem;border-radius:999px;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.badge--muted{background:#94a3b833;color:#e2e8f0}.badge--outline{border:1px solid rgba(148,163,184,.3);color:#cbd5f5}.messaging-panel{display:flex;flex-direction:column;gap:1.25rem}.messaging-panel__header{display:flex;justify-content:space-between;align-items:center}.messaging-channel-toggle{display:flex;gap:.5rem}.messaging-channel-toggle__button{border:1px solid rgba(148,163,184,.35);background:#1e293b99;color:#e2e8f0;padding:.4rem .9rem;border-radius:999px;font-size:.85rem;display:inline-flex;align-items:center;gap:.4rem;transition:background .2s ease,border .2s ease}.messaging-channel-toggle__button--active{background:#3b82f633;border-color:#60a5fab3;color:#bfdbfe}.messaging-thread{max-height:340px;overflow-y:auto;background:#0f172a8c;border:1px solid rgba(148,163,184,.2);border-radius:var(--radius-lg);padding:1.1rem}.messaging-thread__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1rem}.message-bubble{width:100%;padding:.85rem 1rem;border-radius:var(--radius-xl);background:#1e293be6;box-shadow:0 8px 24px #0f172a59;display:flex;flex-direction:column;gap:.4rem;border:1px solid rgba(148,163,184,.22)}.message-bubble--outbound{background:#1e293bf5}.message-bubble--inbound{background:#0f172aeb}.message-bubble--sms{border-color:#22c55e61}.message-bubble--sms.message-bubble--outbound{background:#15803d33}.message-bubble--sms.message-bubble--inbound{background:#14532d38}.message-bubble--email{border-color:#3b82f666}.message-bubble--email.message-bubble--outbound{background:#2563eb33}.message-bubble--email.message-bubble--inbound{background:#1e40af2e}.message-bubble__meta{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem;font-size:.75rem;color:#cbd5e1e6}.message-bubble__subject{font-size:.85rem}.message-bubble__error{font-size:.8rem;color:#fca5a5}.message-status{display:inline-flex;align-items:center;border-radius:999px;font-size:.7rem;padding:.2rem .6rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.message-status--queued{background:#fbbf2426;color:#fbbf24}.message-status--sent{background:#60a5fa2e;color:#93c5fd}.message-status--delivered{background:#22c55e33;color:#86efac}.message-status--failed{background:#f8717133;color:#fca5a5}.messaging-compose{display:flex;flex-direction:column;gap:1rem;background:#0f172a99;border:1px solid rgba(148,163,184,.2);border-radius:var(--radius-lg);padding:1rem 1.2rem}.messaging-compose__row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.messaging-variables{display:flex;flex-direction:column;gap:.75rem}.messaging-variables__grid{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.messaging-preview{display:flex;flex-direction:column;gap:.4rem}.messaging-preview__body{background:#1e293bb3;border:1px solid rgba(148,163,184,.25);padding:.9rem;border-radius:var(--radius-md);white-space:pre-wrap}.messaging-compose__actions{display:flex;justify-content:flex-end}.messaging-compose__blocked{padding:1rem;background:#0f172a66;border:1px dashed rgba(148,163,184,.25);border-radius:var(--radius-md)}.job-drawer__tabs{display:flex;gap:.75rem;margin:0 0 1rem}.job-drawer__tab{background:transparent;border:1px solid rgba(148,163,184,.25);color:#cbd5f5;padding:.4rem .9rem;border-radius:999px;font-size:.85rem;cursor:pointer;transition:border .2s ease,background .2s ease}.job-drawer__tab--active{background:#3b82f633;border-color:#60a5fa99;color:#e0f2fe}.job-drawer__section--full{padding:0}.customer-tabs{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1.5rem}.customer-tabs__divider{width:1px;height:1.75rem;background:#94a3b84d}.customer-tabs__tab{border:1px solid rgba(148,163,184,.25);background:transparent;color:#e2e8f0;padding:.5rem 1.1rem;border-radius:999px;cursor:pointer;transition:border .2s ease,background .2s ease}.customer-tabs__tab--active{background:#3b82f633;border-color:#60a5faa6;color:#dbeafe}.customer-messaging{padding:1.5rem}.customer-work-card h4{margin:0 0 .5rem}.customer-work-card__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.customer-work-stack{display:grid;gap:1rem}.customer-work-table__row{cursor:pointer}.customer-work-table__row:hover{background:#94a3b814}.customer-work-table--tasks th,.customer-work-table--tasks td{text-align:left;vertical-align:middle}.customer-work-table--tasks .table-actions-cell{text-align:right}.customer-work-table__status-cell{white-space:nowrap}.customer-work-table__checkbox{display:inline-flex;align-items:center;gap:.55rem;cursor:pointer}.customer-work-table__checkbox input{width:1rem;height:1rem;margin:0;accent-color:#22c55e}.customer-work-table__checkbox--readonly{cursor:default;color:#e2e8f0d1}.customer-work-table__checkbox--readonly input{cursor:default}.templates-page .page-header{align-items:center}.templates-layout{display:grid;grid-template-columns:260px 1fr;gap:1.5rem;align-items:start}.templates-list ul{list-style:none;margin:1rem 0 0;padding:0;display:flex;flex-direction:column;gap:.75rem}.templates-list__groups{display:flex;flex-direction:column;gap:1rem;margin-top:1rem}.templates-list__group ul{margin-top:.5rem}.templates-list__group-title{margin:0;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8e6}.templates-list__item{padding:.75rem .9rem;border-radius:var(--radius-md);border:1px solid transparent;background:#0f172a66;color:#e2e8f0f5;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:.35rem;transition:border .2s ease,background .2s ease}.templates-list__item:hover{border-color:#94a3b859}.templates-list__item--active{border-color:#60a5fa99;background:#3b82f626}.templates-list__item-title{font-weight:600;color:#f8fafcfa}.templates-editor{display:flex;flex-direction:column}.templates-editor form{display:flex;flex-direction:column;gap:1rem}.templates-editor__header{display:flex;justify-content:space-between;align-items:center}.templates-editor__tools{display:flex;align-items:center;gap:.75rem;justify-content:space-between}.templates-variables-panel{border:1px solid rgba(148,163,184,.25);border-radius:var(--radius-md);padding:.85rem 1rem;background:#0f172a80}.templates-variables-panel h4{margin:0 0 .75rem}.templates-variables-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem}.templates-variables-group{border:1px solid rgba(148,163,184,.2);border-radius:var(--radius-md);padding:.65rem;background:#0f172a59}.templates-variables-group h5{margin:0 0 .5rem;font-size:.82rem;letter-spacing:.03em;text-transform:uppercase;color:#94a3b8e6}.templates-variables-list{display:flex;flex-direction:column;gap:.4rem}.templates-variable-item{width:100%;border:1px solid rgba(148,163,184,.25);border-radius:var(--radius-sm);background:#1e293b8c;color:#e2e8f0f2;text-align:left;padding:.45rem .55rem;display:flex;justify-content:space-between;gap:.5rem;align-items:center;cursor:pointer}.templates-variable-item code{color:#7dd3fcf2;font-size:.78rem}.templates-variable-item:hover{border-color:#60a5fa8c;background:#2563eb2e}.templates-live-preview{border:1px solid rgba(148,163,184,.25);border-radius:var(--radius-md);padding:.85rem 1rem;background:#0f172a73}.templates-live-preview h4{margin:0 0 .65rem}.templates-live-preview__subject{border:1px solid rgba(148,163,184,.25);border-radius:var(--radius-sm);padding:.55rem .65rem;background:#1e293b8c;margin-bottom:.6rem}.templates-live-preview__body{margin:0;white-space:pre-wrap;border:1px solid rgba(148,163,184,.2);border-radius:var(--radius-sm);background:#0f172a61;padding:.7rem;min-height:140px;font-family:inherit}.templates-editor__actions{display:flex;justify-content:flex-end}.notifications-card{display:flex;flex-direction:column;gap:1.5rem}.lead-alert-preferences{display:flex;flex-direction:column;gap:1rem;padding:.75rem 1rem;border:1px solid rgba(148,163,184,.15);border-radius:var(--radius-md);background:#0f172a66}.lead-alert-preferences__header{display:flex;align-items:center;justify-content:space-between;gap:1rem;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;color:#94a3b8e6}.lead-alert-preferences__role-header{min-width:140px}.lead-alert-preferences__column-labels{display:flex;gap:1.5rem}.lead-alert-preferences__row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem}.lead-alert-preferences__role{font-size:.95rem;min-width:140px}.lead-alert-preferences__toggles{display:flex;align-items:center;gap:1.5rem}.lead-alert-toggle .toggle__label-text{font-size:.8rem}.settings-card__header{display:flex;flex-direction:column;gap:.35rem}.settings-form{display:flex;flex-direction:column;gap:1rem}.settings-form__row{display:flex;flex-wrap:wrap;gap:1rem}.settings-form__field{display:flex;flex-direction:column;gap:.35rem;flex:1 1 220px}.reminder-settings-group{gap:.75rem}.reminder-settings-group__header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.reminder-settings-group__description{margin:.25rem 0 0}.logo-upload-area{border:2px dashed #d1d5db;border-radius:var(--radius-md);padding:2rem;text-align:center}.logo-preview{display:flex;flex-direction:column;align-items:center;gap:1rem}.logo-preview img{max-width:200px;max-height:100px;-o-object-fit:contain;object-fit:contain;border-radius:var(--radius-sm)}.business-hours-form{display:flex;flex-direction:column;gap:1rem}.business-hours-grid{display:flex;flex-direction:column;gap:.75rem}.business-hours-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem;border-radius:var(--radius-lg);border:1px solid rgba(148,163,184,.18);background:#0f172a59}.business-hours-day{display:flex;align-items:center;gap:.6rem;font-weight:600}.business-hours-times{display:flex;gap:.75rem;flex:1 1 auto;justify-content:flex-end}.business-hours-times label{display:flex;flex-direction:column;gap:.35rem;min-width:140px}.company-settings-stack{display:flex;flex-direction:column;gap:1rem}.company-settings-subsection{display:flex;flex-direction:column;gap:.75rem;padding:1rem;border:1px solid rgba(148,163,184,.2);border-radius:var(--radius-lg);background:#0f172a4d}.company-settings-subsection h4{margin:0;font-size:1.1rem}.company-tax-rate-list{display:flex;flex-direction:column;gap:.75rem}.company-tax-rate-row{display:flex;flex-direction:column;gap:.75rem;padding:.9rem;border:1px solid rgba(148,163,184,.2);border-radius:var(--radius-md);background:#0f172a40}.company-tax-components{display:flex;flex-direction:column;gap:.5rem}.company-tax-components__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.5rem}.company-tax-components__option{display:inline-flex;align-items:center;gap:.45rem;border:1px solid rgba(148,163,184,.2);border-radius:var(--radius-md);padding:.45rem .6rem}.company-business-hours-list{display:flex;flex-direction:column;gap:.4rem}.company-business-hours-row{display:grid;grid-template-columns:140px minmax(0,1fr);gap:.75rem;align-items:center;padding:.55rem .75rem;border-bottom:1px solid rgba(148,163,184,.15)}.company-business-hours-row:last-child{border-bottom:none}.company-business-hours-row__day{font-weight:600}.company-business-hours-row__value{color:#e2e8f0e6}.company-business-hours-row__editor{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.company-business-hours-row__editor .input[type=time]{width:8rem}.technician-editors{display:flex;flex-direction:column;gap:1rem}.technician-editor{display:flex;flex-direction:column;gap:1rem;padding:1rem;border-radius:var(--radius-lg);border:1px solid rgba(148,163,184,.18);background:#0f172a59}.technician-editor--new{margin-top:1.5rem}.technician-permissions{border:1px solid rgba(148,163,184,.18);border-radius:var(--radius-lg);padding:.75rem 1rem;display:flex;flex-direction:column;gap:.75rem}.technician-permissions legend{font-weight:600}.technician-permissions__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem}.technician-permission-option{display:flex;gap:.75rem;align-items:flex-start;padding:.6rem .75rem;border-radius:var(--radius-md);border:1px solid rgba(148,163,184,.18);background:#0f172a40}.technician-permission-option input{margin-top:.2rem}.technician-editor__actions{display:flex;justify-content:flex-end;gap:.75rem}.booking-form-editor{display:flex;flex-direction:column;gap:1rem}.booking-section{display:flex;flex-direction:column;gap:1rem;padding:1rem 1.1rem;border-radius:var(--radius-lg);border:1px solid rgba(148,163,184,.28);background:#0f172a61;box-shadow:inset 0 1px #94a3b814}.booking-section__header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem}.booking-section__title{display:flex;flex-direction:column;gap:.6rem}.booking-section__kicker{font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#94a3b8d9}.booking-section__title label{display:flex;flex-direction:column;gap:.35rem}.booking-section__actions{display:flex;flex-wrap:nowrap;gap:.5rem;align-items:flex-start;justify-content:flex-end}.booking-questions{display:flex;flex-direction:column;gap:.8rem}.booking-question{display:flex;flex-direction:column;gap:.75rem;padding:.85rem .95rem;border-radius:var(--radius-md);border:1px solid rgba(148,163,184,.2);background:#0f172a3d}.booking-question__fields{display:flex;flex-direction:column;gap:.5rem}.booking-question__fields label{display:flex;flex-direction:column;gap:.35rem}.booking-question__index{font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8d9;font-weight:700}.booking-question__meta{display:grid;gap:.75rem;grid-template-columns:repeat(2,minmax(0,1fr))}.booking-question__meta label{display:flex;flex-direction:column;gap:.35rem}.booking-question__required{display:inline-flex;align-items:center;gap:.5rem;font-weight:600}.booking-question__options{display:flex;flex-direction:column;gap:.5rem}.booking-question__option{display:flex;align-items:center;gap:.75rem}.booking-question__option input{flex:1 1 auto}.booking-question__actions{display:flex;flex-wrap:wrap;gap:.5rem}.booking-form-editor__footer{display:flex;justify-content:space-between;gap:.75rem;position:sticky;bottom:0;z-index:5;padding-top:.9rem;margin-top:.2rem;border-top:1px solid rgba(148,163,184,.2);background:linear-gradient(to bottom,#0b122000,#0b1220e6 42%,#0b1220f2)}@media (max-width: 900px){.booking-section__header{grid-template-columns:minmax(0,1fr)}.booking-section__actions{flex-wrap:wrap;justify-content:flex-start}.booking-question__meta{grid-template-columns:minmax(0,1fr)}.booking-form-editor__footer{position:static;padding-top:0;border-top:none;background:transparent;flex-direction:column;align-items:stretch}}.settings-card__actions{display:flex;justify-content:flex-end;gap:.75rem}.settings-list{display:flex;flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none}.settings-list__item{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;border-radius:var(--radius-lg);border:1px solid rgba(148,163,184,.18);background:#0f172a66}.settings-list__item>div{display:flex;flex-direction:column;gap:.25rem}.settings-list__item--stacked{align-items:flex-start;border-bottom:1px solid rgba(148,163,184,.2);border-left:none;border-right:none;border-top:none;border-radius:0;padding:1rem 0;background:transparent}.settings-list__item--placeholder{opacity:.7}.settings-bullet-list{margin:.35rem 0 0;padding-left:1rem;color:#e2e8f0bf}.button--active{border-color:#93c5fdf2;background:linear-gradient(135deg,#1e40aff2,#2563ebf2);color:#f8fafc;box-shadow:inset 0 0 0 1px #bfdbfeb3,0 10px 24px #1e40af80}.button.secondary.is-active{border-color:#60a5fa99;box-shadow:0 12px 30px #2563eb33;background:#1e40af61}.theme-toggle{display:grid;gap:.75rem}.theme-toggle__option{display:flex;gap:.75rem;padding:.75rem 1rem;border-radius:var(--radius-lg);border:1px solid rgba(148,163,184,.2);background:#0f172a59;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease}.theme-toggle__option input{margin-top:.35rem}.theme-toggle__option--active{border-color:#60a5fa99;box-shadow:0 12px 30px #2563eb40}.notifications-row{display:flex;justify-content:space-between;align-items:center;gap:1.25rem;padding:1rem 0;border-bottom:1px solid rgba(148,163,184,.15)}.notifications-row:last-child{border-bottom:none}.toggle{display:inline-flex;align-items:center;gap:.75rem;cursor:pointer}.toggle__label-text{font-size:.85rem;color:#e2e8f0e6}.toggle__control{position:relative;width:44px;height:24px;display:inline-flex}.toggle__control input{opacity:0;width:0;height:0}.toggle__slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background:#94a3b84d;border-radius:999px;transition:background .2s ease}.toggle__slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#0f172a;border-radius:50%;transition:transform .2s ease}.catalog-type{display:inline-flex;align-items:center;padding:.15rem .5rem;border-radius:999px;font-size:.75rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase}.catalog-type--product{background:#22c55e33;color:#bbf7d0}.catalog-type--service{background:#3b82f640;color:#bfdbfe}.kanban-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem;align-items:flex-start}.kanban-column{background:#0f172a99;border:1px solid rgba(148,163,184,.18);border-top:4px solid transparent;border-radius:var(--radius-lg);display:flex;flex-direction:column;max-height:calc(100vh - 220px);position:relative;overflow:hidden}.kanban-column header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;font-weight:600;border-bottom:1px solid rgba(148,163,184,.16);background:#0f172aeb;position:sticky;top:0;z-index:1}.kanban-column-body{display:flex;flex-direction:column;gap:1rem;padding:1rem;overflow-y:auto}.kanban-card{background:#0f172a7a;border:1px solid rgba(148,163,184,.22);border-radius:var(--radius-md);padding:1rem;display:flex;flex-direction:column;gap:.75rem;box-shadow:0 12px 24px #0f172a47}.kanban-card-header{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.kanban-card-header h3{margin:0;font-size:1rem}.kanban-card-content{display:flex;flex-direction:column;gap:.5rem;color:#e2e8f0e6;font-size:.9rem}.kanban-contact{display:flex;flex-direction:column;gap:.25rem}.kanban-contact span{display:flex;align-items:center;gap:.35rem;color:#e2e8f0d1;font-size:.85rem}.kanban-card-actions{display:flex;flex-wrap:wrap;gap:.5rem}.kanban-card-actions .button.small{padding:.35rem .75rem;font-size:.8rem}.kanban-card-actions .button.small svg{width:14px;height:14px}.kanban-placeholder{border:1px dashed rgba(148,163,184,.2);border-radius:var(--radius-md);padding:1rem;text-align:center;color:#94a3b8cc;display:flex;flex-direction:column;gap:.5rem;align-items:center}.kanban-placeholder .spinner{animation:spin 1.1s linear infinite}.kanban-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .5rem;border-radius:999px;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}.kanban-chip.success{background:#22c55e1f;color:#86efac}.kanban-chip.muted{background:#94a3b81f;color:#94a3b8d9}.lead-notes{margin:0;line-height:1.4;color:#e2e8f0d4}.lead-detail-header{justify-content:flex-start}.lead-detail-grid{display:grid;grid-template-columns:minmax(0,320px) minmax(0,1fr);gap:1.5rem;align-items:flex-start}@media (max-width: 1024px){.lead-detail-grid{grid-template-columns:1fr}}.lead-summary-card{display:flex;flex-direction:column;gap:1.25rem}.lead-summary-header{display:flex;flex-direction:column;gap:.5rem}.lead-summary-stage{display:flex;align-items:center;gap:.5rem}.lead-summary-section{display:flex;flex-direction:column;gap:.5rem}.lead-contact-list{display:flex;flex-direction:column;gap:.4rem}.lead-contact-item{display:inline-flex;align-items:center;gap:.45rem;color:#e2e8f0e0}.lead-contact-item.muted{color:#94a3b8b3}.lead-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem}.lead-activity-card{display:flex;flex-direction:column;gap:1rem}.lead-activity-header{display:flex;flex-direction:column;gap:.25rem}.lead-activity-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1rem}.lead-activity-item{position:relative;display:flex;flex-direction:column;gap:.5rem;border-left:2px solid rgba(59,130,246,.4);padding-left:1rem}.lead-activity-item:before{content:"";position:absolute;left:-.55rem;top:.35rem;width:.75rem;height:.75rem;border-radius:50%;background:#60a5fae6;box-shadow:0 0 0 3px #3b82f640}.lead-activity-meta{display:flex;flex-direction:column;gap:.25rem}.lead-activity-title{font-weight:600}.lead-activity-summary{margin:0;line-height:1.45;color:#e2e8f0d9}.lead-activity-roles{display:flex;flex-wrap:wrap;gap:.5rem}.lead-activity-role{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .6rem;border-radius:999px;background:#3b82f626;color:#bfdbfee6;font-size:.75rem;letter-spacing:.04em;text-transform:uppercase}.kanban-column--new{border-top-color:#38bdf8d9}.kanban-column--contacted{border-top-color:#60a5fad9}.kanban-column--qualified{border-top-color:#facc15d9}.kanban-column--quoted{border-top-color:#fb923cd9}.kanban-column--won{border-top-color:#34d399d9}.kanban-column--lost{border-top-color:#f87171d9}.requests-page{display:flex;flex-direction:column;gap:1rem}.requests-warning{margin:0}.requests-board{display:flex;flex-direction:column;gap:.85rem}.requests-section{border:1px solid rgba(148,163,184,.2);border-radius:var(--radius-lg);background:#0f172a8c;overflow:hidden}.requests-section--new{border-top:4px solid rgba(56,189,248,.85)}.requests-section--converted_to_quote{border-top:4px solid rgba(251,146,60,.85)}.requests-section--converted_to_job{border-top:4px solid rgba(52,211,153,.85)}.requests-section--archived{border-top:4px solid rgba(148,163,184,.85)}.requests-section--all_requests{border-top:4px solid rgba(59,130,246,.85)}.requests-section__header{border-bottom:1px solid rgba(148,163,184,.2)}.requests-section__toggle{width:100%;border:0;background:transparent;color:#e2e8f0f2;display:inline-flex;align-items:center;gap:.6rem;padding:.9rem 1rem;font-size:.95rem;font-weight:600;cursor:pointer}.requests-section__content{padding:.9rem}.requests-section__empty{color:#94a3b8e6;font-size:.9rem}.requests-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.request-card{border:1px solid rgba(148,163,184,.24);border-radius:var(--radius-md);background:#0f172a80;padding:.85rem;display:grid;gap:.75rem;grid-template-columns:minmax(0,1fr) auto}.request-card--new{box-shadow:inset 0 0 0 1px #38bdf833}.request-card--converted_to_quote{box-shadow:inset 0 0 0 1px #fb923c33}.request-card--converted_to_job{box-shadow:inset 0 0 0 1px #34d39933}.request-card--archived{opacity:.9}.request-card__title{display:flex;align-items:center;gap:.6rem}.request-card__title h3{margin:0;font-size:1rem}.request-card__meta{display:flex;flex-wrap:wrap;gap:.4rem .8rem;margin-top:.4rem;color:#94a3b8f2;font-size:.85rem}.request-card__notes{margin:.4rem 0 0;white-space:pre-wrap;color:#e2e8f0d9;font-size:.9rem;line-height:1.4}.request-card__actions{display:flex;flex-wrap:wrap;gap:.45rem;align-items:flex-start;justify-content:flex-end}.request-card__menu{position:relative}.request-card__menu-dropdown{position:absolute;right:0;top:calc(100% + .2rem);min-width:9rem;z-index:20;border:1px solid rgba(148,163,184,.28);border-radius:var(--radius-sm);background:#0f172afa;box-shadow:0 12px 24px #0f172a59;padding:.25rem}.request-card__menu-item{width:100%;text-align:left;border:0;border-radius:var(--radius-sm);background:transparent;color:#e2e8f0f2;padding:.45rem .55rem;font-size:.86rem;cursor:pointer}.request-card__menu-item:hover{background:#38bdf829}.requests-all{display:flex;flex-direction:column;gap:.85rem}.requests-all__toolbar{display:flex;justify-content:space-between;gap:.75rem;flex-wrap:wrap;align-items:flex-end}.requests-all__filters{display:flex;gap:.75rem;flex-wrap:wrap;align-items:flex-end}.requests-all__search{flex:1 1 18rem;min-width:min(22rem,100%);align-self:flex-end}.requests-all__table{table-layout:fixed}.requests-all__table th:nth-child(1){width:18%}.requests-all__table th:nth-child(2){width:34%}.requests-all__table th:nth-child(3){width:24%}.requests-all__table th:nth-child(4){width:12%}.requests-all__table th:nth-child(5){width:10%}.requests-all__table th:nth-child(6),.requests-all__table td:nth-child(6){width:72px;text-align:center}.requests-all__sort-button{border:0;background:transparent;color:inherit;font:inherit;text-transform:inherit;letter-spacing:inherit;display:inline-flex;align-items:center;gap:.4rem;cursor:pointer;padding:0}.requests-all__sort-indicator{font-size:.72rem;opacity:.75}.requests-all__row{cursor:pointer}.requests-all__client-link{border:0;background:transparent;padding:0;font:inherit;cursor:pointer}.requests-all__delete-button{min-width:2.25rem;justify-content:center;padding-inline:.55rem}.requests-all__status-chip{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:.2rem .55rem;font-size:.75rem;font-weight:600}.requests-all__status-chip--new{background:#38bdf82e;color:#bae6fd}.requests-all__status-chip--converted{background:#22c55e2e;color:#bbf7d0}.requests-all__status-chip--today{background:#fbbf2433;color:#fde68a}.requests-all__status-chip--upcoming{background:#9333ea33;color:#e9d5ff}.clients-table th:first-child,.clients-table td:first-child{width:1%;white-space:nowrap}.clients-list-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.9rem;margin-bottom:.9rem;padding:.85rem 1rem;flex-wrap:wrap}.clients-list-toolbar__group{display:inline-flex;align-items:center;gap:.75rem;flex-wrap:wrap}.clients-list-toolbar__buttons{display:inline-flex;align-items:center;gap:.45rem;flex-wrap:wrap}.clients-list-toolbar__select-all{display:inline-flex;align-items:center;gap:.45rem;font-weight:500}.clients-page-size{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-top:.9rem;flex-wrap:wrap}.clients-table__select-column{width:1%;white-space:nowrap}.clients-table__sort-button{display:inline-flex;align-items:center;gap:.25rem;padding:0;background:none;border:none;font-weight:inherit;font-size:inherit;color:inherit;cursor:pointer}.clients-row-actions{position:relative;display:inline-flex}.clients-row-actions__trigger{padding:.3rem .5rem}.clients-row-actions__menu{min-width:13rem;max-width:calc(100vw - 1rem);z-index:120;border:1px solid rgba(148,163,184,.28);border-radius:var(--radius-sm);background:#0f172afa;box-shadow:0 12px 24px #0f172a59;padding:.25rem;display:flex;flex-direction:column;gap:.15rem}.clients-row-actions__item{display:flex;align-items:center;width:100%;text-align:left;border:0;border-radius:var(--radius-sm);background:transparent;color:#e2e8f0f2;padding:.45rem .55rem;font-size:.86rem;cursor:pointer}.clients-row-actions__item:hover{background:#38bdf829}.clients-row-actions__item:disabled{opacity:.45;cursor:not-allowed;background:transparent}.clients-row-actions__item--danger{color:#f87171}.clients-row-actions__item--danger:hover{background:#f8717129}@media (max-width: 900px){.clients-list-toolbar{align-items:stretch}.clients-list-toolbar__group{width:100%}}.request-details-modal{width:min(980px,calc(100vw - 2rem));max-height:calc(100vh - 2rem);overflow-y:auto}.request-details-modal .booking-form__option input[type=checkbox],.request-details-modal .booking-form__option input[type=radio]{accent-color:#38bdf8;opacity:1}.request-details-modal .booking-form__option input:disabled{opacity:1}.request-form{gap:1rem}.request-form__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.request-form__header h3{margin:0}.request-form__header-actions{display:inline-flex;align-items:center;gap:.5rem;flex-wrap:wrap;justify-content:flex-end}.request-form__linked{padding:1rem 1.1rem;gap:.6rem}.request-form__linked-row{display:inline-flex;align-items:center;gap:.35rem}.request-section{gap:.85rem;padding:1rem}.request-section__header h4{margin:0}.request-schedule-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:1rem}.request-schedule-main,.request-schedule-assignees{display:grid;gap:.75rem;border:1px solid rgba(148,163,184,.22);border-radius:.75rem;padding:.85rem;min-width:0}.request-schedule-options{display:flex;flex-wrap:wrap;gap:1rem}.request-schedule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.request-assignee-picker{min-height:5.1rem;max-height:10rem;overflow-y:auto;padding-bottom:.25rem}.request-line-item{gap:.75rem;padding:1rem;border:1px solid rgba(148,163,184,.22)}.request-line-item__top{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,.8fr) minmax(0,1fr) minmax(0,1fr) auto;gap:.75rem;align-items:end}.request-line-item__top>*{min-width:0}.request-line-item__delete{align-self:end}.request-line-item__description .input{width:100%;resize:vertical}.request-line-items__footer{display:flex;justify-content:flex-start}.request-line-items__totals{margin-left:auto;width:min(280px,100%);display:grid;gap:.35rem}.request-line-items__total-row{display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;text-align:right}.request-line-items__total-row strong{font-weight:600}.request-line-items__total-row--grand{padding-top:.25rem;border-top:1px solid rgba(148,163,184,.2);font-weight:600}@media (max-width: 900px){.request-card{grid-template-columns:1fr}.request-card__actions{justify-content:flex-start}.request-form__header{align-items:flex-start;flex-direction:column}.request-form__header-actions{width:100%;justify-content:flex-start}.request-schedule-layout,.request-schedule-grid,.request-line-item__top{grid-template-columns:1fr}.request-line-item__delete{justify-self:start}.request-line-items__totals{margin-left:0}}.button.small{padding:.4rem .7rem;font-size:.82rem}.button.ghost{background:transparent;border:1px solid rgba(148,163,184,.3);color:#e2e8f0d9;box-shadow:none}.button.ghost:hover{background:#94a3b81f;box-shadow:none;transform:none}.booking-screen{min-height:100vh;display:flex;align-items:flex-start;justify-content:center;padding:2.5rem 1.5rem;background:radial-gradient(circle at top,rgba(56,189,248,.12),transparent 55%),#0f172a;color:#f8fafc}.booking-card{width:min(980px,100%);background:#0f172ae0;border:1px solid rgba(148,163,184,.25);border-radius:var(--radius-xl);padding:2.25rem 2rem;display:flex;flex-direction:column;gap:1.25rem;box-shadow:0 35px 75px #0f172a8c}.booking-card header h1{margin:0;font-size:2.1rem}.booking-card header p{margin:.5rem 0 0;color:#94a3b8d9;line-height:1.5;max-width:62ch}.booking-form{display:flex;flex-direction:column;gap:.9rem}.booking-form .input,.booking-form .textarea{background:#0f172ae6;border:1px solid rgba(148,163,184,.25);border-radius:var(--radius-md);padding:.75rem;color:inherit;font-size:.95rem}.booking-form .input:focus,.booking-form .textarea:focus{outline:none;border-color:#5eead4a6;box-shadow:0 0 0 4px #2dd4bf33}.booking-form__section{display:flex;flex-direction:column;gap:.7rem}.booking-form__section h3{margin:0;font-size:1.1rem;color:#e2e8f0f2}.booking-form__fields{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1rem 1rem}.booking-form__field{min-width:0;display:flex;flex-direction:column;gap:.4rem}.booking-form__field--full{grid-column:span 6}.booking-form__field--half{grid-column:span 3}.booking-form__field--third{grid-column:span 2}.booking-form__label{display:inline-block;font-size:.94rem;line-height:1.35;color:#e2e8f0f2;max-width:62ch}.booking-form__fieldset{margin:0;border:1px solid rgba(148,163,184,.25);border-radius:var(--radius-md);padding:.75rem 1rem;display:flex;flex-direction:column;gap:.6rem;color:#e2e8f0eb}.booking-form__fieldset legend{margin:0;padding:0}.booking-form__options{display:flex;flex-direction:column;gap:.5rem;align-items:stretch;justify-content:flex-start}.booking-form__option{display:flex;align-items:flex-start;justify-content:flex-start;gap:.65rem;font-size:.9rem;line-height:1.4;text-align:left}.booking-form__option input{accent-color:var(--primary-500);flex:0 0 auto;margin-top:.15rem}.booking-form__option span{flex:1 1 auto}.booking-form__upload{display:flex;flex-direction:column;gap:.5rem}.booking-form__date-picker{position:relative}.booking-form__date-trigger{width:100%;display:inline-flex;align-items:center;justify-content:space-between;gap:.75rem;background:#0f172ae6;border:1px solid rgba(148,163,184,.25);border-radius:var(--radius-md);padding:.75rem .9rem;color:inherit;font-size:.95rem;text-align:left}.booking-form__date-trigger:hover{border-color:#94a3b866}.booking-form__date-trigger:focus-visible{outline:none;border-color:#5eead4a6;box-shadow:0 0 0 4px #2dd4bf33}.booking-form__date-popover{position:absolute;top:calc(100% + .5rem);left:0;z-index:30;background:#0f172afa;border:1px solid rgba(148,163,184,.3);border-radius:var(--radius-lg);padding:.8rem;box-shadow:0 18px 38px #0206178c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.booking-form__date-popover .rdp-root{--rdp-accent-color: rgb(56 189 248);--rdp-background-color: rgba(56, 189, 248, .18);margin:0}.booking-form__date-popover .rdp-months{justify-content:center}.booking-form__date-popover .rdp-day{border-radius:10px}.booking-form__date-popover .rdp-day_button{color:#e2e8f0f2}.booking-form__date-popover .rdp-day_button:hover{background:#38bdf82e}.booking-form__date-popover .rdp-selected .rdp-day_button{background:#38bdf873;color:#f8fafc}.booking-form__date-popover .rdp-disabled .rdp-day_button{opacity:.28;color:#94a3b8b3;cursor:not-allowed}.booking-form__upload-control{display:flex;flex-direction:column;gap:.4rem}.booking-form__upload-summary{display:flex;flex-direction:column;gap:.5rem;font-size:.85rem;color:#94a3b8e6}.booking-form__upload-summary ul{margin:0;padding-left:1.25rem}.booking-form__upload-summary button{align-self:flex-start}.booking-success{display:flex;flex-direction:column;align-items:center;gap:1rem;text-align:center}.booking-success h2{margin:0}.booking-success p{margin:0;color:#94a3b8d9;line-height:1.5}@media (max-width: 1024px){.booking-card{width:min(860px,100%)}.booking-form__field--third{grid-column:span 3}}@media (max-width: 768px){.booking-screen{padding:1.5rem 1rem}.booking-card{width:min(100%,100%);padding:1.5rem 1.1rem}.booking-card header h1{font-size:1.75rem}.booking-form__fields{grid-template-columns:minmax(0,1fr)}.booking-form__field--full,.booking-form__field--half,.booking-form__field--third{grid-column:span 1}}.settings-page .page-header{margin-bottom:1.75rem}.settings-page .page-title h1{margin:0;font-size:1.8rem;font-weight:600;color:#e2e8f0f5}.template-tabs{display:flex;align-items:center;gap:.5rem;border-bottom:1px solid rgba(148,163,184,.25);padding-bottom:.5rem}.template-tab{border:none;background:transparent;color:#94a3b8e6;font-weight:600;padding:.5rem .25rem;border-bottom:3px solid transparent}.template-tab--active{color:#e2e8f0fa;border-bottom-color:#2ea043}.jobber-import-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(18rem,.8fr);gap:1rem}.jobber-import-main,.jobber-import-sidebar{display:grid;gap:1rem}.jobber-import-upload{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.jobber-import-upload__button{position:relative;overflow:hidden}.jobber-import-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.75rem}.jobber-import-summary-card{display:grid;gap:.15rem;padding:.9rem 1rem;border:1px solid rgba(148,163,184,.18);border-radius:.85rem;background:#ffffff08}.jobber-import-summary-card strong{font-size:1.2rem}.jobber-import-results{display:grid;gap:.75rem}.jobber-import-inline-status{margin-top:.75rem;padding:.7rem .9rem;border-radius:.75rem;font-size:.95rem}.jobber-import-inline-status--success{border:1px solid rgba(45,212,191,.35);background:#14b8a61f;color:#ccfbf1f5}.settings-tabs-bar{position:sticky;top:0;z-index:10;background:#0f172af2;border-bottom:1px solid rgba(100,116,139,.2);padding:.25rem 0 0;margin-bottom:1.5rem}.settings-tabs{display:flex;flex-wrap:wrap;list-style:none;gap:0;margin:0;padding:0}.settings-tab{padding:.65rem 1rem;border:none;background:transparent;color:#94a3b8d9;border-bottom:2px solid transparent;cursor:pointer;font-size:.9rem;white-space:nowrap;transition:color .15s ease,border-color .15s ease;font-weight:500}.settings-tab:hover{color:#e2e8f0e6}.settings-tab.is-active{color:#2dd4bff2;border-bottom-color:#2dd4bfcc}.settings-panel{padding:0}.settings-stack{display:flex;flex-direction:column;gap:1.5rem}.settings-card--teal{border-top:3px solid rgba(45,212,191,.6);box-shadow:0 12px 24px #0d948814}.settings-card--blue{border-top:3px solid rgba(96,165,250,.6);box-shadow:0 12px 24px #3b82f614}.settings-card--amber{border-top:3px solid rgba(251,191,36,.6);box-shadow:0 12px 24px #fbbf241f}.settings-card--violet{border-top:3px solid rgba(167,139,250,.6);box-shadow:0 12px 24px #8b5cf61a}.settings-card--slate{border-top:3px solid rgba(148,163,184,.6);box-shadow:0 12px 24px #64748b14}@media (max-width: 1080px){.jobber-import-layout{grid-template-columns:1fr}}.button.full-width{width:100%}body[data-theme=light]{background:#f8fafc;color:#0f172a}body[data-theme=light] .app-shell{background:linear-gradient(135deg,#e2e8f0,#f8fafc)}body[data-theme=light] .app-shell aside{background:#fffffff2;border-right:1px solid rgba(148,163,184,.35)}body[data-theme=light] .nav-link{color:#1e293bbf}body[data-theme=light] .nav-link:hover{background:#3b82f626;color:#1e293b}body[data-theme=light] .nav-link--active{background:#3b82f640;color:#1e293b;box-shadow:0 12px 30px #3b82f640}body[data-theme=light] .card{background:#fffffff2;color:#1e293b;border:1px solid rgba(148,163,184,.25);box-shadow:0 15px 35px #94a3b840}body[data-theme=light] .job-field__label,body[data-theme=light] .job-field--product-search .product-search>.muted{color:#475569e6}body[data-theme=light] .muted{color:#475569d9}body[data-theme=light] .empty-state{background:#94a3b81f;border-color:#94a3b84d;color:#475569e6}body[data-theme=light] .modal{background:#fffffffa;color:#1e293b;border:1px solid rgba(148,163,184,.3);box-shadow:0 25px 55px #94a3b859}body[data-theme=light] .modal-backdrop{background:#0f172a73}body[data-theme=light] .request-details-modal .booking-form__option input[type=checkbox],body[data-theme=light] .request-details-modal .booking-form__option input[type=radio]{accent-color:#0284c7}body[data-theme=light] .jobs-calendar__day{background:#fffffff5;border-color:#94a3b840}body[data-theme=light] .jobs-calendar__day-header{border-bottom-color:#cbd5e199}body[data-theme=light] .jobs-calendar__day--today{border-color:#3b82f68c;box-shadow:0 0 0 1px #3b82f64d,0 12px 30px #3b82f640}body[data-theme=light] .jobs-calendar__day--today .jobs-calendar__day-header{background:#3b82f62e;border-bottom-color:#3b82f666}body[data-theme=light] .jobs-calendar__day--today .jobs-calendar__day-body{background-color:#3b82f624}body[data-theme=light] .jobs-calendar__day--holiday{border-color:#ec489966}body[data-theme=light] .jobs-calendar__day--unassigned{border-color:#d9770673;box-shadow:inset 0 0 0 1px #f59e0b29}body[data-theme=light] .jobs-calendar__day--unassigned.jobs-calendar__day--holiday,body[data-theme=light] .jobs-calendar__day--unassigned.jobs-calendar__day--today,body[data-theme=light] .jobs-calendar__day--unassigned.jobs-calendar__day--today.jobs-calendar__day--holiday{border-color:#d97706a6;box-shadow:inset 0 0 0 1px #f59e0b40,0 10px 22px #d977062e}body[data-theme=light] .jobs-calendar__day-assignee{color:#475569e6}body[data-theme=light] .jobs-calendar__day-assignee--unassigned{color:#b45309f2}body[data-theme=light] .jobs-calendar__holiday-pill{color:#831843f2;border-color:#ec489973;background:#fb718529}body[data-theme=light] .jobs-calendar__holiday-overlay{background:#fb71851a}body[data-theme=light] .jobs-requests-card__list li{background:#ffffffeb;border-color:#94a3b84d}body[data-theme=light] .settings-list__item{background:#fffffff2;border-color:#94a3b840}body[data-theme=light] .table tbody tr.purchase-orders__row--backorder{background:#fee2e2e6}body[data-theme=light] .table tbody tr.purchase-orders__row--backorder:hover{background:#fecacaf2}body[data-theme=light] .button--active{background:linear-gradient(135deg,#3b82f6e6,#2563ebe6);border-color:#2563ebe6;color:#f8fafc;box-shadow:inset 0 0 0 1px #dbeafef2,0 8px 18px #2563eb59}body[data-theme=light] .toggle__label-text{color:#0f172abf}body[data-theme=light] .template-tab{color:#475569e6}body[data-theme=light] .template-tab--active{color:#0f172af2}body[data-theme=light] .templates-list__group-title{color:#475569d9}body[data-theme=light] .templates-list__item{background:#f1f5f9f2;border-color:#94a3b840;color:#0f172aeb}body[data-theme=light] .templates-list__item:hover{border-color:#3b82f673}body[data-theme=light] .templates-list__item-title{color:#0f172af2}body[data-theme=light] .templates-variables-panel,body[data-theme=light] .templates-live-preview{background:#f8fafcf2;border-color:#94a3b847}body[data-theme=light] .templates-variables-group{background:#f1f5f9f2;border-color:#94a3b847}body[data-theme=light] .templates-variable-item{background:#fffffff5;border-color:#94a3b84d;color:#0f172af2}body[data-theme=light] .templates-variable-item code{color:#1d4ed8}body[data-theme=light] .templates-live-preview__subject,body[data-theme=light] .templates-live-preview__body{background:#fffffff2;border-color:#94a3b84d;color:#0f172af2}body[data-theme=light] .automation-config-card,body[data-theme=light] .automation-config-card h3{color:#0f172af2}body[data-theme=light] .settings-top-button{background:#fffffffa;color:#0f172a;border-color:#3b82f673}body[data-theme=light] .theme-toggle__option{background:#fffffff2;border-color:#94a3b84d}body[data-theme=light] .theme-toggle__option--active{border-color:#3b82f680;box-shadow:0 12px 30px #3b82f633}body[data-theme=light] .catalog-type--product{background:#22c55e26;color:#166534}body[data-theme=light] .catalog-type--service{background:#3b82f62e;color:#1d4ed8}body[data-theme=light] .jobs-calendar__unscheduled{background:#fffffff2;border:1px solid rgba(148,163,184,.25);border-radius:var(--radius-md)}body[data-theme=light] .jobs-calendar__unscheduled-list .job-card{background:#f1f5f9d9;border-color:#94a3b859}body[data-theme=light] .jobs-calendar__unscheduled-count{background:#3b82f61f;color:#1d4ed8}body[data-theme=light] .jobs-calendar__unscheduled-empty{color:#475569d9}body[data-theme=light] .jobs-requests-card__actions .button.small{background:#3b82f626;color:#1e3a8a}.job-colors-card{display:flex;flex-direction:column;gap:1.5rem}.job-colors-card__header{display:flex;flex-direction:column;gap:.35rem}.job-colors-grid{display:flex;flex-direction:column;gap:1rem}.job-colors-field{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 0;border-bottom:1px solid rgba(148,163,184,.15)}.job-colors-field:last-child{border-bottom:none}.job-colors-field__info{display:flex;flex-direction:column;gap:.2rem}.job-colors-field__controls{display:flex;align-items:center;justify-content:flex-end}.job-colors-field__preview{width:48px;height:18px;border-radius:9999px;border:1px solid rgba(15,23,42,.2)}.job-colors-swatch-trigger{border:0;background:transparent;padding:0;display:inline-flex;align-items:center;cursor:pointer}.job-colors-swatch-trigger:focus-visible{outline:2px solid rgba(96,165,250,.85);outline-offset:3px;border-radius:9999px}.job-colors-actions{display:flex;justify-content:flex-end}.toggle__control input:checked+.toggle__slider{background:#3b82f680}.toggle__control input:checked+.toggle__slider:before{transform:translate(20px)}.notifications-status{font-size:.85rem;color:#94a3b8cc}@media (max-width: 1100px){.templates-layout,.messaging-compose__row{grid-template-columns:1fr}}.portal-shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh;background:linear-gradient(135deg,#1e1b4b,#111827);color:#f8fafc}.portal-sidebar{padding:2rem 1.5rem;background:#0f172ae6;border-right:1px solid rgba(148,163,184,.2);display:flex;flex-direction:column;gap:2rem}.portal-brand-title{display:block;font-size:1.1rem;font-weight:600;letter-spacing:.02em}.portal-brand-subtitle{display:block;font-size:.85rem;color:#94a3b8cc}.portal-nav{display:grid;gap:.5rem}.portal-nav-item{display:block;padding:.5rem .75rem;border-radius:var(--radius-sm);color:inherit;text-decoration:none;font-weight:500;transition:background .15s ease}.portal-nav-item:hover,.portal-nav-item.active{background:#4f46e540}.portal-signout{margin-top:auto;display:inline-flex;align-items:center;gap:.5rem;padding:.45rem .75rem;border-radius:var(--radius-sm);background:transparent;border:1px solid rgba(148,163,184,.2);color:inherit;cursor:pointer}.portal-signout:hover{background:#4f46e540}.portal-main{padding:2rem;display:grid;gap:1.5rem;align-content:start}.portal-header{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.portal-header h1{margin:0;font-size:1.75rem}.portal-greeting{margin:0;color:#94a3b8d9}.portal-body{display:grid;gap:1.5rem;align-content:start;justify-items:start}.portal-card-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.portal-card{background:#0f172aa6;border:1px solid rgba(148,163,184,.2);border-radius:var(--radius-md);padding:1rem 1.25rem;display:grid;gap:.25rem}.portal-card-label{text-transform:uppercase;font-size:.75rem;color:#94a3b8b3;letter-spacing:.08em}.portal-card-value{font-size:1.75rem;font-weight:600}.portal-card-hint{margin:0;color:#94a3b8bf;font-size:.9rem}.portal-section{background:#0f172a99;border:1px solid rgba(148,163,184,.15);border-radius:var(--radius-md);padding:1.5rem;display:grid;gap:1rem}.portal-section h2{margin:0;font-size:1.3rem}.portal-activity-card{background:#4f46e526;border-radius:var(--radius-md);padding:1rem 1.25rem;display:grid;gap:.75rem}.portal-activity-header{display:flex;align-items:center;justify-content:space-between}.portal-activity-notes{margin:0;color:#e2e8f0d9}.status{display:inline-flex;align-items:center;padding:.25rem .6rem;border-radius:9999px;font-size:.75rem;text-transform:capitalize;font-weight:500;background:#94a3b833;color:#0f172ae6}.status-approved,.status-paid{background:#22c55e4d;color:#166534}.status-sent,.status-in_progress{background:#facc154d;color:#854d0e}.status-draft,.status-new{background:#94a3b84d;color:#0f172ad9}.status-rejected{background:#ef44444d;color:#7f1d1d}.portal-quote-card,.portal-invoice-card,.portal-job-card{background:#0f172aa6;border:1px solid rgba(148,163,184,.2);border-radius:var(--radius-md);padding:1.25rem;display:grid;gap:1rem}.portal-quote-header,.portal-invoice-header,.portal-job-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.portal-quote-items table,.portal-table{width:100%;border-collapse:collapse;font-size:.9rem}.portal-quote-items th,.portal-quote-items td,.portal-table th,.portal-table td{border-bottom:1px solid rgba(148,163,184,.2);padding:.5rem .75rem;text-align:left}.portal-quote-approval{background:#4f46e526;border-radius:var(--radius-md);padding:1rem;display:grid;gap:.75rem}.portal-payment-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172acc;display:grid;place-items:center;padding:1.5rem;z-index:20}.portal-payment-card{background:#0f172a;border:1px solid rgba(148,163,184,.25);border-radius:var(--radius-md);padding:1.5rem;min-width:min(420px,100%);display:grid;gap:1rem}.portal-upload-card{background:#0f172ab3;border:1px solid rgba(148,163,184,.2);border-radius:var(--radius-md);padding:1.25rem;display:grid;gap:1rem}.portal-card--highlighted{border-color:#f59e0be6;box-shadow:0 0 0 2px #f59e0b40}.portal-card-highlight-label{margin-top:.35rem;color:#fbbf24;font-size:.85rem;font-weight:600}.quote-create-modal{width:min(1080px,96vw);max-height:94vh;overflow:auto}.quote-create-modal__table-wrap{overflow-x:auto;overflow-y:visible}.quote-create-modal__input--compact{min-width:6rem}.quote-create-items{display:grid;gap:.75rem}.quote-create-item{display:grid;gap:.65rem}.quote-create-item__row{display:grid;grid-template-columns:auto minmax(18rem,1fr) 6.5rem 8.25rem auto auto;gap:.5rem;align-items:center}.quote-create-item__catalog{min-width:0}.quote-create-item__field{display:grid;gap:.25rem;min-width:0}.quote-create-item__custom,.quote-create-item__taxable{display:inline-flex;align-items:center;gap:.35rem;white-space:nowrap}.quote-create-item__description{width:100%}.quote-create-totals{margin-top:.5rem;margin-left:auto;width:min(460px,100%);display:grid;gap:.5rem}.quote-create-totals__row{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.quote-create-totals__row--tax{align-items:flex-start}.quote-create-totals__tax-controls{display:grid;gap:.35rem;justify-items:end}.quote-create-totals__tax-controls .input{min-width:14rem}@media (max-width: 900px){.quote-create-item__row{grid-template-columns:1fr}.quote-create-item__taxable,.quote-create-item__custom{justify-self:start}.quote-create-totals{width:100%}.quote-create-totals__row{align-items:flex-start;flex-direction:column}.quote-create-totals__tax-controls{justify-items:start;width:100%}}.quote-client-details{display:grid;gap:.55rem}.quote-client-details__heading{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.quote-client-details__value{font-weight:600;color:#e2e8f0}.quote-client-details__address-link{color:#93c5fd;text-decoration:underline;text-underline-offset:2px}.quote-client-details__menu{position:relative}.quote-client-details__menu-panel{position:absolute;right:0;top:calc(100% + .35rem);min-width:12rem;border-radius:.65rem;border:1px solid rgba(148,163,184,.25);background:#0f172afa;box-shadow:0 18px 40px #02061780;z-index:8;padding:.35rem}.quote-client-details__menu-panel--upward{top:auto;bottom:calc(100% + .35rem)}.quote-client-details__menu-panel button{width:100%;border:0;background:transparent;color:#e2e8f0;text-align:left;padding:.55rem .6rem;border-radius:.45rem;cursor:pointer}.quote-client-details__menu-panel button:hover{background:#3b82f626}.quote-client-details__menu-panel button:disabled{color:#94a3b899;cursor:not-allowed;opacity:.6;background:transparent}.quote-client-details__property-picker{display:grid;gap:.45rem}.quote-client-details__property-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.customer-danger-zone{border:1px solid rgba(248,113,113,.35)}.portal-upload-form{display:grid;gap:1rem}.portal-upload-actions{display:flex;gap:.75rem;align-items:center}.portal-table th{background:#4f46e540}.portal-empty{background:#0f172a80;border:1px dashed rgba(148,163,184,.4);border-radius:var(--radius-md);padding:1.25rem;text-align:center;color:#94a3b8cc}.portal-session-expired,.portal-token-status,.portal-loading{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#1e1b4b,#111827)}.portal-session-card,.portal-token-card{background:#0f172acc;border:1px solid rgba(148,163,184,.2);border-radius:var(--radius-md);padding:2rem;max-width:420px;text-align:center;display:grid;gap:1rem}.portal-appointments .portal-appointment-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.jobs-requests-card{margin-top:1rem;display:grid;gap:.75rem}.jobs-requests-card__header{display:flex;flex-direction:column;gap:.25rem}.jobs-requests-card__list{list-style:none;margin:0;padding:0;display:grid;gap:.75rem}.jobs-requests-card__list li{padding:.75rem;border:1px solid rgba(226,232,240,.1);border-radius:var(--radius-lg);background:#0f172a59;display:grid;gap:.4rem}.jobs-requests-card__actions{display:flex;justify-content:flex-end;margin-top:.25rem}.jobs-requests-card__customer{font-size:1rem}.jobs-requests-card__meta{display:flex;flex-wrap:wrap;gap:.75rem;color:#e2e8f0d9;font-size:.9rem}.jobs-requests-card__meta svg{margin-right:.35rem}.team-page{display:flex;flex-direction:column;gap:1.5rem}.team-toolbar{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.team-toolbar__search{flex:1;min-width:220px}.team-table{border:1px solid rgba(148,163,184,.25);border-radius:var(--radius-lg);overflow:hidden}.team-table__row{display:grid;grid-template-columns:1.4fr 1.4fr 1fr 1fr .9fr 1.1fr 1.3fr;gap:.75rem;align-items:center;padding:.85rem 1.1rem;border-bottom:1px solid rgba(148,163,184,.15)}.team-table__row--header{background:#1e293bbf;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:#94a3b8d9}.team-table__row:last-child{border-bottom:none}.team-table__actions{display:flex;flex-wrap:wrap;gap:.5rem}.team-table__actions-header{text-align:right}.team-colour-swatch{display:inline-block;width:.8rem;height:.8rem;border-radius:.2rem;border:1px solid rgba(148,163,184,.45);vertical-align:middle}.status-badge{display:inline-flex;align-items:center;gap:.4rem;padding:.15rem .6rem;border-radius:999px;font-size:.75rem;font-weight:600}.status-badge--active{background:#22c55e26;color:#86efac}.status-badge--inactive{background:#f8717126;color:#fca5a5}.status-badge--pending{background:#facc152e;color:#fef08a}.modal__header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.modal__header h2{margin:0}.modal-close-button{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border:1px solid rgba(248,113,113,.45);border-radius:999px;background:#7f1d1d38;color:#f87171;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease}.modal-close-button:hover:not(:disabled),.modal-close-button:focus-visible:not(:disabled){border-color:#fca5a5cc;background:#991b1b61;color:#fecaca;transform:translateY(-1px)}.modal-close-button:disabled{opacity:.55;cursor:not-allowed;transform:none}.modal__content{display:flex;flex-direction:column;flex:1 1 auto;gap:1.25rem;min-height:0;overflow-y:auto;padding-right:.25rem;padding-bottom:.75rem}.modal__footer{display:flex;flex-shrink:0;justify-content:flex-end;gap:.75rem}.team-member-form__section{display:flex;flex-direction:column;gap:.85rem}.team-member-form{display:flex;flex-direction:column;gap:1.25rem}.team-member-modal{width:min(1120px,96vw);overflow-y:auto}.team-member-modal .modal__content{flex:0 0 auto;overflow:visible;min-height:auto}.team-member-form__grid{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.form-field{display:flex;flex-direction:column;gap:.4rem}.team-member-form__aside{background:#0f172a99;border:1px solid rgba(148,163,184,.2);border-radius:var(--radius-md);padding:1rem;display:flex;flex-direction:column;gap:.75rem}.team-member-form__aside dl{margin:0;display:grid;gap:.5rem}.team-member-form__aside dt{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8b3}.team-member-form__aside dd{margin:0}.team-colour-input-row{display:inline-flex;align-items:center;gap:.6rem}.team-colour-input{width:2.25rem;height:2.25rem;border:1px solid rgba(148,163,184,.4);border-radius:.4rem;background:#0f172acc;padding:.15rem;cursor:pointer}.team-colour-preview{width:1.2rem;height:1.2rem;border-radius:.22rem;border:1px solid rgba(148,163,184,.45)}.team-colour-hex{font-family:Fira Code,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.85rem;letter-spacing:.02em;color:#e2e8f0e6}.role-selector,.role-form{display:flex;flex-direction:column;gap:.75rem}.role-form__actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:.5rem}.role-selector__actions{display:flex;gap:.5rem;flex-wrap:wrap}.role-form__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem}.role-form__owner{display:flex;align-items:center;gap:.5rem;font-size:.9rem}.role-form__presets{border:1px solid rgba(148,163,184,.2);border-radius:var(--radius-md);padding:.85rem;display:flex;flex-direction:column;gap:.6rem}.role-form__preset-options,.permissions-panel__preset-grid{display:grid;gap:.5rem}.preset-option{display:flex;gap:.6rem;align-items:flex-start;padding:.6rem;border:1px solid rgba(148,163,184,.2);border-radius:var(--radius-md)}.preset-option input{margin-top:.3rem}.preset-option__content{display:flex;flex-direction:column;gap:.35rem}.permissions-panel{display:flex;flex-direction:column;gap:1rem;border:1px solid rgba(148,163,184,.2);border-radius:var(--radius-md);padding:1rem}.permissions-panel__header{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem}.permissions-panel__admin{display:flex;align-items:center;gap:.5rem;font-weight:600}.permissions-panel__admin-helper{font-size:.9rem;color:#94a3b8d9}.permissions-panel__grid{display:grid;gap:1rem}.permissions-panel__section{display:flex;flex-direction:column;gap:.5rem}.permissions-panel__toggle{align-self:flex-start}.permissions-panel__options{display:flex;flex-direction:column;gap:.5rem}.radio-option{display:flex;gap:.6rem;align-items:flex-start;padding:.6rem;border:1px solid rgba(148,163,184,.2);border-radius:var(--radius-md)}.radio-option input{margin-top:.35rem}.radio-option__content{display:flex;flex-direction:column;gap:.25rem}.menu-toggle{display:flex;align-items:center;gap:.5rem;font-size:.9rem}.working-hours{display:flex;flex-direction:column;gap:.75rem}.working-hours__header{display:flex;flex-direction:column;gap:.35rem}.working-hours__grid{border:1px solid rgba(148,163,184,.2);border-radius:var(--radius-md);overflow:hidden}.working-hours__row{display:grid;grid-template-columns:1fr auto 1fr 1fr auto;gap:.5rem;align-items:center;padding:.6rem .85rem;border-bottom:1px solid rgba(148,163,184,.12)}.working-hours__row--header{background:#1e293bb3;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:#94a3b8cc}.working-hours__row:last-child{border-bottom:none}.working-hours__label{font-weight:600}.working-hours__actions{display:flex;justify-content:flex-end}.working-hours__actions .button{font-size:.8rem;padding:.35rem .6rem}@media (max-width: 1024px){.team-table__row{grid-template-columns:1.4fr 1.4fr 1fr 1fr}.team-table__row>:nth-child(n+5):not(:last-child){display:none}}.job-client-dropdown,.job-site-dropdown,.job-save-menu,.product-search__dropdown,.address-autocomplete__dropdown,.jobs-calendar__slot-menu,.profile-menu__panel{background:#0f172a;-webkit-backdrop-filter:none;backdrop-filter:none}body[data-theme=light] .job-client-dropdown,body[data-theme=light] .job-site-dropdown,body[data-theme=light] .job-save-menu,body[data-theme=light] .product-search__dropdown,body[data-theme=light] .address-autocomplete__dropdown,body[data-theme=light] .jobs-calendar__slot-menu,body[data-theme=light] .profile-menu__panel{background:#fff}body[data-theme=light] .jobs-date-trigger{color:#1d4ed8f2}body[data-theme=light] .jobs-date-popover{background:#fffffffa;border-color:#94a3b84d}body[data-theme=light] .jobs-date-popover .rdp-day_button{color:#0f172aeb}body[data-theme=light] .jobs-date-popover .jobs-date-popover__holiday .rdp-day_button{box-shadow:inset 0 0 0 2px #4ade80d9}body[data-theme=light] .profile-menu__account{border-bottom-color:#94a3b840}body[data-theme=light] .profile-menu__account-email{color:#0f172aeb}body[data-theme=light] .profile-menu__account-subtitle{color:#475569d1}body[data-theme=light] .jobs-map-chip{background:#e2e8f0cc;color:#334155;border-color:#94a3b859}body[data-theme=light] .jobs-map-stop{background:#f8fafcf2;border-color:#94a3b840}body[data-theme=light] .jobs-map-stop__meta{color:#475569e6}body[data-theme=light] .jobs-map-stat{color:#334155f2;background:#e2e8f0a6;border-color:#94a3b859}body[data-theme=light] .jobs-map-unmapped ul{color:#334155e6}body[data-theme=light] .jobs-map-canvas{border-color:#94a3b84d}@media (max-width: 1120px){.jobs-map-panel-toggle{display:inline-flex}.jobs-map-layout{grid-template-columns:1fr}.jobs-map-layout .jobs-map-panel{display:none}.jobs-map-layout.jobs-map-layout--panel-open .jobs-map-panel{display:flex}.jobs-map-canvas{min-height:46vh}}.portal-document{max-width:816px;width:100%;background:#0f172aeb;color:#e5e7eb;padding:2rem;margin:0 auto 2rem;border-radius:var(--radius-md);border:1px solid rgba(148,163,184,.22);box-shadow:0 20px 50px #02061759;page-break-inside:avoid}.portal-document-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid rgba(148,163,184,.2)}.portal-header-left{flex:1;display:flex;align-items:flex-start;gap:1.5rem}.portal-header-right{text-align:right;padding-left:2rem}.portal-issued-label{font-size:.875rem;font-weight:600;color:#94a3b8f2;margin:.75rem 0 0;text-transform:uppercase;letter-spacing:.05em}.portal-issued-date{font-size:.95rem;color:#f8fafc;margin:.25rem 0 0;font-weight:500}.portal-document-type-right{font-size:.875rem;font-weight:700;color:#f8fafc;margin:0;letter-spacing:.05em;text-transform:uppercase}.portal-document-number-right{font-size:1rem;font-weight:600;color:#e5e7eb;margin:0 0 .75rem}.portal-company-name{font-size:1.75rem;font-weight:700;color:#f8fafc;margin:0 0 .5rem}.portal-company-detail{font-size:.875rem;color:#e2e8f0e0;margin:.25rem 0;line-height:1.4}.portal-company-logo{max-width:120px;max-height:80px;-o-object-fit:contain;object-fit:contain;display:block;flex-shrink:0}.portal-company-info{flex:1;min-width:0}@media print{.portal-company-logo{max-width:100px;max-height:60px}}.portal-addresses-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:2rem}.portal-address-column{min-width:0}@media (max-width: 768px){.portal-addresses-grid{grid-template-columns:1fr;gap:1.5rem}}.portal-document-meta{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid rgba(148,163,184,.18)}.portal-document-type{font-size:1.25rem;font-weight:700;color:#f8fafc;margin:0 0 .5rem;letter-spacing:.05em}.portal-document-number,.portal-document-date{font-size:.875rem;color:#e2e8f0e0;margin:.25rem 0}.portal-document-meta-right{text-align:right}.portal-section-title{font-size:.875rem;font-weight:600;color:#f8fafc;text-transform:uppercase;letter-spacing:.05em;margin:0 0 1rem}.portal-document-section{margin-bottom:1.5rem}.portal-document-series-note{margin-bottom:1.5rem;padding:.9rem 1rem;border:1px solid rgba(59,130,246,.28);border-radius:8px;background:#2563eb1f;color:#dbeafe;line-height:1.5}.portal-bill-to{font-size:.95rem;line-height:1.6;color:#e2e8f0e0}.portal-bill-to-name{font-weight:600;color:#f8fafc;margin:0 0 .25rem}.portal-bill-to>p{margin:.25rem 0}.portal-document-table{width:100%;border-collapse:collapse;table-layout:fixed;margin-bottom:1.5rem}.portal-document-table thead{background:#1e293bf2;border-top:1px solid rgba(148,163,184,.25);border-bottom:2px solid rgba(148,163,184,.25)}.portal-document-table th{padding:.75rem;font-weight:600;font-size:.875rem;color:#f8fafc}.portal-document-table th.portal-table-col-desc{text-align:left}.portal-document-table th.portal-table-col-qty{text-align:center}.portal-document-table th.portal-table-col-price,.portal-document-table th.portal-table-col-amount,.portal-document-table th.portal-table-col-due{text-align:right}.portal-document-table td{padding:.75rem;border-bottom:1px solid rgba(148,163,184,.18);font-size:.95rem;color:#e5e7eb}.portal-table-col-desc{width:50%}.portal-table-col-qty{width:10%;text-align:center}.portal-table-col-price{width:20%;text-align:right}.portal-table-col-amount{width:20%;text-align:right;font-weight:500}.portal-table-col-due{width:20%;text-align:right;font-weight:600}.portal-document-totals{display:flex;flex-direction:column;align-items:flex-end;gap:.5rem;margin-bottom:2rem;padding:1rem 0;border-top:1px solid rgba(148,163,184,.18);border-bottom:1px solid rgba(148,163,184,.18)}.portal-totals-row{display:flex;width:250px;justify-content:space-between;font-size:.95rem;color:#e2e8f0e0}.portal-totals-row>strong{color:#f8fafc}.portal-totals-total{font-size:1.125rem;font-weight:700;color:#f8fafc;padding-top:.5rem;margin-top:.5rem}.portal-totals-balance{color:#dc2626;font-weight:600}.portal-notes,.portal-terms-content{font-size:.95rem;color:#e2e8f0e0;line-height:1.6;margin:0}.portal-document-actions{display:flex;gap:1rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid rgba(148,163,184,.18)}.portal-document-actions .button{flex:1}.portal-quote-approval{background:#4f46e526;border-radius:var(--radius-md);padding:1.5rem;margin-top:1.5rem}.job-status-badge--new{background:#3b82f640;color:#bfdbfef2}.job-status-badge--scheduled{background:#f59e0b40;color:#fef3c7f2}.job-status-badge--in_progress{background:#06b6d43d;color:#cffafef2}.job-status-badge--completed{background:#22c55e40;color:#bbf7d0f2}.job-status-badge--cancelled{background:#ef44444d;color:#fee2e2f2}body[data-theme=light] .portal-document{background:#fff;color:#111827;border-color:#cbd5e1e6;box-shadow:0 10px 28px #0f172a14}body[data-theme=light] .portal-document-header,body[data-theme=light] .portal-document-meta{border-bottom-color:#e5e7eb}body[data-theme=light] .portal-issued-label,body[data-theme=light] .portal-company-detail,body[data-theme=light] .portal-document-number,body[data-theme=light] .portal-document-date,body[data-theme=light] .portal-bill-to,body[data-theme=light] .portal-totals-row,body[data-theme=light] .portal-notes,body[data-theme=light] .portal-terms-content,body[data-theme=light] .portal-document-table td{color:#374151}body[data-theme=light] .portal-issued-date,body[data-theme=light] .portal-document-type-right,body[data-theme=light] .portal-document-number-right,body[data-theme=light] .portal-company-name,body[data-theme=light] .portal-document-type,body[data-theme=light] .portal-section-title,body[data-theme=light] .portal-bill-to-name,body[data-theme=light] .portal-totals-row>strong,body[data-theme=light] .portal-totals-total,body[data-theme=light] .portal-document-table th{color:#111827}body[data-theme=light] .portal-document-table thead{background:#f9fafb;border-top-color:#d1d5db;border-bottom-color:#d1d5db}body[data-theme=light] .portal-document-table td,body[data-theme=light] .portal-document-totals,body[data-theme=light] .portal-document-actions{border-color:#e5e7eb}.portal-quote-approval-actions{display:flex;gap:1rem;margin-top:1rem}.portal-quote-approval-actions .button{flex:1}.portal-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,420px));gap:1rem;width:100%;max-width:none;margin:0;justify-content:start;align-items:start;align-content:start}@media (max-width: 768px){.portal-cards-grid{grid-template-columns:1fr}}.portal-card{background:#0f172aa6;border:1px solid rgba(148,163,184,.2);border-radius:var(--radius-md);padding:1.5rem;page-break-inside:avoid;width:100%;height:auto;align-self:start}.portal-card--compact{padding:.9rem 1rem}.portal-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid rgba(148,163,184,.2)}.portal-card--compact .portal-card-header{margin-bottom:.6rem;padding-bottom:.6rem}.portal-card-header h3{margin:0;font-size:1.125rem;font-weight:600;color:#e2e8f0}.portal-card-header .badge{flex-shrink:0}.portal-card-body{display:flex;flex-direction:column;gap:1rem}.portal-card-body--compact{gap:.5rem}.portal-card-detail{display:flex;flex-direction:column;gap:.25rem}.portal-card-detail--inline{gap:.08rem}.portal-card-detail dt{font-size:.875rem;font-weight:600;color:#94a3b8e6;text-transform:uppercase;letter-spacing:.05em}.portal-card-detail dd{margin:0;font-size:.95rem;color:#e2e8f0e6;line-height:1.5;white-space:pre-wrap}.portal-card-detail dd em{font-style:italic;opacity:.8}.portal-detail-view{position:relative}.portal-back-button{display:inline-flex;align-items:center;gap:.5rem;margin-bottom:1.5rem;padding:.5rem 1rem;background:#4f46e51a;border:1px solid rgba(79,70,229,.3);border-radius:var(--radius-md);color:#e2e8f0;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s ease}.portal-back-button:hover{background:#4f46e533;border-color:#4f46e580}.portal-back-button:active{transform:scale(.98)}.portal-card-button{width:100%;border:0;text-align:left;font:inherit;color:inherit;background:inherit;cursor:pointer}.portal-card-clickable{cursor:pointer;transition:all .2s ease}.portal-card-clickable:hover{border-color:#4f46e580;box-shadow:0 4px 12px #4f46e51a;transform:translateY(-2px)}.portal-card-clickable:active{transform:translateY(0)}.portal-card-meta{font-size:.85rem;color:#94a3b8cc;margin:.25rem 0 0}.portal-card-amount{font-size:1.5rem;font-weight:700;color:#e2e8f0;margin-bottom:.5rem}.portal-card-balance{font-size:.9rem;color:#f87171e6;margin:0}.portal-card-notes{font-size:.9rem;color:#94a3b8d9;margin-top:.75rem;margin-bottom:0;line-height:1.4}.portal-quote-items table,.portal-table{table-layout:fixed;width:100%;border-collapse:collapse}.portal-quote-items th,.portal-quote-items td{overflow-wrap:break-word;word-break:break-word}@media print{@page{size:letter;margin:.4in}*{background:transparent!important;box-shadow:none!important}html,body{background:#fff!important;color:#000!important;margin:0;padding:0}aside,.portal-sidebar,nav,[role=navigation],.portal-brand,.portal-nav,.portal-signout,.sonner-toaster,header,footer{display:none!important;width:0!important;height:0!important}main>h1,main>h2,main>p:first-child,.page-heading,.greeting{display:none!important}.portal-document-actions,.portal-quote-approval,.portal-payment-modal,.portal-empty,.portal-loading,.portal-payment-sheet,.portal-payment-card,button,[type=button],.button,input,[type=input],form{display:none!important}.portal-shell{display:block;width:100%;margin:0;padding:0;background:#fff!important}main{display:block!important;width:100%;margin:0;padding:0;background:#fff!important}.portal-document{max-width:100%;width:100%;margin:0 0 2rem;padding:0;page-break-inside:avoid;background:#fff!important;box-shadow:none;border:none;color:#000}.portal-document-header{border-bottom:2px solid #000;margin-bottom:1.5rem;padding-bottom:1.5rem}.portal-company-name{color:#000;margin:0 0 .5rem}.portal-company-detail{color:#333;margin:.25rem 0}.portal-document-meta{display:flex;justify-content:space-between;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid #000}.portal-document-type,.portal-document-number,.portal-document-date,.portal-document-type-right,.portal-document-number-right,.portal-issued-label,.portal-issued-date{color:#000}.status{border:1px solid #000!important;padding:.25rem .5rem}.portal-section-title{color:#000}.portal-bill-to{color:#333}.portal-bill-to-name{color:#000}.portal-document-table{width:100%;border-collapse:collapse;margin-bottom:1.5rem}.portal-document-table thead{background:#e0e0e0!important;border-top:1px solid #000;border-bottom:1px solid #000}.portal-document-table th{color:#000;background:#e0e0e0!important;padding:.5rem .75rem;text-align:left;font-weight:600;font-size:.85rem;border:none;border-bottom:1px solid #000;box-shadow:none!important;text-shadow:none!important}.portal-document-table td{padding:.5rem .75rem;border-bottom:1px solid #ccc;color:#333;background:#fff!important}.portal-table-col-desc{width:50%}.portal-table-col-qty{width:10%;text-align:center}.portal-table-col-price,.portal-table-col-amount{width:20%;text-align:right}.portal-document-totals{display:flex;flex-direction:column;align-items:flex-end;gap:.5rem;margin-bottom:2rem;padding:1rem 0;border-top:1px solid #000;border-bottom:1px solid #000}.portal-totals-row{display:flex;width:250px;justify-content:space-between;color:#333}.portal-totals-row>strong{color:#000}.portal-totals-total{font-size:1.125rem;font-weight:700;color:#000;border-top:1px solid #000;padding-top:.5rem;margin-top:.5rem}.portal-totals-balance{color:#dc2626;font-weight:600}.portal-notes,.portal-terms-content{color:#333}.portal-addresses-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:2rem}.portal-cards-grid{display:block!important;max-width:100%;margin:0}.portal-card{page-break-inside:avoid;border:1px solid #000;margin-bottom:2rem;padding:1rem;background:#fff!important;color:#000}.portal-card-header{display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #000}.portal-card-header h3{color:#000;margin:0}.portal-card-body{display:flex;flex-direction:column;gap:1rem}.portal-card-detail dt{color:#333;font-weight:600}.portal-card-detail dd{color:#333;margin:0}}.mobile-tab-bar,.mobile-nav-drawer{display:none}@media (max-width: 768px){.app-shell{grid-template-columns:1fr}.app-shell aside{display:none}.app-shell main{padding:1.25rem 1rem 5.5rem}.app-shell main.app-shell-main--jobs-calendar{padding-top:1rem}.app-shell header{padding:.75rem 0}.app-shell header h1{font-size:1.5rem}.mobile-tab-bar{display:flex;position:fixed;bottom:0;left:0;right:0;height:60px;background:#0f172af7;border-top:1px solid rgba(148,163,184,.2);z-index:200;justify-content:space-around;align-items:stretch;padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.mobile-tab-bar__item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:.6rem;font-weight:500;letter-spacing:.02em;color:#94a3b8a6;text-decoration:none;background:none;border:none;cursor:pointer;padding:0 4px;position:relative;transition:color .15s ease;-webkit-tap-highlight-color:transparent}.mobile-tab-bar__item--active,.mobile-tab-bar__item:active{color:#38bdf8}.mobile-tab-bar__badge{position:absolute;top:6px;right:calc(50% - 18px);background:#ef4444;color:#fff;font-size:.55rem;font-weight:700;line-height:1;min-width:16px;height:16px;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:0 4px}.mobile-nav-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:300}.mobile-nav-drawer{display:flex;flex-direction:column;position:fixed;bottom:0;left:0;right:0;max-height:80vh;background:#0f172afa;border-top:1px solid rgba(148,163,184,.2);border-radius:16px 16px 0 0;z-index:350;transform:translateY(100%);transition:transform .25s cubic-bezier(.4,0,.2,1);overflow-y:auto;padding-bottom:env(safe-area-inset-bottom);-webkit-overflow-scrolling:touch}.mobile-nav-drawer--open{transform:translateY(0)}.mobile-nav-drawer__header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.25rem .75rem;border-bottom:1px solid rgba(148,163,184,.15);position:sticky;top:0;background:#0f172afa;z-index:1}.mobile-nav-drawer__title{font-size:1rem;font-weight:600;color:#f1f5f9;letter-spacing:.02em}.mobile-nav-drawer__close{background:none;border:none;color:#94a3b8b3;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:6px;-webkit-tap-highlight-color:transparent}.mobile-nav-drawer__close:active{color:#f1f5f9}.mobile-nav-drawer nav{padding:.75rem 1rem 1rem}.mobile-nav-drawer nav ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:2px}.mobile-nav-drawer nav li{list-style:none}}
