:root{--green:#00a651;--deep:#163b2b;--ink:#17382d;--muted:#728079;--line:#e4ebe7;--paper:#f5f7f6;--tint:#eaf5ee;--white:#fff;--radius:18px}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:15px;line-height:1.5}a{color:var(--green);text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #75cf9e;outline-offset:3px}[hidden]{display:none!important}h1,h2,h3,p{margin-top:0}h1{font-size:32px;line-height:1.15;letter-spacing:-1px;margin-bottom:10px}h2{font-size:20px;letter-spacing:-.4px;margin-bottom:18px}h3{font-size:16px}svg{flex-shrink:0}.portal-topbar{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 32px;background:white;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.portal-brand{display:flex;align-items:center;color:var(--ink);font-size:23px;letter-spacing:-1px;font-weight:800}.portal-brand>span{display:grid;place-items:center;width:36px;height:36px;background:var(--green);color:#fff;border-radius:12px;margin-right:10px;letter-spacing:0}.portal-brand>b{color:var(--green)}.top-actions{display:flex;gap:18px;align-items:center}.role-chip{font-size:12px;color:var(--muted)}.language-switch{display:flex;background:var(--paper);border-radius:9px;padding:3px;gap:3px}.language-switch a{font-size:12px;font-weight:650;color:var(--muted);padding:6px 10px;border-radius:6px}.language-switch a[aria-current]{background:white;color:var(--green);box-shadow:0 1px 4px #17382d12}.portal-layout{display:grid;grid-template-columns:230px minmax(0,1fr);min-height:calc(100dvh - 72px)}.portal-sidebar{padding:32px 18px;background:white;border-right:1px solid var(--line);position:sticky;top:72px;height:calc(100dvh - 72px);display:flex;flex-direction:column}.sidebar-caption{font-size:10px;font-weight:700;letter-spacing:1.7px;color:var(--muted);padding:0 14px;margin:0 0 20px}.desktop-nav{display:grid;gap:8px}.desktop-nav a{display:flex;align-items:center;gap:13px;color:var(--muted);padding:13px 15px;border-radius:12px;font-size:14px;font-weight:600}.desktop-nav a.active{color:var(--green);background:var(--tint)}.desktop-nav a:hover{background:var(--paper)}.sidebar-footer{margin-top:auto;padding:20px 14px 0;display:grid;gap:8px;font-size:13px}.sidebar-footer small{font-size:12px;color:var(--muted)}.sidebar-footer a{font-size:12px;margin-top:12px}.portal-main{width:100%;max-width:1180px;padding:40px 44px 70px;margin:0 auto;min-width:0}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px}.page-heading p:last-child{margin-bottom:0}.eyebrow{color:var(--muted);font-size:10px;font-weight:700;letter-spacing:1.8px;margin-bottom:10px}.muted{color:var(--muted)}.small{font-size:13px}.primary,.secondary{display:inline-flex;justify-content:center;align-items:center;gap:10px;min-height:46px;border-radius:11px;padding:11px 20px;font-weight:650;font-size:14px;border:1px solid transparent;text-decoration:none}.primary{background:var(--green);color:white}.primary:hover{background:#008b44}.secondary{background:white;border-color:var(--line);color:var(--ink)}.compact{white-space:nowrap}.panel{padding:28px;background:white;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 3px 16px #143e2a03}.submission-layout{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:24px}.submission-help p{font-size:13px;color:var(--muted);line-height:1.7}.round-icon{width:46px;height:46px;background:var(--tint);color:var(--green);border-radius:14px;display:grid;place-items:center;margin-bottom:18px}.help-divider{border-top:1px solid var(--line);margin:24px 0}.step-indicator{display:flex;align-items:center;gap:10px;margin-bottom:30px}.step-indicator span{display:flex;align-items:center;gap:7px;color:#9ba9a1;font-size:12px;font-weight:700}.step-indicator span.active{color:var(--green)}.step-indicator small{font-size:12px}.step-indicator i{height:1px;background:var(--line);flex:1}fieldset{border:0;margin:0;padding:0;min-width:0}label{display:grid;gap:8px;font-size:13px;font-weight:600;margin-bottom:18px}input:not([type=checkbox]):not([type=radio]),select,textarea{display:block;width:100%;min-width:0;border:1px solid #d9e3dd;background:#fcfdfc;border-radius:10px;padding:12px 13px;min-height:46px;color:var(--ink);font-size:16px;transition:border-color .15s}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#9da9a3}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:24px}.choice{position:relative;cursor:pointer;margin:0}.choice input{position:absolute;opacity:0}.choice>span{height:100%;padding:15px 10px;border:1px solid var(--line);border-radius:12px;display:grid;gap:10px;justify-items:start;font-size:12px;color:var(--muted)}.choice input:checked+span{border-color:var(--green);background:var(--tint);color:var(--green)}.choice input:focus-visible+span{outline:3px solid #75cf9e}.form-actions{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);padding-top:22px}.form-actions .primary{margin-left:auto}.form-feedback{font-size:13px;color:#af3f35;white-space:pre-wrap}.form-feedback:empty{display:none}.form-feedback.success{color:var(--green)}.upload-box{padding:20px;border:1px dashed #b9d1c2;border-radius:12px;justify-items:center;color:var(--green);background:#f7fbf8;cursor:pointer}.upload-box small{color:var(--muted);font-size:12px;font-weight:400}.upload-box input{font-size:12px!important;background:transparent!important;border:0!important;padding:4px!important}.photo-strip{display:flex;gap:10px;overflow:auto}.photo-strip img{width:88px;height:88px;object-fit:cover;border-radius:10px}.check-row{display:flex;gap:10px;align-items:flex-start;font-size:13px;font-weight:400;line-height:1.6}.check-row input{accent-color:var(--green);width:18px;height:18px;flex:none;margin-top:2px}.info-note{padding:16px;border:1px solid #dbece1;border-radius:12px;background:#f0f8f3;color:#557061;font-size:13px;margin-bottom:20px}.status{font-size:11px;font-weight:650;padding:5px 10px;border-radius:7px;background:#edf1ee;color:#708076;display:inline-block;white-space:nowrap}.status.ready,.status.matched{color:var(--green);background:var(--tint)}.status.draft{color:#9b701e;background:#fff5df}.review-summary{border:1px solid var(--line);border-radius:12px;padding:20px;margin-bottom:20px}.review-summary p{white-space:pre-wrap}.settings-layout{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.contact-row{display:flex;gap:14px;align-items:center;border-top:1px solid var(--line);padding:20px 0}.contact-row>div{display:grid;gap:3px;min-width:0;flex:1}.contact-row span:not(.contact-avatar):not(.status){font-size:13px;color:var(--muted);overflow-wrap:anywhere}.contact-avatar{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--tint);color:var(--green)}.link-contact{display:grid;grid-template-columns:1fr auto;gap:10px;padding-bottom:16px}.link-contact input{font-size:14px!important}.link-contact .form-feedback{grid-column:1/-1;margin:0}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;border-bottom:1px solid var(--line);margin:0}.setting-row strong,.setting-row small{display:block}.setting-row small{font-weight:400;font-size:12px;color:var(--muted);margin-top:5px}.switch{appearance:none;width:42px;height:25px;background:#cdd8d1;position:relative;border-radius:20px;flex:none;cursor:pointer;margin:0}.switch:before{content:"";position:absolute;width:19px;height:19px;top:3px;left:3px;border-radius:50%;background:white;box-shadow:0 1px 3px #0002;transition:transform .15s}.switch:checked{background:var(--green)}.switch:checked:before{transform:translateX(17px)}.switch:disabled{opacity:.45;cursor:default}.section-gap{margin-top:30px}.session-actions{display:flex;gap:20px;margin-top:25px;font-size:13px}.text-link{padding:0;border:0;background:none;color:var(--green);font-size:13px}.coverage-group{padding-top:25px;margin-top:25px;border-top:1px solid var(--line)}.coverage-group legend{font-size:17px;font-weight:650;margin-bottom:18px}.coverage-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.coverage-grid label{margin:0;padding:11px;border-radius:9px;background:var(--paper);font-size:12px}.welcome-layout{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center;min-height:60vh}.welcome-copy h1{font-size:44px;max-width:350px}.welcome-copy>p:not(.eyebrow){font-size:16px;color:var(--muted);max-width:380px}.welcome-benefit{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:var(--green);max-width:360px;margin-top:25px}.auth-panel{max-width:440px}.auth-panel .primary{width:100%}.auth-panel>h2{font-size:24px}.bottom-nav{display:none}.toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);background:var(--deep);color:white;padding:12px 20px;border-radius:12px;z-index:50;font-size:14px;max-width:90vw;display:none}.toast.visible{display:block}.skeleton{height:150px;border-radius:18px;margin-bottom:18px;background:linear-gradient(100deg,#e9efeb 30%,#f7faf8 50%,#e9efeb 70%);background-size:200% 100%;animation:shimmer 1.3s infinite}@keyframes shimmer{to{background-position:-200% 0}}.job-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.job-tile{background:white;border:1px solid var(--line);border-radius:16px;padding:22px;display:flex;flex-direction:column;gap:14px;color:var(--ink);transition:border-color .15s}.job-tile:hover{border-color:#94bda5}.tile-top{display:flex;justify-content:space-between;align-items:center;gap:10px}.job-tile h2{font-size:18px;margin:0}.job-tile p{color:var(--muted);font-size:13px;margin:0}.job-tile .description{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tile-meta{font-size:11px;color:#8a9790;display:flex;justify-content:space-between;gap:10px;margin-top:auto}.tile-footer{border-top:1px solid var(--line);padding-top:12px;font-size:12px;color:var(--green);display:flex;justify-content:space-between}.empty-state{text-align:center;padding:60px 25px;background:white;border:1px solid var(--line);border-radius:18px}.empty-state .round-icon{margin:0 auto 20px}.empty-state h2{margin-bottom:10px}.empty-state p{color:var(--muted);font-size:14px}.filter-pills{display:flex;gap:8px;margin-bottom:22px}.filter-pills button{border:1px solid var(--line);padding:8px 15px;border-radius:20px;background:white;color:var(--muted);font-size:12px}.filter-pills button.active{background:var(--green);color:white;border-color:var(--green)}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:22px}.detail-grid .panel{margin-bottom:20px}.detail-description{white-space:pre-wrap;font-size:15px;line-height:1.8}.detail-meta{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0}.detail-meta span{padding:7px 10px;background:var(--paper);border-radius:8px;font-size:12px}.quote-card{background:white;border:1px solid var(--line);border-radius:16px;padding:22px;margin-bottom:16px}.quote-card.accepted{border-color:var(--green)}.quote-header{display:flex;justify-content:space-between;gap:12px}.quote-header h3{margin:0 0 3px}.quote-price{font-weight:750;font-size:20px;color:var(--green);text-align:right}.quote-price small{display:block;font-size:10px;font-weight:500;color:var(--muted)}.quote-card>p{font-size:14px;white-space:pre-wrap;margin-top:16px}.quote-actions{display:flex;gap:10px;justify-content:flex-end}.thread-layout{display:grid;grid-template-columns:280px minmax(0,1fr);border:1px solid var(--line);border-radius:18px;background:white;overflow:hidden;min-height:450px}.thread-sidebar{border-right:1px solid var(--line);padding:12px}.thread-choice{display:block;width:100%;text-align:left;padding:15px;border:0;border-radius:10px;background:white;color:var(--ink);margin-bottom:6px}.thread-choice.active{background:var(--tint)}.thread-choice strong,.thread-choice small{display:block}.thread-choice small{color:var(--muted);font-size:11px;margin-top:5px}.thread-pane{padding:24px;min-width:0}.thread-log{display:flex;flex-direction:column;gap:14px;max-height:50vh;overflow:auto;padding:15px 0 25px}.bubble{max-width:85%;padding:12px 15px;border-radius:14px 14px 14px 3px;background:var(--paper);align-self:flex-start}.bubble.mine{background:var(--tint);align-self:flex-end;border-radius:14px 14px 3px 14px}.bubble p{font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.bubble small{display:block;font-size:10px;color:var(--muted);margin-top:6px}.message-form textarea{min-height:80px}.message-form .primary{float:right}.message-form:after{content:"";display:block;clear:both}.detail-back{display:inline-block;font-size:13px;margin-bottom:20px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@media(max-width:1100px){.submission-layout,.detail-grid{grid-template-columns:1fr}.submission-help{display:none}.portal-main{padding:32px}.coverage-grid{grid-template-columns:1fr 1fr}.settings-layout{grid-template-columns:1fr}.welcome-layout{gap:25px}.thread-layout{grid-template-columns:230px minmax(0,1fr)}}
@media(max-width:760px){body{font-size:14px}.portal-topbar{height:60px;padding:0 18px}.portal-brand{font-size:20px}.portal-brand>span{width:30px;height:30px;border-radius:10px;font-size:19px}.role-chip{display:none}.portal-layout{display:block;min-height:calc(100dvh - 60px)}.portal-sidebar{display:none}.portal-main{padding:26px 18px calc(110px + env(safe-area-inset-bottom));max-width:620px}.page-heading{align-items:flex-start;gap:12px;margin-bottom:22px}h1{font-size:27px;letter-spacing:-.8px}h2{font-size:19px}.page-heading .muted{font-size:13px}.page-heading>.compact{font-size:0;width:42px;padding:8px;min-height:42px}.page-heading>.compact svg{width:22px}.panel{padding:22px 18px;border-radius:16px}.step-indicator{margin-bottom:25px}.field-grid{gap:0 12px}.choice-grid{gap:7px}.choice>span{font-size:11px;padding:12px 8px;gap:8px}.choice svg{width:21px}.bottom-nav{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(4,1fr);padding:8px 8px calc(8px + env(safe-area-inset-bottom));background:#fffffffa;border-top:1px solid var(--line);backdrop-filter:blur(15px);z-index:30}.bottom-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:54px;color:#839087;font-size:10px;font-weight:600;border-radius:12px;margin:0 3px}.bottom-nav a.active{color:var(--green);background:var(--tint)}.bottom-nav svg{width:22px;height:22px}.welcome-layout{display:block;min-height:0}.welcome-copy{padding:4px 4px 20px}.welcome-copy h1{font-size:32px;max-width:none;margin-bottom:12px}.welcome-copy .round-icon,.welcome-benefit{display:none}.welcome-copy>p:not(.eyebrow){font-size:14px;margin-bottom:0}.auth-panel{max-width:none}.job-grid{grid-template-columns:1fr;gap:14px}.job-tile{padding:20px}.thread-layout{display:block;min-height:0}.thread-sidebar{border-right:0;border-bottom:1px solid var(--line);display:flex;gap:8px;overflow:auto}.thread-choice{min-width:190px;margin:0}.thread-pane{padding:20px 16px}.thread-log{max-height:48vh}.quote-actions .primary,.quote-actions .secondary{flex:1;padding:10px;font-size:12px}.quote-price{font-size:18px}.toast{bottom:calc(95px + env(safe-area-inset-bottom))}.coverage-grid{grid-template-columns:1fr 1fr}.coverage-grid .check-row{font-size:11px;padding:10px}.settings-layout{gap:18px}.session-actions{flex-wrap:wrap}.step-indicator span{gap:5px}.step-indicator small{font-size:11px}.form-actions{position:relative}.submission-layout{gap:0}.thread-log .bubble{max-width:90%}}
@media(max-width:370px){.field-grid{grid-template-columns:1fr}.choice-grid{grid-template-columns:1fr}.choice>span{display:flex;align-items:center;gap:12px}.coverage-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* Shared branding and signed-out layout. */
.bx{font-size:22px;flex-shrink:0;line-height:1}.portal-brand img{display:block;width:132px;height:60px;object-fit:contain}.portal-brand{letter-spacing:0}.portal-topbar{height:82px}.portal-sidebar{top:82px;height:calc(100dvh - 82px)}.portal-layout{min-height:calc(100dvh - 82px)}.auth-layout{display:block}.portal-auth .portal-main{max-width:500px;padding:60px 24px}.portal-auth .welcome-layout{display:block;min-height:0}.portal-auth .auth-panel{max-width:none;width:100%}.portal-auth .auth-panel h1{font-size:27px}.portal-auth .auth-panel form{margin-top:24px}.portal-auth .welcome-copy{margin-bottom:30px}.portal-auth .welcome-copy h1{font-size:32px}.portal-auth .auth-panel .muted{font-size:14px}.portal-auth .role-chip{display:none}.portal-auth .portal-main .panel{padding:30px}.portal-auth .primary{width:100%}.bottom-nav:has(a[href^="/operator/"]){grid-template-columns:repeat(3,1fr)}.sidebar-footer .contact-avatar .bx{font-size:22px}.page-heading>.compact .bx{font-size:22px}.bottom-nav .bx{font-size:23px}.cf-turnstile{margin-bottom:18px;min-height:65px}.cf-turnstile:empty{display:none}
@media(max-width:760px){.portal-topbar{height:72px;padding:0 18px}.portal-brand img{width:112px;height:52px}.portal-layout{min-height:calc(100dvh - 72px)}.portal-auth .portal-main{padding:32px 18px;min-height:calc(100dvh - 72px)}.portal-auth .portal-main .panel{padding:25px 20px}.portal-auth .auth-panel h1{font-size:25px}}

.operator-inbox .thread-sidebar{max-height:70vh;overflow:auto}.operator-inbox .thread-choice{color:var(--ink)}.operator-inbox .thread-log{min-height:200px}.operator-inbox .thread-choice small{overflow-wrap:anywhere}@media(max-width:760px){.operator-inbox .thread-sidebar{max-height:none}.operator-inbox .thread-choice{min-width:205px}}

.auth-panel form+.muted{margin-top:18px}.auth-panel #invite-result{margin-top:22px}
@media(max-width:760px){.page-heading>#refresh-inbox{font-size:0;width:42px;min-height:42px;padding:8px;flex-shrink:0}.page-heading>#refresh-inbox .bx{font-size:22px}}

.job-view-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:20px}.view-selector{display:flex;gap:3px;padding:4px;background:#e9efec;border-radius:11px}.view-selector button{display:flex;gap:7px;align-items:center;padding:8px 13px;border:0;border-radius:8px;color:var(--muted);background:none;font-size:13px;font-weight:600}.view-selector button[aria-pressed=true]{color:var(--green);background:white;box-shadow:0 1px 5px #17382d12}.view-selector .bx{font-size:19px}.job-rows{display:grid;gap:10px}.job-row{display:flex;align-items:center;gap:16px;padding:19px 22px;background:white;border:1px solid var(--line);border-radius:13px;color:var(--ink)}.job-row:hover{border-color:var(--green)}.job-row>div{min-width:0;flex:1}.job-row h2{font-size:16px;margin:0 0 5px}.job-row p{font-size:12px;color:var(--muted);margin:0}.job-row>.bx{color:var(--muted)}.preview-banner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 24px;border:1px solid #cae8d7;background:#edf9f1;border-radius:14px;margin-bottom:24px}.preview-banner strong,.preview-banner span{display:block}.preview-banner span{font-size:13px;color:var(--muted);margin-top:5px}.preview-banner .primary{white-space:nowrap}.job-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:24px}.job-pagination span{font-size:12px;color:var(--muted)}.bottom-nav:has(a[href^="/provider/register"]){grid-template-columns:repeat(2,1fr)}
@media(max-width:760px){.job-row{padding:16px 14px;gap:11px}.job-row .status{display:none}.job-row h2{font-size:15px}.job-row p{font-size:11px}.preview-banner{display:block;padding:18px}.preview-banner .primary{margin-top:15px;min-height:42px}.job-view-toolbar>span{font-size:11px}.view-selector button{padding:8px 10px;font-size:12px}.job-pagination .secondary{padding:9px 11px;font-size:12px}}

.chat-upload{display:flex;align-items:center;gap:8px;border:1px dashed #bfdbc9;border-radius:10px;padding:11px 13px;background:#f7fbf8;color:var(--green);font-size:12px;margin:12px 0}.chat-upload input{min-height:0!important;padding:0!important;border:0!important;background:none!important;font-size:11px!important;max-width:210px}.chat-selected-images{margin-bottom:12px}.bubble .photo-strip{margin:8px 0}.bubble .photo-strip img{width:100px;height:100px}.thread-log .bubble:has(.photo-strip){max-width:95%}@media(max-width:760px){.chat-upload{flex-wrap:wrap}.chat-upload input{max-width:100%}}
.photo-open{border:0;padding:0;background:transparent;border-radius:10px;line-height:0;flex:none}.photo-open img{display:block;cursor:zoom-in}.image-viewer[hidden]{display:none}.image-viewer{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:50px 20px 24px;background:rgba(7,17,12,.94)}.image-viewer>img{max-width:min(100%,1400px);max-height:calc(100dvh - 80px);object-fit:contain;border-radius:8px}.image-viewer-close{position:absolute;top:max(14px,env(safe-area-inset-top));right:18px;width:44px;height:44px;display:grid;place-items:center;border:0;border-radius:50%;background:#ffffff20;color:#fff;font-size:30px}.image-viewer-open{overflow:hidden}.preview-separator{border:0;border-top:1px solid var(--line);margin:22px 0}.preview-banner .primary i{font-size:19px}
.portal-main[aria-busy="true"]{opacity:.7;transition:opacity .12s ease}
.provider-welcome-open{overflow:hidden}.provider-welcome-overlay{position:fixed;inset:0;z-index:10000;background:rgba(17,36,25,.52)}.provider-welcome-overlay iframe{display:block;width:100%;height:100%;border:0}
