.portal-overview-row.portal-property-overview{align-items:flex-start;gap:16px;display:flex}.portal-property-overview>span:first-child{flex:1 1 0;min-width:0}.portal-property-overview>span.portal-property-open{text-align:right;flex-direction:column;flex:0 0 98px;justify-content:flex-start;align-items:flex-end;gap:5px;min-width:98px;display:flex}.portal-property-overview .portal-property-open>b{font-size:17px;line-height:1.25;display:block}.portal-property-overview .portal-property-open>small{white-space:nowrap;font-size:12px;line-height:1.45;display:block}@media (width<=560px){.portal-overview-row.portal-property-overview{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}.portal-property-overview>span.portal-property-open{text-align:left;border-top:1px solid #e1eaf1;flex-direction:row;justify-content:space-between;align-items:center;gap:12px;width:100%;min-width:0;padding-top:10px;display:flex}.portal-property-overview .portal-property-open>b{font-size:14px}}.field-services{max-width:1500px;color:var(--navy,#183148);margin:auto}.field-heading,.field-toolbar,.field-actions,.field-tabs,.field-summary{flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:20px;display:flex}.field-heading{justify-content:space-between}.field-heading h1{margin:0}.field-heading p{margin:8px 0}.field-services button{cursor:pointer}.field-tabs button[aria-current],.field-job-list .selected{color:#442600;background:#fff1e4;border-color:#de710d}.field-summary>span{background:#fff;border:1px solid #dce3e8;border-radius:10px;flex:1;min-width:180px;padding:18px}.field-summary strong{margin-right:8px;font-size:24px}.field-card{background:#fff;border:1px solid #dce3e8;border-radius:12px;min-width:0;margin-bottom:20px;padding:22px}.field-card h2{margin-top:0}.field-card h3{margin-top:28px}.field-card p{line-height:1.55}.field-services label{flex-direction:column;gap:7px;font-size:13px;font-weight:600;display:flex}.field-services input,.field-services select,.field-services textarea{box-sizing:border-box;color:#183148;background:#fff;border:1px solid #b6c3cd;border-radius:6px;width:100%;min-width:0;padding:10px}.field-services input[type=checkbox]{width:20px;height:20px}.field-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:18px 0;display:grid}.field-job-list{gap:10px;max-height:650px;display:grid;overflow:auto}.field-job-list button,.field-calendar button{text-align:left;color:inherit;background:#fff;border:1px solid #dce3e8;border-radius:8px;flex-direction:column;gap:7px;padding:14px;display:flex}.field-job-list span{font-size:12px}.field-detail header{justify-content:space-between;gap:15px;display:flex}.field-detail li{overflow-wrap:anywhere;margin:10px 0}.field-table-wrap{overflow:auto}.field-services table{border-collapse:collapse;width:100%;font-size:12px}.field-services td,.field-services th{text-align:left;border-bottom:1px solid #e2e8ed;padding:10px}.field-services summary{cursor:pointer;padding:8px 0;font-weight:600}.field-services dl>div{justify-content:space-between;padding:5px 0;display:flex}.field-calendar{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:15px;display:grid}.field-modal{z-index:200;background:#12273db3;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.field-modal>.field-card{width:min(760px,100%);max-height:90vh;margin:0;overflow:auto}.field-services button:disabled{opacity:.5;cursor:wait}@media (width<=850px){.field-layout{grid-template-columns:1fr}.field-job-list{max-height:300px}.field-form-grid{grid-template-columns:1fr}.field-modal{padding:8px}.field-card{padding:16px}}.scheduling-portal{max-width:960px;padding:28px}.scheduling-portal .field-card>label{margin-bottom:16px}.portal-request{border-top:1px solid #dce3e8;padding:16px 0}.scheduling-admin fieldset,.scheduling-portal fieldset{border:1px solid #dce3e8;border-radius:8px;margin:14px 0;padding:16px}.scheduling-admin .field-actions input,.scheduling-admin .field-actions select{width:auto;max-width:100%}.scheduling-portal button,.scheduling-admin button{color:#183148;background:#fff;border:1px solid #b6c3cd;border-radius:7px;margin:4px 6px 4px 0;padding:10px 15px;font-weight:600}.scheduling-portal button[type=submit],.scheduling-admin button[type=submit]{color:#fff;background:#183148}.scheduling-portal button:disabled,.scheduling-admin button:disabled{opacity:.55;cursor:not-allowed}.field-collaboration{background:#f8fbfd;border:1px solid #dce5ec;border-radius:12px;margin-top:18px;padding:16px}.field-collab-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.field-collab-grid>section{min-width:0}.field-material-card{background:#fff;border:1px solid #dce5ec;border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;margin-bottom:8px;padding:10px 12px;display:grid}.field-material-card>div{gap:3px;display:grid}.field-material-card span{color:#657d92;font-size:12px}.field-material-card select{min-width:130px}.field-thread-list{gap:8px;max-height:340px;margin-bottom:12px;display:grid;overflow:auto}.field-thread-message{background:#eef5fa;border:1px solid #dce5ec;border-radius:10px;padding:10px 12px}.field-thread-message.is-internal{background:#fff6e9;border-color:#f3d7ad}.field-thread-message p{margin:4px 0}.field-thread-message time{color:#657d92;font-size:11px}@media (width<=900px){.field-collab-grid{grid-template-columns:1fr}}.field-summary-live{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.field-summary-card{text-align:left;color:#0d2f4f;background:#fff;border:1px solid #d7e1ea;border-radius:12px;grid-template-rows:auto auto;grid-template-columns:auto 1fr;gap:2px 10px;padding:14px 16px;display:grid;box-shadow:0 6px 18px #0d2f4f09}.field-summary-card:hover{background:#f7fafc;border-color:#b9cad8}.field-summary-card strong{grid-row:1/3;align-self:center;font-size:28px;line-height:1}.field-summary-card span{font-weight:700}.field-summary-card small{color:#657d92}.field-summary-card.is-attention{background:#fffaf5;border-left:4px solid #ff7a00}.field-summary-card.is-attention strong{color:#c75f00}@media (width<=1100px){.field-summary-live{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.field-summary-live{grid-template-columns:1fr}}.field-pending-modal{width:min(1180px,94vw);max-height:86vh;overflow:auto}.field-pending-header{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;display:flex}.field-pending-header h2{margin:0 0 4px}.field-pending-header p{color:#657d92;margin:0}.field-pending-layout{grid-template-columns:minmax(360px,.9fr) minmax(0,1.1fr);align-items:start;gap:18px;display:grid}.field-pending-groups{gap:14px;display:grid}.field-request-group{background:#fff;border:1px solid #d7e1ea;border-radius:12px;overflow:hidden}.field-request-group>header{background:#f7fafc;border-bottom:1px solid #d7e1ea;justify-content:space-between;gap:12px;padding:12px 14px;display:flex}.field-request-group>header span{color:#657d92;font-size:12px}.field-request-row{text-align:left;color:#0d2f4f;background:#fff;border:0;border-bottom:1px solid #edf1f4;grid-template-columns:minmax(0,1fr) auto;gap:14px;width:100%;padding:12px 14px;display:grid}.field-request-row:last-child{border-bottom:0}.field-request-row:hover,.field-request-row.selected{background:#fff8f1}.field-request-row span{gap:3px;display:grid}.field-request-row span:last-child{text-align:right}.field-request-row small{color:#657d92}.field-request-detail{background:#fff;border:1px solid #d7e1ea;border-radius:12px;min-height:260px;padding:18px;position:sticky;top:0}.field-request-empty{text-align:center;color:#657d92;place-items:center;min-height:220px;display:grid}.field-request-detail-head{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px;display:flex}.field-request-detail-head h3{margin:0}.field-request-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;margin:0;display:grid}.field-request-facts>div{border-top:1px solid #edf1f4;padding:10px 0}.field-request-facts .span-2{grid-column:1/-1}.field-request-facts dt{text-transform:uppercase;letter-spacing:.05em;color:#657d92;font-size:11px;font-weight:800}.field-request-facts dd{white-space:pre-wrap;margin:4px 0 0}.field-request-photos{flex-wrap:wrap;gap:8px;margin:12px 0;display:flex}@media (width<=900px){.field-pending-layout{grid-template-columns:1fr}.field-request-detail{position:static}}@media (width<=640px){.field-pending-modal{width:94vw}.field-request-row{grid-template-columns:1fr}.field-request-row span:last-child{text-align:left}.field-request-facts{grid-template-columns:1fr}.field-request-facts .span-2{grid-column:1}}.field-services{--fs-navy:#0d2f4f;--fs-muted:#657d92;--fs-border:#d7e1ea;--fs-soft:#f6f9fc;--fs-orange:#ff7a00}.field-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px;display:flex}.field-heading h1{letter-spacing:-.03em;margin:2px 0 4px;font-size:32px}.field-heading>div>p:last-child{color:var(--fs-muted);margin:0;font-size:15px}.field-refresh{border:1px solid var(--fs-border);background:#fff;border-radius:10px;padding:9px 14px;font-weight:750}.field-tabs{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.field-tabs button{border:1px solid var(--fs-border);color:var(--fs-navy);background:#fff;border-radius:999px;padding:9px 14px;font-weight:750}.field-tabs button[aria-current=page]{color:#9a4d00;background:#fff6ed;border-color:#ffb36b;box-shadow:0 0 0 2px #ff7a000d}.field-toolbar-card{border:1px solid var(--fs-border);background:#fff;border-radius:14px;margin:16px 0 18px;padding:14px;box-shadow:0 8px 24px #0d2f4f09}.field-toolbar{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.field-toolbar label{color:#31526d;gap:6px;font-size:12px;font-weight:800;display:grid}.field-toolbar input,.field-toolbar select{height:40px;color:var(--fs-navy);background:#fff;border:1px solid #bfd0de;border-radius:9px;padding:0 12px}.field-search{flex:320px}.field-search input{width:100%}.field-toolbar-actions{flex-wrap:wrap;gap:8px;margin-left:auto;display:flex}.field-toolbar button{height:40px;color:var(--fs-navy);background:#fff;border:1px solid #bfd0de;border-radius:9px;padding:0 13px;font-weight:800}.field-toolbar .field-primary{background:var(--fs-navy);border-color:var(--fs-navy);color:#fff}.field-card{border:1px solid var(--fs-border);background:#fff;border-radius:16px;box-shadow:0 10px 28px #0d2f4f09}.field-card-heading{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.field-card-heading h2{margin:0}.field-count-badge{color:#315f84;background:#edf5fb;border-radius:999px;justify-content:center;align-items:center;min-width:30px;height:30px;padding:0 9px;font-weight:850;display:inline-flex}.field-layout{grid-template-columns:minmax(320px,.75fr) minmax(0,1.45fr);align-items:start;gap:18px;display:grid}.field-job-panel{padding:18px}.field-job-list{gap:10px;display:grid}.field-job-card{text-align:left;width:100%;color:var(--fs-navy);background:#fbfdff;border:1px solid #dce5ec;border-radius:12px;gap:5px;padding:14px 15px;transition:transform .15s,border-color .15s,box-shadow .15s,background .15s;display:grid}.field-job-card:hover{background:#fff;border-color:#b8cbd9;transform:translateY(-1px);box-shadow:0 8px 18px #0d2f4f12}.field-job-card.selected{background:#fff8f1;border-color:#ffb36b;box-shadow:0 0 0 2px #ff7a0014}.field-job-card-top{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.field-job-card-top strong{font-size:15px;line-height:1.3}.field-job-card span{font-size:12px}.field-job-customer{color:#31526d;font-weight:750}.field-job-property,.field-job-time{color:var(--fs-muted)}.field-job-card small{color:#56738c;margin-top:4px;font-weight:700}.field-status-pill{white-space:nowrap;color:#4b6479;background:#edf2f6;border-radius:999px;justify-content:center;align-items:center;padding:5px 9px;font-size:11px;font-weight:850;display:inline-flex}.field-status-pill.status-scheduled{color:#245d88;background:#eaf4ff}.field-status-pill.status-traveling{color:#5d48a0;background:#f3eeff}.field-status-pill.status-on_site{color:#24604f;background:#edf8f3}.field-status-pill.status-paused{color:#8a5c00;background:#fff4df}.field-status-pill.status-completed{color:#21623f;background:#eaf8ee}.field-status-pill.status-cancelled{color:#8e3434;background:#fff0f0}.field-detail{padding:20px}.field-detail-header{border-bottom:1px solid #edf1f4;justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:14px;display:flex}.field-detail-header h2{margin:0 0 4px}.field-detail-meta{color:#4f6b82;margin:0}.field-detail-description{color:#314f68;background:#f7fafc;border-radius:10px;padding:12px 14px;line-height:1.55}.field-detail>h3{border-top:1px solid #edf1f4;margin:24px 0 10px;padding-top:18px;font-size:16px}.field-detail>h3:first-of-type{margin-top:18px}.field-detail-empty{text-align:center;min-height:330px;color:var(--fs-muted);place-items:center;display:grid}.field-detail-empty>div{max-width:440px}.field-empty-icon{color:#315f84;background:#edf5fb;border-radius:14px;place-items:center;width:44px;height:44px;margin-bottom:8px;font-size:22px;display:inline-grid}.field-detail-empty h2{color:var(--fs-navy);margin:4px 0 8px}.field-empty-card{color:var(--fs-muted);background:#fafcfe;border:1px dashed #cbd8e2;border-radius:12px;gap:3px;padding:18px;display:grid}.field-empty-card strong{color:var(--fs-navy)}.field-summary-live{margin-bottom:0}.field-summary-card{transition:transform .15s,box-shadow .15s,border-color .15s}.field-summary-card:hover{transform:translateY(-1px);box-shadow:0 10px 24px #0d2f4f12}.field-modal{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.field-modal>.field-card{box-shadow:0 24px 80px #0d2f4f3d}.field-detail details{background:#fbfdff;border:1px solid #e1e8ee;border-radius:10px;padding:10px 12px}.field-detail details summary{cursor:pointer;color:#264c6b;font-weight:800}.field-table-wrap{border:1px solid #e1e8ee;border-radius:10px;overflow:auto}.field-table-wrap table{margin:0}@media (width<=1050px){.field-layout{grid-template-columns:1fr}.field-toolbar-actions{margin-left:0}.field-job-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.field-heading{align-items:flex-start}.field-heading h1{font-size:28px}.field-job-list{grid-template-columns:1fr}.field-toolbar{align-items:stretch}.field-toolbar-actions{width:100%}.field-toolbar-actions button{flex:auto}.field-detail-header{flex-direction:column}.field-tabs{flex-wrap:nowrap;padding-bottom:4px;overflow-x:auto}}.field-visit-calendar-card{margin-bottom:18px;padding:18px}.field-calendar-head{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:14px;display:flex}.field-calendar-head h2{margin:0 0 4px}.field-calendar-head p{color:#657d92;margin:0}.field-calendar-head label{color:#31526d;gap:6px;font-size:12px;font-weight:800;display:grid}.field-calendar-head input{background:#fff;border:1px solid #bfd0de;border-radius:9px;height:40px;padding:0 10px}.field-calendar-weekdays,.field-month-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.field-calendar-weekdays{gap:8px;margin-bottom:8px}.field-calendar-weekdays span{text-transform:uppercase;letter-spacing:.06em;color:#6b8397;padding:0 8px;font-size:11px;font-weight:850}.field-month-grid{gap:8px}.field-day-cell{color:#0d2f4f;text-align:left;background:#fbfdff;border:1px solid #e0e8ee;border-radius:12px;flex-direction:column;align-items:flex-start;gap:7px;min-height:112px;padding:10px;display:flex}button.field-day-cell:hover{background:#fff;border-color:#b7cad9;box-shadow:0 8px 18px #0d2f4f0f}.field-day-cell.has-visits{background:#fffaf5;border-color:#ffd0a1}.field-day-cell.is-empty{opacity:.55;background:#f5f8fa;border-style:dashed}.field-day-number{font-size:14px;font-weight:850}.field-day-count{color:#fff;background:#0d2f4f;border-radius:999px;padding:4px 7px;font-size:10px;font-weight:850;display:inline-flex}.field-day-preview{color:#557189;gap:3px;max-width:100%;font-size:10px;display:grid}.field-day-preview span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.field-day-cell small{color:#9a4d00;font-weight:800}.field-calendar-note{color:#657d92;margin:12px 0 0;font-size:12px}.field-calendar-modal{width:min(1060px,94vw);max-height:86vh;overflow:auto}.field-calendar-modal-layout{grid-template-columns:minmax(340px,.9fr) minmax(0,1.1fr);gap:18px;display:grid}.field-calendar-visit-list{gap:9px;display:grid}.field-calendar-visit-row{text-align:left;color:#0d2f4f;background:#fff;border:1px solid #dce5ec;border-radius:11px;grid-template-columns:80px minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;padding:12px 14px;display:grid}.field-calendar-visit-row:hover,.field-calendar-visit-row.selected{background:#fff8f1;border-color:#ffc07f}.field-calendar-visit-row time{color:#315f84;font-weight:850}.field-calendar-visit-row>div{gap:3px;display:grid}.field-calendar-visit-row>div span{color:#657d92;font-size:12px}.field-calendar-visit-detail{background:#fbfdff;border:1px solid #dce5ec;border-radius:12px;min-height:260px;padding:16px}@media (width<=900px){.field-calendar-modal-layout{grid-template-columns:1fr}.field-month-grid{gap:5px}.field-day-cell{min-height:92px;padding:8px}.field-day-preview{display:none}}@media (width<=640px){.field-calendar-head{flex-direction:column}.field-calendar-weekdays{display:none}.field-month-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.field-day-cell.is-empty{display:none}.field-day-cell{min-height:86px}.field-calendar-visit-row{grid-template-columns:70px 1fr}.field-calendar-visit-row>.field-status-pill{grid-column:2}}.field-site-planning-layout{grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);align-items:stretch;gap:18px;margin-bottom:18px;display:grid}.field-site-planning-layout .field-visit-calendar-card{margin-bottom:0}.field-map-panel{background:#fff;border:1px solid #d7e1ea;border-radius:16px;min-height:100%;padding:16px;position:sticky;top:18px;box-shadow:0 10px 28px #0d2f4f09}.field-map-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.field-map-head h3{margin:0 0 3px;font-size:18px}.field-map-head p{color:#657d92;margin:0;font-size:12px}.field-map-head>span{color:#657d92;font-size:11px}.field-map-canvas{background:#eef4f7;border:1px solid #dce5ec;border-radius:12px;height:360px;overflow:hidden}.field-map-warning{color:#8a5c00;background:#fff6e9;border-radius:9px;margin:10px 0 0;padding:9px 10px;font-size:12px}.field-map-legend{color:#657d92;flex-wrap:wrap;gap:14px;margin:10px 0 12px;font-size:11px;display:flex}.field-map-legend span{align-items:center;gap:6px;display:inline-flex}.field-map-legend i{background:#245d88;border-radius:999px;width:10px;height:10px;display:inline-block}.field-map-legend i.is-opportunity{background:#ff7a00;border:2px dashed #9a4d00}.field-route-opportunities{border-top:1px solid #edf1f4;padding-top:12px}.field-route-opportunities h4{margin:0 0 8px}.field-route-opportunities>p{color:#657d92;margin:0;font-size:12px;line-height:1.5}.field-route-opportunities button{text-align:left;color:#0d2f4f;background:0 0;border:0;border-bottom:1px solid #edf1f4;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:10px 0;display:flex}.field-route-opportunities button:last-child{border-bottom:0}.field-route-opportunities button:hover strong{text-decoration:underline}.field-route-opportunities button>span{gap:2px;min-width:0;display:grid}.field-route-opportunities small{color:#657d92;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.field-route-opportunities b{white-space:nowrap;color:#9a4d00}@media (width<=1180px){.field-site-planning-layout{grid-template-columns:1fr}.field-map-panel{position:static}.field-map-canvas{height:300px}}.field-rates-modal{width:min(920px,94vw);max-height:86vh;overflow:auto}.field-rate-customer{color:#31526d;gap:6px;margin-bottom:14px;font-size:12px;font-weight:800;display:grid}.field-rate-customer select{color:#0d2f4f;background:#fff;border:1px solid #bfd0de;border-radius:9px;height:42px;padding:0 12px}.field-job-card-badges{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.field-unread-badge{color:#fff;white-space:nowrap;background:#ff7a00;border-radius:999px;justify-content:center;align-items:center;padding:5px 8px;font-size:10px;font-weight:900;display:inline-flex;box-shadow:0 3px 8px #ff7a0033}.field-client-communication{background:linear-gradient(#f8fbfe 0%,#fff 100%);border:1px solid #cddde9;border-radius:14px;margin:18px 0 6px;padding:16px}.field-client-communication>header{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:12px;display:flex}.field-client-communication h3{color:#0d2f4f;margin:1px 0 3px;font-size:17px}.field-client-communication>header p:last-child{color:#657d92;margin:0;font-size:12px}.field-client-communication .field-thread-list{max-height:280px;padding:2px 2px 4px}.field-empty-thread{color:#657d92;background:#fff;border:1px dashed #cad8e2;border-radius:10px;gap:3px;padding:14px;display:grid}.field-empty-thread strong{color:#0d2f4f}.field-thread-compose{grid-template-columns:minmax(0,1fr) 230px;align-items:end;gap:10px 12px;margin-top:12px;display:grid}.field-thread-compose label{color:#31526d;gap:6px;font-size:12px;font-weight:800;display:grid}.field-thread-compose textarea,.field-thread-compose select{color:#0d2f4f;background:#fff;border:1px solid #bfd0de;border-radius:9px;width:100%}.field-thread-compose textarea{resize:vertical;min-height:82px;padding:10px}.field-thread-compose select{height:42px;padding:0 10px}.field-thread-compose .field-actions{grid-column:1/-1;margin:0}.field-collaboration .field-collab-grid{grid-template-columns:1fr}@media (width<=760px){.field-thread-compose{grid-template-columns:1fr}.field-client-communication>header{flex-direction:column}}.field-task-workspace{margin-top:2px}.field-task-summary{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:16px}.field-task-layout{grid-template-columns:minmax(300px,.72fr) minmax(0,1.45fr);align-items:start;gap:18px;display:grid}.field-task-properties,.field-task-detail{padding:18px}.field-property-task-list{gap:9px;max-height:680px;display:grid;overflow:auto}.field-property-task-card{text-align:left;color:#0d2f4f;background:#fbfdff;border:1px solid #dce5ec;border-radius:11px;justify-content:space-between;align-items:center;gap:14px;width:100%;padding:13px 14px;display:flex}.field-property-task-card:hover,.field-property-task-card.selected{background:#fff8f1;border-color:#ffc07f}.field-property-task-card>span{gap:3px;min-width:0;display:grid}.field-property-task-card small{color:#657d92;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.field-property-task-card b{white-space:nowrap;color:#5d7385;background:#edf2f6;border-radius:999px;padding:5px 8px;font-size:11px}.field-property-task-card b.has-open{color:#9a4d00;background:#fff0e1}.field-task-checklist{gap:9px;margin:16px 0;display:grid}.field-task-row{background:#fff;border:1px solid #dce5ec;border-radius:11px;justify-content:space-between;align-items:center;gap:14px;padding:12px 13px;display:flex}.field-task-row.is-complete{opacity:.78;background:#f7faf8}.field-task-check{cursor:pointer;flex:1;flex-direction:row!important;align-items:flex-start!important;gap:11px!important;display:flex!important}.field-task-check input{accent-color:#0d2f4f;flex:none;margin-top:1px;width:20px!important;height:20px!important}.field-task-check>span{gap:3px;font-size:13px;display:grid}.field-task-check small{color:#657d92;font-weight:500;line-height:1.4}.field-task-row.is-complete strong{color:#607484;text-decoration:line-through}.field-task-add{border-top:1px solid #edf1f4;margin-top:18px;padding-top:18px}.field-task-add h3{margin:0 0 8px}.field-task-billing-note{color:#657d92;margin:10px 0 0;font-size:12px}.field-job-property-tasks{background:#fafcfe;border:1px solid #d9e4ec;border-radius:13px;margin:16px 0;padding:14px}.field-job-property-tasks>header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.field-job-property-tasks h3{margin:1px 0 0;font-size:16px}.field-job-property-tasks>header>span{color:#9a4d00;background:#fff0e1;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:850}.field-task-checklist.compact{margin:10px 0}.field-task-checklist.compact .field-task-row{padding:9px 10px}.field-task-inline-add{grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:10px;display:grid}.field-task-inline-add input{height:40px}.field-task-inline-add button{margin:0}@media (width<=900px){.field-task-layout,.field-task-summary{grid-template-columns:1fr}.field-property-task-list{max-height:340px}}@media (width<=560px){.field-task-row{flex-direction:column;align-items:flex-start}.field-task-inline-add{grid-template-columns:1fr}}.scheduling-week-card{border-left:4px solid #ff7900}.scheduling-week-card .field-card-heading{align-items:flex-start}.scheduling-week-card .field-card-heading h3{margin:2px 0 5px}.scheduling-week-nav{align-items:flex-end}.scheduling-week-nav label{min-width:190px}.scheduling-week-closed{color:#825018;background:#fff4e8;border:1px solid #f3d3ae;border-radius:10px;padding:12px 14px;font-weight:650}@media (width<=700px){.scheduling-week-nav label{width:100%;min-width:100%}.scheduling-week-card .field-actions>select,.scheduling-week-card .field-actions>input{width:100%}}.team-wrap{color:#0d2f4f;max-width:1180px;margin:18px auto 0;padding:0 28px}.team-wrap button{cursor:pointer;color:#0d2f4f;background:#fff;border:1px solid #abc;border-radius:9px;padding:10px 14px;font-weight:600}.team-wrap .team-launch,.team-wrap .team-primary{color:#fff;background:#0d2f4f;border-color:#0d2f4f}.team-panel{background:#fff;border:1px solid #d7e1ea;border-radius:14px;margin-top:12px;padding:22px;box-shadow:0 5px 20px #0d2f4f0c}.team-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.team-head h2{margin:0}.team-help{color:#536a80;line-height:1.6}.team-form{flex-wrap:wrap;align-items:end;gap:12px;padding:12px 0;display:flex}.team-form label{flex:1;gap:6px;min-width:190px;font-size:14px;font-weight:700;display:grid}.team-form input{color:#0d2f4f;background:#fff;border:1px solid #b5c6d8;border-radius:8px;width:100%;padding:11px}.team-list{gap:10px;display:grid}.team-person{border:1px solid #d7e1ea;border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:12px;display:flex}.team-person p{color:#536a80;margin:4px 0}.team-person small{color:#536a80}.team-actions{flex-wrap:wrap;gap:8px;display:flex}.team-error,.team-message{border-radius:9px;padding:10px}.team-error{color:#783d06;background:#fff2e4}.team-message{color:#155c37;background:#e8f5ee}@media (width<=600px){.team-wrap{padding:0 15px}.team-panel{padding:16px}.team-form{display:grid}.team-form label{min-width:0}}.account-wrap{color:#0d2f4f;max-width:1180px;margin:16px auto 0;padding:0 28px;font-family:Inter,ui-sans-serif,system-ui,sans-serif}.account-wrap button{font:inherit;cursor:pointer;color:#0d2f4f;background:#fff;border:1px solid #aabecf;border-radius:9px;padding:10px 13px}.account-wrap button:disabled{opacity:.65;cursor:wait}.account-wrap .account-launch,.account-wrap .account-form button[type=submit]{color:#fff;background:#0d2f4f;border-color:#0d2f4f;font-weight:700}.account-panel{background:#fff;border:1px solid #d7e1ea;border-radius:14px;margin-top:12px;padding:22px;box-shadow:0 5px 20px #0d2f4f0b}.account-heading{justify-content:space-between;align-items:start;gap:12px;display:flex}.account-heading h2{margin:0 0 5px;font-size:21px}.account-heading p{color:#52677d;margin:0}.account-tabs{flex-wrap:wrap;gap:8px;margin:17px 0;display:flex}.account-tabs button[aria-pressed=true]{background:#e6eff6;border-color:#0d2f4f;font-weight:700}.account-form{gap:14px;max-width:450px;display:grid}.account-form label{gap:6px;font-size:14px;font-weight:700;display:grid}.account-form input{color:#0d2f4f;width:100%;font:inherit;background:#fff;border:1px solid #b8cad9;border-radius:8px;padding:11px}.account-form input[readonly]{color:#567087;background:#f6f9fb}.account-form button[type=submit]{justify-self:start}.account-hint{color:#52677d;margin:-4px 0 3px;font-size:13px;line-height:1.5}.account-error,.account-notice{border-radius:8px;padding:11px 13px}.account-error{color:#853814;background:#fff1e8}.account-notice{color:#185936;background:#e8f6ef}@media (width<=650px){.account-wrap{padding:0 14px}.account-panel{padding:15px}.account-heading{align-items:start}.account-form{max-width:100%}}.portal-client-identity>span:not(.portal-greeting-clock){display:none!important}.portal-personal-greeting{color:#173c60;flex-wrap:wrap;align-items:baseline;gap:6px 12px;margin-top:3px;line-height:1.5;display:flex}.portal-personal-greeting>strong{font-size:15px;font-weight:700}.portal-greeting-clock{color:#5b7690;white-space:nowrap;font-size:13px;font-weight:500}@media (width<=640px){.portal-personal-greeting{gap:2px 9px}.portal-personal-greeting>strong{font-size:14px}.portal-greeting-clock{font-size:12px}}:root{color:#0d2f4f;font-synthesis:none;--navy:#0d2f4f;--navy-2:#143f66;--orange:#ff7a00;--orange-soft:#fff2e6;--blue-soft:#edf5fb;--border:#d7e1ea;--muted:#657d92;--surface:#fff;--success:#19715b;--warning:#9a6700;--danger:#a33a3a;background:#f4f7fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;color:var(--navy);background:linear-gradient(#f7f9fc 0,#eef3f8 100%);margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.7}input,select,textarea{max-width:100%}.dev-banner{text-align:center;color:#614600;letter-spacing:.03em;background:#fff0c2;border-bottom:1px solid #edd99a;padding:10px 20px;font-size:12px;font-weight:800}.scheduling-portal{max-width:1180px;margin:auto;padding:32px 28px 54px}.portal-shell{min-height:calc(100vh - 38px)}.eyebrow,.portal-card-kicker{letter-spacing:.16em;color:#5b7892;margin:0 0 7px;font-size:11px;font-weight:800}.portal-fob-logo{width:120px;color:var(--navy);justify-items:start;line-height:1;display:grid}.portal-fob-logo svg{width:120px;height:40px;display:block}.portal-fob-logo span{letter-spacing:.34em;color:#5b7892;margin-top:3px;font-size:8px;font-weight:800}.portal-fob-logo.is-compact{width:82px}.portal-fob-logo.is-compact svg{width:82px;height:auto}.portal-fob-logo.is-compact span{letter-spacing:.28em;margin-top:1px;font-size:6px}.portal-auth-layout{grid-template-columns:minmax(0,1.05fr) minmax(360px,.75fr);align-items:center;gap:56px;min-height:620px;display:grid}.portal-brand-panel{padding:30px 0}.portal-brand-panel h1,.portal-topbar h1{letter-spacing:-.03em;color:var(--navy)}.portal-brand-panel h1{max-width:700px;margin:0;font-size:clamp(38px,5vw,64px);line-height:1.02}.portal-lead{color:#4d6982;max-width:650px;font-size:20px;line-height:1.55}.portal-feature-list{gap:16px;max-width:680px;margin-top:34px;display:grid}.portal-feature-list div{border-top:1px solid var(--border);gap:3px;padding:14px 0 14px 48px;display:grid;position:relative}.portal-feature-list div:before{content:"";background:var(--orange-soft);border-radius:10px;width:30px;height:30px;position:absolute;top:16px;left:0;box-shadow:inset 0 0 0 1px #ffd8b0}.portal-feature-list strong{font-size:15px}.portal-feature-list span{color:var(--muted);font-size:14px}.field-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:24px;box-shadow:0 10px 30px #0d2f4f0b}.portal-auth-card{padding:30px}.portal-auth-card h2,.portal-side-card h2,.field-card h2{letter-spacing:-.02em;margin:0 0 9px;font-size:22px}.portal-muted{color:var(--muted);line-height:1.55}.scheduling-portal label{color:#31526d;gap:7px;margin:14px 0;font-size:13px;font-weight:700;display:grid}.scheduling-portal input,.scheduling-portal select,.scheduling-portal textarea{width:100%;color:var(--navy);background:#fff;border:1px solid #bfd0de;border-radius:9px;outline:none;padding:12px 13px;transition:border-color .15s,box-shadow .15s,background .15s}.scheduling-portal input:focus,.scheduling-portal select:focus,.scheduling-portal textarea:focus{border-color:#4d7fa7;box-shadow:0 0 0 3px #4d7fa71f}.scheduling-portal textarea{resize:vertical;min-height:110px}.scheduling-portal fieldset{border:0;min-width:0;padding:0}.portal-auth-actions,.portal-topbar-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.scheduling-portal button{color:var(--navy);background:#fff;border:1px solid #b8c9d8;border-radius:9px;padding:10px 14px;font-weight:800}.scheduling-portal button:hover{background:#f3f7fa}.scheduling-portal .portal-primary{background:var(--navy);color:#fff;border-color:var(--navy)}.scheduling-portal .portal-primary:hover{background:var(--navy-2)}.scheduling-portal .portal-secondary{background:#fff}.portal-auth-actions .portal-primary{flex:1;min-width:150px}.portal-footnote{color:#7a8fa1;margin:20px 0 0;font-size:12px;line-height:1.5}.error-banner,.portal-success{border-radius:10px;margin:14px 0;padding:12px 14px;font-size:14px}.error-banner{color:#7e2727;background:#fff0f0;border:1px solid #efc4c4}.portal-success{color:#245d4e;background:#edf8f3;border:1px solid #bfdfd1}.portal-topbar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:20px;padding-bottom:24px;display:flex}.portal-brand-inline{align-items:center;gap:14px;display:flex}.portal-topbar h1{margin:0;font-size:28px;line-height:1.1}.portal-dashboard-head{justify-content:space-between;align-items:end;gap:28px;padding:28px 0 18px;display:flex}.portal-dashboard-head>div{min-width:280px}.portal-dashboard-head>p{color:var(--muted);text-align:right;max-width:520px;margin:0;line-height:1.5}.portal-client-select{margin:0!important}.portal-client-select select{box-shadow:none;appearance:auto;background-color:#0000;border:0;padding:0 34px 0 0;font-size:24px;font-weight:850}.portal-quick-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px;display:grid}.portal-stat{border:1px solid var(--border);background:#fff;border-radius:14px;justify-content:space-between;align-items:end;gap:10px;padding:17px 18px;display:flex}.portal-stat span{color:var(--muted);font-size:13px;font-weight:700}.portal-stat strong{color:var(--navy);font-size:28px;line-height:1}.portal-content-grid{grid-template-columns:minmax(0,1.65fr) minmax(300px,.7fr);align-items:start;gap:18px;display:grid}.portal-main-column,.portal-side-column{gap:18px;display:grid}.portal-section-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.portal-section-heading h2{margin-bottom:0}.portal-pill,.portal-count{white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;font-size:11px;font-weight:850;display:inline-flex}.portal-pill{background:var(--orange-soft);color:#9a4a00;border:1px solid #ffd6ad;padding:7px 10px}.portal-count{background:var(--blue-soft);color:#315f84;min-width:30px;height:30px;padding:0 10px}.portal-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;display:grid}.portal-form-grid label{min-width:0}.portal-span-2{grid-column:1/-1}.portal-new-property{background:#f7fafc;border:1px solid #dce6ee;border-radius:12px;grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;margin:2px 0 8px;padding:15px 16px 2px;display:grid}.portal-new-property>p,.portal-new-property>span{grid-column:1/-1}.portal-new-property>p{margin:0 0 3px;font-weight:850}.portal-new-property>span{color:var(--muted);margin-bottom:3px;font-size:12px}.portal-input-help{color:var(--muted);font-size:12px;font-weight:500}.portal-submit{min-width:180px;margin-top:8px}.portal-request-list{gap:12px;display:grid}.portal-request{background:#fbfdff;border:1px solid #dce5ec;border-radius:12px;padding:17px}.portal-request h3{margin:7px 0 6px;font-size:18px}.portal-request p{margin:7px 0;line-height:1.45}.portal-request-address{color:#355b79;font-weight:700}.portal-request-time{color:var(--muted);font-size:13px}.portal-status{color:#4b6479;background:#edf2f6;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:850;display:inline-flex}.status-approved{color:#24604f;background:#edf8f3}.status-completed{color:#225d88;background:#e9f4ff}.status-pending_approval{color:#8a5c00;background:#fff4df}.status-rejected,.status-cancelled{color:#8e3434;background:#fff0f0}.portal-decision-note{background:#f1f5f8;border-radius:9px;padding:10px 12px}.portal-photo-button{font-size:12px;padding:7px 10px!important}.portal-side-card{padding:20px}.portal-side-card p{line-height:1.5}.portal-hours{gap:8px;margin:14px 0;padding:0;list-style:none;display:grid}.portal-hours li{border-bottom:1px dashed #d7e1ea;justify-content:space-between;gap:12px;padding-bottom:8px;font-size:13px;display:flex}.portal-hours span{color:var(--muted)}.portal-upcoming{border-top:1px solid var(--border);gap:4px;padding:12px 0;display:grid}.portal-upcoming:first-of-type{border-top:0}.portal-upcoming span{color:#9a6700;font-size:12px;font-weight:750}.portal-upcoming small{color:var(--muted)}.portal-help{border-left:4px solid var(--orange)}.portal-empty{text-align:center;max-width:620px;margin:80px auto}.portal-state{color:#28547b;font-size:.9em}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}@media (width<=900px){.scheduling-portal{padding:24px 18px 40px}.portal-auth-layout{grid-template-columns:1fr;gap:8px;min-height:auto}.portal-brand-panel{padding:10px 0}.portal-brand-panel h1{font-size:44px}.portal-feature-list{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px}.portal-feature-list div{border:1px solid var(--border);border-radius:12px;padding:12px}.portal-feature-list div:before{display:none}.portal-content-grid{grid-template-columns:1fr}.portal-side-column{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-help{grid-column:1/-1}}@media (width<=640px){.dev-banner{padding:8px 12px;font-size:10px}.scheduling-portal{padding:18px 14px 32px}.portal-wordmark{font-size:40px}.portal-brand-panel h1{font-size:36px}.portal-lead{font-size:17px}.portal-feature-list{grid-template-columns:1fr}.portal-auth-card,.field-card{padding:18px}.portal-topbar{align-items:flex-start}.portal-brand-inline{align-items:center}.portal-fob-logo.is-compact{width:64px;display:block}.portal-fob-logo.is-compact svg{width:64px}.portal-topbar h1{font-size:22px}.portal-topbar-actions{justify-content:flex-end}.portal-dashboard-head{display:block}.portal-dashboard-head>p{text-align:left;margin-top:10px}.portal-client-select select{font-size:21px}.portal-quick-grid{grid-template-columns:1fr}.portal-stat{padding:14px 16px}.portal-form-grid,.portal-new-property{grid-template-columns:1fr}.portal-span-2,.portal-new-property>p,.portal-new-property>span{grid-column:1}.portal-side-column{grid-template-columns:1fr}.portal-help{grid-column:auto}.portal-auth-actions{grid-template-columns:1fr;display:grid}.portal-auth-actions .portal-primary{width:100%}}.portal-window-note{color:#526d82;background:#f7fafc;border:1px solid #dce6ee;border-radius:9px;grid-column:1/-1;margin:4px 0 0;padding:11px 12px;font-size:12px;line-height:1.5}.portal-auth-brand{align-items:center;gap:18px;margin-bottom:14px;display:flex}.portal-auth-brand h1,.portal-brand-inline h1{margin:0}.portal-job-collab{border-top:1px solid var(--border);margin-top:14px;padding-top:12px}.portal-thread-toggle{text-align:left;width:100%;background:#f7fafc!important}.portal-thread-panel{gap:14px;margin-top:12px;display:grid}.portal-job-status{background:#edf5fb;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.portal-job-status span{text-transform:capitalize;font-weight:800}.portal-materials,.portal-thread{gap:10px;display:grid}.portal-materials h4,.portal-thread h4{margin:0;font-size:15px}.portal-material-row{border:1px solid var(--border);background:#fff;border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 12px;padding:11px 12px;display:grid}.portal-material-row>div:first-child{gap:3px;display:grid}.portal-material-row>div:first-child span{color:var(--muted);font-size:12px}.portal-material-status{text-transform:capitalize;background:var(--blue-soft);border-radius:999px;padding:5px 8px;font-size:11px;font-weight:850}.portal-material-actions{flex-wrap:wrap;grid-column:1/-1;gap:7px;display:flex}.portal-material-actions button{font-size:11px;padding:7px 9px!important}.portal-thread-list{gap:9px;max-height:320px;padding-right:4px;display:grid;overflow:auto}.portal-message{background:#eef4f8;border-radius:12px;max-width:82%;padding:10px 12px}.portal-message.from-client{background:#fff2e6;justify-self:end}.portal-message strong{font-size:12px}.portal-message p{white-space:pre-wrap;margin:4px 0 5px}.portal-message time{color:var(--muted);font-size:10px}.portal-message-form{gap:9px;display:grid}.portal-message-form textarea{min-height:76px}.portal-history-card{overflow:hidden}.portal-request-card{transition:border-color .15s,box-shadow .15s,transform .15s;overflow:hidden;padding:0!important}.portal-request-card:hover{border-color:#b8cad8;box-shadow:0 8px 18px #0d2f4f0f}.portal-request-card.has-unread{background:#fffaf5;border-left:4px solid #ff7a00}.portal-request-card.is-open{border-color:#9fb9cd;box-shadow:0 8px 22px #0d2f4f12}.portal-request-summary{width:100%;color:var(--navy);text-align:left;border:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px 15px;display:grid;background:0 0!important}.portal-request-summary:hover{background:#f8fbfd!important}.portal-request-summary-main{min-width:0}.portal-request-title-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px;display:flex}.portal-request-summary h3{margin:0 0 5px;font-size:16px}.portal-request-summary p{margin:2px 0}.portal-request-chevron{color:#315f84;background:#edf5fb;border-radius:999px;place-items:center;width:28px;height:28px;font-size:18px;font-weight:900;display:grid}.portal-message-alert{color:#fff;background:#ff7a00;border-radius:999px;align-items:center;gap:4px;padding:4px 7px;font-size:10px;font-weight:900;display:inline-flex;box-shadow:0 3px 8px #ff7a002e}.portal-message-alert b{font-size:10px}.portal-mail-icon{width:14px;height:14px;display:block}.portal-request-expanded{border-top:1px solid var(--border);padding:0 15px 15px}.portal-request-expanded>p:first-child{margin-top:14px}.portal-request-photos{flex-wrap:wrap;gap:8px;margin:10px 0;display:flex}.portal-thread-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.portal-thread-heading h4{margin:0}.portal-stat-live{text-align:left;cursor:pointer;border:1px solid var(--border);width:100%;color:var(--navy);background:#fff;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;transition:transform .16s,box-shadow .16s,border-color .16s,background .16s;display:grid;position:relative}.portal-stat-live:hover{background:#fbfdff;border-color:#a9c2d5;transform:translateY(-2px);box-shadow:0 10px 24px #0d2f4f14}.portal-stat-live:active{transform:translateY(0)}.portal-stat-live span{gap:2px;display:grid}.portal-stat-live span b{font-size:13px}.portal-stat-live span small{color:var(--muted);font-size:11px;font-weight:600}.portal-stat-live>strong{font-size:24px}.portal-stat-live>i{color:#6e8ba3;font-size:18px;font-style:normal;transition:transform .16s}.portal-stat-live:hover>i{transform:translate(3px)}.portal-overview-modal{z-index:80}.portal-overview-modal-card{width:min(720px,94vw);max-height:82vh;padding:18px;overflow:auto}.portal-overview-modal-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;display:flex}.portal-overview-modal-head h2{margin:0}.portal-overview-list{gap:9px;display:grid}.portal-overview-row{text-align:left;border:1px solid var(--border);width:100%;color:var(--navy);background:#fff;border-radius:11px;justify-content:space-between;align-items:center;gap:14px;padding:13px 14px;transition:border-color .15s,background .15s,transform .15s;display:flex}button.portal-overview-row{cursor:pointer}button.portal-overview-row:hover{background:#f9fcfe;border-color:#b1c7d7;transform:translateY(-1px)}.portal-overview-row>span:first-child{gap:3px;display:grid}.portal-overview-row small{color:var(--muted)}.portal-overview-row.is-static{cursor:default}.portal-location-dot{color:#ff7a00;font-size:18px}.portal-client-heading-row{align-items:center;gap:10px;display:flex}.portal-client-heading-row .portal-client-select{flex:auto}.portal-client-mail-button{place-items:center;width:42px;height:42px;transition:transform .15s,border-color .15s,box-shadow .15s;position:relative;box-shadow:0 4px 12px #0d2f4f0d;border:1px solid var(--border)!important;color:var(--navy)!important;background:#fff!important;border-radius:12px!important;padding:0!important;display:grid!important}.portal-client-mail-button:hover{transform:translateY(-1px);box-shadow:0 8px 18px #0d2f4f17;border-color:#9fb9cd!important}.portal-client-mail-button .portal-mail-icon{width:19px;height:19px}.portal-client-mail-button>b{color:#fff;background:#ff7a00;border-radius:999px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;line-height:1;display:grid;position:absolute;top:-5px;right:-5px;box-shadow:0 2px 6px #ff7a003d}.portal-comm-drawer-backdrop{z-index:95;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0d2f4f47;justify-content:flex-end;display:flex;position:fixed;inset:0}.portal-comm-drawer{background:#f7fafc;border-left:1px solid #cbd9e4;width:min(880px,94vw);height:100%;padding:20px;overflow:auto;box-shadow:-18px 0 46px #0d2f4f2e}.portal-comm-drawer-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;padding-bottom:14px;display:flex}.portal-comm-drawer-head h2{margin:0 0 3px}.portal-comm-drawer-head p:last-child{color:var(--muted);margin:0;font-size:12px}.portal-comm-layout{grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr);align-items:start;gap:14px;display:grid}.portal-comm-jobs{gap:8px;display:grid}.portal-comm-jobs button{border:1px solid var(--border);width:100%;color:var(--navy);text-align:left;background:#fff;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:11px 12px;display:flex}.portal-comm-jobs button:hover,.portal-comm-jobs button.selected{background:#fff8f1;border-color:#ffb36b}.portal-comm-jobs button>span:first-child{gap:3px;min-width:0;display:grid}.portal-comm-jobs small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.portal-comm-thread{border:1px solid var(--border);background:#fff;border-radius:12px;min-height:360px;padding:14px}.portal-comm-thread .portal-thread-list{max-height:55vh}@media (width<=760px){.portal-comm-layout{grid-template-columns:1fr}.portal-comm-drawer{width:100vw}.portal-client-heading-row{align-items:stretch}.portal-client-mail-button{flex:0 0 42px}}.portal-client-identity{gap:3px;display:grid}.portal-client-identity h2{color:#0b2c4b;margin:0;font-size:clamp(1.45rem,2vw,2rem)}.portal-client-identity span{color:#62798d;font-size:.82rem}.portal-client-identity strong{color:#233f59}.portal-payment-notice{color:#6e470d;background:#fff9ef;border:1px solid #f0c684;border-radius:12px;gap:4px;margin:12px 0 16px;padding:13px 15px;display:grid}.portal-payment-notice strong{font-size:.88rem}.portal-payment-notice span{font-size:.9rem}.portal-payment-notice small{color:#876b3c;font-size:.74rem}@media (width<=640px){.scheduling-portal{padding:14px 12px 28px}.portal-topbar{gap:10px;padding-bottom:16px}.portal-brand-inline{gap:9px;min-width:0}.portal-brand-inline h1{font-size:18px;line-height:1.15}.portal-topbar-actions{gap:6px}.portal-topbar-actions button{padding:8px 10px;font-size:11px}.portal-dashboard-head{padding:20px 0 14px}.portal-dashboard-head>div{min-width:0}.portal-client-heading-row{align-items:center}.portal-client-identity{flex:1;min-width:0}.portal-client-identity h2{overflow-wrap:anywhere;font-size:22px;line-height:1.15}.portal-client-identity span{overflow-wrap:anywhere;font-size:11px;line-height:1.35}.portal-dashboard-head>p{font-size:13px;line-height:1.45}.portal-client-mail-button{flex:0 0 40px;width:40px;height:40px}.portal-payment-notice{margin:8px 0 14px;padding:11px 12px}.portal-payment-notice span{font-size:13px;line-height:1.4}.portal-payment-notice small{font-size:11px;line-height:1.35}.portal-quick-grid{gap:9px}.portal-stat-live{grid-template-columns:minmax(0,1fr) auto auto;min-height:72px;padding:13px 14px}.portal-stat-live span b{font-size:13px}.portal-stat-live span small{font-size:10px}.portal-stat-live>strong{font-size:24px}.portal-content-grid{gap:12px}.field-card{border-radius:13px}.portal-section-heading{gap:10px}.portal-section-heading h2{font-size:19px}.portal-form-grid{display:block}.scheduling-portal label{margin:11px 0}.scheduling-portal input,.scheduling-portal select,.scheduling-portal textarea{padding:12px;font-size:16px}.portal-submit,.portal-primary{width:100%}.portal-request-summary{grid-template-columns:minmax(0,1fr) auto;padding:12px}.portal-request-summary h3{font-size:15px}.portal-request-summary p,.portal-request-time{font-size:12px}.portal-request-expanded{padding:0 12px 12px}.portal-message{max-width:92%}.portal-side-card{padding:16px}.portal-hours li{font-size:12px}.portal-overview-modal{padding:8px}.portal-overview-modal-card{border-radius:14px;width:100%;max-height:88vh;padding:14px}.portal-overview-row{align-items:flex-start;padding:11px 12px}.portal-overview-row>span:first-child{min-width:0}.portal-overview-row small{overflow-wrap:anywhere;font-size:11px}.portal-comm-drawer{padding:12px}.portal-comm-drawer-head{z-index:2;background:#f7fafc;gap:10px;padding-top:2px;position:sticky;top:0}.portal-comm-drawer-head h2{font-size:20px}.portal-comm-thread{min-height:0;padding:11px}.portal-comm-thread .portal-thread-list{max-height:42vh}.portal-comm-jobs button{padding:10px}.portal-material-row{grid-template-columns:1fr}.portal-material-status{justify-self:start}.portal-material-actions{grid-column:1}.portal-material-actions button{flex:30%}}@media (width<=380px){.portal-fob-logo.is-compact{display:none}.portal-brand-inline h1{font-size:17px}.portal-topbar-actions button{padding:7px 8px}.portal-stat-live{padding:11px 12px}}.portal-service-week{letter-spacing:.01em;font-size:13px;font-weight:850;color:#315f84!important;margin:-2px 0 10px!important}@media (width<=640px){.portal-service-week{font-size:12px;margin-bottom:8px!important}}.portal-property-overview{align-items:flex-start}.portal-property-pending{color:#7b4a10;background:#fff7ed;border-radius:9px;gap:3px;margin-top:8px;padding:8px 10px;display:grid}.portal-property-pending b{font-size:12px}.portal-property-pending span{font-size:12px;line-height:1.35}.portal-property-clear{color:#4f7a62;margin-top:7px;font-size:12px;display:inline-block}.portal-property-count{color:#60788c;background:#edf3f7;border-radius:999px;place-items:center;min-width:34px;height:34px;font-size:12px;font-weight:800;display:grid}.portal-property-count.has-pending{color:#a65300;background:#fff0df}.portal-properties-card{gap:8px;display:grid}.portal-properties-card h2{margin-bottom:5px}.portal-property-card{text-align:left;color:#123654;background:#fbfdff;border:1px solid #dce6ee;border-radius:11px;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:11px 12px;display:flex}.portal-property-card>span{gap:2px;min-width:0;display:grid}.portal-property-card strong{font-size:13px}.portal-property-card small{color:#70869a;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.portal-property-card>b{white-space:nowrap;color:#61798c;background:#eef3f6;border-radius:999px;padding:5px 7px;font-size:10px}.portal-property-card>b.has-pending{color:#9f5100;background:#fff0df}@media (width<=640px){.portal-property-card{padding:10px}.portal-property-pending span{font-size:11px}}.portal-fob-logo{justify-items:center}.portal-fob-logo span{text-align:center;width:100%;margin-left:.17em}.portal-fob-logo.is-compact span{margin-left:.14em}.portal-payment-notice{gap:2px}.portal-payment-notice span{font-weight:650}.portal-payment-notice small{display:none}.portal-property-overview{cursor:pointer;text-align:left;width:100%}.portal-property-overview:hover{background:#f8fbfd}.portal-property-detail-card{width:min(820px,94vw)!important;max-height:88vh!important}.portal-property-detail-card .portal-overview-modal-head p{color:#657d92;margin:4px 0 0}.portal-property-next-steps{margin-top:14px}.portal-property-next-steps h3,.portal-property-chat h3{margin:0}.portal-property-task-detail{border-top:1px solid #e7edf2;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.portal-property-task-detail>div{gap:4px;min-width:0;display:grid}.portal-property-task-detail small{color:#657d92}.portal-property-task-detail button{white-space:nowrap}.portal-property-chat{border-top:1px solid #e7edf2;margin-top:18px;padding-top:16px}.portal-property-chat .portal-thread-heading{justify-content:space-between;align-items:end;gap:10px;margin-bottom:10px;display:flex}.portal-property-chat .portal-thread-heading span{color:#657d92;font-size:11px}.portal-property-chat .portal-thread-list{max-height:260px}@media (width<=640px){.portal-property-detail-card{width:100%!important}.portal-property-task-detail{flex-direction:column;align-items:flex-start}.portal-property-task-detail button{width:100%}}.scheduling-portal.fob-auth-shell{box-sizing:border-box;color:#0f3253;background:linear-gradient(125deg,#f7f9fc 0%,#eff5fa 100%);justify-content:center;align-items:center;width:100%;max-width:none;min-height:100dvh;margin:0;padding:40px clamp(18px,4vw,56px);display:flex}.fob-auth-shell *{box-sizing:border-box}.fob-auth-container{grid-template-columns:minmax(0,1.36fr) minmax(360px,.96fr);align-items:center;gap:clamp(34px,4vw,58px);width:100%;max-width:1145px;display:grid}.fob-auth-intro{min-width:0}.fob-hero-title-row{color:#0c2f51;align-items:center;gap:22px;display:flex}.fob-hero-title-row h1{letter-spacing:-.055em;color:#0e3153;margin:0;font-size:clamp(36px,3.9vw,60px);font-weight:850;line-height:1.08}.fob-auth-wordmark{flex-direction:column;flex:none;align-items:center;width:116px;line-height:1;display:flex}.fob-logo-letters{letter-spacing:-.12em;color:#0d3459;align-items:center;padding-right:4px;font-size:42px;font-weight:900;line-height:.95;display:flex}.fob-logo-o{color:#fa7a19;position:relative}.fob-logo-small{color:#0c466d;letter-spacing:.3em;margin-top:3px;font-size:8px;font-weight:800}.fob-auth-subtitle{color:#416c94;max-width:580px;margin:24px 0 33px;font-size:clamp(16px,1.45vw,21px);line-height:1.6}.fob-auth-features{border-top:1px solid #d7e2ec}.fob-auth-feature{border-bottom:1px solid #d7e2ec;align-items:flex-start;gap:19px;padding:21px 0 22px;display:flex}.fob-feature-square{background:#fff4e9;border:1px solid #ffca98;border-radius:10px;flex:none;width:30px;height:30px}.fob-auth-feature strong{color:#0d3155;font-size:15px;line-height:1.4;display:block}.fob-auth-feature p{color:#50749a;margin:3px 0 0;font-size:14px;line-height:1.5}.fob-auth-pane{width:100%;min-width:0}.fob-auth-shell .fob-login-form{color:#113a60;background:#fff;border:1px solid #d3e1ec;border-radius:15px;width:100%;min-width:0;max-width:none;margin:0;padding:29px 30px 24px;display:block;box-shadow:0 15px 38px #153d6013,0 2px 9px #153d6006}.fob-login-form .fob-form-eyebrow{letter-spacing:.16em;color:#4d7fa7;margin-bottom:10px;font-size:11px;font-weight:850}.fob-auth-shell .fob-login-form h2{letter-spacing:-.035em;color:#082f54;margin:0 0 13px;font-size:22px;font-weight:800;line-height:1.25}.fob-auth-shell .fob-login-form .fob-login-explainer{color:#537fa8;margin:0 0 14px;font-size:15px;font-weight:400;line-height:1.6}.fob-auth-shell .fob-login-form label{color:#11385d;flex-direction:column;gap:7px;margin:16px 0;font-size:13px;font-weight:750;display:flex}.fob-auth-shell .fob-login-form input{width:100%;min-width:0;min-height:43px;box-shadow:none;color:#102f4d;background:#fff;border:1px solid #bbd0e2;border-radius:10px;outline:0;padding:11px 12px;font-size:13px;font-weight:550}.fob-auth-shell .fob-login-form input:focus-visible{border-color:#3986bb;box-shadow:0 0 0 3px #2f81bd24}.fob-auth-shell .fob-login-form input:disabled{opacity:.75}.fob-auth-shell .fob-login-form .fob-login-actions{grid-template-columns:minmax(0,1.07fr) minmax(0,.93fr);gap:13px;margin-top:17px;display:grid}.fob-auth-shell .fob-login-form .fob-login-actions button{white-space:normal;cursor:pointer;text-align:center;border-radius:10px;justify-content:center;align-items:center;min-width:0;min-height:44px;margin:0;padding:9px 13px;font-size:13px;font-weight:750;line-height:1.35;transition:background .15s,border-color .15s;display:inline-flex}.fob-auth-shell .fob-login-form .fob-login-submit{color:#fff;background:#0d3356;border:1px solid #0d3356}.fob-auth-shell .fob-login-form .fob-login-submit:hover:not(:disabled){background:#194c75}.fob-auth-shell .fob-login-form .fob-login-secondary{color:#164368;background:#fff;border:1px solid #b9cddd}.fob-auth-shell .fob-login-form .fob-login-secondary:hover:not(:disabled){background:#f4f8fc}.fob-auth-shell .fob-login-form button:disabled{opacity:.6;cursor:not-allowed}.fob-auth-shell .fob-login-form button:focus-visible{outline-offset:2px;outline:3px solid #90bad8}.fob-login-extras{justify-content:flex-end;margin-top:12px;display:flex}.fob-auth-shell .fob-login-form .fob-login-textbutton{font:inherit;color:#386c9b;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;margin:0;padding:4px 0;font-size:12px;text-decoration:underline}.fob-auth-shell .fob-login-form .fob-auth-permission{color:#7190ab;margin:16px 0 0;font-size:12px;line-height:1.6}.fob-auth-shell .fob-login-form p[role=alert],.fob-auth-shell .fob-login-form p[role=status]{border-radius:9px;margin:10px 0;padding:11px 13px;font-size:13px;line-height:1.55}.fob-auth-shell .fob-login-form p[role=alert]{color:#ac2c30;background:#fff0ef;border:1px solid #f6c3c0}.fob-auth-shell .fob-login-form p[role=status]{color:#176343;background:#eef9f2;border:1px solid #b7dfc4}@media (width<=850px){.scheduling-portal.fob-auth-shell{align-items:flex-start;padding:32px 18px}.fob-auth-container{flex-direction:column;gap:21px;max-width:510px;display:flex}.fob-hero-title-row{justify-content:center;gap:15px}.fob-hero-title-row h1{letter-spacing:-.04em;font-size:clamp(23px,4.3vw,33px)}.fob-auth-wordmark{width:94px}.fob-logo-letters{font-size:33px}.fob-logo-small{font-size:7px}.fob-auth-subtitle{text-align:center;max-width:425px;margin:14px auto 0;font-size:14px}.fob-auth-features{display:none}}@media (width<=450px){.scheduling-portal.fob-auth-shell{padding:35px 15px 26px}.fob-auth-container{gap:25px}.fob-auth-shell .fob-login-form{padding:23px 21px}.fob-auth-shell .fob-login-form .fob-login-actions{grid-template-columns:1fr;gap:10px}.fob-auth-shell .fob-login-form .fob-login-actions button{min-height:45px}.fob-auth-subtitle{font-size:13px}}@media (prefers-reduced-motion:reduce){.fob-auth-shell .fob-login-form button{transition:none}}.portal-visit-purpose[hidden],.portal-request-form label[hidden]{display:none!important}.portal-visit-purpose select{width:100%;min-width:0}@media (width<=720px){.field-modal.portal-overview-modal:has(>.portal-property-detail-card){box-sizing:border-box;z-index:220;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;overflow-anchor:none;width:100%;height:100dvh;max-height:100dvh;display:block;position:fixed;inset:0;overflow:hidden auto;padding:calc(12px + env(safe-area-inset-top,0px)) 10px calc(12px + env(safe-area-inset-bottom,0px))!important}.field-modal.portal-overview-modal:has(>.portal-property-detail-card)>.portal-property-detail-card{box-sizing:border-box;overflow-anchor:none;padding:20px clamp(14px,4vw,22px) 24px;display:block;width:100%!important;height:auto!important;max-height:none!important;margin:0 auto!important;overflow:visible!important}.portal-property-detail-card .portal-overview-modal-head{align-items:flex-start;gap:12px;display:flex}.portal-property-detail-card .portal-overview-modal-head>div{overflow-wrap:anywhere;flex:1 1 0;min-width:0}.portal-property-detail-card .portal-overview-modal-head>button{flex:none}}
