@import "https://fonts.googleapis.com/css2?family=Barlow+Condensed:ital,wght@0,600;0,700;1,700&family=Open+Sans:ital,wght@0,400;0,600;0,700;1,700&display=swap";:root{--navy:#1b2050;--navy-dark:#141840;--navy-mid:#252d6e;--sky:#3ebcec;--sky-light:#d0f0fb;--sky-mid:#1a9fd4;--yellow:#fcba00;--yellow-dark:#d49b00;--white:#fff;--grey:#f1f1f1;--grey-mid:#e2e2e2;--grey-dark:#9a9a9a;--text-dark:#1b2050;--text-body:#3a3a3a;--text-muted:#7a7a8a;--amber-text:#92400e;--surface:#fff;--app-bg:#f5f6fa;--brand-navy:#1b2050;--brand-navy-mid:#252d6e;--font-display:"Barlow Condensed", sans-serif;--font-body:"Open Sans", sans-serif;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--shadow-sm:0 1px 3px #1b205014;--shadow-md:0 4px 16px #1b20501f;--shadow-lg:0 8px 32px #1b205029;--sidebar-w:240px;--topbar-h:64px}:root[data-theme=dark]{--navy:#e8eaf6;--navy-mid:#c2c7e0;--text-dark:#e8eaf6;--text-body:#c7cad8;--text-muted:#8b8fa6;--surface:#1c2030;--app-bg:#11141f;--grey:#262b3d;--grey-mid:#363c52;--grey-dark:#6c7186;--amber-text:#f0a95c;--shadow-sm:0 1px 3px #00000073;--shadow-md:0 4px 16px #0000008c;--shadow-lg:0 8px 32px #000000a6}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;font-family:var(--font-body);color:var(--text-body);background:var(--app-bg);-webkit-font-smoothing:antialiased}html,body{overscroll-behavior:none;touch-action:manipulation;overflow:hidden}h1,h2,h3{font-family:var(--font-display);text-transform:uppercase;color:var(--navy);font-style:italic;font-weight:700;line-height:1.1}h1{font-size:2.4rem}h2{font-size:1.8rem}h3{font-size:1.3rem}p{line-height:1.6}a{color:inherit;text-decoration:none}.app-shell{height:calc(100vh / var(--app-zoom,1));height:calc(100dvh / var(--app-zoom,1));display:flex;overflow:hidden}.sidebar{width:var(--sidebar-w);background:var(--brand-navy);z-index:100;flex-direction:column;flex-shrink:0;display:flex;overflow-y:auto}.sidebar-logo{text-align:center;border-bottom:1px solid #ffffff14;padding:20px 20px 16px}.sidebar-logo .logo-img{width:100%;max-width:105px;height:auto;margin:0 auto;display:block}.sidebar-logo .logo-text{font-family:var(--font-display);text-transform:uppercase;color:#fff;font-size:1.3rem;font-style:italic;font-weight:700;line-height:1.1}.sidebar-logo .logo-sub{font-family:var(--font-body);color:var(--sky);letter-spacing:.06em;text-transform:uppercase;margin-top:2px;font-size:.68rem;font-weight:600}.sidebar-branch{border-radius:var(--radius-md);background:#3ebcec1f;border:1px solid #3ebcec40;margin:12px 16px;padding:10px 12px}.sidebar-branch .branch-label{color:var(--sky);text-transform:uppercase;letter-spacing:.06em;font-size:.65rem;font-weight:600}.sidebar-branch .branch-name{font-family:var(--font-display);text-transform:uppercase;color:#fff;margin-top:1px;font-size:1rem;font-style:italic;font-weight:700}.branch-select{border-radius:var(--radius-sm);color:#fff;width:100%;font-family:var(--font-display);text-transform:uppercase;appearance:none;cursor:pointer;letter-spacing:.02em;background:#ffffff1a;border:1px solid #3ebcec59;outline:none;padding:5px 28px 5px 8px;font-size:.95rem;font-style:italic;font-weight:700}.branch-select:focus{border-color:var(--sky);background:#3ebcec26}.branch-select option{background:var(--navy-dark);color:#fff;text-transform:uppercase;font-size:.85rem;font-style:normal}.sidebar-section-label{letter-spacing:.1em;text-transform:uppercase;color:#ffffff4d;padding:16px 20px 6px;font-size:.6rem;font-weight:700}.sidebar nav{flex-direction:column;flex:1;padding-bottom:16px;display:flex}.nav-item{cursor:pointer;color:#fff9;border-left:3px solid #0000;border-radius:0;align-items:center;gap:10px;padding:9px 20px;font-size:.875rem;font-weight:600;transition:all .15s;display:flex}.nav-item:hover{color:#fff;background:#ffffff0f;border-left-color:#3ebcec66}.nav-item.active{color:#fff;border-left-color:var(--sky);background:#3ebcec26}.nav-item.active svg{color:var(--sky)}.nav-item svg{flex-shrink:0;width:18px;height:18px}.nav-badge{background:var(--yellow);color:var(--navy);text-align:center;border-radius:20px;min-width:18px;margin-left:auto;padding:2px 6px;font-size:.6rem;font-weight:700}.main-area{flex-direction:column;flex:1;display:flex;overflow:hidden}.topbar{height:var(--topbar-h);background:var(--surface);border-bottom:1px solid var(--grey-mid);box-shadow:var(--shadow-sm);flex-shrink:0;align-items:center;gap:16px;padding:0 28px;display:flex}.topbar-title{font-family:var(--font-display);text-transform:uppercase;color:var(--navy);flex:1;font-size:1.4rem;font-style:italic;font-weight:700}.topbar-actions{align-items:center;gap:12px;display:flex}.page-content{overscroll-behavior:none;flex:1;padding:28px;overflow:hidden auto}.card{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--grey-mid)}.card-navy{background:var(--brand-navy);color:#fff}.card-sky{background:var(--sky);color:#fff}.metric-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:28px;display:grid}.metric-card{background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--grey-mid);box-shadow:var(--shadow-sm);padding:20px 22px;position:relative;overflow:hidden}.metric-card:before{content:"";height:3px;position:absolute;top:0;left:0;right:0}.metric-card.accent-navy:before{background:var(--brand-navy)}.metric-card.accent-sky:before{background:var(--sky)}.metric-card.accent-yellow:before{background:var(--yellow)}.metric-card.accent-green:before{background:#2ecc71}.metric-card.accent-purple:before{background:#8b5cf6}.metric-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:6px;font-size:.7rem;font-weight:700}.metric-value{font-family:var(--font-display);color:var(--navy);text-transform:uppercase;font-size:2rem;font-style:italic;font-weight:700;line-height:1}.metric-sub{color:var(--text-muted);margin-top:4px;font-size:.75rem}.metric-delta{margin-top:4px;font-size:.72rem;font-weight:700}.metric-delta.up{color:#2ecc71}.metric-delta.down{color:#e74c3c}.grid-2{grid-template-columns:1fr 1fr;gap:20px;display:grid}.grid-3{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.grid-main-side{grid-template-columns:1fr 360px;gap:20px;display:grid}.section-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.section-title{font-family:var(--font-display);text-transform:uppercase;color:var(--navy);font-size:1.1rem;font-style:italic;font-weight:700}.section-title .dot{color:var(--yellow)}.btn{border-radius:var(--radius-md);font-family:var(--font-body);cursor:pointer;white-space:nowrap;border:none;align-items:center;gap:7px;padding:9px 18px;font-size:.8rem;font-weight:700;transition:all .15s;display:inline-flex}.btn-primary{background:var(--brand-navy);color:#fff}.btn-primary:hover{background:var(--brand-navy-mid)}.btn-sky{background:var(--sky);color:#fff}.btn-sky:hover{background:var(--sky-mid)}.btn-yellow{background:var(--yellow);color:var(--navy)}.btn-yellow:hover{background:var(--yellow-dark)}.btn-ghost{color:var(--navy);border:1.5px solid var(--grey-mid);background:0 0}.btn-ghost:hover{background:var(--grey)}.btn-sm{padding:6px 12px;font-size:.72rem}.btn svg{width:15px;height:15px}.badge{text-transform:uppercase;letter-spacing:.04em;border-radius:20px;align-items:center;gap:4px;padding:3px 9px;font-size:.68rem;font-weight:700;display:inline-flex}.badge-navy{background:var(--brand-navy);color:#fff}.badge-sky{background:var(--sky-light);color:var(--sky-mid)}.badge-yellow{color:#a07800;background:#fff3cc}.badge-green{color:#1a7a46;background:#d4f5e4}.badge-red{color:#c0392b;background:#fde8e8}.badge-grey{background:var(--grey);color:var(--text-muted)}.status-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.status-dot.confirmed{background:var(--sky)}.status-dot.pending{background:var(--yellow)}.status-dot.complete{background:#2ecc71}.status-dot.cancelled{background:#e74c3c}.job-list{flex-direction:column;gap:10px;display:flex}.job-card{background:var(--surface);border:1px solid var(--grey-mid);border-radius:var(--radius-md);align-items:center;gap:14px;padding:14px 16px;transition:box-shadow .15s;display:flex}.job-card:hover{box-shadow:var(--shadow-md)}.job-card-time{font-family:var(--font-display);color:var(--navy);text-align:center;text-transform:uppercase;min-width:52px;font-size:1rem;font-style:italic;font-weight:700}.job-card-body{flex:1;min-width:0}.job-card-customer{color:var(--navy);white-space:nowrap;text-overflow:ellipsis;font-size:.875rem;font-weight:700;overflow:hidden}.job-card-detail{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:.75rem;overflow:hidden}.job-card-value{font-family:var(--font-display);color:var(--navy);text-transform:uppercase;font-size:1.1rem;font-style:italic;font-weight:700}.progress-wrap{margin:8px 0}.progress-label{color:var(--text-muted);justify-content:space-between;margin-bottom:5px;font-size:.75rem;font-weight:600;display:flex}.progress-bar{background:var(--grey);border-radius:20px;height:8px;overflow:hidden}.progress-fill{background:var(--sky);border-radius:20px;height:100%;transition:width .6s}.progress-fill.yellow{background:var(--yellow)}.progress-fill.navy{background:var(--brand-navy)}.progress-fill.green{background:#2ecc71}.checklist{flex-direction:column;gap:8px;display:flex}.check-item{background:var(--grey);border-radius:var(--radius-sm);cursor:pointer;color:var(--text-body);align-items:center;gap:10px;padding:10px 14px;font-size:.82rem;font-weight:600;transition:background .12s;display:flex}.check-item:hover{background:var(--grey-mid)}.check-item.done{color:#1a6640;opacity:.75;background:#d4f5e4;text-decoration:line-through}.check-box{border:2px solid var(--grey-dark);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;transition:all .12s;display:flex}.check-item.done .check-box{background:#2ecc71;border-color:#2ecc71}.data-table{border-collapse:collapse;width:100%}.data-table th{text-align:left;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);border-bottom:2px solid var(--grey-mid);padding:10px 16px;font-size:.68rem;font-weight:700}.data-table td{border-bottom:1px solid var(--grey);color:var(--text-body);padding:12px 16px;font-size:.82rem}.data-table tr:last-child td{border-bottom:none}.data-table tr:hover td{background:#fafbff}.cal-grid{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.cal-scroll-inner{min-width:0}@media (width<=600px){.cal-scroll{-webkit-overflow-scrolling:touch;overflow:auto hidden}.cal-scroll-inner{min-width:560px}}.cal-weekday{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);text-align:center;padding:4px 0;font-size:.62rem;font-weight:700}.cal-cell{border:1px solid var(--grey-mid);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;flex-direction:column;gap:3px;min-height:92px;padding:5px 6px;transition:box-shadow .12s,border-color .12s;display:flex;overflow:hidden}.cal-cell:hover{box-shadow:var(--shadow-sm);border-color:var(--sky)}.cal-cell.empty{cursor:default;background:0 0;border:none}.cal-cell.empty:hover{box-shadow:none}.cal-cell.today{border-color:var(--sky);background:#3ebcec0f}.cal-cell.selected{border-color:var(--navy);box-shadow:0 0 0 1.5px var(--navy)}.cal-date{font-family:var(--font-display);color:var(--navy);font-size:.85rem;font-style:italic;font-weight:700}.cal-chips{flex-direction:column;gap:2px;min-width:0;display:flex}.cal-chip{color:var(--text-body);background:var(--grey);border-left:3px solid var(--sky);white-space:nowrap;text-overflow:ellipsis;border-radius:3px;padding:1px 4px;font-size:.6rem;font-weight:600;overflow:hidden}.cal-chip-time{color:var(--navy);margin-right:3px;font-weight:700}.cal-more{color:var(--text-muted);padding-left:3px;font-size:.58rem;font-weight:700}.cal-chip-block{color:#8a5a00;background:repeating-linear-gradient(45deg,#fdeccb,#fdeccb 4px,#fbe3b3 4px 8px);border-left:3px solid #e0a23a;align-items:center;gap:3px;font-weight:700;display:flex}.cal-cell.has-block{background:#e0a23a0f}.cal-cell.has-block.today{background:#3ebcec0f}.cal-block-row{background:repeating-linear-gradient(45deg,#fef6e7,#fef6e7 6px,#fdeecf 6px 12px);border:1px solid #f1d79a;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;display:flex}.cal-cell-week{min-height:200px}.cal-week-head{border-bottom:1px solid var(--grey-mid);justify-content:space-between;align-items:baseline;gap:4px;margin-bottom:2px;padding-bottom:4px;display:flex}.cal-week-dow{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);font-size:.58rem;font-weight:700}.cal-cell-week .cal-chip{padding:2px 5px;font-size:.64rem}.day-timeline{flex-direction:column;display:flex}.day-allday{color:#8a5a00;background:repeating-linear-gradient(45deg,#fef6e7,#fef6e7 6px,#fdeecf 6px 12px);border:1px solid #f1d79a;border-radius:7px;align-items:center;gap:7px;margin-bottom:8px;padding:8px 10px;font-size:.74rem;display:flex}.day-untimed{gap:12px;margin-bottom:10px;display:flex}.day-untimed-label{color:var(--text-muted);text-align:right;flex:0 0 52px;padding-top:8px;font-size:.68rem;font-weight:700}.day-untimed-list{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.day-grid{margin-top:6px;position:relative}.day-hourline{border-top:1px solid var(--grey-mid);position:absolute;left:0;right:0}.day-hourline.now{background:#3ebcec0f}.day-hourline:last-child{border-bottom:1px solid var(--grey-mid)}.day-hourlabel{color:var(--text-muted);background:var(--surface);padding-right:6px;font-size:.68rem;font-weight:700;position:absolute;top:-8px;left:0}.day-events{position:absolute;inset:0 4px 0 56px}.day-nowline{z-index:4;pointer-events:none;position:absolute;left:0;right:0}.day-nowbar{background:#e74c3c;border-radius:2px;height:2px;position:absolute;top:0;left:56px;right:4px}.day-nowdot{width:9px;height:9px;box-shadow:0 0 0 2px var(--surface);background:#e74c3c;border-radius:50%;position:absolute;top:-3.5px;left:51px}.day-nowlabel{color:#fff;font-variant-numeric:tabular-nums;background:#e74c3c;border-radius:4px;padding:1px 5px;font-size:.6rem;font-weight:800;position:absolute;top:-8px;left:0}.day-block{background:var(--grey);border:1px solid var(--grey-mid);border-left:3px solid var(--sky);cursor:pointer;text-align:left;border-radius:7px;flex-direction:column;justify-content:center;gap:1px;padding:3px 10px;display:flex;position:absolute;left:0;right:0;overflow:hidden}.day-block:hover{border-color:var(--sky);box-shadow:var(--shadow-sm);z-index:2}.day-block-time{color:var(--navy);font-size:.72rem;font-weight:700}.day-block-cust{color:var(--navy);white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;font-weight:700;overflow:hidden}.day-block-meta{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.68rem;overflow:hidden}.day-block-out{color:#8a5a00;cursor:default;background:repeating-linear-gradient(45deg,#fef6e7,#fef6e7 6px,#fdeecf 6px 12px);border-color:#f1d79a #f1d79a #f1d79a #e0a23a}.day-block-out .day-block-cust,.day-block-out .day-block-time{color:#8a5a00}.day-event{text-align:left;background:var(--grey);border:1px solid #0000;border-left:3px solid var(--sky);cursor:pointer;border-radius:7px;align-items:center;gap:8px;width:100%;padding:7px 10px;transition:border-color .12s;display:flex}.day-event:hover{border-color:var(--sky)}.day-event-time{color:var(--navy);flex-shrink:0;font-size:.78rem;font-weight:700}.day-event-cust{color:var(--navy);font-size:.8rem;font-weight:700}.day-event-meta{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin-left:auto;font-size:.7rem;overflow:hidden}.day-event-block{color:#8a5a00;cursor:default;background:repeating-linear-gradient(45deg,#fef6e7,#fef6e7 6px,#fdeecf 6px 12px);border-left-color:#e0a23a}.day-event-block .day-event-cust{color:#8a5a00}.add-menu-backdrop{z-index:40;position:fixed;inset:0}.add-menu{z-index:41;background:var(--surface);border:1px solid var(--grey-mid);border-radius:var(--radius-md);min-width:190px;padding:6px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 10px 30px #0d1b302e}.add-menu-head{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);padding:6px 8px 4px;font-size:.62rem;font-weight:700}.add-menu-item{cursor:pointer;width:100%;font-family:var(--font-body);color:var(--navy);text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:9px;padding:9px 8px;font-size:.82rem;font-weight:700;display:flex}.add-menu-item:hover{background:var(--grey)}.add-menu-item svg{color:var(--sky-mid)}.yellow-bar{background:var(--yellow);color:var(--navy);font-family:var(--font-display);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:8px;padding:6px 20px;font-size:.78rem;font-style:italic;font-weight:700;display:flex}.avatar{background:var(--sky);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:.78rem;font-weight:700;display:flex}.cost-grid{grid-template-columns:1fr 130px 120px 36px;align-items:center;gap:10px;display:grid}.topbar-menu,.sidebar-backdrop{display:none}@media (width<=1100px){.grid-main-side,.grid-2{grid-template-columns:1fr}}@media (width<=768px){body{width:100%;position:fixed;inset:0}input,select,textarea,.field input,.field-select{font-size:16px}.sidebar{z-index:200;width:264px;transition:transform .22s;display:flex;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%);box-shadow:4px 0 28px #0000004d}.sidebar.open{transform:translate(0)}.sidebar-backdrop{z-index:150;background:#0d1b3080;display:block;position:fixed;inset:0}.topbar-menu{display:inline-flex}.topbar{gap:10px;padding:0 14px}.topbar-title{font-size:1.15rem}html[data-text-size=large] .topbar-date,html[data-text-size=largest] .topbar-date{display:none}.page-content{padding:16px}.field-row{flex-direction:column;gap:0}table{white-space:nowrap;width:100%;display:block;overflow-x:auto}.grid-main-side>*,.grid-2>*,.card{min-width:0}.cost-grid{flex-wrap:wrap;gap:8px;display:flex}.cost-head{display:none}.cost-name{flex:100%}.cost-type{flex:none}.cost-amount{flex:120px}.cost-del{flex:none;margin-left:auto}}@media (width<=480px){.metric-grid{grid-template-columns:1fr}.topbar-title{font-size:1rem}.page-content{padding:12px}}@media (width<=600px){.admin-row{flex-wrap:wrap;align-items:center;gap:12px 10px;padding:16px!important}.admin-row>:first-child{min-width:0;flex:100%!important}.admin-row .btn-sm{padding-top:9px;padding-bottom:9px}}@media (width<=768px){.dashboard-page{flex-direction:column;gap:16px;display:flex}.dashboard-page .grid-main-side,.dashboard-page .dash-col-main,.dashboard-page .dash-col-side{display:contents!important}.dashboard-page .dash-today{order:1}.dashboard-page .dash-bookings{order:2}.dashboard-page .dash-quotes{order:3}.dashboard-page .dash-completed{order:5}.dashboard-page .dash-support{order:6}.dashboard-page .dash-kpis{order:7}.dashboard-page .dash-target{order:8}.dashboard-page .dash-ops{order:9}.dashboard-page .dash-export{order:10}.dashboard-page .dash-links{order:11}.marketing-page{flex-direction:column;gap:16px;display:flex}.marketing-page .grid-main-side,.marketing-page .mkt-col-main,.marketing-page .mkt-col-side{display:contents!important}.marketing-page .mkt-kpis,.bookings-kpis{display:none}.marketing-page .mkt-leads{order:1}.marketing-page .mkt-reviews{order:2}.marketing-page .mkt-templates{order:3}.marketing-page .mkt-checklist{order:4}.marketing-page .mkt-focus{order:6}.marketing-page .mkt-channels{order:7}.job-detail-panel{z-index:60;width:100%;position:fixed;inset:0;border-left:none!important;flex:none!important;padding:20px!important}.page-header-row{flex-wrap:wrap}.page-header-row>:first-child{flex-basis:100%}.job-detail-header{flex-direction:column;gap:12px}.job-detail-price{text-align:left!important}.job-detail-price>div:first-child{font-size:1.5rem!important}}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.fade-up{animation:.3s both fadeUp}.fade-up-1{animation-delay:50ms}.fade-up-2{animation-delay:.1s}.fade-up-3{animation-delay:.15s}.fade-up-4{animation-delay:.2s}.assign-table{border-collapse:collapse;width:100%;font-size:.82rem}.assign-table th{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);text-align:center;border-bottom:1.5px solid var(--grey-mid);white-space:nowrap;padding:8px 12px;font-size:.62rem;font-weight:700}.assign-table td{border-bottom:1px solid var(--grey);vertical-align:middle;padding:12px}.assign-table tbody tr:hover{background:var(--grey)}.role-badge{text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;border-radius:6px;padding:3px 8px;font-size:.58rem;font-weight:700}.you-tag{text-transform:uppercase;letter-spacing:.04em;background:var(--yellow);color:var(--navy);border-radius:5px;padding:2px 6px;font-size:.55rem;font-weight:700}.assign-toggle{border:1.5px solid var(--grey-mid);background:var(--surface);cursor:pointer;color:#fff;border-radius:7px;justify-content:center;align-items:center;width:26px;height:26px;transition:all .12s;display:inline-flex}.assign-toggle:hover{border-color:var(--sky)}.assign-toggle.on{background:var(--sky);border-color:var(--sky)}.admin-row{background:var(--grey);border:1px solid #0000;border-radius:9px;align-items:center;gap:14px;padding:12px 14px;transition:border-color .12s;display:flex}.admin-row:hover{border-color:var(--grey-mid)}.manage-search{border:1px solid var(--grey-mid);width:100%;font-size:.82rem;font-family:var(--font-body);color:var(--navy);background:var(--surface);border-radius:8px;outline:none;margin-bottom:12px;padding:9px 12px}.manage-search:focus{border-color:var(--sky)}.manage-list{flex-direction:column;gap:6px;max-height:360px;display:flex;overflow-y:auto}.manage-row{background:var(--grey);cursor:pointer;border:1px solid #0000;border-radius:8px;align-items:center;gap:12px;width:100%;padding:10px 12px;transition:border-color .12s;display:flex}.manage-row:hover{border-color:var(--sky)}.staff-date-head{font-family:var(--font-display);text-transform:uppercase;color:var(--navy);align-items:baseline;gap:10px;font-size:1.05rem;font-style:italic;font-weight:700;display:flex}.staff-date-sub{font-family:var(--font-body);text-transform:none;color:var(--text-muted);letter-spacing:0;font-size:.7rem;font-style:normal;font-weight:600}.staff-job{align-items:flex-start;gap:16px;padding:16px 18px;display:flex}.staff-job-time{color:var(--navy);background:var(--grey);white-space:nowrap;border-radius:8px;align-items:center;gap:5px;padding:7px 11px;font-size:.82rem;font-weight:700;display:flex}.staff-route{color:var(--navy);flex-wrap:wrap;align-items:center;gap:7px;margin-top:8px;font-size:.82rem;font-weight:600;display:flex}.staff-notes{color:var(--text-muted);background:var(--grey);border-left:3px solid var(--yellow);border-radius:8px;margin-top:8px;padding:8px 11px;font-size:.78rem}.staff-stops{flex-direction:column;gap:6px;margin-top:10px;display:flex}.staff-stop{align-items:center;gap:8px;font-size:.8rem;display:flex}.staff-stop-dot{border-radius:50%;flex-shrink:0;width:9px;height:9px}.staff-stop-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);min-width:52px;font-size:.6rem;font-weight:700}.staff-stop-addr{color:var(--navy);font-weight:600}.switch{background:var(--grey-mid);cursor:pointer;border:none;border-radius:11px;flex-shrink:0;width:40px;height:22px;padding:0;transition:background .15s;position:relative}.switch.on{background:#2ecc71}.switch-knob{background:var(--surface);border-radius:50%;width:18px;height:18px;transition:transform .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #0003}.switch.on .switch-knob{transform:translate(18px)}.link-select{font-family:var(--font-body);color:var(--navy);background:var(--surface);border:1.5px solid var(--grey-mid);cursor:pointer;border-radius:6px;padding:3px 6px;font-size:.72rem;font-weight:600}.link-select:focus{border-color:var(--sky);outline:none}.preview-user-select{appearance:none;background:var(--surface);border:1.5px solid var(--grey-mid);border-radius:var(--radius-md);color:var(--navy);cursor:pointer;font-size:.78rem;font-weight:700;font-family:var(--font-body);padding:7px 30px 7px 12px}.preview-user-select:focus{border-color:var(--sky);outline:none}.preview-frame{border:1px solid var(--grey-mid);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);background:var(--surface);overflow:hidden}.preview-bar{background:var(--grey);border-bottom:1px solid var(--grey-mid);align-items:center;gap:8px;height:40px;padding:0 14px;display:flex}.preview-dot{border-radius:50%;flex-shrink:0;width:11px;height:11px}.preview-url{background:var(--surface);border:1px solid var(--grey-mid);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;border-radius:7px;max-width:70%;margin:0 auto;padding:4px 16px;font-size:.7rem;font-weight:600;overflow:hidden}.preview-window{height:640px}.preview-window .app-shell{height:100%}.preview-window .page-content{padding:22px}.preview-window .sidebar{z-index:1}.modal-overlay{overscroll-behavior:contain;z-index:100;background:#0d1b3073;padding:20px;animation:.15s fade-in;display:flex;position:fixed;inset:0;overflow:hidden auto}.modal-card{background:var(--surface);border-radius:var(--radius-lg);width:100%;max-width:480px;margin:auto;padding:24px 26px;box-shadow:0 20px 50px #0d1b3040}.modal-head{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.modal-close{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-radius:6px;padding:4px;display:flex}.modal-close:hover{background:var(--grey);color:var(--navy)}.modal-actions{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.form-needs{border-radius:var(--radius-md);color:var(--navy);background:#d69e2e1f;border:1px solid #d69e2e59;margin-top:18px;padding:10px 12px;font-size:.8rem;font-weight:600;line-height:1.4}@media (width<=768px){.modal-overlay{background:var(--surface);padding:0}.modal-card{border-radius:0;max-width:100%;min-height:100%;margin:0;padding:18px}}.field{margin-bottom:14px;display:block}.field>span{color:var(--navy);text-transform:uppercase;letter-spacing:.04em;margin-bottom:5px;font-size:.72rem;font-weight:700;display:block}.field input,.field-select{border:1.5px solid var(--grey-mid);border-radius:var(--radius-md);width:100%;font-family:var(--font-body);color:var(--navy);background:var(--surface);padding:9px 12px;font-size:.85rem;transition:border-color .15s}.field input:focus,.field-select:focus{border-color:var(--sky);outline:none}.field-hint{color:var(--text-muted);margin-top:5px;font-size:.68rem;display:block}.field-row{gap:12px;display:flex}.field-row .field{flex:1}.btn:disabled{opacity:.45;cursor:not-allowed}.route-builder{flex-direction:column;gap:8px;display:flex}.route-line{align-items:center;gap:10px;display:flex}.route-line input{flex:1}.route-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.route-dot.pickup{background:var(--sky)}.route-dot.via{background:var(--yellow)}.route-dot.dropoff{background:#2ecc71}.route-remove{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-radius:6px;flex-shrink:0;padding:4px;display:flex}.route-remove:hover{color:#e74c3c;background:#fdecea}.toggle-group{border:1.5px solid var(--grey-mid);border-radius:var(--radius-md);gap:0;display:flex;overflow:hidden}.toggle-btn{background:var(--surface);cursor:pointer;font-family:var(--font-body);color:var(--text-muted);border:none;flex:1;padding:9px 12px;font-size:.8rem;font-weight:700;transition:all .15s}.toggle-btn:not(:last-child){border-right:1.5px solid var(--grey-mid)}.toggle-btn.active{background:var(--brand-navy);color:#fff}.chip-select{flex-wrap:wrap;gap:8px;display:flex}.staff-chip{border:1.5px solid var(--grey-mid);background:var(--surface);cursor:pointer;font-family:var(--font-body);color:var(--navy);border-radius:20px;align-items:center;gap:7px;padding:5px 12px 5px 5px;font-size:.78rem;font-weight:700;transition:all .15s;display:inline-flex}.staff-chip:hover{border-color:var(--sky)}.staff-chip.on{border-color:var(--sky);background:#3ebcec1f}.staff-chip-avatar{background:var(--brand-navy);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:.6rem;font-weight:700;display:flex}.staff-chip.on .staff-chip-avatar{background:var(--sky)}@keyframes fade-in{0%{opacity:0}to{opacity:1}}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--grey-mid);border-radius:10px}
