.yt-coverage { color:#223846; background:#f2f6f8; padding:18px; margin-top:16px; font-size:14px; letter-spacing:0; min-width:0; }
.yt-coverage * { box-sizing:border-box; letter-spacing:0; }
.yt-coverage [hidden] { display:none!important; }
.yt-coverage h3 { color:#233b4a; font-size:17px; margin:0 0 12px; }
.yt-coverage input { color:#203847; background:#fff!important; border:1px solid #b9cbd5!important; border-radius:5px; min-width:0; padding:9px; color-scheme:light; font-size:14px; box-shadow:none; }
.yt-coverage input::placeholder { color:#607787; opacity:1; }
.yt-coverage input[type=checkbox] { appearance:auto!important; width:18px!important; height:18px!important; min-height:18px; padding:0; margin:0; flex:0 0 18px; accent-color:#166ea7; }
.yt-coverage button { background:#e5edf2; color:#20475d; border:1px solid #b8cbd6; border-radius:5px; font-size:14px; font-weight:600; box-shadow:none; min-height:40px; padding:9px 13px; }
.yt-coverage button:hover { background:#d5e5ee; }
.yt-coverage :focus-visible { outline:3px solid #e3a02a; outline-offset:3px; }
.yt-coverage button:disabled { opacity:.55; cursor:default; }
.coverage-period { display:flex; flex-wrap:wrap; gap:12px; align-items:flex-end; }
.coverage-period label { display:grid; gap:6px; color:#415d6e; flex:1 1 205px; font-size:13px; }
.coverage-period .coverage-apply { background:#176eab; color:white; border-color:#176eab; }
.coverage-zone { font-size:12px; color:#537184; padding-bottom:10px; }
.coverage-status { color:#95500c; min-height:0; margin:12px 0; }
.coverage-status:empty { display:none; }
.coverage-period-summary { font-size:12px; color:#405d6f; margin:16px 0 0; }
.coverage-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin:18px 0; padding:15px 0; border-block:1px solid #c8d8e1; gap:16px; }
.coverage-metrics div { display:grid; gap:4px; }
.coverage-metrics strong { font-size:28px; line-height:1.15; color:#185c81; font-weight:700; }
.coverage-metrics span { font-size:12px; color:#526e7e; }
.coverage-layout { display:grid; grid-template-columns:minmax(0,1fr) 270px; gap:20px; }
.coverage-map-region,.coverage-selection { min-width:0; }
.coverage-map-tools { display:flex; align-items:center; flex-wrap:wrap; gap:16px; padding-bottom:10px; }
.coverage-map-tools label,.coverage-all { display:flex; align-items:center; gap:7px; color:#294d62; font-size:13px; margin:0; }
.coverage-map-tools .coverage-center { margin-left:auto; width:40px; height:40px; padding:0; font-size:26px; }
.coverage-cleanup-tools { display:flex; flex-wrap:wrap; align-items:center; gap:12px 18px; border-top:1px solid #c8d8e1; padding-top:12px; }
.coverage-cleanup-tools label { display:flex; align-items:center; gap:7px; font-size:13px; color:#294d62; margin:0; }
.coverage-cleanup-tools .coverage-distance { white-space:nowrap; }
.coverage-distance input { width:80px; padding:7px; }
.coverage-distance input:disabled { background:#e5edf2!important; color:#586c77; }
.coverage-cleanup-tools label:has(input:checked) { color:#125f88; font-weight:600; }
.coverage-adjustments-summary { margin:10px 0; padding:8px 0; color:#516c7a; font-size:12px; line-height:1.6; overflow-wrap:anywhere; }
.coverage-adjustments-summary.is-adjusted { border-left:3px solid #c27a1b; padding-left:10px; color:#735115; background:#fff4de; }
.coverage-map { height:480px; min-height:320px; background:#dae5ea; border:1px solid #b9cdd8; border-radius:5px; position:relative; }
.coverage-map-placeholder { height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px; }
.coverage-map-placeholder p { font-size:18px; font-weight:600; color:#456675; }
.coverage-map img { max-width:none; }
.coverage-heat-legend { display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin-top:12px; font-size:12px; color:#405d6f; }
.coverage-heat-scale { display:block; width:100px; height:10px; background:linear-gradient(90deg,hsl(165,85%,45%),hsl(80,85%,45%),hsl(0,85%,45%)); }
.coverage-method { font-size:12px; color:#5c7381; line-height:1.5; margin:8px 0 0; }
.coverage-selection { border-left:1px solid #c8d8e1; padding-left:18px; }
.coverage-search { width:100%; margin-bottom:12px; }
.coverage-all { padding-bottom:10px; border-bottom:1px solid #cedee5; }
.coverage-route-options { max-height:455px; overflow:auto; padding:4px 3px; }
.coverage-route-option { display:flex; align-items:center; gap:9px; min-height:48px; border-bottom:1px solid #dbe5ea; padding:10px 0; color:#2c495a; cursor:pointer; }
.coverage-route-option i { width:8px; height:8px; border-radius:50%; flex:0 0 8px; }
.coverage-route-option span { flex:1; overflow-wrap:anywhere; }
.coverage-route-option b { font-size:17px; }
.coverage-breakdown { padding-top:24px; }
.coverage-bars { display:grid; gap:12px; margin-bottom:24px; }
.coverage-bar { display:grid; grid-template-columns:minmax(140px,220px) minmax(40px,1fr) 44px 55px; gap:12px; align-items:center; min-height:28px; }
.coverage-bar>span { overflow-wrap:anywhere; font-size:13px; }
.coverage-bar>div { background:#dfe9ee; height:20px; }
.coverage-bar i { display:block; height:100%; min-width:2px; }
.coverage-bar strong,.coverage-bar small { text-align:right; color:#32556a; }
.coverage-details details { border-top:1px solid #bdcfda; }
.coverage-details summary { display:flex; align-items:center; flex-wrap:wrap; gap:12px; padding:15px 4px; cursor:pointer; color:#24475d; list-style:none; }
.coverage-details summary::-webkit-details-marker { display:none; }
.coverage-details summary::before { content:'\203A'; font-size:23px; width:16px; flex:0 0 16px; transition:transform .15s; }
.coverage-details details[open]>summary::before { transform:rotate(90deg); }
.coverage-details summary>span { flex:1; min-width:100px; font-weight:600; overflow-wrap:anywhere; }
.coverage-details summary small { color:#5a7484; }
.coverage-table-scroll { overflow:auto; }
.yt-coverage table { width:100%; min-width:0; table-layout:fixed; border-collapse:collapse!important; border-spacing:0!important; color:#29485b; background:transparent; }
.yt-coverage th { color:#405c6f!important; background:#e2ebf0!important; font-size:12px; text-transform:none; padding:10px!important; }
.yt-coverage tr,.yt-coverage tr:hover { background:transparent!important; box-shadow:none; transform:none; }
.yt-coverage td { background:transparent; color:#29485b; border:0!important; border-bottom:1px solid #d3dfe6!important; border-radius:0!important; padding:10px!important; overflow-wrap:anywhere; }
.yt-coverage td:not(:first-child),.yt-coverage th:not(:first-child) { text-align:right; }
.yt-coverage th:first-child { width:48%; }
.yt-coverage th:nth-child(2) { width:20%; }
.coverage-tooltip { color:#203747; font:13px/1.6 system-ui,sans-serif; max-width:260px; }
@media(max-width:850px) { .coverage-layout { grid-template-columns:1fr; } .coverage-selection { border-left:0; padding:0; border-top:1px solid #c8d8e1; padding-top:16px; } .coverage-route-options { max-height:245px; } }
@media(max-width:500px) { .yt-coverage { padding:12px; } .coverage-metrics { grid-template-columns:1fr 1fr; } .coverage-period label { flex-basis:100%; } .coverage-map { height:370px; } .coverage-bar { grid-template-columns:minmax(80px,120px) minmax(30px,1fr) 24px 43px; gap:7px; } .coverage-details summary { gap:8px; } }
@media(max-width:500px) { .coverage-details summary { display:grid; grid-template-columns:16px minmax(0,1fr) auto; } .coverage-details summary>span { min-width:0; } .coverage-details summary small { grid-column:2/4; } .yt-coverage td,.yt-coverage th { padding:8px 5px!important; } }
@media(prefers-reduced-motion:reduce) { .coverage-details summary::before { transition:none; } }
