:root{--bg:#0d1122;--panel:#282d49;--panel2:#242944;--card:#eef3fa;--text:#f8fbff;--muted:#aab5d6;--ink:#071225;--blue:#118df0;--cyan:#23d7ef;--purple:#a35cff;--yellow:#ffd340;--line:#3d4464;--soft:#edf4ff;--headerH:78px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:15px}.bt-header{height:var(--headerH);background:#fff;color:var(--ink);border-bottom:1px solid #e8edf5;display:flex;align-items:center;position:relative;z-index:10}.bt-header-inner{width:min(1180px,calc(100% - 32px));margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}.bt-brand{display:flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none;min-width:0}.bt-mark{width:44px;height:44px;border-radius:14px;background:linear-gradient(135deg,#19b7ff,#0877df);display:grid;place-items:center;color:#00152c;font-weight:950;letter-spacing:-.02em}.bt-brand-text{display:flex;align-items:center;gap:16px;min-width:0}.bt-brand strong{font-size:18px;letter-spacing:-.02em;white-space:nowrap}.bt-brand small{font-size:12px;color:#c3cad8;font-weight:900;white-space:nowrap}.bt-nav{display:flex;align-items:center;gap:12px;font-size:14px;font-weight:900}.bt-nav a{color:var(--ink);text-decoration:none;padding:10px 14px;border-radius:24px;white-space:nowrap}.bt-nav a.active{background:var(--soft);color:#1557bb}.bt-menu{display:none;border:0;background:var(--soft);border-radius:16px;width:46px;height:42px;color:var(--ink);align-items:center;justify-content:center;flex-direction:column;gap:5px}.bt-menu span{width:22px;height:2px;background:#071225;border-radius:3px;display:block}.speedtest-page{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:34px 0 28px}.speed-card{background:linear-gradient(145deg,var(--panel),var(--panel2));border:1px solid var(--line);border-radius:16px;box-shadow:0 25px 70px rgba(0,0,0,.18)}.main-card{padding:26px 34px}.result-bar{display:flex;justify-content:space-between;align-items:center;gap:18px;font-size:13px;font-weight:850;color:#dfe7ff}.share-row,.settings-row{display:flex;align-items:center;gap:10px}.share-row b{color:#10c9ff}.settings-row button{background:transparent;border:0;color:#dfe7ff;font:inherit;cursor:pointer;padding:0}.headline-metrics{display:flex;justify-content:center;gap:150px;text-align:center;margin-top:20px}.metric-label{display:inline-flex;align-items:center;gap:8px;font-size:18px;font-weight:950;letter-spacing:.01em}.metric-label i{width:18px;height:18px;border-radius:50%;border:2px solid currentColor;display:inline-block;position:relative}.metric-label.down{color:var(--cyan)}.metric-label.up{color:var(--purple)}.metric-label small{color:#c9d0e5;font-size:16px}.headline-item strong{display:block;font-size:58px;line-height:1.1;font-weight:230;margin-top:10px;letter-spacing:-.06em}.latency-strip{display:flex;justify-content:center;align-items:center;gap:18px;flex-wrap:wrap;margin:18px 0 8px}.latency-strip>span:first-child{font-size:18px}.latency-pill{display:inline-flex;align-items:center;gap:7px;color:#f7f9ff}.latency-pill small{color:#8f9abd;font-size:11px;margin-left:1px}.dot{width:18px;height:18px;border:2px solid currentColor;border-radius:50%;display:inline-block}.yellow{color:var(--yellow)}.cyan{color:var(--cyan)}.blue{color:#62b8ff}.purple{color:var(--purple)}.stage-grid{display:grid;grid-template-columns:minmax(0,1fr) 410px minmax(0,1fr);align-items:center;gap:20px}.endpoint{display:flex;align-items:center;gap:14px;min-width:0}.server-end{justify-content:flex-start}.endpoint-icon{flex:0 0 50px;width:50px;height:50px;border-radius:50%;border:1px solid #67708e;color:#cbd5f3;display:grid;place-items:center;font-weight:950}.endpoint-body{min-width:0}.endpoint h2{margin:0 0 6px;font-size:21px;line-height:1.14;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:330px}.endpoint p{margin:4px 0;color:#c2cbea;line-height:1.35}.endpoint button{border:0;background:transparent;color:#09c9ff;font-weight:950;padding:0;cursor:pointer}.gauge-wrap{height:360px;position:relative;display:grid;place-items:center}.gauge{width:100%;max-width:410px;overflow:visible}.gauge-bg,.gauge-fg{fill:none;stroke-width:34;stroke-linecap:butt}.gauge-bg{stroke:#20365d}.gauge-fg{stroke:url(#speedGradient);transition:stroke-dashoffset .12s linear}.gauge-ticks text{fill:#d0d6e8;font-size:18px;font-weight:950}.needle{stroke:url(#needleGradient);stroke-width:14;stroke-linecap:round;transform-origin:210px 226px;transition:transform .12s linear}.go-button{position:absolute;width:126px;height:126px;border-radius:50%;border:2px solid var(--cyan);background:#26304e;color:#fff;font-size:38px;font-weight:950;cursor:pointer;box-shadow:0 0 0 12px rgba(35,215,239,.07)}.go-button.running{animation:pulse .75s infinite alternate}.gauge-number{position:absolute;bottom:55px;text-align:center;pointer-events:none}.gauge-number strong{display:block;font-size:42px;line-height:1;font-weight:260;letter-spacing:-.05em}.gauge-number span{color:#b7c0de}.progress{height:6px;border-radius:999px;background:#4d536c;max-width:520px;margin:10px auto 16px;overflow:hidden}.progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--cyan),var(--purple));border-radius:999px}.status{text-align:center;font-weight:850;color:#e5ebff}.status.ok{color:#4be878}.status.err{color:#ff6a79}.control-row{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.control-row button,.control-row select,.modal-auto,#sendRate{border:0;border-radius:18px;background:linear-gradient(100deg,var(--cyan),var(--purple));color:#fff;font-weight:950;padding:12px 18px;cursor:pointer}.control-row select{background:#151b33;border:1px solid #475070}.test-note{text-align:center;color:#aeb8da;margin:16px auto 0;max-width:850px}.hidden{display:none!important}.final-result{margin-top:24px;border-top:1px solid #414862;padding-top:22px}.final-head,.final-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:14px}.final-summary{grid-template-columns:repeat(4,1fr)}.final-head div,.final-summary div{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:14px}.final-head span,.final-summary span{display:block;color:#aab5d7;font-weight:850;font-size:12px;text-transform:uppercase}.final-head b,.final-summary strong{display:block;margin-top:4px;color:#fff;font-size:18px}.rating-result{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start;background:rgba(10,15,32,.28);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:18px}.rating-result h2{margin:0 0 8px}.rating-result small{color:#aab5d6}.stars{display:flex;gap:8px;margin-bottom:12px}.stars button{border:0;background:transparent;color:#707895;font-size:35px;line-height:1;cursor:pointer;padding:0}.stars button.on,.stars button:hover{color:#ffd340}.rate-controls textarea{width:100%;min-height:70px;border-radius:12px;border:1px solid #45506f;background:#151b33;color:#fff;padding:11px;resize:vertical}.rate-controls #sendRate{margin-top:10px}.metric-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:12px;margin:18px 0}.metric-grid article{background:#eef3fa;color:#10203a;border-radius:13px;padding:14px 16px;min-height:76px}.metric-grid span{display:block;color:#65738f;font-size:12px;font-weight:950;text-transform:uppercase}.metric-grid b{display:block;margin-top:8px;font-size:19px}.content-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.info-card{background:#eef3fa;color:#10203a;border-radius:14px;padding:20px;border:1px solid #dce4ef}.info-card h2{margin:0 0 14px;font-size:19px}.info-card p{color:#39475f}.info-card dl{display:grid;grid-template-columns:150px 1fr;gap:10px 12px;margin:0}.info-card dt{color:#5c6b88;font-weight:800}.info-card dd{margin:0;font-weight:900;word-break:break-word}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px}th,td{text-align:left;padding:10px;border-bottom:1px solid #d5deeb}th{color:#54627c;font-size:12px;text-transform:uppercase}.avg-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.avg-row p{background:#dfe8f5;border-radius:10px;margin:0;padding:12px}.map-box{background:#dce6f4;border-radius:12px;min-height:170px;padding:16px;display:grid;gap:7px;align-content:start;color:#26334d}.map-dot{background:#fff;border:1px solid #c9d6e8;border-radius:10px;padding:10px}.tips-card{margin-bottom:20px}.tips-list{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.tips-list p{margin:0;background:#fff;border-radius:12px;padding:16px}.server-modal{position:fixed;inset:0;background:rgba(3,7,18,.68);display:none;align-items:center;justify-content:center;padding:24px;z-index:100}.server-modal.open{display:flex}.server-modal section{width:min(760px,100%);max-height:86vh;overflow:auto;background:#282d49;color:#fff;border:1px solid #4a5270;border-radius:16px;padding:24px;position:relative}.modal-close{position:absolute;right:16px;top:14px;background:transparent;color:#fff;border:0;font-size:28px;cursor:pointer}.server-modal input{width:100%;border:1px solid #24cdf3;background:#111931;color:#fff;border-radius:10px;padding:13px;margin:8px 0 16px}.server-list{display:grid;gap:10px}.server-row{border:1px solid #4b5575;border-radius:13px;padding:14px;cursor:pointer;background:rgba(255,255,255,.04);display:flex;justify-content:space-between;gap:10px}.server-row:hover,.server-row.on{border-color:var(--cyan);background:rgba(35,215,239,.08)}.server-row b{display:block}.server-row small{color:#aab5d7}.bt-footer{background:#09255b;color:#fff;padding:28px 0;margin-top:20px}.bt-footer div{width:min(1180px,calc(100% - 32px));margin:auto}@keyframes pulse{from{box-shadow:0 0 0 10px rgba(35,215,239,.06)}to{box-shadow:0 0 0 18px rgba(168,98,255,.15)}}@media(max-width:1050px){.headline-metrics{gap:70px}.stage-grid{grid-template-columns:1fr}.endpoint{justify-content:center;text-align:center}.endpoint h2{max-width:100%}.server-end{justify-content:center}.gauge-wrap{order:-1}.metric-grid{grid-template-columns:repeat(3,1fr)}.content-grid{grid-template-columns:1fr}.tips-list{grid-template-columns:repeat(2,1fr)}}@media(max-width:820px){.bt-header{height:auto}.bt-header-inner{min-height:72px}.bt-brand small{display:none}.bt-menu{display:flex}.bt-nav{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;padding:12px 16px;box-shadow:0 16px 30px rgba(0,0,0,.12);flex-direction:column;align-items:stretch}.bt-nav.open{display:flex}.bt-nav a{display:block}.main-card{padding:20px 15px}.headline-metrics{gap:24px}.headline-item strong{font-size:42px}.metric-label{font-size:15px}.gauge-wrap{height:315px}.go-button{width:108px;height:108px;font-size:30px}.metric-grid{grid-template-columns:repeat(2,1fr)}.final-head,.final-summary,.rating-result{grid-template-columns:1fr}.info-card dl{grid-template-columns:105px 1fr}.tips-list{grid-template-columns:1fr}.latency-strip{gap:10px}.latency-pill small{display:none}}@media(max-width:480px){.bt-brand strong{font-size:16px}.speedtest-page{width:calc(100% - 18px);padding-top:18px}.headline-metrics{display:grid;grid-template-columns:1fr 1fr}.headline-item strong{font-size:38px}.metric-grid{grid-template-columns:1fr}.info-card dl{grid-template-columns:1fr}.info-card dt{margin-top:8px}.gauge-number{bottom:42px}.gauge-number strong{font-size:34px}}


/* v8.22.21 hız haritası tekil noktalar + hız grubu lejandı */
.map-box{display:block;overflow:hidden}
.map-stage{position:relative;height:230px;border-radius:14px;background:radial-gradient(circle at 35% 35%,rgba(35,215,239,.18),transparent 30%),linear-gradient(145deg,#cfdced,#eaf1fa);border:1px solid #c5d3e6;margin-bottom:12px;overflow:hidden}
.map-stage:before{content:"";position:absolute;inset:18px;border:1px dashed rgba(38,51,77,.18);border-radius:13px;pointer-events:none}
.map-bubble{position:absolute;transform:translate(-50%,-50%);width:var(--s);height:var(--s);border-radius:999px;border:2px solid #fff;background:#19c7ee;color:#071225;font-weight:950;box-shadow:0 10px 25px rgba(7,18,37,.22);display:grid;place-items:center;cursor:pointer}
.map-bubble.multi{background:linear-gradient(135deg,var(--cyan),var(--purple));color:#fff}
.map-bubble.single{opacity:.88}
.map-bubble span{font-size:12px;line-height:1}
.map-cluster-list{display:grid;gap:8px}
.map-help{font-size:12px;color:#5e6c87;background:#fff;border:1px solid #d3deec;border-radius:10px;padding:9px 10px}
.map-cluster-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:center;background:#fff;border:1px solid #cad8ea;border-radius:10px;padding:10px}
.map-cluster-row b{display:block;color:#17233d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.map-cluster-row small{display:block;color:#71809d;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.map-cluster-row span{font-weight:950;color:#1557bb;background:#edf4ff;border-radius:999px;padding:5px 9px;white-space:nowrap}
.map-cluster-row strong{grid-column:1/-1;color:#26334d;font-size:13px}
@media(max-width:820px){.map-stage{height:190px}.map-cluster-row{grid-template-columns:1fr}.map-cluster-row strong{grid-column:auto}}


/* v8.22.21: nPerf benzeri hız grubu lejandı ve tekil nokta görünümü */
.speed-legend{display:grid;grid-template-columns:auto 1fr auto auto auto auto;align-items:center;gap:8px;margin:0 0 10px;color:#26334d;font-size:12px;font-weight:900}
.speed-legend i{height:14px;border-radius:99px;background:linear-gradient(90deg,#1b79c9 0%,#28c7d8 24%,#4ed765 48%,#f5c542 72%,#e91b34 100%);box-shadow:inset 0 0 0 1px rgba(0,0,0,.08)}
.map-point{position:absolute;transform:translate(-50%,-50%);width:var(--s);height:var(--s);min-width:10px;min-height:10px;border-radius:999px;border:2px solid #fff;background:var(--c);box-shadow:0 6px 16px rgba(7,18,37,.26),0 0 0 1px rgba(7,18,37,.2);cursor:pointer;z-index:2}
.map-point:hover{z-index:5;transform:translate(-50%,-50%) scale(1.38)}
.map-point-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:center;background:#fff;border:1px solid #cad8ea;border-radius:10px;padding:10px}
.map-point-row b{display:block;color:#17233d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.map-point-row small{display:block;color:#71809d;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.map-point-row strong{color:#26334d;font-size:13px;white-space:nowrap}
@media(max-width:820px){.speed-legend{grid-template-columns:auto 1fr auto auto auto auto;font-size:11px}.map-point-row{grid-template-columns:1fr}.map-point-row strong{white-space:normal}}

/* v8.22.26: harita içi lejand + çalışan filtreler + son güncelleme */
.map-card{display:flex;flex-direction:column;gap:12px}.map-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.map-head h2{margin-bottom:4px}.map-meta{margin:0;color:#5f6e8a;font-size:13px;font-weight:850}.map-reset{border:0;border-radius:14px;background:#102a62;color:#fff;font-weight:950;padding:10px 13px;cursor:pointer;white-space:nowrap}.map-filters{display:grid;grid-template-columns:minmax(160px,1.3fr) repeat(4,minmax(120px,1fr));gap:8px;margin-bottom:2px}.map-filters input,.map-filters select{width:100%;border:1px solid #c5d4e8;background:#fff;color:#14223d;border-radius:11px;padding:11px 12px;font-weight:850}.map-stage{min-height:260px}.map-legend{position:absolute;left:12px;right:12px;top:12px;z-index:7;background:rgba(255,255,255,.91);border:1px solid rgba(16,32,58,.14);border-radius:11px;padding:8px 10px;margin:0;backdrop-filter:blur(4px)}.map-last{position:absolute;right:12px;bottom:12px;z-index:7;background:rgba(7,18,37,.76);color:#fff;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900;max-width:calc(100% - 24px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.map-empty{background:#fff;border:1px solid #cad8ea;border-radius:12px;padding:16px;color:#26334d;font-weight:900}.map-empty.inside{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:3;min-width:220px;text-align:center}.map-point[data-speed="0-5M"]{box-shadow:0 0 0 3px rgba(27,121,201,.16),0 6px 16px rgba(7,18,37,.26)}.map-point[data-speed="5M-20M"]{box-shadow:0 0 0 3px rgba(40,199,216,.16),0 6px 16px rgba(7,18,37,.26)}.map-point[data-speed="20M-80M"]{box-shadow:0 0 0 3px rgba(78,215,101,.16),0 6px 16px rgba(7,18,37,.26)}.map-point[data-speed="80M-1G"]{box-shadow:0 0 0 3px rgba(245,197,66,.18),0 6px 16px rgba(7,18,37,.26)}.map-point[data-speed="1G+"]{box-shadow:0 0 0 3px rgba(233,27,52,.18),0 6px 16px rgba(7,18,37,.26)}
@media(max-width:1050px){.map-filters{grid-template-columns:1fr 1fr}.map-filters input{grid-column:1/-1}}@media(max-width:620px){.map-head{display:block}.map-reset{margin-top:8px}.map-filters{grid-template-columns:1fr}.map-legend{grid-template-columns:auto 1fr auto auto auto auto;gap:5px;font-size:10px}.map-stage{min-height:230px}.map-last{left:12px;right:12px;text-align:center}}

/* v8.22.26: Hız haritası ayrı sayfa + OpenStreetMap */
.after-compare a{color:#0a74df;font-weight:950}.map-page{padding-top:30px}.map-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:end;margin-bottom:20px;color:#fff}.map-hero .eyebrow{margin:0 0 6px;color:#24d4ef;font-weight:950;text-transform:uppercase;letter-spacing:.08em}.map-hero h1{font-size:42px;line-height:1.05;margin:0 0 8px;letter-spacing:-.04em}.map-hero p{margin:0;color:#c8d3f1;max-width:760px}.map-statline{background:linear-gradient(145deg,var(--panel),var(--panel2));border:1px solid var(--line);border-radius:16px;padding:16px 18px;min-width:230px}.map-statline span{display:block;color:#9faad0;font-size:12px;font-weight:950;text-transform:uppercase}.map-statline strong{display:block;margin-top:6px;color:#fff}.map-only-card{padding:18px}.osm-wrap{position:relative;min-height:560px;border-radius:16px;overflow:hidden;border:1px solid #c6d4e8;background:#dbe6f2}.osm-map{height:560px;width:100%;z-index:1}.leaflet-speed-legend{position:absolute;left:16px;right:auto;bottom:16px;top:auto;z-index:600;width:min(430px,calc(100% - 32px));background:rgba(255,255,255,.94);border:1px solid rgba(16,32,58,.16);border-radius:12px;padding:9px 11px;box-shadow:0 10px 25px rgba(7,18,37,.16)}.osm-update{position:absolute;right:16px;top:16px;z-index:600;background:rgba(7,18,37,.78);color:#fff;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:900;max-width:calc(100% - 32px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.osm-credit{position:absolute;right:16px;bottom:16px;z-index:600;background:rgba(255,255,255,.92);color:#1b2a44;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:950;border:1px solid rgba(16,32,58,.12)}.bt-speed-pin-wrap{background:transparent;border:0}.bt-speed-pin{display:block;width:var(--size);height:var(--size);border-radius:999px;background:var(--pin);border:2px solid #fff;box-shadow:0 8px 22px rgba(7,18,37,.28),0 0 0 4px rgba(255,255,255,.22)}.bt-popup{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;min-width:190px}.bt-popup b{font-size:15px}.bt-popup p{margin:4px 0 8px;color:#44526d}.bt-popup dl{display:grid;grid-template-columns:78px 1fr;gap:4px 8px;margin:0}.bt-popup dt{color:#71809a}.bt-popup dd{margin:0;font-weight:800}.bucket-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.bucket{background:#fff;border:1px solid #d3deec;border-radius:12px;padding:12px}.bucket i{display:block;width:100%;height:10px;border-radius:99px;margin-bottom:8px}.bucket b{display:block}.bucket span{display:block;color:#63718e;margin-top:3px;font-size:12px;font-weight:850}.map-point-row{grid-template-columns:minmax(0,1fr) auto}.map-help{font-weight:850}@media(max-width:900px){.map-hero{grid-template-columns:1fr}.map-statline{min-width:0}.osm-wrap,.osm-map{min-height:430px;height:430px}.bucket-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.osm-wrap,.osm-map{min-height:360px;height:360px}.leaflet-speed-legend{left:10px;right:10px;width:auto;bottom:10px}.osm-update{top:10px;left:10px;right:10px;text-align:center}.osm-credit{display:none}.bucket-grid{grid-template-columns:1fr}.map-hero h1{font-size:34px}}

/* v8.22.26: Leaflet yerel güvenlik/fallback CSS'i. CDN CSS gecikirse OpenStreetMap bozuk görünmesin. */
.leaflet-container{overflow:hidden;position:relative;outline:0;background:#dbe6f2;font:12px/1.5 Arial,Helvetica,sans-serif;touch-action:pan-x pan-y}
.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}
.leaflet-container img{max-width:none!important;max-height:none!important}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-map-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-control{position:relative;z-index:800;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-control-zoom a{background:#fff;border-bottom:1px solid #ccc;color:#111;display:block;width:26px;height:26px;line-height:26px;text-align:center;text-decoration:none;font-weight:900}.leaflet-control-zoom a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-control-zoom a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:0}.leaflet-control-attribution{background:rgba(255,255,255,.78);margin:0;padding:0 5px;color:#333}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px;background:#fff;color:#1a2540;box-shadow:0 3px 14px rgba(0,0,0,.25)}.leaflet-popup-content{margin:13px 18px;line-height:1.4}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;background:#fff;transform:rotate(45deg);box-shadow:0 3px 14px rgba(0,0,0,.2)}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:grab}.leaflet-dragging .leaflet-grab{cursor:move}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.osm-map .map-empty.inside{z-index:900;background:#fff}
.map-page .map-only-card{margin-bottom:42px}.map-page .map-cluster-list,.map-page .content-grid{display:none!important}.osm-wrap{isolation:isolate}.osm-map{display:block}.leaflet-speed-legend{pointer-events:none}.osm-update,.osm-credit{pointer-events:none}

/* v8.22.26 nPerf benzeri tam ekran OSM hız haritası */
body.bt-map-fullscreen{margin:0;background:#dce8ef;overflow:hidden;color:#06162e;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
.map-app-full{position:fixed;inset:0;width:100vw;height:100vh;overflow:hidden;background:#dde9ef}
.osm-map-full{position:absolute;inset:0;width:100%;height:100%;z-index:1;background:#dce8ef}
.map-app-full .leaflet-container{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;background:#dce8ef}
.map-app-full .leaflet-control-zoom{margin-top:8px!important;margin-left:8px!important;border:1px solid rgba(0,0,0,.18);box-shadow:0 2px 8px rgba(0,0,0,.12)}
.map-app-full .leaflet-control-zoom a{width:31px;height:31px;line-height:31px;background:rgba(255,255,255,.94);color:#0d1728;font-size:22px;font-weight:500;border-bottom:1px solid rgba(0,0,0,.18)}
.map-app-full .leaflet-control-attribution{font-size:10px;background:rgba(255,255,255,.78);color:#33445b}
.map-app-full .leaflet-control-scale{margin-left:12px!important;margin-bottom:42px!important}
.map-app-full .leaflet-control-scale-line{background:rgba(255,255,255,.78);border-color:#333;color:#1d2738}
.map-home-chip{position:absolute;z-index:650;top:14px;right:16px;display:flex;align-items:center;gap:9px;background:rgba(255,255,255,.92);color:#071225;text-decoration:none;border-radius:16px;padding:8px 12px;border:1px solid rgba(7,18,37,.12);box-shadow:0 8px 24px rgba(7,18,37,.12);backdrop-filter:blur(8px)}
.map-home-chip span{width:30px;height:30px;border-radius:10px;background:linear-gradient(135deg,#19b7ff,#0877df);display:grid;place-items:center;font-weight:950;color:#00152c}.map-home-chip b{font-size:13px;white-space:nowrap}.map-layer-chip{position:absolute;z-index:640;top:74px;right:16px;background:rgba(255,255,255,.88);border:1px solid rgba(7,18,37,.12);border-radius:14px;padding:8px 12px;font-weight:950;font-size:12px;color:#19263d;box-shadow:0 8px 24px rgba(7,18,37,.1)}
.map-search-control{position:absolute;z-index:650;top:10px;left:54px;width:min(360px,calc(100vw - 170px));height:38px;background:rgba(255,255,255,.94);border:1px solid rgba(40,62,86,.22);border-radius:6px;box-shadow:0 2px 12px rgba(7,18,37,.12);display:flex;align-items:center;overflow:hidden}
.map-search-control:after{content:'⌕';font-size:26px;color:#a1adbb;line-height:1;margin:0 11px 2px 7px}.map-search-control input{appearance:none;border:0;background:transparent;outline:0;color:#24334b;width:100%;height:100%;font-size:16px;padding:0 6px 0 14px}.map-search-control input::placeholder{color:#9ba6b7}.map-search-control button{border:0;background:transparent;color:#1aa6d8;font-size:22px;line-height:1;width:34px;height:100%;cursor:pointer;display:grid;place-items:center}
.map-filter-toggle{position:absolute;z-index:650;top:56px;left:54px;border:0;background:#102538;color:#fff;border-radius:6px;padding:9px 13px;font-weight:900;box-shadow:0 4px 16px rgba(7,18,37,.22);cursor:pointer}.map-filter-toggle[aria-expanded="true"]{background:#0bb7e7}.map-filter-panel{position:absolute;z-index:660;left:54px;top:96px;width:min(360px,calc(100vw - 72px));background:rgba(16,37,56,.94);color:#fff;border:1px solid rgba(255,255,255,.18);border-radius:8px;box-shadow:0 18px 45px rgba(0,0,0,.32);padding:14px;display:none;backdrop-filter:blur(8px)}.map-filter-panel.open{display:block}.map-filter-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.map-filter-head strong{font-size:15px}.map-filter-head button{border:0;background:transparent;color:#fff;font-size:24px;line-height:1;cursor:pointer}.map-filter-panel label{display:block;font-size:12px;color:#d4e0ef;font-weight:900;margin:0 0 10px}.map-filter-panel select{width:100%;margin-top:5px;border:1px solid rgba(255,255,255,.2);background:#0a1928;color:#fff;border-radius:6px;padding:9px 10px;font-weight:800}.map-reset-full{width:100%;border:0;border-radius:6px;padding:10px 12px;background:#16bfe8;color:#001524;font-weight:950;cursor:pointer}.map-meta-full{margin:10px 0 0;color:#cfd9e7;font-size:12px;line-height:1.35}
.map-update-chip{position:absolute;z-index:640;left:12px;bottom:44px;background:rgba(235,248,255,.94);color:#1d2b3d;border-radius:5px;padding:12px 22px;font-size:16px;box-shadow:0 7px 20px rgba(7,18,37,.12);border:1px solid rgba(20,40,70,.08)}.map-speed-scale{position:absolute;z-index:635;left:0;right:0;bottom:0;height:42px;background:rgba(18,42,51,.72);display:flex;align-items:center;justify-content:center;pointer-events:none}.map-speed-scale .scale-labels{position:absolute;top:5px;width:min(520px,calc(100% - 170px));display:flex;justify-content:space-between;color:#202b38;font-size:12px;text-shadow:0 1px 0 rgba(255,255,255,.85);font-weight:800}.map-speed-scale .scale-bar{width:min(520px,calc(100% - 170px));height:11px;border-radius:0;background:linear-gradient(90deg,#1f6aa5 0%,#278fb4 22%,#94c85b 44%,#f39c4a 68%,#e51b32 100%);box-shadow:0 1px 3px rgba(0,0,0,.28)}.map-count-chip{position:absolute;z-index:640;right:14px;bottom:54px;background:rgba(16,37,56,.9);color:#fff;border-radius:999px;padding:8px 13px;font-size:12px;font-weight:950;border:1px solid rgba(255,255,255,.18)}
.map-app-full .bt-popup{min-width:205px}.map-app-full .bt-popup p{margin:4px 0 8px}.map-app-full .leaflet-popup-content-wrapper{border-radius:8px}.map-app-full .map-empty.inside{position:absolute;inset:80px 20px auto 20px;z-index:800;background:#fff;color:#1b2a44;border-radius:10px;padding:18px;box-shadow:0 10px 30px rgba(7,18,37,.18)}
@media(max-width:760px){.map-home-chip b{display:none}.map-home-chip{top:10px;right:10px;padding:7px}.map-layer-chip{display:none}.map-search-control{left:48px;right:10px;width:auto}.map-filter-toggle{left:48px}.map-filter-panel{left:10px;top:98px;width:calc(100vw - 20px)}.map-update-chip{left:10px;bottom:50px;font-size:13px;padding:9px 12px;max-width:calc(100vw - 95px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.map-count-chip{right:10px;bottom:50px}.map-speed-scale .scale-labels,.map-speed-scale .scale-bar{width:calc(100% - 24px)}}

/* v8.22.27: uyumlu header + iki harita modu + nPerf tarzı hız/kapsama noktaları */
body.bt-map-page{background:#0d1122;color:#071225;min-height:100vh;overflow:auto}.bt-map-page .bt-header{position:sticky;top:0;z-index:1200;height:78px;background:#fff}.bt-map-page .bt-nav a.active{background:#edf4ff;color:#1557bb}.map-page-shell{width:min(1280px,calc(100% - 32px));margin:0 auto;padding:24px 0 34px}.map-toolbar-card{background:#eef3fa;color:#071225;border:1px solid #d8e3f0;border-radius:18px;padding:20px;box-shadow:0 14px 45px rgba(3,7,18,.16);margin-bottom:16px}.map-title-box{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;flex-wrap:wrap}.map-title-box h1{margin:0 0 6px;font-size:30px;letter-spacing:-.03em}.map-title-box p{margin:0;color:#485875;max-width:820px}.map-mode-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.map-mode-tabs button{border:1px solid #c6d4e5;background:#fff;color:#0c1c36;border-radius:999px;padding:11px 16px;font-weight:950;cursor:pointer}.map-mode-tabs button.active{background:linear-gradient(100deg,#20c9ee,#8e6bff);border-color:transparent;color:#fff;box-shadow:0 8px 22px rgba(32,201,238,.22)}.map-controls-row{display:grid;grid-template-columns:1.4fr repeat(5,minmax(130px,1fr)) auto;gap:10px;align-items:end}.map-controls-row label{font-size:12px;color:#576987;font-weight:950;text-transform:uppercase}.map-controls-row input,.map-controls-row select{display:block;width:100%;margin-top:6px;height:42px;border:1px solid #c9d6e6;background:#fff;color:#0d1e37;border-radius:12px;padding:0 11px;font-weight:850;outline:none}.map-search-wrap span{display:flex;align-items:center;position:relative}.map-search-wrap button{position:absolute;right:5px;top:11px;border:0;background:#edf4ff;color:#0d7fc3;border-radius:9px;width:30px;height:30px;font-size:20px;cursor:pointer}.map-search-wrap input{padding-right:42px}.map-reset-btn{border:0;border-radius:12px;height:42px;padding:0 14px;background:#0d1e37;color:#fff;font-weight:950;cursor:pointer}.map-status-line{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:14px;color:#5b6b86;font-weight:850;font-size:13px}.map-canvas-card{height:calc(100vh - 315px);min-height:560px;position:relative;border-radius:18px;overflow:hidden;border:1px solid rgba(255,255,255,.16);box-shadow:0 22px 60px rgba(0,0,0,.28);background:#dce8ef}.osm-map-modern{position:absolute;inset:0;width:100%;height:100%;background:#dce8ef}.bt-map-page .leaflet-container{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;background:#dce8ef}.bt-map-page .leaflet-control-zoom{margin:12px!important;border:1px solid rgba(0,0,0,.18);box-shadow:0 2px 8px rgba(0,0,0,.12)}.bt-map-page .leaflet-control-zoom a{width:32px;height:32px;line-height:32px;background:rgba(255,255,255,.94);color:#0d1728;font-size:22px;font-weight:500;border-bottom:1px solid rgba(0,0,0,.18)}.bt-map-page .leaflet-control-attribution{font-size:10px;background:rgba(255,255,255,.78);color:#33445b}.bt-map-page .leaflet-control-scale{margin-left:12px!important;margin-bottom:58px!important}.bt-map-page .leaflet-control-scale-line{background:rgba(255,255,255,.78);border-color:#333;color:#1d2738}.speed-legend-overlay{position:absolute;z-index:640;left:16px;right:16px;bottom:12px;height:46px;background:rgba(16,42,50,.78);border-radius:12px;display:flex;align-items:center;justify-content:center;pointer-events:none;box-shadow:0 6px 18px rgba(7,18,37,.22);backdrop-filter:blur(6px)}.speed-legend-overlay .legend-labels{position:absolute;top:5px;width:min(620px,calc(100% - 40px));display:flex;justify-content:space-between;color:#fff;font-size:12px;font-weight:950;text-shadow:0 1px 2px rgba(0,0,0,.5)}.speed-legend-overlay .legend-track{width:min(620px,calc(100% - 40px));height:12px;border-radius:999px;background:linear-gradient(90deg,#2196f3 0%,#25c6da 18%,#55c667 38%,#f4d03f 58%,#ff7a1a 78%,#e71935 100%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.24),0 1px 4px rgba(0,0,0,.32)}.map-last-chip{position:absolute;z-index:650;left:16px;bottom:72px;background:rgba(235,248,255,.94);color:#1d2b3d;border-radius:10px;padding:10px 14px;font-size:14px;box-shadow:0 7px 20px rgba(7,18,37,.12);border:1px solid rgba(20,40,70,.08);font-weight:850}.map-count-chip-modern{position:absolute;z-index:650;right:16px;bottom:72px;background:rgba(16,37,56,.9);color:#fff;border-radius:999px;padding:9px 14px;font-size:13px;font-weight:950;border:1px solid rgba(255,255,255,.18)}.bt-map-page .bt-popup{min-width:210px}.bt-map-page .bt-popup p{margin:4px 0 8px;color:#52627d}.bt-map-page .bt-popup dl{display:grid;grid-template-columns:80px 1fr;gap:4px 8px;margin:0}.bt-map-page .bt-popup dt{font-weight:850;color:#65738f}.bt-map-page .bt-popup dd{margin:0;font-weight:900;color:#10203a}.bt-map-page .leaflet-popup-content-wrapper{border-radius:12px;box-shadow:0 8px 28px rgba(0,0,0,.26)}.bt-map-page .map-empty.inside{position:absolute;inset:80px 20px auto 20px;z-index:800;background:#fff;color:#1b2a44;border-radius:10px;padding:18px;box-shadow:0 10px 30px rgba(7,18,37,.18)}
@media(max-width:1180px){.map-controls-row{grid-template-columns:repeat(3,1fr)}.map-reset-btn{grid-column:auto}.map-canvas-card{height:620px}}
@media(max-width:760px){.map-page-shell{width:calc(100% - 18px);padding:12px 0 22px}.map-toolbar-card{padding:15px;border-radius:14px}.map-title-box h1{font-size:25px}.map-controls-row{grid-template-columns:1fr 1fr}.map-controls-row .map-search-wrap{grid-column:1/-1}.map-reset-btn{grid-column:1/-1}.map-canvas-card{height:520px;min-height:520px;border-radius:14px}.map-last-chip{left:10px;bottom:68px;font-size:12px;max-width:calc(100vw - 120px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.map-count-chip-modern{right:10px;bottom:68px}.speed-legend-overlay{left:8px;right:8px;bottom:8px}.speed-legend-overlay .legend-labels,.speed-legend-overlay .legend-track{width:calc(100% - 24px)}}

/* v8.22.28 map/coverage cleanup */
.map-admin-note{background:#fff;border:1px solid #d7e2ef;border-radius:14px;padding:10px 14px;min-width:180px;text-align:left;box-shadow:0 6px 20px rgba(16,40,75,.06)}.map-admin-note b{display:block;color:#64728d;font-size:11px;text-transform:uppercase}.map-admin-note span{display:block;color:#0d1e37;font-weight:950;margin-top:3px}.map-controls-row-extended{grid-template-columns:1.4fr repeat(7,minmax(120px,1fr)) auto}.mobile-legend-overlay{position:absolute;z-index:640;left:50%;bottom:14px;transform:translateX(-50%);display:flex;gap:10px;align-items:center;justify-content:center;background:rgba(255,255,255,.93);border:1px solid rgba(14,33,55,.16);border-radius:999px;padding:10px 14px;box-shadow:0 8px 26px rgba(7,18,37,.18);backdrop-filter:blur(7px)}.mobile-legend-overlay span{width:52px;height:38px;border-radius:999px;color:#fff;display:grid;place-items:center;font-weight:950;font-size:15px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.2),0 3px 9px rgba(0,0,0,.16)}.mobile-legend-overlay .g2{background:#1f8ed6}.mobile-legend-overlay .g3{background:#79c900}.mobile-legend-overlay .g4{background:#ff7a1a}.mobile-legend-overlay .g4p{background:#df1635}.mobile-legend-overlay .g5{background:#8e22e6}.bt-map-page .leaflet-interactive{transition:opacity .15s ease, stroke-width .15s ease}.bt-map-page .leaflet-interactive:hover{stroke-width:3!important;opacity:1!important}.map-canvas-card{min-height:620px}.bt-map-page .bt-header{box-shadow:0 1px 0 rgba(10,25,45,.04)}@media(max-width:1180px){.map-controls-row-extended{grid-template-columns:1fr 1fr 1fr}.map-controls-row-extended .map-search-wrap{grid-column:1/-1}.map-reset-btn{grid-column:1/-1}}@media(max-width:760px){.map-controls-row-extended{grid-template-columns:1fr 1fr}.mobile-legend-overlay{left:8px;right:8px;transform:none;gap:6px;justify-content:space-between}.mobile-legend-overlay span{width:48px;height:34px}.map-admin-note{width:100%}.map-canvas-card{min-height:540px;height:calc(100vh - 330px)}}
/* v8.22.31 mobile coverage cleanup */
.mobile-legend-overlay{gap:8px;max-width:calc(100% - 24px);overflow-x:auto}.mobile-legend-overlay .gnone{background:#23272f}.mobile-legend-overlay span{min-width:52px}.bt-map-page .leaflet-interactive{stroke-linejoin:round;stroke-linecap:round}.bt-map-page .leaflet-pane .leaflet-overlay-pane svg path[fill="#23272f"]{stroke:#111827!important}.map-canvas-card .legend-mobile{bottom:14px}.bt-popup dt{white-space:nowrap}@media(max-width:760px){.mobile-legend-overlay span{min-width:48px;font-size:13px}.map-canvas-card .legend-mobile{bottom:10px}}

/* v8.22.31 - hız haritası renk ölçeği netleştirme */
.speed-legend-overlay{background:rgba(13,28,36,.82)!important;border:1px solid rgba(255,255,255,.16)!important}
.speed-legend-overlay .legend-track{height:13px!important;background:linear-gradient(90deg,#2196f3 0%,#25c6da 18%,#55c667 38%,#f4d03f 58%,#ff7a1a 78%,#e71935 100%)!important}
.speed-legend-overlay .legend-labels span{position:relative;text-align:center}.speed-legend-overlay .legend-labels span:after{content:'';position:absolute;left:50%;top:17px;width:1px;height:12px;background:rgba(255,255,255,.45)}
.mobile-legend-overlay .gnone{background:#111827!important}.mobile-legend-overlay .g2{background:#1f8ed6!important}.mobile-legend-overlay .g3{background:#79c900!important}.mobile-legend-overlay .g4{background:#ff7a1a!important}.mobile-legend-overlay .g4p{background:#df1635!important}.mobile-legend-overlay .g5{background:#8e22e6!important}
