/* FRESHMODE: logo blue #3C6CA4 direction (2026-11-14, was teal). Status and technician pin colors stay meaningful. */
:root{--background:214 30% 97%;--foreground:214 35% 15%;--card:0 0% 100%;--card-foreground:214 35% 15%;--popover:0 0% 100%;--popover-foreground:214 35% 15%;--primary:212 46% 44%;--primary-foreground:0 0% 100%;--secondary:214 45% 94%;--secondary-foreground:214 40% 26%;--muted:214 25% 95%;--muted-foreground:214 14% 38%;--accent:214 45% 94%;--accent-foreground:214 40% 26%;--border:214 25% 86%;--input:214 22% 80%;--ring:212 46% 44%;--radius:.8rem;--sidebar-background:0 0% 100%;--sidebar-foreground:214 16% 32%;--sidebar-primary:212 46% 44%;--sidebar-primary-foreground:0 0% 100%;--sidebar-accent:214 45% 94%;--sidebar-accent-foreground:214 40% 26%;--sidebar-border:214 25% 88%;--sidebar-ring:212 46% 44%;--font-sans:"Noto Sans KR",system-ui,-apple-system,"Malgun Gothic",sans-serif;--fm-ink:#17283c;--fm-teal:#3c6ca4;--fm-soft:#e8eef4;--fm-line:#d7dde3;--fm-subtle:#f5f6f8;--fm-muted:#5c6671}
body{font-feature-settings:"tnum";letter-spacing:-.015em;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5{letter-spacing:-.035em;text-wrap:balance}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button,a{ -webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid #234b78;outline-offset:3px}button:disabled{cursor:not-allowed}
.fm-app-shell main{background:#f5f6f8;padding:28px clamp(20px,3vw,48px)}.fm-app-shell main>div{max-width:1600px;margin-left:auto;margin-right:auto}.fm-app-shell main h1{font-size:28px;font-weight:800;line-height:1.3;margin:4px 0}.fm-app-header{height:68px;padding:0 26px;background:#fff;border-bottom:1px solid var(--fm-line);gap:16px}.fm-header-brand{display:flex;flex-direction:column;gap:2px;color:var(--fm-teal);padding-left:12px;border-left:1px solid var(--fm-line)}.fm-header-brand strong{font-weight:850;font-size:17px;letter-spacing:.055em;line-height:1.2}.fm-header-brand small{font-size:10px;letter-spacing:.04em;color:var(--fm-muted)}.fm-app-header button{border-radius:50%}
[data-sidebar=sidebar]{border-right:1px solid var(--fm-line)}[data-sidebar=menu-button]{min-height:46px;margin:3px 0;border-radius:11px}[data-sidebar=menu-button][aria-current=page]{box-shadow:inset 3px 0 0 var(--fm-teal);font-weight:750}[data-sidebar=header]{padding:12px}.fm-sidebar-wordmark{letter-spacing:.055em!important;font-weight:850!important;color:var(--fm-teal)!important}
.fm-guide{background:#edf1f5;border:1px solid #d4dbe3;border-left:3px solid #849fbd;border-radius:12px;color:#314153}.fm-guide>button{min-height:46px}.fm-guide>button>div,.fm-guide>button svg{color:#314153}.fm-guide>div{color:#4b5561;font-size:13px}.fm-guide button:focus-visible{outline-offset:2px}
.fm-app-shell main .bg-card.rounded-lg,.fm-app-shell main>.space-y-4>.border{border-radius:16px;box-shadow:0 3px 20px #18283b04}.fm-app-shell main input,.fm-app-shell main button[role=combobox]{border-radius:9px}.fm-app-shell main button.bg-primary{font-weight:700;box-shadow:0 3px 8px #152d4816}.fm-app-shell main thead{background:#eff1f4}.fm-app-shell main th{font-size:12px;font-weight:700;color:#525c68;letter-spacing:.015em}.fm-app-shell main td{border-color:#e6e9ec}.fm-order-table tbody tr:hover{background:#f6f8fb}.fm-order-open{font-weight:700;color:#17304e}.fm-app-shell main td .font-mono{font-size:12px}
[role=dialog]{border-radius:20px;border-color:#d5dbe1;box-shadow:0 24px 80px #17283c24}[role=dialog] h2{font-size:22px;font-weight:800}[role=dialog] input,[role=dialog] button[role=combobox]{border-color:#b8c2ce;border-radius:10px}[role=dialog] .bg-primary{font-weight:750}[role=dialog] .space-y-5>div>h3{color:#17283c}
.fm-mobile-nav{border-top-color:#d8dde3;background:#fffffff5;backdrop-filter:blur(12px);box-shadow:0 -5px 24px #163b3108}.fm-mobile-nav-link{border-radius:14px;color:#606973}.fm-mobile-nav-active{background:#dfe7f0;color:#2d5280;font-weight:800}.fm-mobile-nav-active svg{stroke-width:2.3}
.fm-map-focus{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 24px;border:1px solid #d5dde6;border-radius:18px;background:#e9eef3;position:relative;overflow:hidden}.fm-map-focus:before{content:"";width:5px;border-radius:4px;background:#86a3c4;align-self:stretch;position:absolute;left:13px;top:20px;bottom:20px}.fm-map-focus>div{padding-left:5px;min-width:0}.fm-map-focus .eyebrow{font-size:12px;font-weight:750;color:#3a4f66;letter-spacing:.04em}.fm-map-focus h2{font-size:clamp(24px,3vw,36px);font-weight:850;line-height:1.15;color:#12392e;margin:8px 0}.fm-map-focus p{font-size:14px;line-height:1.65;color:#43505e;margin:4px 0;overflow-wrap:anywhere}.fm-map-focus .fm-focus-name{font-size:17px;font-weight:750;color:#19293c}.fm-focus-status{flex-shrink:0;display:flex;flex-direction:column;align-items:flex-end;gap:9px}.fm-focus-status strong{background:white;border:1px solid #bccbdc;border-radius:100px;padding:7px 13px;color:#31465e;font-size:12px}.fm-focus-status small{font-size:12px;color:#53606e;max-width:250px;text-align:right}.fm-map-focus.empty h2{font-size:22px}
.fm-map-layout{gap:20px!important;min-height:490px!important}.fm-map-layout>div:first-child{border-radius:18px;box-shadow:0 3px 18px #17283c10;border-color:#d6dce2}.fm-map-layout>div:last-child{width:clamp(330px,32vw,440px);border-radius:18px;border-color:#d6dce2;box-shadow:0 3px 18px #17283c08;scrollbar-width:thin;scrollbar-color:#aeb9c5 transparent}.fm-map-layout>div:last-child>div{padding:20px}.fm-map-layout [data-fm-selection] .bg-blue-50{background:#ebf0f5;border-color:#c8d5e4}.fm-map-layout [data-fm-selection] .text-blue-700{color:#2d5280}.fm-map-legend{padding:2px 3px;font-size:12px;row-gap:8px}
.fm-visit-slots{padding:18px;border:1px solid #cfd6df;background:#f4f7fa;border-radius:16px;color:#17283c}.fm-visit-slots h4{font-size:21px;font-weight:800;line-height:1.35}.fm-slot-eyebrow{color:#3e5773;font-weight:750;font-size:11px;letter-spacing:.06em}.fm-slot-preferences{margin-top:16px}.fm-slot-preferences>div{background:#e7ecf2;border-left:4px solid #8ba7c6;border-radius:9px;padding:12px}.fm-slot-preferences strong{font-size:16px;line-height:1.5;display:block;font-weight:800}.fm-slot-preferences small{font-size:12px;line-height:1.65}.fm-slot-controls{gap:12px}.fm-slot-controls input,.fm-slot-controls select{background:white;border-radius:10px;border-color:#bdc6d1;min-height:44px;font-variant-numeric:tabular-nums}.fm-visit-slots .fm-slot-search{background:#3c6ca4;border-color:#3c6ca4;color:white;border-radius:11px;min-height:48px;font-weight:750}.fm-slot-search:hover:not(:disabled){background:#122740}.fm-slot-result{background:#e9eff5;border-color:#acbfd5;border-radius:12px;padding:16px;scroll-margin-top:90px}.fm-slot-result.empty{background:#fff6e9;border-color:#e2c295;color:#785019}
.fm-slot-card{border:1px solid #cbd3dc;border-radius:16px;padding:16px;background:white;box-shadow:0 3px 14px #15273c05}.fm-slot-card:first-of-type{border-color:#8295aa}.fm-slot-card.selected{border:2px solid #3c6ca4;background:#fbfdf8;padding:15px;box-shadow:0 4px 16px #3c6ca410}.fm-slot-rank{display:block;border-radius:8px;padding:7px 10px;color:#2b415b;background:#dfe8f2;font-size:12px;font-weight:750}.fm-slot-identity{display:flex;align-items:center;gap:12px;margin:14px 0}.fm-slot-avatar{height:46px;width:46px;border-radius:50%;background:#e1e6ec;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:#283c53;font-size:20px;font-weight:800}.fm-slot-identity h5{font-size:23px;margin:0 0 3px;font-weight:850;color:#17283c}.fm-slot-identity strong{font-size:17px;line-height:1.4;font-weight:750;font-variant-numeric:tabular-nums}.fm-slot-selected-mark{margin-left:auto;color:#3c6ca4;font-weight:850;font-size:23px}.fm-slot-metrics{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:10px 0;padding:12px 0;border-top:1px solid #dfe3e8;border-bottom:1px solid #dfe3e8}.fm-slot-metrics small{font-size:12px;color:#5c6671}.fm-slot-metrics strong{display:block;font-size:16px;color:#24364b;margin-top:4px}.fm-slot-card p{font-size:12px;color:#5c6671;line-height:1.65}.fm-slot-card>button{min-height:46px;border-radius:10px;font-size:14px;font-weight:750;color:#2d5280;border-color:#9baabb;background:#f0f4f9}.fm-slot-card.selected>button{background:#3c6ca4;color:white;border-color:#3c6ca4}.fm-slot-chosen{background:#dfe7f1;color:#2b4059;border:1px solid #a8bbd1;border-radius:11px;padding:13px;font-weight:700}.fm-slot-note{line-height:1.7!important}.fm-slot-alternatives{border-top:1px solid #d3dae3;padding-top:12px}.fm-slot-alternatives summary{font-size:13px;min-height:40px}.fm-manual-assignment>button{font-weight:650;border-radius:10px;min-height:44px}.fm-slot-error{color:#a34228!important}
.fm-actions,.fm-consult-panel,.fm-trial-panel,.fm-profiles{border-radius:18px;border-color:#d6dce2;background:white;box-shadow:0 3px 18px #17283c04}.fm-actions h2{font-size:24px;color:#17283c}.fm-actions-counts button{background:#eef2f6;border-color:#d5dde6;border-radius:13px}.fm-actions-counts button.selected{background:#3c6ca4;border-color:#3c6ca4}.fm-actions-counts strong{font-weight:850;font-variant-numeric:tabular-nums}.fm-actions-status{background:#eff2f6}.fm-consult-stage{background:#e7ecf2;color:#405063}.fm-consult-panel button{background:#3c6ca4}.fm-consult-panel .fm-consult-card{border-color:#d7dee5;border-radius:13px}.fm-profile-choices label{border-radius:10px;background:#f5f7fa}.fm-profile-summary{background:#ebf0f5}.fm-profile-footer .fm-profile-save{background:#3c6ca4;border-color:#3c6ca4}.fm-departure-link{background:#e9eff5;border-color:#a6b9ce;color:#31465d}
.fm-settlement{border-radius:16px;background:#f3f6fa;border-color:#c5d1df;padding:18px}.fm-settlement h3{font-size:19px;font-weight:800}.fm-settlement-job>p:not(.fm-settlement-note){font-size:19px;font-weight:750;color:#2d5280}.fm-settlement-job .fm-settlement-input{margin-top:14px}.fm-settlement input{min-height:46px}.fm-settlement button{min-height:44px}.fm-settlement-note{line-height:1.75!important;color:#5b646f}.fm-settlement-head{gap:10px}.fm-settlement-input{align-items:flex-end}
.fm-ledger{display:grid;gap:22px}.fm-ledger-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap}.fm-ledger-head p{margin:7px 0 0;color:#5c6671;line-height:1.65;font-size:14px}.fm-ledger-kicker{font-size:11px;letter-spacing:.08em;font-weight:750;color:#5b6672}.fm-ledger-toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end}.fm-ledger-toolbar label{display:grid;gap:7px;font-size:12px;font-weight:650;color:#535f6c}.fm-ledger-toolbar input,.fm-ledger-toolbar select{min-height:44px;background:#fff;border:1px solid #bdc5ce;border-radius:10px;padding:9px 12px;color:#17283c;min-width:150px}.fm-ledger button,.fm-ledger a.fm-ledger-link{min-height:44px;border:1px solid #bec6d0;border-radius:10px;padding:10px 14px;background:#fff;font-weight:700;font-size:13px;color:#3c6ca4;display:inline-flex;align-items:center;justify-content:center;gap:7px}.fm-ledger button:disabled{opacity:.5}.fm-ledger-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.fm-ledger-kpi{background:#fff;border:1px solid #d6dce2;border-radius:16px;padding:21px;min-width:0}.fm-ledger-kpi:first-child{background:#3c6ca4;color:#fff;border-color:#3c6ca4}.fm-ledger-kpi span{font-size:12px;font-weight:650;color:#53606f}.fm-ledger-kpi:first-child span,.fm-ledger-kpi:first-child small{color:#d2dde9}.fm-ledger-kpi strong{display:block;font-size:clamp(22px,2.3vw,32px);font-weight:850;letter-spacing:-.04em;margin:12px 0 5px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.fm-ledger-kpi small{font-size:11px;color:#616a74;line-height:1.7}.fm-ledger-kpi.review strong{color:#875723}.fm-ledger-note{background:#e9eef4;border:1px solid #c9d5e3;border-radius:12px;padding:14px 17px;font-size:13px;line-height:1.75;color:#465668}.fm-ledger-note strong{color:#2b415b}.fm-ledger-body{background:#fff;border:1px solid #d8dde3;border-radius:17px;padding:20px}.fm-ledger-body-head{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:16px}.fm-ledger-body h2{font-weight:800;font-size:19px}.fm-ledger-filters{display:flex;gap:6px;flex-wrap:wrap}.fm-ledger-filters button{min-height:38px;padding:8px 12px;border-color:transparent;font-size:12px;background:#f0f3f6;color:#5b646f}.fm-ledger-filters button[aria-pressed=true]{background:#dae4ef;border-color:#adc1d7;color:#2b4059}.fm-ledger-table-wrap{overflow-x:auto}.fm-ledger-table{width:100%;border-collapse:collapse;font-size:13px}.fm-ledger-table th{text-align:left;padding:12px 10px;background:#eff2f6;font-size:11px;color:#586370}.fm-ledger-table td{padding:16px 10px;border-bottom:1px solid #e5e9ed;vertical-align:middle}.fm-ledger-table td strong{display:block;color:#20354c;font-weight:750}.fm-ledger-table td small{display:block;font-size:11px;color:#5b6672;margin-top:5px}.fm-ledger-table .money{font-size:17px;font-weight:800;white-space:nowrap;color:#2d5280}.fm-ledger-badge{background:#e9eef3;color:#38506b;display:inline-block;padding:5px 9px;border-radius:7px;font-size:11px;font-weight:700}.fm-ledger-badge.review{background:#fff3e2;color:#845827}.fm-ledger-badge.excluded{background:#f1f2f3;color:#6b6f74}.fm-ledger-empty{padding:42px 15px;text-align:center;color:#6c747e;line-height:1.7}.fm-ledger-error{background:#fff0e9;border:1px solid #e3b8a3;color:#8c3d23;border-radius:12px;padding:16px;line-height:1.65}.fm-ledger-editor{scroll-margin-top:80px}.fm-ledger-editor>.fm-settlement{background:white}.fm-ledger-editor-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;gap:10px}.fm-ledger-editor-head h2{font-size:19px;font-weight:750}.fm-ledger-footer{display:flex;gap:10px;justify-content:space-between;align-items:center;flex-wrap:wrap;color:#626b76;font-size:12px}
.fm-login-surface{background:#ecf0f5!important}.fm-login-card{border:1px solid #d4dbe2!important;border-radius:25px!important;box-shadow:0 20px 60px #15273c10!important}.fm-login-card button[type=submit]{background:#3c6ca4!important;box-shadow:0 4px 10px #2d528020!important;min-height:48px;border-radius:11px}.fm-login-card input{min-height:48px;border-color:#bdc6d0!important;border-radius:11px}.fm-login-card h1{color:#17283c!important}.fm-login-card p{color:#616c79!important}
@media(min-width:768px){.fm-app-header{position:sticky;top:0;z-index:20}.fm-order-table td{padding-top:14px;padding-bottom:14px}.fm-mobile-nav{display:none}}
@media(max-width:1100px){.fm-ledger-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1023px){.fm-map-layout{display:flex!important;flex-direction:column;height:auto!important;min-height:0!important}.fm-map-layout>div:first-child{flex:none!important;height:38dvh;min-height:280px;width:100%}.fm-map-layout>div:last-child{width:100%!important;max-height:none!important;overflow:visible;flex:none!important}.fm-map-layout>div:last-child>div{padding:20px}.fm-map-legend{flex-wrap:wrap;row-gap:8px}}
@media(max-width:767px){.fm-app-shell main{padding:18px 14px calc(88px + env(safe-area-inset-bottom))!important}.fm-app-header{padding:0 14px;height:62px}.fm-header-brand strong{font-size:15px}.fm-header-brand small{font-size:9px}.fm-app-shell main h1{font-size:26px!important}.fm-map-focus{padding:17px 19px;gap:12px;align-items:flex-start;flex-direction:column}.fm-map-focus h2{font-size:29px}.fm-focus-status{flex-direction:row;align-items:center;gap:10px;flex-wrap:wrap}.fm-focus-status small{text-align:left;font-size:11px}.fm-map-focus .fm-focus-name{font-size:16px}.fm-map-focus:before{left:8px;top:16px;bottom:16px;width:4px}.fm-map-layout>div:first-child{border-radius:16px}.fm-map-layout>div:last-child>div{padding:16px}.fm-order-table tbody tr{background:white!important;border-color:#d5dce3;border-radius:17px;padding:17px;box-shadow:0 3px 18px #17283c04}.fm-order-table tbody td{border:0!important}.fm-order-table td::before{color:#5b6672}.fm-slot-identity h5{font-size:24px}.fm-ledger{gap:16px}.fm-ledger-head{align-items:flex-start}.fm-ledger-toolbar{width:100%;display:grid;grid-template-columns:1fr 1fr}.fm-ledger-toolbar label{min-width:0}.fm-ledger-toolbar input,.fm-ledger-toolbar select{min-width:0;max-width:100%;width:100%;font-size:16px}.fm-ledger-toolbar>button{grid-column:1/-1}.fm-ledger-kpis{gap:10px}.fm-ledger-kpi{padding:16px}.fm-ledger-kpi strong{font-size:23px}.fm-ledger-body{padding:16px}.fm-ledger-table-wrap{overflow:visible}.fm-ledger-table,.fm-ledger-table tbody{display:block}.fm-ledger-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.fm-ledger-table tr{display:grid;grid-template-columns:1fr 1fr;gap:13px 10px;padding:16px 0;border-bottom:1px solid #dee4ea}.fm-ledger-table td{display:block;padding:0;border:0;min-width:0;overflow-wrap:anywhere}.fm-ledger-table td::before{content:attr(data-label);display:block;font-size:10px;color:#5b6672;margin-bottom:7px}.fm-ledger-table td[data-label="고객 · 기사"],.fm-ledger-table td[data-label="확인"]{grid-column:1/-1}.fm-ledger-table td[data-label="확인"]::before{display:none}.fm-ledger-table td[data-label="확인"] button{width:100%}.fm-ledger-table .money{font-size:19px}.fm-ledger-editor-head{align-items:flex-start}.fm-ledger-footer>a{width:100%}.fm-settlement{padding:16px}.fm-slot-metrics strong{font-size:17px}}
@media(prefers-reduced-motion:no-preference){.fm-app-shell button,.fm-ledger a{transition:background-color .15s,border-color .15s,box-shadow .15s}.fm-slot-card{transition:border-color .15s,box-shadow .15s}.fm-slot-card:hover{box-shadow:0 6px 18px #17283c0d}}

@media(max-width:767px){.fm-app-shell input,.fm-app-shell select,[role=dialog] input{font-size:16px}.fm-ledger-filters button{min-height:44px}}

.fm-finance-review,.fm-finance-history{background:#fff;border:1px solid #a9b6c5;border-radius:16px;padding:20px;display:grid;gap:14px;scroll-margin-top:90px}.fm-finance-review h2,.fm-finance-history h2{font-size:20px;font-weight:800}.fm-finance-review p{line-height:1.65}.fm-finance-review article{border:1px solid #d7dee6;background:#f2f5f9;padding:16px;border-radius:12px;display:grid;gap:7px}.fm-finance-review label{display:grid;gap:8px;font-size:14px}.fm-finance-review input[type=date],.fm-finance-review textarea{border:1px solid #b9c3ce;padding:12px;border-radius:9px;min-height:44px;background:#fff}.fm-finance-amount{font-weight:800;color:#2d5280;font-size:20px}.fm-finance-review .fm-finance-confirm{display:flex;align-items:flex-start;gap:10px;padding:14px;background:#e6edf4;border-radius:10px}.fm-finance-confirm input{margin-top:3px;min-width:21px;min-height:21px;accent-color:#3c6ca4}.fm-finance-review .fm-finance-primary{background:#3c6ca4;color:#fff;min-height:48px}.fm-finance-review [role=alert]{color:#9d3725;background:#fff1e9;padding:13px;border-radius:9px}.fm-finance-days{display:flex;gap:9px;overflow-x:auto;padding-bottom:5px}.fm-finance-days button{display:flex;flex-direction:column;align-items:flex-start;min-width:150px;gap:5px}.fm-finance-days button[aria-pressed=true]{background:#e6edf4;border-color:#6e839b}.fm-finance-days small{color:#5c6671}.fm-finance-bulk{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:16px}.fm-finance-bulk small{font-size:12px;color:#5c6671}.fm-finance-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.fm-finance-actions button{font-size:12px!important;padding:8px 10px!important}.fm-ledger-table input[type=checkbox]{width:22px;height:22px;accent-color:#3c6ca4}.fm-finance-history p{line-height:1.8;font-size:13px;overflow-wrap:anywhere}.fm-ledger-table td[data-label="승인 확정액"]{min-width:120px}.fm-ledger-table td[data-label="상태 · 처리"]{max-width:290px}.fm-finance-review input:read-only{background:#eff0f2;color:#5c6671}
@media(max-width:767px){.fm-finance-review{padding:16px}.fm-finance-review input,.fm-finance-review textarea{font-size:16px}.fm-ledger-table td[data-label="상태 · 처리"]{grid-column:1/-1;max-width:none}.fm-ledger-table td[data-label="선택"]{grid-column:1/-1}.fm-finance-bulk>button{width:100%}.fm-ledger-table input[type=checkbox]{min-height:22px!important}.fm-finance-confirm input{min-height:21px!important}.fm-finance-actions button{flex:1 0 42%}.fm-finance-review .fm-ledger-editor-head h2{font-size:18px}}

.fm-sidebar-logo{display:block;width:36px;height:40px;object-fit:contain;flex-shrink:0;border-radius:0;background:white}
.fm-batch{padding:22px;border:1px solid #c5d1df;border-radius:18px;background:#f6f8fb;color:#16273a;max-width:100%;overflow-wrap:anywhere}
.fm-batch-header,.fm-batch-tools,.fm-batch-row-tools,.fm-batch-summary{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.fm-batch-header{justify-content:space-between}.fm-batch-kicker{font-size:11px;color:#4c6077;letter-spacing:.1em;font-weight:700}.fm-batch h2{font-size:20px;font-weight:750;margin:5px 0}.fm-batch p{font-size:13px;line-height:1.7;margin:5px 0}.fm-batch small{display:block;font-size:12px;line-height:1.65;color:#526071}.fm-batch button{border:1px solid #aab8c9;border-radius:10px;padding:10px 14px;background:white;color:#193556;font-weight:650;font-size:13px}.fm-batch button:disabled{opacity:.45;cursor:not-allowed}.fm-batch label{font-size:12px;display:flex;gap:8px;align-items:center}.fm-batch input[type=number]{width:80px}.fm-batch input,.fm-batch select{border:1px solid #b6c1ce;border-radius:7px;padding:7px;background:white;color:#18293c}.fm-batch-summary{margin:15px 0;padding:14px;border-radius:12px;background:#e1e8f0;font-size:13px}.fm-batch-summary strong{font-size:17px}.fm-batch-note{color:#586676}.fm-batch-alert{background:#fff1e2;color:#8c4818;padding:11px;border-radius:9px}.fm-batch-tech{margin:15px 0}.fm-batch h3{font-weight:700;margin:8px 0}.fm-batch-jobs{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:10px}.fm-batch-job{border:1px solid #d4dbe3;border-radius:12px;background:white;padding:15px}.fm-batch-job strong{font-size:15px}.fm-batch-row-tools{margin-top:10px;gap:10px}.fm-batch-pending{border-top:1px solid #d0d7df;padding-top:12px}.fm-batch-pending summary{cursor:pointer;font-weight:650}.fm-batch-pending article{padding:13px 0;border-bottom:1px solid #d0d7df}.fm-batch-approval,.fm-batch-confirmed{display:grid;gap:10px;margin-top:15px;padding:16px;border-radius:12px;background:#e4ebf3}.fm-batch .fm-batch-confirm{background:#3c6ca4;color:white;border-color:#3c6ca4;min-height:46px}.fm-batch input[type=checkbox]{width:18px;height:18px;flex-shrink:0;accent-color:#3c6ca4}
@media(max-width:640px){.fm-batch{padding:15px;border-radius:14px}.fm-batch h2{font-size:18px}.fm-batch-tools{width:100%}.fm-batch-tools>button{width:100%;min-height:44px}.fm-batch-summary{gap:9px}.fm-batch-approval label{line-height:1.6;align-items:flex-start}}

.fm-default-rate,.fm-owner-inbox{background:#f4f7fa;border:1px solid #c5d1de;border-radius:18px;padding:20px;margin:20px 0;color:#192b3f}.fm-default-rate h3,.fm-owner-inbox h2{font-size:1.25rem;font-weight:750;margin-bottom:12px}.fm-default-rate p,.fm-owner-inbox p{line-height:1.7;margin:8px 0}.fm-owner-item{background:white;border:1px solid #d7dde4;padding:18px;border-radius:14px;margin-top:14px}.fm-owner-inbox pre,.fm-owner-dialog pre{font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;padding:12px;background:#eaeef2;border-radius:10px}.fm-owner-inbox button,.fm-default-rate button{border:1px solid #9cacbe;background:white;border-radius:10px;padding:10px 15px;min-height:44px;margin:5px}.fm-owner-inbox input,.fm-default-rate input{border:1px solid #9cacbe;border-radius:10px;padding:12px;max-width:100%;background:white}.fm-owner-backdrop{position:fixed;inset:0;background:#12253b99;z-index:2147483000;display:flex;align-items:center;justify-content:center;padding:16px}.fm-owner-dialog{background:white;color:#17293d;border-radius:22px;padding:24px;width:min(580px,100%);max-height:90dvh;overflow:auto;box-shadow:0 20px 70px #12253b40}.fm-owner-dialog h2{font-size:1.45rem;font-weight:800;margin-bottom:14px}.fm-owner-dialog h3{font-size:1.1rem;font-weight:700}.fm-owner-dialog p,.fm-owner-dialog pre{margin:12px 0;line-height:1.7}.fm-owner-dialog label{display:block;margin:20px 0}.fm-owner-dialog input{width:20px;height:20px;vertical-align:middle}.fm-owner-dialog button{padding:12px 18px;border:1px solid #93a4b8;border-radius:10px;margin:5px;min-height:44px}.fm-owner-dialog button:disabled{opacity:.45}.fm-owner-dialog .fm-finance-primary{background:#193556;color:white}

.fm-coordination{margin:20px 0;padding:22px;border:1px solid #c5cfdb;border-radius:20px;background:#f4f7fa;color:#20344a;line-height:1.7}.fm-coordination h4{font-size:21px;font-weight:750;margin:8px 0}.fm-coordination p{margin:10px 0}.fm-coordination button{display:block;width:100%;margin:10px 0;padding:12px 16px;border:1px solid #99a8b9;border-radius:12px;background:white;color:#16304e;font:inherit;font-weight:650;text-align:left;cursor:pointer}.fm-coordination button:disabled{opacity:.45;cursor:default}.fm-coordination article{background:white;border:1px solid #d4dae1;border-radius:14px;margin:14px 0;padding:16px}.fm-coordination small{display:block;color:#646e79}.fm-coordination label{display:block;margin:14px 0}.fm-coordination input[type=checkbox]{width:18px;height:18px;margin-right:10px;accent-color:#183453}.fm-coordination .fm-coord-warning{border-radius:12px;background:#fff1df;color:#855b2b;padding:13px}.fm-coordination .fm-coord-final{padding:16px;background:#dee7f1;border-radius:12px}.fm-coordination .fm-coord-final button{background:#183352;color:white}.fm-coordination details{margin-top:16px}.fm-coordination summary{cursor:pointer}@media(max-width:600px){.fm-coordination{padding:16px;margin:16px 0}.fm-coordination h4{font-size:20px}}

.fm-coord-sync{display:block;margin:10px 0;color:#525e6b;font-size:12px;line-height:1.6}.fm-coord-response-count{color:#2d5280;font-weight:600}

.fm-ops-hub,.fm-ops-review,.fm-ops-delivery{border:1px solid #ccd4dd;border-radius:18px;background:#f6f8fa;padding:20px;margin:16px 0;color:#18293d}.fm-ops-hub h2{font-size:22px;font-weight:800}.fm-ops-hub p,.fm-ops-review p{line-height:1.7;margin:10px 0}.fm-ops-tools{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:12px 0}.fm-ops-hub button,.fm-ops-hub a,.fm-ops-review button,.fm-ops-delivery button{min-height:44px;border:1px solid #aebbc9;border-radius:10px;padding:9px 14px;background:white;color:#3c6ca4;font-weight:650}.fm-ops-hub button:disabled,.fm-ops-review button:disabled{opacity:.45}.fm-ops-tools select{padding:10px;border:1px solid #b3beca;border-radius:10px;background:#fff;min-height:44px;max-width:100%}.fm-ops-card{background:white;border:1px solid #d5dce3;border-radius:12px;padding:16px;margin:12px 0}.fm-ops-review{background:#e6ecf3}.fm-ops-review textarea{display:block;width:100%;min-height:90px;margin:12px 0;padding:12px;border:1px solid #acb8c5;border-radius:8px}.fm-ops-review input[type=checkbox]{margin-right:9px}.fm-ops-pre{white-space:pre-wrap;overflow-wrap:anywhere}.fm-ops-photos{display:flex;gap:10px;flex-wrap:wrap}.fm-ops-photos a{display:grid;gap:5px}.fm-ops-photos img{width:140px;height:120px;object-fit:cover;border-radius:8px}.fm-ops-warning,[role=alert]{color:#974329}.fm-ops-delivery summary{font-weight:700;cursor:pointer}.fm-ops-delivery article{border-bottom:1px solid #d7dde3;padding:10px 0}.fm-ops-hub small{color:#636c77}#workReportEditor label{display:grid;gap:7px;margin:14px 0}#workReportEditor textarea{min-height:90px;padding:10px}#workReportEditor form{max-width:800px}#workReportEditor img{height:110px;object-fit:cover}@media(max-width:600px){.fm-ops-hub,.fm-ops-review,.fm-ops-delivery{padding:14px}.fm-ops-tools>*{flex:1 1 auto}.fm-ops-card{padding:12px}.fm-ops-hub h2{font-size:20px}}

/* Map labels are deliberately smaller than ordinary form buttons. */
.fm-map-name-label{display:inline-flex!important;flex-direction:row!important;align-items:center!important;gap:4px!important;width:auto!important;min-width:0!important;max-width:none!important;height:23px!important;min-height:23px!important;padding:0 5px!important;border:1px solid #a9b3bf!important;border-left:4px solid var(--crew-color)!important;border-radius:5px!important;background:#fff!important;color:#202a35!important;box-shadow:0 1px 3px #17283c24!important;transform:translateY(-6px)!important;white-space:nowrap!important;overflow:visible!important;cursor:pointer;font-family:inherit;line-height:1!important;box-sizing:border-box!important;text-size-adjust:100%;-webkit-text-size-adjust:100%}
.fm-map-name-label strong{display:inline!important;padding:0!important;background:transparent!important;color:#18293d!important;font-size:11px!important;font-weight:750!important;line-height:1!important}
.fm-map-name-label span{display:inline!important;padding:0!important;color:#333c47!important;font-size:10px!important;font-weight:600!important;font-variant-numeric:tabular-nums;line-height:1!important}
.fm-map-name-label:hover,.fm-map-name-label:focus-visible{outline:2px solid #15283d!important;outline-offset:2px!important;z-index:20}
.fm-map-name-label.fm-map-has-service{display:grid!important;grid-template-columns:max-content max-content!important;column-gap:4px!important;row-gap:1px!important;height:31px!important;min-height:31px!important;padding:2px 5px!important;align-content:center!important}
.fm-map-name-label small{grid-column:1/-1;display:block!important;max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#5b636d!important;font-size:9px!important;font-weight:500!important;line-height:10px!important;text-align:left}

.fm-map-name-label.fm-map-pending-label{border-left-color:#94a3b8!important;background:#fff!important}
.fm-map-pending-label strong{color:#586773!important}
.fm-map-name-label.fm-map-pin-selected{outline:2px solid #1b395b!important;outline-offset:2px!important;box-shadow:0 2px 6px #17283c40!important}

.fm-team-panel,.fm-team-finance{margin:16px 0;padding:18px;border:1px solid #cbd4de;border-radius:15px;background:#f5f7fa;color:#192a3d;line-height:1.65}.fm-team-panel>summary{font-size:17px;font-weight:800;cursor:pointer;min-height:44px}.fm-team-panel p,.fm-team-finance p{margin:10px 0}.fm-team-panel button{min-height:44px;padding:10px 13px;border:1px solid #bdc6d0;border-radius:10px;background:#fff;margin:5px 5px 5px 0;line-height:1.5}.fm-team-panel button:disabled{opacity:.5}.fm-team-panel .fm-team-primary{background:#3c6ca4;border-color:#3c6ca4;color:#fff;font-weight:750}.fm-team-inputs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0}.fm-team-panel label{display:grid;gap:7px;font-size:13px;font-weight:650}.fm-team-panel input,.fm-team-panel select,.fm-team-panel textarea{width:100%;min-height:44px;padding:10px;border:1px solid #b6c1ce;border-radius:9px;background:white;color:#192a3d;font:inherit}.fm-team-panel .fm-team-check{display:flex;align-items:flex-start;gap:10px}.fm-team-check input{min-height:20px;width:20px;flex:0 0 20px}.fm-team-panel .fm-team-candidate{display:grid;width:100%;text-align:left;gap:5px;padding:14px}.fm-team-candidate.selected{outline:2px solid #1d3e64;outline-offset:1px}.fm-team-candidate small,.fm-team-note{font-size:12px;color:#606872}.fm-team-review{padding:15px;background:#e7edf3;border-radius:12px;margin-top:15px}.fm-team-warning{color:#8d4b23}.fm-team-finance article{border-bottom:1px solid #d6dde4;padding:13px 0}.fm-team-finance label{margin:12px 0}.fm-team-panel h4{font-size:16px;font-weight:750}@media(max-width:600px){.fm-team-inputs{grid-template-columns:1fr}.fm-team-panel{padding:14px}.fm-team-finance{padding:12px}}

.fm-day-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin:14px 0}.fm-day-controls label{display:grid;gap:6px;flex:1 1 150px;font-size:13px}.fm-day-controls input,.fm-day-controls select{width:100%;min-height:44px;border:1px solid #bdc6d1;border-radius:10px;padding:9px;background:white;color:#173e34}.fm-day-controls button{min-height:44px;max-width:100%;white-space:normal;text-align:left;padding:9px 12px;border:1px solid #bdc6d1;border-radius:10px;background:white}.fm-dayteams .fm-day-check{display:flex;gap:9px;align-items:flex-start;max-width:350px;font-size:13px;line-height:1.7}.fm-day-check input{width:20px;height:20px;flex:0 0 20px;margin-top:3px}.fm-day-date-alert{border-left:4px solid #b5682c;background:#fff1df;padding:14px;margin:15px 0;border-radius:10px;color:#77411a;font-weight:650}.fm-day-members{color:#16304d;font-weight:750}.fm-dayteams .fm-batch-job small{display:block;line-height:1.6}.fm-dayteams .fm-batch-tech h3{margin:20px 0 10px}.fm-dayteams .fm-batch-job{margin-bottom:14px}@media(max-width:600px){.fm-day-controls{display:grid;grid-template-columns:1fr}.fm-day-controls button{width:100%}.fm-dayteams .fm-batch-tools{width:100%}.fm-dayteams .fm-batch-tools>button{width:100%}}

.fm-time-hub{margin:20px 0;padding:18px;border:1px solid #cdd5de;border-radius:18px;background:#f5f7fa;color:#18293d}.fm-time-hub summary{font-weight:750;cursor:pointer;font-size:18px}.fm-time-hub p{margin:10px 0;line-height:1.6}.fm-time-card{margin:12px 0;padding:16px;background:white;border:1px solid #dce1e7;border-radius:12px}.fm-time-card input:not([type=checkbox]){max-width:100%;border:1px solid #b4bfcb;padding:9px;border-radius:8px;display:block;margin:8px 0;box-sizing:border-box}.fm-time-card button,.fm-time-hub>button,.fm-time-hint button{padding:9px 13px;margin:4px;border:1px solid #9dacbe;border-radius:9px;background:#fff}.fm-time-check{display:flex;gap:8px;align-items:flex-start;margin:12px 0;line-height:1.6}.fm-time-check input{margin-top:6px;flex-shrink:0}.fm-time-card button:disabled{opacity:.45}.fm-time-hint{padding:12px;background:#e9eef4;border-radius:10px;margin:10px 0}.fm-time-hint small{display:block}.fm-map-name-label{transform:translate(var(--fm-pin-x,0px),calc(-6px + var(--fm-pin-y,0px)))!important}.fm-map-name-label.fm-pin-dim{opacity:.3!important}.fm-map-name-label.fm-pin-status-wait{border-bottom:2px dashed #c18b35!important}.fm-map-name-label.fm-pin-status-accepted{border-bottom:2px solid #147858!important}.fm-map-route-tools{padding:12px;border:1px solid #d3dbe4;border-radius:12px;background:#f8f9fb;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.fm-map-route-tools select{max-width:100%;padding:9px;border:1px solid #aab6c3;border-radius:8px}.fm-map-route-tools small{width:100%;line-height:1.5}.fm-map-route-list{display:flex;gap:6px;flex-wrap:wrap}.fm-map-route-list button{font-size:12px;padding:7px;border:1px solid #bdc5cf;background:#fff;border-radius:8px}.fm-map-overflow-list{padding:8px;background:white;border:1px solid #d6dce3;border-radius:10px}.fm-map-overflow-list button{padding:8px;margin:4px;border:1px solid #cbd2d9;border-radius:8px;background:#fff}.fm-map-link-layer{position:absolute;inset:0;pointer-events:none;z-index:2;overflow:hidden}.fm-map-link-layer line{stroke:#6c7681;stroke-width:1;stroke-dasharray:3 2}.fm-map-link-layer polyline{fill:none;stroke:#1b3a5d;stroke-width:2;stroke-dasharray:6 4}@media(max-width:600px){.fm-time-hub{padding:14px}.fm-time-card{padding:12px}.fm-time-card input:not([type=checkbox]){font-size:16px;width:100%}.fm-time-card button{width:100%;margin:5px 0}.fm-map-route-tools select{width:100%}}

.fm-map-crew-legend{flex-wrap:wrap;gap:8px 14px!important}.fm-map-crew-legend>span{flex-shrink:0;white-space:nowrap}.fm-map-crew-legend>span>span{flex-shrink:0}@media(max-width:600px){.fm-map-crew-legend>span:last-child{flex-basis:100%;margin-left:0!important}}

.fm-control-health,.fm-period-panel{background:#f4f7fa;border:1px solid #bdc9d7;border-radius:20px;padding:20px;margin:16px 0;color:#16283d;overflow-wrap:anywhere}.fm-control-health h2,.fm-period-panel summary{font-size:18px;font-weight:750}.fm-control-health p,.fm-period-panel p{margin:8px 0;line-height:1.6}.fm-control-warning{background:#fff3e4;border:1px solid #efd4ae;border-radius:12px;padding:12px;margin:8px 0}.fm-control-toolbar{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.fm-control-health button,.fm-period-panel button,.fm-impact-dialog button{border:1px solid #adb9c6;background:white;padding:10px 14px;border-radius:10px;margin:4px;cursor:pointer}.fm-period-panel input:not([type=checkbox]),.fm-period-panel select,.fm-period-panel textarea{min-height:42px;border:1px solid #adb9c6;border-radius:8px;padding:8px;background:#fff;max-width:100%}.fm-period-confirm{display:grid;gap:12px;margin-top:16px}.fm-period-confirm label{display:flex;gap:10px;align-items:flex-start}.fm-control-line{border-bottom:1px solid #cdd5de;padding:10px 0}.fm-impact-dialog{width:min(650px,calc(100vw - 24px));max-height:85dvh;overflow:auto;border:1px solid #bdc5cf;border-radius:20px;padding:24px;color:#16283d;background:#fff;line-height:1.6}.fm-impact-dialog::backdrop{background:#162434b3}.fm-impact-dialog h2{font-size:23px;font-weight:750;margin-bottom:12px}.fm-impact-dialog h3{font-weight:700;margin:14px 0}.fm-impact-dialog p{margin:8px 0}.fm-impact-dialog label{display:block;margin:16px 0}.fm-impact-dialog input{margin-right:10px}.fm-period-panel button:disabled,.fm-impact-dialog button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:500px){.fm-control-health,.fm-period-panel{padding:14px}.fm-control-toolbar>*{min-width:0;flex:1 1 auto}.fm-period-panel summary{font-size:16px}}

.followup{margin-top:22px;padding:22px 18px;background:white;border:1px solid #b9c7d6;border-radius:18px}.followup h2{font-size:23px;line-height:1.4;margin:0 0 10px}.followup label{display:block;font-weight:650;margin:14px 0}.followup input,.followup select,.followup textarea{display:block;width:100%;min-width:0;max-width:100%;padding:12px;border:1px solid #bac2cc;background:#fff;border-radius:10px;font:inherit;color:#182b40;margin-top:6px}.followup textarea{resize:vertical}.followup-window{background:#f3f5f8;border-radius:12px;padding:14px;margin:14px 0}.followup-window legend{font-size:15px}.followup [hidden]{display:none!important}.followup small{display:block;margin-top:12px}.fm-followup{border-left:4px solid #839ab5;padding:12px;background:#f1f4f8;margin:14px 0;border-radius:10px}.fm-followup p{white-space:pre-wrap;overflow-wrap:anywhere}.fm-followup-candidate{display:block;margin:8px 0;padding:12px;border:1px solid #bec6d0;border-radius:10px}.fm-followup-candidate input{margin-right:10px}.fm-followup select,.fm-followup input[type=number]{max-width:100%;padding:8px;border:1px solid #b8c0c9;border-radius:8px}.fm-followup-status{font-weight:650;color:#2d5280}
.followup summary{cursor:pointer;font-weight:700;color:#183453;padding:12px 0}body[data-flow=followup] #result,body[data-flow=followup] #deadline{display:none}body[data-flow=followup] main>p:first-of-type{display:none}body[data-flow=followup] .note{font-size:14px}body[data-flow=followup] .followup{margin-top:16px}

.fm-phone-quick{background:#fff;border:1px solid #c8d2dd;border-radius:20px;padding:24px;scroll-margin-top:90px;color:#19293c;margin:18px 0}.fm-phone-quick h2{font-size:23px;font-weight:800;margin:7px 0}.fm-phone-quick p{line-height:1.65;margin:8px 0}.fm-phone-quick small{display:block;color:#576371;line-height:1.6;font-size:13px}.fm-phone-quick h3{font-size:19px;font-weight:750}.fm-phone-quick h4{font-size:17px;font-weight:750}.fm-phone-quick button,.fm-phone-quick a,.fm-phone-table{border:1px solid #aebbc9;background:white;color:#17314f;border-radius:10px;padding:10px 14px;min-height:44px;font:inherit;font-weight:650;cursor:pointer}.fm-phone-quick button:disabled{opacity:.5;cursor:not-allowed}.fm-phone-quick .fm-phone-primary{background:#3c6ca4;color:#fff;border-color:#3c6ca4}.fm-phone-quick input,.fm-phone-quick select{min-width:0;width:100%;min-height:46px;border:1px solid #b5c0cd;border-radius:9px;padding:10px;background:#fff;color:#19293c;font:inherit}.fm-phone-quick input[type=checkbox]{width:20px;min-height:20px;margin-right:8px}.fm-phone-quick :focus-visible{outline:3px solid #3c6ea8;outline-offset:3px}.fm-phone-search{display:flex;gap:9px;margin:18px 0}.fm-phone-search input{flex:1}.fm-phone-search button{white-space:nowrap}.fm-phone-results{display:grid;gap:10px;max-height:420px;overflow:auto;padding:4px}.fm-phone-result{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px;border:1px solid #e0e4e9;border-radius:12px}.fm-phone-result button{flex-shrink:0;text-align:left}.fm-phone-status{margin-left:10px;font-size:12px;padding:3px 7px;background:#e4ebf2;border-radius:5px}.fm-phone-customer{border-top:2px solid #d3dae3;padding-top:20px;margin-top:20px;overflow-wrap:anywhere}.fm-phone-heading,.fm-phone-actions,.fm-phone-presets{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.fm-phone-heading{justify-content:space-between}.fm-phone-actions{margin:15px 0}.fm-phone-proposal{background:#f5f7f9;border-radius:14px;padding:20px;margin-top:15px}.fm-phone-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:12px;margin:14px 0}.fm-phone-fields label{display:grid;gap:7px;font-size:13px;font-weight:650;min-width:0}.fm-phone-presets{margin:10px 0}.fm-phone-presets button{font-size:13px}.fm-phone-proposal form>button{margin-top:12px}.fm-phone-notice{padding:13px;background:#e4ebf2;border-radius:10px;margin:14px 0}.fm-phone-quick [role=alert]{color:#a2392c}.fm-phone-table{font-size:11px;padding:5px 8px;min-height:32px;margin-top:5px;display:block}.fm-phone-original{margin:4px 0}.fm-phone-quick .fm-coordination{margin-top:22px}.fm-phone-quick .fm-coordination button{white-space:normal;text-align:left}.fm-phone-quick .fm-coordination label{line-height:1.7}.fm-phone-quick .fm-coordination article{overflow-wrap:anywhere}@media(max-width:600px){.fm-phone-quick{padding:16px;border-radius:16px}.fm-phone-quick h2{font-size:20px}.fm-phone-result{align-items:stretch;flex-direction:column;gap:9px;padding:12px}.fm-phone-result button{width:100%}.fm-phone-proposal{padding:14px}.fm-phone-fields{grid-template-columns:1fr}.fm-phone-search{gap:7px}.fm-phone-search button{padding:10px}.fm-phone-quick .fm-coordination{padding:12px}.fm-phone-heading{align-items:flex-start}.fm-phone-heading button{font-size:12px;padding:8px}.fm-phone-actions{align-items:stretch}.fm-phone-actions .fm-phone-primary{flex-basis:100%}}
.fm-phone-customer{scroll-margin-top:90px}

.fm-phone-intake{background:#fff;border:1px solid #c8d2dd;border-radius:20px;padding:24px;scroll-margin-top:90px;color:#19293c;margin:18px 0}.fm-phone-intake h2{font-size:23px;font-weight:800;margin:7px 0}.fm-phone-intake h3{font-size:19px;font-weight:750;margin:0}.fm-phone-intake p{line-height:1.65;margin:8px 0}.fm-phone-intake small{display:block;color:#576371;line-height:1.6;font-size:13px}
.fm-phone-intake button{border:1px solid #aebbc9;background:#fff;color:#17314f;border-radius:10px;padding:10px 14px;min-height:44px;font:inherit;font-weight:650;cursor:pointer}.fm-phone-intake button:disabled{opacity:.5;cursor:not-allowed}.fm-phone-intake .fm-phone-primary{background:#3c6ca4;color:#fff;border-color:#3c6ca4}
.fm-phone-intake input,.fm-phone-intake select{min-width:0;width:100%;min-height:46px;border:1px solid #b5c0cd;border-radius:9px;padding:10px;background:#fff;color:#19293c;font:inherit}.fm-phone-intake input[type=checkbox]{width:20px;min-height:20px;margin-right:8px}.fm-phone-intake :focus-visible{outline:3px solid #3c6ea8;outline-offset:3px}
.fm-pi-form{display:grid;grid-template-columns:2fr 1fr;gap:12px;align-items:end;margin:16px 0}.fm-pi-form label{font-weight:650;display:grid;gap:6px}.fm-pi-form .fm-pi-check{grid-column:1/-1;display:flex;align-items:center;font-weight:500}.fm-pi-form .fm-phone-primary{grid-column:1/-1}
.fm-pi-confirm{border:2px solid #3c6ca4;border-radius:14px;padding:16px;margin:12px 0;background:#f2f6fa}.fm-pi-confirm strong{font-size:22px;letter-spacing:.5px}.fm-pi-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.fm-pi-result{border:1px solid #9cb0c7;background:#f2f6fa;border-radius:14px;padding:14px;margin:12px 0}.fm-pi-error{color:#a73328;font-weight:650}.fm-pi-warn{background:#fff9ed;border-left:4px solid #cc9b36;padding:10px 14px;border-radius:6px}.fm-pi-note{word-break:break-all}
.fm-pi-list{margin-top:22px;border-top:1px solid #e0e4e9;padding-top:16px}.fm-pi-listhead{display:flex;justify-content:space-between;align-items:center;gap:10px}.fm-pi-row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:14px;border:1px solid #e0e4e9;border-radius:12px;margin-top:10px}.fm-pi-row strong{margin-right:8px}
.fm-pi-tag{display:inline-block;font-size:12px;padding:3px 9px;border-radius:20px;background:#e9f2f8;color:#1e4169}.fm-pi-active{background:#e0e9f3;color:#0a6a3f}.fm-pi-expired{background:#fdecea;color:#a73328}.fm-pi-done{background:#e8eefc;color:#2a4f9c}.fm-pi-closed{background:#eee;color:#555}
@media(max-width:620px){.fm-phone-intake{padding:16px;border-radius:16px}.fm-pi-form{grid-template-columns:1fr}.fm-pi-row{flex-direction:column}.fm-pi-actions button{flex:1 1 140px}}

.fm-ir{border:2px solid #cc9b36;background:#fff9ed;border-radius:12px;padding:12px 14px;margin:10px 0;display:grid;gap:8px;font-size:14px;color:#3d2f12}.fm-ir strong{font-size:15px}.fm-ir p{margin:0}.fm-ir-ok{border-color:#2f8f5b;background:#eefaf3;color:#145c37;font-weight:600}
.fm-ir-photos{display:flex;gap:6px;overflow-x:auto}.fm-ir-photos img{height:72px;width:72px;object-fit:cover;border-radius:6px;background:#eee}
.fm-ir-row{display:grid;grid-template-columns:1fr 120px auto;gap:6px;align-items:center}.fm-ir-row input{border:1px solid #d9c49a;border-radius:6px;padding:8px;min-height:40px;font:inherit;text-align:right;background:#fff}
.fm-ir-total{font-weight:700}.fm-ir-chk{display:flex;align-items:center;gap:8px}.fm-ir-chk input{width:18px;height:18px}
.fm-ir-btn{min-height:44px;border:0;border-radius:8px;background:#3c6ca4;color:#fff;font-weight:700;cursor:pointer}.fm-ir-btn:disabled{opacity:.45;cursor:not-allowed}.fm-ir-err{color:#a73328;font-weight:600}

.fm-sidenav{display:grid;gap:6px;padding-bottom:12px}.fm-sidenav-title{font-size:11px;font-weight:700;letter-spacing:.06em;color:#7c8a9a;padding:10px 16px 4px;text-transform:none}.fm-sidenav-group+.fm-sidenav-group{border-top:1px solid rgba(124,138,154,.18)}.fm-sidenav-ext{margin-left:auto;font-size:11px;opacity:.6}
@keyframes fmNavFlash{0%{box-shadow:0 0 0 0 rgba(60,108,164,.55)}100%{box-shadow:0 0 0 14px rgba(60,108,164,0)}}.fm-nav-flash{animation:fmNavFlash 1.4s ease-out 1;scroll-margin-top:80px}

.fm-slot-open{background:#fff!important;color:#3c6ca4!important;border:2px solid #3c6ca4!important;margin-top:8px}


/* ---- 첫 화면 '지금 처리할 일' + 접이식 묶음 (2026-11-08) ---- */
.fm-today{background:#fff;border:1px solid #d7dfe8;border-radius:18px;padding:20px 22px;color:#172c43;box-shadow:0 4px 18px #13284008}
.fm-today *{box-sizing:border-box}
.fm-today-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.fm-today-head h2{font-size:24px;font-weight:800;margin:0;color:#17283c}
.fm-today-head p{margin:4px 0 0;color:#606e7e;font-size:13px}
.fm-today-head button,.fm-fold-head i{border:1px solid #c7d0da;background:#fff;border-radius:10px;padding:7px 12px;font-size:13px;color:#172c43;cursor:pointer;font-style:normal;white-space:nowrap}
.fm-today-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin-top:16px}
.fm-today-card{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:12px;align-items:center;text-align:left;border:1px solid #e3c98f;background:#fffaf0;border-radius:14px;padding:14px 16px;cursor:pointer;color:#172c43;min-height:76px}
.fm-today-card strong{grid-row:1/3;font-size:32px;line-height:1;font-weight:850;color:#8a5a00;min-width:34px;text-align:center}
.fm-today-card span{font-weight:750;font-size:15px}
.fm-today-card small{color:#6b6250;font-size:12px}
.fm-today-card.danger{border-color:#e7a8a3;background:#fff4f3}
.fm-today-card.danger strong{color:#b3261e}
.fm-today-card:hover{box-shadow:0 2px 10px #0001;transform:translateY(-1px)}
.fm-today-clear{margin-top:14px;padding:16px;border-radius:14px;background:#eef2f7;color:#3c6ca4;font-weight:750}
.fm-today-waiting{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px;font-size:13px;color:#606e7e}
.fm-today-waiting>span{font-weight:700;margin-right:2px}
.fm-today-waiting button{border:1px solid #d7dfe8;background:#f6f7f9;border-radius:999px;padding:5px 12px;color:#172c43;cursor:pointer;font-size:13px}
.fm-today-foot{display:flex;flex-wrap:wrap;gap:4px 14px;margin:14px 0 0;font-size:12px;color:#7a8694}
.fm-today-error{color:#b3261e;font-size:13px;margin:10px 0 0}
.fm-fold{background:#fff;border:1px solid #dfe4ea;border-radius:14px;overflow:hidden}
.fm-fold-head{width:100%;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;background:#fff;border:0;cursor:pointer;text-align:left;color:#172c43}
.fm-fold-title{display:flex;flex-direction:column;gap:2px;min-width:0}
.fm-fold-title strong{font-size:16px;font-weight:780}
.fm-fold-title small{font-size:12px;color:#6b7988;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fm-fold.open>.fm-fold-head{border-bottom:1px solid #e6eaee;background:#f8f9fb}
.fm-fold-body{padding:4px 12px 12px}
.fm-fold-body>section{margin:12px 0 0!important;box-shadow:none!important}
.fm-fold-tools-links{display:flex;flex-wrap:wrap;gap:8px;margin:12px 4px 0}
@media (max-width:640px){
 .fm-today{padding:16px;border-radius:14px}
 .fm-today-head h2{font-size:21px}
 .fm-today-cards{grid-template-columns:1fr;gap:10px}
 .fm-today-card{min-height:64px;padding:12px 14px}
 .fm-today-card strong{font-size:28px}
 .fm-fold-head{padding:13px 14px}
 .fm-fold-title small{white-space:normal}
 .fm-fold-body{padding:2px 6px 10px}
}


/* ---- 견적서 작성·발송 (2026-11-08) ---- */
.fmq{color:#172c43;padding:6px 4px}
.fmq *{box-sizing:border-box}
.fmq h4{font-size:14px;font-weight:800;margin:16px 0 8px;color:#1f3b5c}
.fmq-tabs{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0 4px}
.fmq-tabs button{border:1px solid #c9d2dc;background:#fff;border-radius:999px;padding:6px 14px;font-size:13px;cursor:pointer}
.fmq-tabs button.on{background:#1f3b5c;border-color:#1f3b5c;color:#fff}
.fmq-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px 12px}
.fmq-field{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#4d5d70;margin-bottom:6px}
.fmq-field input,.fmq-field textarea,.fmq-items input,.fmq-itemset input{border:1px solid #cfd7e0;border-radius:8px;padding:8px 10px;font-size:14px;color:#172c43;background:#fff;width:100%}
.fmq-items{border:1px solid #dfe5eb;border-radius:12px;overflow:hidden}
.fmq-item{display:grid;grid-template-columns:34px minmax(150px,1.6fr) 1fr 1fr 64px 0.8fr;gap:6px;align-items:center;padding:7px 10px;border-top:1px solid #edf0f4;font-size:14px}
.fmq-item:first-child{border-top:0}
.fmq-item-head{background:#1f3b5c;color:#fff;font-size:12px;font-weight:700;padding:8px 10px}
.fmq-item.on{background:#f4f8fc}
.fmq-item input[type=checkbox]{width:20px;height:20px;accent-color:#1f3b5c;margin:0 auto}
.fmq-name{cursor:pointer;font-weight:600}
.fmq-dim{color:#9aa5b1;font-size:13px}
.fmq-money,.fmq-qty{text-align:right}
.fmq-x{border:0;background:#fde8e6;color:#b3261e;border-radius:8px;width:26px;height:26px;cursor:pointer;margin:0 auto}
.fmq-add,.fmq-settings>button{margin-top:8px;border:1px dashed #9facbb;background:#fff;border-radius:10px;padding:7px 12px;font-size:13px;cursor:pointer}
.fmq-total{display:flex;justify-content:flex-end;align-items:baseline;gap:16px;flex-wrap:wrap;margin:14px 2px 6px;font-size:14px}
.fmq-total strong{font-size:22px;color:#1f3b5c}
.fmq-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:10px}
.fmq-row button{border:1px solid #c7d0da;background:#fff;border-radius:10px;padding:9px 16px;font-size:14px;cursor:pointer;color:#172c43}
.fmq-row button:disabled{opacity:.45;cursor:not-allowed}
.fmq-row .fmq-primary,.fmq-primary{background:#1f3b5c!important;border-color:#1f3b5c!important;color:#fff!important;font-weight:700}
.fmq-confirm{margin-top:12px;border:1px solid #e3c98f;background:#fffaf0;border-radius:12px;padding:12px 14px;font-size:14px}
.fmq-preview{margin-top:14px;border:1px solid #d5dbe3;border-radius:12px;overflow:hidden;background:#eef1f5}
.fmq-preview iframe{width:100%;height:900px;border:0;display:block}
.fmq-err{color:#b3261e;font-size:13px;margin:8px 0 0}
.fmq-ok{color:#3c6ca4;font-size:13px}
.fmq-warn{background:#fff4e5;border:1px solid #f0d2a0;border-radius:10px;padding:10px 12px;font-size:13px;margin:8px 0}
.fmq-done{background:#eef2f7;border:1px solid #bfcee0;color:#3c6ca4;border-radius:10px;padding:10px 12px;font-size:14px;font-weight:700;margin:8px 0}
.fmq-link{border:0;background:none;color:#1f5d9c;text-decoration:underline;cursor:pointer;padding:0;font-size:13px}
.fmq-mobile-hint{display:none;font-size:12px;color:#4d5d70;margin:-4px 0 8px}
.fmq-help{font-size:13px;color:#4d5d70;margin:0 0 6px}
.fmq-steps{font-size:13px;line-height:1.8;margin:0 0 6px 18px;padding:0;list-style:decimal}
.fmq-steps a{color:#1f5d9c;text-decoration:underline}
.fmq-code{width:100%;font-family:ui-monospace,Consolas,monospace;font-size:11px;border:1px solid #cfd7e0;border-radius:8px;padding:8px;margin:8px 0;color:#445}
.fmq-itemset-row{display:grid;grid-template-columns:1fr 130px 60px;gap:6px;margin-bottom:6px}
.fmq-itemset-row button{border:1px solid #e7a8a3;background:#fff;color:#b3261e;border-radius:8px;cursor:pointer;font-size:12px}
.fmq-list-row{display:grid;grid-template-columns:1fr 1.3fr 110px 1.4fr 120px;gap:8px;align-items:center;padding:9px 4px;border-bottom:1px solid #edf0f4;font-size:13px}
.fmq-list-row small{color:#7a8694}
@media (max-width:640px){
 .fmq-item{grid-template-columns:28px 1fr 1fr 64px;row-gap:6px}
 .fmq-item-head{display:none}
 .fmq-mobile-hint{display:block}
 .fmq-item>:nth-child(2){grid-column:2/5}
 .fmq-item>:nth-child(3){grid-column:2}
 .fmq-item>:nth-child(4){grid-column:3}
 .fmq-item>:nth-child(5){grid-column:4}
 .fmq-item>:nth-child(6){grid-column:2/5}
 .fmq-item:not(.on)>:nth-child(n+3){display:none}
 .fmq-item.on>:nth-child(3)::before{content:''}
 .fmq-list-row{grid-template-columns:1fr 1fr}
 .fmq-preview iframe{height:640px}
}

/* ---- 고객 후기·불편 접수 (2026-11-09) ---- */
.fmc{color:#172c43;padding:4px}.fmc h4{font-size:15px;font-weight:800;margin:18px 0 8px;color:#1f3b5c}
.fmc-status{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.fmc-chip{font-size:12px;font-weight:700;border-radius:999px;padding:4px 10px;border:1px solid #d5dce4;background:#fff}
.fmc-chip.ok{background:#eaf0f6;border-color:#bfcee0;color:#3c6ca4}.fmc-chip.wait{background:#fff6e6;border-color:#f0d7a8;color:#8a5a16}.fmc-chip.off{color:#7a8694}
.fmc-muted{color:#6a7786;font-size:13px}.fmc-err{color:#b3261e;font-size:13px}.fmc-done{color:#3c6ca4;font-size:13px;font-weight:700}
.fmc-list{display:flex;flex-direction:column;gap:10px}
.fmc-item{border:1px solid #dfe5eb;border-radius:12px;padding:12px 14px;background:#fff}.fmc-item.open{border-color:#f0b8b2;background:#fff8f7}
.fmc-line{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:flex-start}.fmc-line a{color:#1f5d9c;font-weight:700}
.fmc-line button{margin-left:auto;border:1px solid #c7d0da;background:#fff;border-radius:9px;padding:7px 12px;font-size:13px;cursor:pointer}
.fmc-line button+button{margin-left:0}
.fmc-primary{background:#1f3b5c!important;border-color:#1f3b5c!important;color:#fff!important;font-weight:700}
.fmc-tags{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.fmc-tag{font-size:12px;font-weight:700;background:#fde8e6;color:#b3261e;border-radius:999px;padding:3px 9px}
.fmc-body{margin:8px 0;font-size:14px;line-height:1.6;white-space:pre-wrap}
.fmc-stars{color:#f2b01e;letter-spacing:1px}
.fmc-photos{display:flex;gap:8px;margin:6px 0}.fmc-photos img{width:72px;height:72px;object-fit:cover;border-radius:8px;border:1px solid #dfe5eb}
.fmc-settings{margin-top:18px;border-top:1px solid #e6ebf0;padding-top:12px}.fmc-settings summary{cursor:pointer;font-weight:700;font-size:14px}
.fmc-settings label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#4d5d70;margin:8px 0}
.fmc-settings input{border:1px solid #cfd7e0;border-radius:8px;padding:8px 10px;font-size:14px}
.fmc-settings button{border:1px solid #1f3b5c;border-radius:9px;padding:8px 16px;cursor:pointer;margin-right:10px}
