:root{color:#1d252d;font-synthesis:none;text-rendering:optimizelegibility;background:#eef1f3;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden}button,input,select,textarea{font:inherit}.topbar{z-index:10;top:max(10px, env(safe-area-inset-top));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff0;border:1px solid #00000014;border-radius:15px;justify-content:space-between;align-items:center;gap:14px;min-height:70px;padding:11px 15px;display:flex;position:fixed;left:10px;right:62px;box-shadow:0 7px 25px #00000024}.topbar-main{min-width:0}.eyebrow{color:#66717a;letter-spacing:.08em;text-transform:uppercase;margin:0 0 2px;font-size:.72rem;font-weight:750}h1,h2{margin:0;line-height:1.1}h1{text-overflow:ellipsis;white-space:nowrap;font-size:clamp(1.05rem,4vw,1.45rem);overflow:hidden}.topbar-heading-row{align-items:center;gap:8px;margin-bottom:2px;display:flex}.topbar-heading-row .eyebrow{margin:0}.interface-mode-badge{letter-spacing:.02em;white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;min-height:22px;padding:2px 8px;font-size:.65rem;font-weight:850;display:inline-flex}.interface-mode-badge.is-agent{color:#17603c;background:#eaf7f0;border-color:#aac9b9}.interface-mode-badge.is-admin{color:#622b8d;background:#f4ebfb;border-color:#c6a9df}body.admin-mode .topbar{border-color:#63318f59;box-shadow:0 7px 25px #4922692e}.campaign-context{color:#40505c;flex-wrap:wrap;align-items:baseline;gap:4px 8px;margin-top:4px;font-size:.74rem;display:flex}.campaign-context strong{color:#315e78;text-overflow:ellipsis;white-space:nowrap;max-width:min(60vw,430px);overflow:hidden}.campaign-context span{color:#68747c;font-size:.69rem}.progress{text-align:right;flex:none;min-width:76px}.progress strong,.progress span{display:block}.progress strong{font-size:1.25rem}.progress span{color:#66717a;font-size:.72rem}#map{position:absolute;inset:0}.locate-button{z-index:12;right:10px;bottom:max(76px, calc(66px + env(safe-area-inset-bottom)));color:#214f69;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff5;border:2px solid #285c7a;border-radius:14px;justify-content:center;align-items:center;gap:8px;min-width:142px;min-height:52px;padding:10px 15px;font-size:.92rem;font-weight:850;transition:transform .1s,background .14s,color .14s,border-color .14s;display:inline-flex;position:fixed;box-shadow:0 6px 20px #0000002e}.locate-button:active{transform:scale(.97)}.locate-button:focus-visible{outline-offset:2px;outline:4px solid #2463a647}.locate-button.is-loading{color:#655200;background:#fff8d8;border-color:#a17d00}.locate-button.is-active{color:#fff;background:#18864b;border-color:#176b42}.locate-button:disabled{color:#727b81;cursor:not-allowed;background:#e9edef;border-color:#9ba3a8}.locate-button-icon{font-size:1.15rem;line-height:1}.native-geolocate-control{display:none!important}.legend{z-index:9;left:10px;bottom:max(12px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff0;border-radius:11px;flex-wrap:wrap;gap:9px 11px;max-width:calc(100vw - 20px);padding:9px 11px;font-size:.76rem;font-weight:650;display:flex;position:fixed;box-shadow:0 4px 16px #0000001f}.legend span{align-items:center;gap:5px;display:flex}.legend-line{border-radius:999px;width:22px;height:5px;display:inline-block}.legend-line.todo{background:#d93636}.legend-line.doing{background:repeating-linear-gradient(90deg,#e68a00 0 6px,#0000 6px 10px)}.legend-line.done{background:#18864b;height:3px}.legend-line.filtered{border-top:4px dashed #4d7189;border-radius:0;height:0}.legend-line.hidden-street{border-top:4px dotted #747a80;border-radius:0;height:0}.legend-line.issue{background:0 0;border:2px dashed #7b2cbf;height:7px}.legend-line.boundary{border-top:3px solid #264b6b;border-radius:0;height:0}.legend-dot{border:2px solid #fff;border-radius:50%;width:10px;height:10px;display:inline-block;box-shadow:0 0 0 1px #0000002e}.legend-dot.address{background:#1769aa}.topbar-tools{flex-wrap:wrap;align-items:center;gap:7px 10px;margin-top:6px;display:flex}.address-toggle{color:#40505c;cursor:pointer;align-items:center;gap:6px;font-size:.75rem;font-weight:700;display:inline-flex}.address-toggle input{accent-color:#1769aa;width:17px;height:17px;margin:0}.admin-top-button{color:#5d2788;cursor:pointer;background:#f4ebfb;border:1px solid #63318f;border-radius:8px;min-height:30px;padding:5px 9px;font-size:.72rem;font-weight:800}.street-panel{z-index:20;left:10px;right:10px;bottom:max(10px, env(safe-area-inset-bottom));background:#fff;border-radius:18px;max-height:calc(100vh - 125px);padding:18px;transition:transform .18s ease-out;position:fixed;overflow-y:auto;transform:translateY(calc(100% + 30px));box-shadow:0 10px 35px #0000003d}.street-panel.open{transform:translateY(0)}.street-panel h2{max-width:calc(100% - 35px);font-size:1.35rem}.close-button{color:#243039;cursor:pointer;background:#eef1f3;border:0;border-radius:50%;width:38px;height:38px;font-size:1.6rem;line-height:1;position:absolute;top:9px;right:10px}.street-addresses{color:#4c5962;margin:8px 0 0;font-weight:650}.street-updated{color:#6b747b;min-height:1.2em;margin:5px 0 14px;font-size:.8rem}.status-buttons{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.status-buttons button{color:#fff;cursor:pointer;border:2px solid #0000;border-radius:11px;min-height:49px;font-weight:800;transition:transform .1s,box-shadow .1s,opacity .1s}.status-buttons button:active{transform:scale(.98)}.status-buttons button[data-status=a_faire]{background:#d93636}.status-buttons button[data-status=en_cours]{background:#e68a00}.status-buttons button[data-status=fait]{background:#18864b}.status-buttons button:not(.active){opacity:.68}.status-buttons button.active{border-color:#172027;box-shadow:inset 0 0 0 2px #fff}.issue-badge{color:#67238f;background:#f2e7fa;border-radius:999px;margin:10px 0 0;padding:6px 9px;font-size:.82rem;font-weight:800;display:inline-block}.issue-section,.admin-controls{border-top:1px solid #dfe4e8;margin-top:16px;padding-top:15px}.issue-toggle{color:#34414a;text-align:left;cursor:pointer;background:#f7f9fa;border:1px solid #c5cdd3;border-radius:12px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;width:100%;min-height:50px;padding:10px 12px;display:grid}.issue-toggle:active{transform:scale(.99)}.issue-toggle:focus-visible{border-color:#63318f;outline:3px solid #63318f2b}.issue-toggle.has-issue{color:#67238f;background:#f5ecfb;border-color:#9765bc}.issue-toggle-main{align-items:center;gap:7px;min-width:0;font-size:.9rem;font-weight:850;display:flex}.issue-toggle-summary{color:#6d587a;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;font-weight:750;overflow:hidden}.issue-toggle-chevron{font-size:1.25rem;line-height:1;transition:transform .14s}.issue-toggle.is-open .issue-toggle-chevron{transform:rotate(180deg)}.issue-form{padding-top:5px}.section-title{color:#34414a;letter-spacing:.04em;text-transform:uppercase;margin:0 0 10px;font-size:.82rem;font-weight:850}.field-label{color:#485660;margin:10px 0 5px;font-size:.78rem;font-weight:750;display:block}.issue-section select,.issue-section textarea,.admin-search{color:#1d252d;background:#fff;border:1px solid #bdc7ce;border-radius:10px;width:100%}.issue-section select{min-height:43px;padding:8px 10px}.issue-section textarea{resize:vertical;min-height:76px;padding:10px}.issue-section select:focus,.issue-section textarea:focus,.admin-search:focus{border-color:#5b35a4;outline:3px solid #5b35a426}.issue-actions{gap:8px;margin-top:10px;display:flex}.primary-action,.secondary-action,.danger-action{cursor:pointer;border-radius:10px;min-height:41px;font-weight:800}.primary-action{color:#fff;background:#63318f;border:0;flex:1}.secondary-action{color:#36434c;background:#fff;border:1px solid #98a3aa}.issue-updated{color:#6b747b;min-height:1.1em;margin:7px 0 0;font-size:.76rem}.admin-controls{border-top-color:#d6c2e8}.danger-action{color:#fff;background:#8d1f1f;border:0;width:100%}.danger-action.restore-action{background:#176b42}.admin-help{color:#6b747b;margin:7px 0 0;font-size:.75rem;line-height:1.35}.admin-streets-panel{z-index:25;top:max(10px, env(safe-area-inset-top));right:10px;bottom:max(10px, env(safe-area-inset-bottom));background:#fff;border-radius:18px;padding:18px;transition:transform .18s ease-out;position:fixed;left:10px;overflow:hidden;transform:translateY(calc(100% + 30px));box-shadow:0 10px 35px #00000047}.admin-streets-panel.open{transform:translateY(0)}.admin-streets-panel h2{padding-right:44px}.admin-streets-summary{color:#5b6871;margin:7px 0 12px;font-size:.83rem;font-weight:700}.admin-search{min-height:42px;padding:8px 11px}.admin-table-wrapper{border:1px solid #d9e0e5;border-radius:11px;height:calc(100% - 142px);margin-top:13px;overflow:auto}.admin-streets-table{border-collapse:collapse;width:100%;font-size:.82rem}.admin-streets-table th,.admin-streets-table td{text-align:left;vertical-align:middle;border-bottom:1px solid #e4e9ed;padding:10px 9px}.admin-streets-table th{z-index:1;color:#45525b;letter-spacing:.03em;text-transform:uppercase;background:#f2f5f7;font-size:.72rem;position:sticky;top:0}.admin-streets-table tbody tr:last-child td{border-bottom:0}.admin-streets-table tr.is-selectable{cursor:pointer;transition:background .12s}.admin-streets-table tr.is-selectable:hover,.admin-streets-table tr.is-selectable:focus-visible{background:#eaf2f8;outline:none}.admin-streets-table tr.is-selectable:focus-visible{box-shadow:inset 0 0 0 3px #2463a647}.admin-streets-table tr.is-hidden{color:#707980;background:#f5f5f5}.admin-streets-table tr.is-hidden.is-selectable:hover,.admin-streets-table tr.is-hidden.is-selectable:focus-visible{background:#e9ecef}.admin-streets-table tr.is-hidden strong{text-decoration:line-through}.table-status{color:#fff;white-space:nowrap;border-radius:999px;padding:4px 7px;font-size:.7rem;font-weight:800;display:inline-block}.status-a_faire{background:#d93636}.status-en_cours{background:#e68a00}.status-fait{background:#18864b}.visibility-switch{cursor:pointer;width:46px;height:25px;display:inline-flex;position:relative}.visibility-switch input{opacity:0;width:1px;height:1px;position:absolute}.visibility-slider{background:#b7c0c6;border-radius:999px;transition:background .14s;position:absolute;inset:0}.visibility-slider:after{content:"";background:#fff;border-radius:50%;width:19px;height:19px;transition:transform .14s;position:absolute;top:3px;left:3px;box-shadow:0 1px 4px #00000040}.visibility-switch input:checked+.visibility-slider{background:#18864b}.visibility-switch input:checked+.visibility-slider:after{transform:translate(21px)}.visibility-switch input:focus-visible+.visibility-slider{outline:3px solid #2463a647}.admin-empty-cell{color:#66727a;text-align:center!important;padding:22px!important}.error-message{z-index:30;color:#fff;background:#8d1f1f;border-radius:12px;padding:14px 16px;font-weight:650;position:fixed;bottom:12px;left:12px;right:12px;box-shadow:0 7px 24px #0003}.maplibregl-ctrl-top-right{top:106px;right:4px}.maplibregl-ctrl-bottom-right{bottom:8px}.maplibregl-ctrl-attrib{font-size:9px}@media (width<=620px){body.admin-mode .topbar{right:10px}body.admin-mode .progress{align-self:flex-start}.admin-primary-links{width:100%}.admin-primary-links a{flex:130px}}@media (width<=520px){.admin-streets-table th:nth-child(3),.admin-streets-table td:nth-child(3){display:none}.admin-streets-table th,.admin-streets-table td{padding:9px 7px}}@media (width>=760px){.locate-button{bottom:58px;right:18px}.topbar{width:430px;right:auto}.street-panel{width:390px;max-height:calc(100vh - 195px);top:175px;bottom:auto;right:auto;transform:translate(calc(-100% - 30px))}.street-panel.open{transform:translate(0)}.legend{bottom:24px}.admin-streets-panel{width:min(760px,100vw - 40px);inset:90px 20px 20px auto;transform:translate(calc(100% + 35px))}.admin-streets-panel.open{transform:translate(0)}}.error-message.warning{background:#9a5b00}.campaign-page-link{color:#285b47;background:#eaf5ef;border:1px solid #347058;border-radius:9px;justify-content:center;align-items:center;min-height:34px;padding:6px 10px;font-size:.75rem;font-weight:850;text-decoration:none;display:inline-flex}.campaign-page-link[hidden]{display:none}.campaign-page-link:hover{filter:brightness(.97)}.global-tracking-link{color:#33566c;background:#edf4f7;border:1px solid #4d6c80;border-radius:8px;justify-content:center;align-items:center;min-height:30px;padding:5px 9px;font-size:.72rem;font-weight:800;text-decoration:none;display:inline-flex}.admin-primary-links{flex-wrap:wrap;align-items:center;gap:7px;display:inline-flex}.admin-primary-links[hidden]{display:none}.agent-view-link{color:#46545e;background:#f5f7f8;border:1px solid #6c7780;border-radius:8px;justify-content:center;align-items:center;min-height:30px;padding:5px 9px;font-size:.72rem;font-weight:800;text-decoration:none;display:inline-flex}.agent-view-link:hover,.global-tracking-link:hover{filter:brightness(.97)}.undo-toast{z-index:50;left:50%;bottom:max(18px, env(safe-area-inset-bottom));color:#fff;opacity:0;background:#20282e;border-radius:14px;align-items:center;gap:14px;width:max-content;max-width:calc(100vw - 24px);min-height:52px;padding:10px 12px 10px 16px;font-size:.88rem;font-weight:750;transition:opacity .15s,transform .15s;display:flex;position:fixed;transform:translate(-50%,18px);box-shadow:0 8px 28px #0000004d}.undo-toast[hidden]{display:none}.undo-toast.visible{opacity:1;transform:translate(-50%)}.undo-toast span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.undo-toast button{color:#182128;cursor:pointer;background:#fff;border:1px solid #ffffff8c;border-radius:9px;flex:none;min-height:38px;padding:7px 12px;font-weight:900}.undo-toast button:active{transform:scale(.97)}.undo-toast button:focus-visible{outline-offset:2px;outline:3px solid #fff6}@media (width<=520px){.undo-toast{width:auto;left:12px;right:12px;transform:translateY(18px)}.undo-toast.visible{transform:translateY(0)}}.admin-map-options{flex-wrap:wrap;gap:6px;width:100%;display:flex}.admin-map-options[hidden]{display:none}.admin-map-toggle{color:#3c4b55;cursor:pointer;background:#f7f9fa;border:1px solid #b8c3ca;border-radius:9px;align-items:center;gap:6px;min-height:34px;padding:5px 9px;font-size:.72rem;font-weight:800;display:inline-flex}.admin-map-toggle input{accent-color:#315d78;width:17px;height:17px;margin:0}.admin-map-toggle.filtered-toggle:has(input:checked){background:#eaf1f5;border-color:#4d7189}.admin-map-toggle.hidden-toggle:has(input:checked){background:#eeeeef;border-color:#747a80}.admin-legend-item{display:none!important}body.admin-mode .admin-legend-item{display:flex!important}.admin-streets-table tr.is-filtered{color:#536b79;background:#edf3f6}.admin-streets-table tr.is-filtered.is-selectable:hover,.admin-streets-table tr.is-filtered.is-selectable:focus-visible{background:#dfeaf0}.street-type-label{color:#73808a;margin-top:3px;font-size:.68rem;font-weight:650;display:block}.table-category{white-space:nowrap;border-radius:999px;padding:4px 7px;font-size:.68rem;font-weight:850;display:inline-block}.category-active{color:#17653e;background:#e1f3e8}.category-promoted{color:#31599a;background:#e8eefb}.category-filtered{color:#3c647a;background:#dde9ef}.category-hidden{color:#5f666b;background:#e6e7e8}@media (width<=620px){.admin-streets-table th:nth-child(4),.admin-streets-table td:nth-child(4){display:none}.admin-map-options{gap:5px}.admin-map-toggle{flex:170px}body.agent-mode .topbar{top:max(6px, env(safe-area-inset-top));border-radius:12px;align-items:flex-start;gap:6px;min-height:0;padding:7px 9px;left:6px;right:52px}body.agent-mode .topbar-main{flex:auto;min-width:0}body.agent-mode .topbar-heading-row{display:none}body.agent-mode .topbar h1{font-size:.98rem;line-height:1.05}body.agent-mode .campaign-context{flex-wrap:nowrap;gap:0;margin-top:2px;line-height:1.1}body.agent-mode .campaign-context strong{max-width:calc(100vw - 150px);font-size:.67rem}body.agent-mode .campaign-context span{display:none}body.agent-mode .topbar-tools{flex-wrap:nowrap;gap:5px;margin-top:5px;overflow:hidden}body.agent-mode .address-toggle{white-space:nowrap;flex:0 auto;gap:4px;min-width:0;font-size:.67rem}body.agent-mode .address-toggle input{width:15px;height:15px}body.agent-mode .address-toggle span{text-overflow:ellipsis;max-width:92px;overflow:hidden}body.agent-mode .campaign-page-link{white-space:nowrap;border-radius:7px;flex:none;min-height:27px;padding:3px 7px;font-size:.66rem}body.agent-mode .pwa-install-button,body.agent-mode .account-controls{display:none!important}body.agent-mode .progress{min-width:48px;padding-top:1px}body.agent-mode .progress strong{font-size:.9rem;line-height:1}body.agent-mode .progress span{margin-top:2px;font-size:.56rem;line-height:1.05}body.agent-mode .maplibregl-ctrl-top-right{top:78px}}.compact-commune-title,.topbar-toggle{display:none}.topbar-toggle{color:#2c3942;cursor:pointer;background:#f5f7f8;border:1px solid #bac4ca;border-radius:11px;flex:none;justify-content:center;align-items:center;width:40px;height:40px;padding:0}.topbar-toggle:focus-visible{outline-offset:2px;outline:4px solid #2463a63d}.topbar-toggle-chevron{font-size:1.25rem;font-weight:900;line-height:1;transition:transform .16s;display:block}.topbar.is-collapsed .topbar-toggle-chevron{transform:rotate(180deg)}@media (width<=620px){body.agent-mode .topbar,body.admin-mode .topbar{top:max(6px, env(safe-area-inset-top));border-radius:13px;align-items:flex-start;gap:8px;min-height:0;padding:10px 11px;transition:padding .16s,min-height .16s,box-shadow .16s;left:6px;right:6px}.topbar-toggle{margin-top:-1px;display:inline-flex}.topbar:not(.is-collapsed) .topbar-main{flex:auto;min-width:0;display:block}body.agent-mode .topbar:not(.is-collapsed) .topbar-heading-row,body.admin-mode .topbar:not(.is-collapsed) .topbar-heading-row{display:flex}body.agent-mode .topbar:not(.is-collapsed) h1,body.admin-mode .topbar:not(.is-collapsed) h1{font-size:1.12rem;line-height:1.1}body.agent-mode .topbar:not(.is-collapsed) .campaign-context,body.admin-mode .topbar:not(.is-collapsed) .campaign-context{flex-wrap:wrap;gap:3px 7px;margin-top:5px;line-height:1.2}body.agent-mode .topbar:not(.is-collapsed) .campaign-context strong,body.admin-mode .topbar:not(.is-collapsed) .campaign-context strong{white-space:normal;max-width:100%;font-size:.75rem}body.agent-mode .topbar:not(.is-collapsed) .campaign-context span,body.admin-mode .topbar:not(.is-collapsed) .campaign-context span{font-size:.7rem;display:inline}body.agent-mode .topbar:not(.is-collapsed) .topbar-tools,body.admin-mode .topbar:not(.is-collapsed) .topbar-tools{flex-wrap:wrap;gap:7px;margin-top:8px;overflow:visible}body.agent-mode .topbar:not(.is-collapsed) .address-toggle{font-size:.73rem}body.agent-mode .topbar:not(.is-collapsed) .address-toggle span{max-width:none}body.agent-mode .topbar:not(.is-collapsed) .campaign-page-link{min-height:32px;padding:5px 9px;font-size:.72rem}.topbar.is-collapsed{cursor:pointer;align-items:center!important;min-height:48px!important;padding:4px 5px 4px 11px!important}.topbar.is-collapsed .topbar-main{display:none!important}.topbar.is-collapsed .compact-commune-title{color:#1f2b33;text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-size:.95rem;font-weight:850;line-height:1.1;display:block;overflow:hidden}.topbar.is-collapsed .progress{text-align:center;min-width:48px!important;padding:0!important}.topbar.is-collapsed .progress strong{font-size:.88rem!important;line-height:1!important}.topbar.is-collapsed .progress span{display:none!important}.topbar.is-collapsed .topbar-toggle{width:38px;height:38px;margin:0}.maplibregl-ctrl-top-right{transition:top .16s;top:var(--map-header-controls-top,78px)!important}}.topbar-main{flex:auto}.topbar-toggle{display:inline-flex}.topbar.is-collapsed{cursor:pointer;align-items:center;min-height:50px;padding:5px 6px 5px 12px}.topbar.is-collapsed .topbar-main{display:none}.topbar.is-collapsed .compact-commune-title{color:#1f2b33;text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-size:.98rem;font-weight:850;line-height:1.1;display:block;overflow:hidden}.topbar.is-collapsed .progress{min-width:58px;text-align:center!important;padding:0!important}.topbar.is-collapsed .progress strong{font-size:.92rem!important;line-height:1!important}.topbar.is-collapsed .progress span{display:none!important}.topbar.is-collapsed .topbar-toggle{width:38px;height:38px;margin:0}@media (width>=621px){.topbar{width:min(520px,100vw - 20px);transition:width .16s,padding .16s,min-height .16s,box-shadow .16s}.topbar.is-collapsed{width:min(360px,100vw - 20px)}}.legend-dot.unmatched-address{background:#9c27b0;border:2px solid #fff;box-shadow:0 0 0 1px #6a1b9a}.unmatched-admin-button{border-color:#8e24aa}.admin-unmatched-panel{z-index:18;top:var(--map-header-controls-top,120px);opacity:0;pointer-events:none;background:#fffffffa;border:1px solid #1a273129;border-radius:18px;width:min(440px,100vw - 32px);padding:20px;transition:transform .18s,opacity .18s;position:fixed;bottom:20px;right:16px;overflow:auto;transform:translate(calc(100% + 30px));box-shadow:0 14px 38px #1926303d}.admin-unmatched-panel.open{opacity:1;pointer-events:auto;transform:translate(0)}.admin-unmatched-panel h2{margin:0 42px 6px 0}.unmatched-filter-tabs{grid-template-columns:repeat(3,1fr);gap:6px;margin:14px 0;display:grid}.unmatched-filter-tabs button{cursor:pointer;background:#f5f7f8;border:1px solid #cfd7dd;border-radius:10px;padding:9px 7px;font-weight:700}.unmatched-filter-tabs button.active{color:#fff;background:#7b1fa2;border-color:#7b1fa2}.admin-unmatched-list{gap:10px;display:grid}.unmatched-card{background:#fff;border:1px solid #d9dfe3;border-left:5px solid #9c27b0;border-radius:12px;padding:13px}.unmatched-card.is-ignored{background:#f5f5f5;border-left-color:#7b8085}.unmatched-card.is-associated{background:#f2faf5;border-left-color:#18864b}.unmatched-card-header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.unmatched-card h3{margin:0;font-size:1rem}.unmatched-card p{color:#59656d;margin:5px 0 0;font-size:.88rem}.unmatched-status-badge{color:#6a1b9a;background:#f3e5f5;border-radius:999px;flex:none;padding:4px 7px;font-size:.72rem;font-weight:800}.unmatched-card.is-ignored .unmatched-status-badge{color:#555d62;background:#e4e7e9}.unmatched-card.is-associated .unmatched-status-badge{color:#116437;background:#dff3e7}.unmatched-card-actions{flex-wrap:wrap;gap:7px;margin-top:11px;display:flex}.unmatched-card-actions button{cursor:pointer;background:#fff;border:1px solid #cbd3d8;border-radius:9px;padding:8px 10px;font-weight:700}.unmatched-card-actions .associate-action{color:#fff;background:#7b1fa2;border-color:#7b1fa2}.unmatched-card-actions .ignore-action{color:#555d62;background:#f0f2f3}.admin-empty-unmatched{color:#67747c;text-align:center;border:1px dashed #c6cdd2;border-radius:12px;padding:20px}.association-toolbar{z-index:24;background:#fffffffa;border:2px solid #7b1fa2;border-radius:16px;width:min(680px,100vw - 28px);padding:14px 16px;position:fixed;bottom:22px;left:50%;transform:translate(-50%);box-shadow:0 12px 34px #36144547}.association-toolbar>div:first-child{justify-content:space-between;gap:12px;display:flex}.association-toolbar strong{color:#6a1b9a}.association-toolbar p{color:#4f5a61;margin:8px 0 10px}.association-toolbar-actions{justify-content:flex-end;gap:8px;display:flex}body.association-mode .admin-unmatched-panel,body.association-mode .admin-streets-panel,body.association-mode .street-panel{pointer-events:none}@media (width<=620px){.admin-unmatched-panel{top:var(--map-header-controls-top,180px);border-radius:15px;width:calc(100vw - 16px);bottom:8px;right:8px}.association-toolbar{bottom:10px}.association-toolbar>div:first-child{display:grid}.association-toolbar-actions button{flex:1}}.unmatched-admin-button.has-alerts{color:#fff;background:#7b1fa2;border-color:#7b1fa2}.unmatched-suggestion-title{font-weight:800;color:#4f3b55!important;margin-top:10px!important}.unmatched-suggestion-list{gap:5px;margin-top:6px;display:grid}.unmatched-card-actions .suggestion-action,.unmatched-suggestion-list .suggestion-action{color:#6a1b9a;text-align:left;cursor:pointer;background:#fbf5fd;border:1px solid #d6b9df;border-radius:8px;width:100%;padding:7px 9px;font-weight:700}
