/* Uygulama kabuğu. cinema.css değişkenlerini (--ink, --ease, .pill, .panel, .kicker, .tag) yeniden kullanır. */
body.shell{background:#FFFFFF;color:var(--ink);padding-bottom:calc(env(safe-area-inset-bottom) + 84px)}
a{color:inherit}
.attr{display:inline-block;font-size:10.5px;color:var(--ink2);letter-spacing:.01em}
.foot{font-size:12px;color:var(--ink2);line-height:1.5;text-align:center;padding:18px 24px 8px}
.hint{font-size:13px;color:var(--ink2);line-height:1.5}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 20px;border-radius:999px;background:#111;color:#fff;font:600 15px Inter,sans-serif;text-decoration:none;border:0;cursor:pointer}
.btn.ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1.5px #D5D8DC}
.btn.big{min-height:56px;padding:0 28px;font-size:17px}
.empty{min-height:80svh;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:14px;padding:24px;max-width:560px;margin:0 auto}
.empty h1{font-size:30px;letter-spacing:-.02em}
.empty p{font-size:17px;line-height:1.5;color:var(--ink2)}

/* Alt sekme çubuğu */
.tabbar{position:fixed;left:50%;bottom:calc(env(safe-area-inset-bottom) + 12px);transform:translateX(-50%);z-index:40;display:flex;gap:4px;padding:6px;border-radius:999px;background:rgba(255,255,255,.82);backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px) saturate(1.4);box-shadow:0 10px 36px rgba(0,0,0,.22);transition:transform .4s var(--ease),opacity .4s var(--ease)}
.tabbar.hide{transform:translate(-50%,120px);opacity:0;pointer-events:none}
.tabbar a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:84px;min-height:52px;border-radius:999px;text-decoration:none;font-size:11px;font-weight:600;color:#6b6b6b}
.tabbar a.on{background:#111;color:#fff}

/* Keşfet: açılış */
.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;color:#fff;overflow:hidden;background:#0d0c0b}
.hero-stage{position:absolute;inset:0}
.hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.04);transition:opacity 1.8s var(--ease)}
.hero-img.on{opacity:1;animation:kb 14s ease-out forwards}
@keyframes kb{from{transform:scale(1.14)}to{transform:scale(1.02)}}
.rveil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.3) 0%,rgba(0,0,0,0) 30%,rgba(0,0,0,.2) 55%,rgba(0,0,0,.72) 100%);pointer-events:none}
.hero-body{position:relative;padding:0 20px calc(env(safe-area-inset-bottom) + 110px);width:100%;max-width:640px;display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.hero .eyebrow{font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;opacity:.9}
.hero h1{font-size:clamp(56px,17vw,104px);line-height:.95;letter-spacing:-.045em;font-weight:800}
.hero .sub{font-size:19px;opacity:.95;margin-bottom:10px}
.hero .attr{color:rgba(255,255,255,.7);margin-top:14px}
.cdpill{background:#fff;font-weight:700}
.cdpill.urgent{background:#ffe3a3}
.cdpill[hidden]{display:none}

.home{position:relative;z-index:2;padding:16px 14px 0;max-width:640px;margin:0 auto}
.resume{display:flex;align-items:center;gap:14px;padding:10px 16px 10px 10px;border-radius:22px;background:#fff;text-decoration:none;box-shadow:0 10px 30px rgba(0,0,0,.1);margin-bottom:18px;min-height:76px}
.resume img{width:56px;height:74px;border-radius:12px;object-fit:cover}
.resume div{flex:1;min-width:0}
.resume small{display:block;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink2)}
.resume b{display:block;font-size:19px;letter-spacing:-.01em;margin:2px 0}
.resume span{font-size:13px;color:var(--ink2)}
.resume i{font-style:normal;font-size:22px}

.regions{display:flex;flex-direction:column;gap:16px}
.rcard{position:relative;display:block;min-height:70svh;border-radius:28px;overflow:hidden;color:#fff;text-decoration:none;background:#222;box-shadow:0 18px 44px rgba(0,0,0,.18)}
.rcard>img{position:absolute;left:0;top:-8%;width:100%;height:116%;object-fit:cover}
.rcard::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.18) 0%,rgba(0,0,0,0) 35%,rgba(0,0,0,.78) 100%)}
.rbody{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:22px 22px 20px}
.rtag{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:5px 10px;border-radius:999px;background:var(--c);color:#fff}
.rbody h2{font-size:34px;letter-spacing:-.03em;line-height:1.05;margin:12px 0 6px}
.rbody p{font-size:16px;line-height:1.45;opacity:.95;max-width:34ch}
.bar{height:5px;border-radius:3px;background:rgba(255,255,255,.3);margin:16px 0 8px;overflow:hidden}
.bar i{display:block;height:100%;background:#fff;border-radius:3px}
.rmeta{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-size:13px;font-weight:600}
.rcard .attr{color:rgba(255,255,255,.7)}

/* Bölge */
.rhero{position:relative;min-height:100svh;display:flex;align-items:flex-end;color:#fff;overflow:hidden;background:#0d0c0b}
.rhero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.rhero .back{position:absolute;top:calc(env(safe-area-inset-top) + 12px);left:16px;z-index:3;text-decoration:none}
.rhero-body{position:relative;z-index:2;width:100%;max-width:640px;padding:0 20px calc(env(safe-area-inset-bottom) + 110px);display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.rhero .kicker{color:#fff;margin:0}.rhero .kicker i{background:#fff}
.rhero h1{font-size:clamp(42px,12vw,80px);line-height:.98;letter-spacing:-.04em;font-weight:800}
.rhero .lead{font-size:18px;line-height:1.45;max-width:32ch;opacity:.95}
.rhero .est{font-size:14px;opacity:.85;margin-bottom:8px}
.rhero .attr{color:rgba(255,255,255,.7);margin-top:8px}
.rings{display:flex;justify-content:space-around;gap:8px;max-width:640px;margin:0 auto;padding:26px 14px 6px}
.ringbox{display:flex;flex-direction:column;align-items:center;gap:2px}
.ringbox b{font-size:14px;margin-top:6px}.ringbox small{font-size:12px;color:var(--ink2)}
.film{max-width:640px;margin:0 auto;padding:14px 14px 0;display:flex;flex-direction:column;gap:12px}
.row{display:flex;gap:14px;padding:10px;border-radius:22px;background:#fff;text-decoration:none;box-shadow:0 8px 24px rgba(0,0,0,.07);min-height:148px}
.row img{width:96px;height:128px;flex:none;border-radius:14px;object-fit:cover;background:#ddd}
.row>div{min-width:0;display:flex;flex-direction:column;gap:4px;padding-top:2px}
.row .num{font-size:12px;font-weight:700;color:var(--accent);letter-spacing:.08em}
.row h3{font-size:19px;letter-spacing:-.015em;line-height:1.2}
.row p{font-size:14px;line-height:1.4;color:var(--ink2)}
.rowmeta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:auto}
.chip{font-size:11.5px;font-weight:600;padding:4px 9px;border-radius:999px;background:#F0F1F3;color:var(--ink)}
.chip.ok{background:var(--accent);color:#fff}
.tail{display:flex;justify-content:center;padding:24px 0 0}

/* Rota */
.rta{min-height:62svh}
.rta .rhero-body{padding-bottom:36px}
.rta h1{font-size:clamp(38px,11vw,68px)}
.rta .go{display:inline-block;margin-top:6px;padding:8px 16px;border-radius:999px;background:#ffe3a3;color:#5a3d00;font-weight:700}
.setup,.rota .panel{max-width:600px;margin:-22px auto 0;position:relative;z-index:3;background:#fff;box-shadow:0 14px 40px rgba(0,0,0,.14);width:calc(100% - 28px)}
.rota .panel{margin-top:14px}
.setup h2,.rota .panel h3{font-size:20px;letter-spacing:-.01em;margin-bottom:12px}
.fld{display:block;margin-bottom:16px}
.fld>span{display:block;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink2);margin-bottom:8px}
.fld input[type=time],.fld input[type=date]{font:700 34px Inter,sans-serif;width:100%;min-height:60px;padding:6px 14px;border:1.5px solid #E3E5E8;border-radius:16px;background:#F3F4F5;color:var(--ink)}
.fld input[type=date]{font-size:20px;min-height:52px}
.seg{display:flex;gap:8px;flex-wrap:wrap}
.seg label{flex:1;min-width:76px}
.seg input{position:absolute;opacity:0;pointer-events:none}
.seg b{display:flex;align-items:center;justify-content:center;min-height:48px;padding:0 12px;border-radius:14px;background:#F0F1F3;font-size:15px;font-weight:600;cursor:pointer;text-align:center}
.seg input:checked+b{background:#111;color:#fff}
.seg input:focus-visible+b,.fld input:focus-visible,.btn:focus-visible,.pin:focus-visible{outline:3px solid #2f6fed;outline-offset:2px}
.warns{max-width:600px;margin:14px auto 0;padding:0 14px;display:flex;flex-direction:column;gap:8px}
.warn{background:#fff3d6;color:#5a3d00;border-radius:16px;padding:12px 16px;font-size:14.5px;line-height:1.45;font-weight:500}
.ctrls{max-width:600px;margin:14px auto 0;padding:0 14px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.tl{max-width:600px;margin:14px auto 0;padding:0 14px;display:flex;flex-direction:column}
.tl-mark,.tl-buf{font-size:14px;color:var(--ink2);padding:8px 0 8px 18px;border-left:2px solid #E3E5E8;margin-left:14px}
.tl-mark b,.tl-buf b{color:var(--ink);font-variant-numeric:tabular-nums;margin-right:4px}
.tl-buf{border-left-style:dashed;color:#7a5a00}
.tl-walk{font-size:13px;color:var(--ink2);padding:10px 0 10px 18px;border-left:2px dotted #C4C8CE;margin-left:14px}
.blk{position:relative;border-radius:24px;overflow:hidden;background:#222;color:#fff;min-height:150px;box-shadow:0 12px 30px rgba(0,0,0,.16)}
.blk-link{display:block;position:relative;min-height:150px;text-decoration:none}
.blk-link img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.blk-link::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.25) 100%)}
.blk::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--c);z-index:3}
.blk-body{position:relative;z-index:2;padding:18px 20px 18px 24px;display:flex;flex-direction:column;gap:4px}
.blk-body small{font-size:14px;font-weight:700;font-variant-numeric:tabular-nums;opacity:.95}
.blk-body h3{font-size:24px;letter-spacing:-.02em;line-height:1.1}
.blk-body p{font-size:14px;opacity:.9}
.blk.fixed{min-height:190px;box-shadow:0 0 0 3px var(--c),0 16px 36px rgba(0,0,0,.25)}
.blk.fixed .blk-link{min-height:190px}
.tag.fx{margin:0 0 6px;align-self:flex-start;background:#fff;color:#111}
.skipbtn{position:absolute;right:12px;top:12px;z-index:4;min-height:44px;padding:0 14px;border-radius:999px;border:0;background:rgba(255,255,255,.9);font:600 13px Inter,sans-serif;cursor:pointer}
.blk .attr{position:absolute;right:12px;bottom:8px;z-index:3;color:rgba(255,255,255,.7)}
.sk{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:16px;margin-top:6px}
.rota .hint a{font-weight:600}

/* Harita */
body.shell[data-page=map]{padding-bottom:0;overflow:hidden;background:#EEF0F2}
.map{position:fixed;inset:0;background:#EEF0F2;touch-action:none}
.mapsvg{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none;user-select:none;-webkit-user-select:none}
.outline{fill:#FFFFFF;stroke:#9AA0A8;stroke-width:2;vector-effect:non-scaling-stroke;stroke-linejoin:round}
.area{fill-opacity:.2;stroke-opacity:.55;stroke-width:1.5;vector-effect:non-scaling-stroke;stroke-linejoin:round}
.route{opacity:0;transition:opacity .35s;fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:0;animation:draw 3.5s var(--ease) .4s backwards}
@keyframes draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
.zoomed .route{opacity:1}
.bubble{cursor:pointer;transition:opacity .3s}
.zoomed .bubble{opacity:0;pointer-events:none}
.bubble .bb{stroke:#fff;stroke-width:2.5;filter:drop-shadow(0 3px 8px rgba(0,0,0,.28))}
.bubble .bn{font:700 13px Inter,sans-serif;fill:#fff;text-anchor:middle;pointer-events:none}
.bubble .bc{font:600 11px Inter,sans-serif;fill:rgba(255,255,255,.92);text-anchor:middle;pointer-events:none}
.bubble:focus-visible .bb{stroke:#111}
.leader{stroke:#4A5058;stroke-width:1;opacity:.6;pointer-events:none}
.tdot{fill:#4A5058;pointer-events:none}
.pins,.leaders{opacity:0;pointer-events:none;transition:opacity .3s}
.zoomed .pins,.zoomed .leaders{opacity:1}
.zoomed .pins{pointer-events:auto}
.compass{position:absolute;z-index:5;left:16px;top:calc(env(safe-area-inset-top) + 64px);width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.92);box-shadow:0 4px 14px rgba(0,0,0,.18);display:flex;align-items:center;justify-content:center;pointer-events:none}
.lm .lmdot{fill:#fff;stroke:#4A5058;stroke-width:2}
.lm.approx .lmdot{fill:none;stroke-dasharray:3 2.5}
.lmlabel{font:600 11px Inter,sans-serif;fill:#2B2F34;paint-order:stroke;stroke:#FFFFFF;stroke-width:3px;pointer-events:none}
.lm.quiet .lmlabel{opacity:0}
.lmlabel{transition:opacity .3s}
.pin{cursor:pointer}
.pinn{font:700 13px Inter,sans-serif;fill:#fff;text-anchor:middle;pointer-events:none}
.pinck{font:800 10px Inter,sans-serif;fill:#2d7a3e;text-anchor:middle;pointer-events:none}
.pin.sel .pinc{stroke:#111;stroke-width:3.5}
.gpsacc{fill:rgba(47,111,237,.14);stroke:rgba(47,111,237,.5);stroke-width:1;vector-effect:non-scaling-stroke}
.maptop{position:absolute;z-index:5;top:calc(env(safe-area-inset-top) + 12px);left:16px;right:16px;display:flex;justify-content:space-between;gap:8px}
.maptop .pill{cursor:pointer;text-decoration:none}
.locmsg{position:absolute;z-index:6;top:calc(env(safe-area-inset-top) + 64px);left:16px;right:16px;height:auto;min-height:44px;padding:10px 16px;line-height:1.4;border-radius:20px;font-size:13.5px}
.locmsg[hidden],.sheet[hidden]{display:none}
.zoom{position:absolute;z-index:5;right:16px;top:calc(env(safe-area-inset-top) + 64px);display:flex;flex-direction:column;gap:6px}
.zoom button{width:48px;height:48px;border-radius:50%;border:0;background:rgba(255,255,255,.92);box-shadow:0 4px 14px rgba(0,0,0,.2);font:600 22px Inter,sans-serif;cursor:pointer}
.mapnote{position:absolute;z-index:6;left:12px;right:12px;bottom:calc(env(safe-area-inset-bottom) + 84px);font-size:10.5px;line-height:1.4;color:#4A5058;text-align:center;pointer-events:none}
.sheet{position:absolute;z-index:7;left:12px;right:12px;bottom:calc(env(safe-area-inset-bottom) + 140px);max-width:520px;margin:0 auto;display:flex;gap:14px;padding:12px;border-radius:24px;background:rgba(255,255,255,.96);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 18px 50px rgba(0,0,0,.28)}
.sh-img img{width:84px;height:112px;border-radius:14px;object-fit:cover;display:block}
.sh-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px;align-items:flex-start}
.sh-body small{font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.sh-body h3{font-size:20px;letter-spacing:-.015em;line-height:1.15}
.sh-body p{font-size:13.5px;line-height:1.4;color:var(--ink2)}
.sh-body .btn{min-height:44px;margin-top:4px;font-size:14px}
.sx{position:absolute;top:4px;right:6px;width:44px;height:44px;border:0;background:none;font-size:26px;cursor:pointer;color:#555}
.sheet~.mapnote{bottom:calc(env(safe-area-inset-bottom) + 84px)}

@media (prefers-reduced-motion: reduce){
  .hero-img.on{animation:none;transform:scale(1.02)}
  .hero-img{transition:none}
  .route{animation:none}
  .tabbar,.tabbar.hide{transition:none}
}
/* Çevrimdışı indirme kartı (Keşfet) */
#offline{margin:0 0 18px}
.off{display:flex;flex-direction:column;gap:6px;padding:20px;border-radius:22px;background:#F3F4F5}
.off b{font-size:17px;letter-spacing:-.01em}
.off span{font-size:14px;line-height:1.45;color:var(--ink2)}
.off .err{color:#B3261E}
.off .btn{align-self:flex-start;margin-top:8px}
.off .bar{height:6px;border-radius:3px;background:#E3E5E8;overflow:hidden;margin-top:6px}
.off .bar i{display:block;height:100%;background:#111;transition:width .2s}
.off.done{background:#EEF6EF;padding:14px 18px;gap:2px}
.off.done b{font-size:15px;color:#1E6B34}.off.done span{font-size:13px}

/* ---- Harita v2: OSM altlığı + rota ---- */
.map,body.shell[data-page=map]{background:#ECEEEA}
.m-site{fill:#F7F7F4;stroke:none}
.m-green{fill:#D6E6CC;stroke:none}
.m-water{fill:#AFD3EA;stroke:none}
.m-bldg{fill:#DAD8D1;stroke:#BDBAB1;stroke-width:.7;vector-effect:non-scaling-stroke}
.zoomed .m-bldg{fill:#D5D2CA}
.m-road-c{fill:none;stroke:#D3D5D0;stroke-width:5.5;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.m-road{fill:none;stroke:#FFFFFF;stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.m-path-c{fill:none;stroke:#D8DAD5;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.m-path{fill:none;stroke:#FFFFFF;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.m-steps{fill:none;stroke:#B9BBB5;stroke-width:2.2;stroke-dasharray:1.2 1.6;vector-effect:non-scaling-stroke}
.m-wall{fill:none;stroke:#B7A58C;stroke-width:2.4;stroke-linejoin:round;vector-effect:non-scaling-stroke;opacity:.85}
.zoomed .m-road-c{stroke-width:9}.zoomed .m-road{stroke-width:6.5}.zoomed .m-path-c{stroke-width:5}.zoomed .m-path{stroke-width:3.2}
.area{fill-opacity:.14;stroke-opacity:.4;stroke-width:1.2}
.area{transition:opacity .3s}
.zoomed .area{opacity:0}
/* Rota çizgisi */
.rtlayer{transition:opacity .3s}
.mapsvg:not(.routeon) .rtlayer{opacity:0}
.rt-case{fill:none;stroke:#fff;stroke-width:8;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.rt-line{fill:none;stroke:#1F6FEB;stroke-width:4.5;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.rt-flow{fill:none;stroke:rgba(255,255,255,.85);stroke-width:1.6;stroke-linecap:round;stroke-dasharray:2 14;vector-effect:non-scaling-stroke;animation:flow 1.6s linear infinite}
@keyframes flow{to{stroke-dashoffset:-16}}
.rt-indoor{fill:none;stroke:#1F6FEB;stroke-width:3;stroke-dasharray:4 5;stroke-linecap:round;vector-effect:non-scaling-stroke;opacity:.8}
.rt-start{fill:#111;stroke:#fff;stroke-width:3;vector-effect:non-scaling-stroke}
.rt-num{stroke:#fff;stroke-width:3;vector-effect:non-scaling-stroke}
.rt-numt{font-family:Inter,sans-serif;font-weight:800;fill:#fff;text-anchor:middle}
/* Bölge etiketleri */
.bubble .bb{fill:#fff;stroke:none;filter:drop-shadow(0 4px 12px rgba(0,0,0,.18))}
.bubble .bn{font:700 13px Inter,sans-serif;fill:#111;text-anchor:start;pointer-events:none}
.bubble .bc{font:600 11px Inter,sans-serif;fill:#5B616A;text-anchor:start;pointer-events:none}
.bubble .bnum{font:800 12px Inter,sans-serif;fill:#fff;text-anchor:middle;pointer-events:none}
.bubble:focus-visible .bb{stroke:#111;stroke-width:2}
.bubble.small .bn{font-size:11.5px;font-weight:600;fill:#3A3F46}
.bubble.small .bb{filter:drop-shadow(0 2px 6px rgba(0,0,0,.14))}
.routeon .bubble.small{opacity:.9}
.zoomed .bubble,.routeon.zoomed .bubble{opacity:0}
/* Simge yerler + giriş */
.lm .lmdot{fill:#6B7078;stroke:#fff;stroke-width:1.5}
.lmentry{fill:#111;stroke:#fff;stroke-width:2.5}
.lmentryt{font:800 10px Inter,sans-serif;fill:#fff;text-anchor:middle;pointer-events:none}
.lm.entry .lmlabel{font-weight:700}
/* Üst düğmeler */
.rtbtn{position:absolute;z-index:5;left:72px;top:calc(env(safe-area-inset-top) + 64px);cursor:pointer;border:0;font:600 14px Inter,sans-serif}
.rtbtn[aria-pressed=true]{background:#1F6FEB;color:#fff}
.rtbtn[hidden]{display:none}
.locmsg{top:calc(env(safe-area-inset-top) + 118px)}
/* Rota şeridi */
.rstrip{position:absolute;z-index:6;left:10px;right:10px;bottom:calc(env(safe-area-inset-bottom) + 100px);max-width:560px;margin:0 auto;padding:12px 0 12px;border-radius:22px;background:rgba(255,255,255,.96);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 12px 36px rgba(0,0,0,.2);transition:opacity .25s,transform .25s}
.rstrip[hidden]{display:none}
.rstrip.under{opacity:0;transform:translateY(16px);pointer-events:none}
.rs-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:0 16px 10px}
.rs-head b{display:block;font-size:15px;letter-spacing:-.01em}
.rs-head span{display:block;font-size:12px;color:var(--ink2);margin-top:2px}
.rs-head a{font-size:13px;font-weight:700;color:#1F6FEB;text-decoration:none;padding:4px 0;white-space:nowrap}
.rs-steps{display:flex;gap:8px;overflow-x:auto;padding:0 16px;scroll-snap-type:x mandatory;scrollbar-width:none}
.rs-steps::-webkit-scrollbar{display:none}
.rs-step{flex:none;display:flex;align-items:center;gap:8px;min-height:48px;padding:6px 14px 6px 6px;border:0;border-radius:999px;background:#F1F2F4;font:600 13px Inter,sans-serif;color:#111;cursor:pointer;scroll-snap-align:start;text-align:left}
.rs-step i{flex:none;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-style:normal;font-weight:800;color:#fff;background:#111}
.rs-step small{display:block;font-size:11px;font-weight:600;color:var(--ink2)}
.rs-step span{line-height:1.2;white-space:nowrap}
.mapnote{bottom:calc(env(safe-area-inset-bottom) + 80px);font-size:10px;color:#6B7078;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sheet{bottom:calc(env(safe-area-inset-bottom) + 100px)}
@media (prefers-reduced-motion: reduce){.rt-flow{animation:none}}
/* Rota sayfası: küçük harita + numaralar */
.minimap{display:block;margin:0 0 18px;border-radius:24px;overflow:hidden;background:#fff;box-shadow:0 10px 30px rgba(0,0,0,.1);text-decoration:none;color:inherit}
.mm{height:340px;background:#ECEEEA}
.minisvg{width:100%;height:100%;display:block}
.mm-cap{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px}
.mm-cap b{display:block;font-size:16px}
.mm-cap span{display:block;font-size:12.5px;color:var(--ink2);margin-top:2px}
.mm-cap i{font-style:normal;font-weight:700;font-size:14px;color:#1F6FEB;white-space:nowrap}
.blk small .num{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:var(--c);color:#fff;font-style:normal;font-weight:800;font-size:11px;margin-right:7px;vertical-align:-4px}
