/* 3D skeny — prohlížeč (.sv-*) pro všechny stránky a PWA /scan (.sk-*).
   Tokeny bere ze stavebnice stránky: 21art.css / strizna.css (--plech --linka --rytina --elox --ryska)
   nebo ploty.css u ČESKÝCH PLOTŮ (--plocha --linka --text --sedy --zelena) — proto ty dvojice ve var(). */

/* ───────────── prohlížeč ───────────── */
.sv{position:relative;overflow:hidden;background:var(--tubus,var(--pozadi,#0B0C0B));border-radius:var(--r3,12px);touch-action:none;user-select:none;-webkit-user-select:none;min-height:240px}
.sv-platno{position:absolute;inset:0;width:100%;height:100%;display:block;cursor:grab}
.sv-platno:active{cursor:grabbing}
.sv-stav{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:24px;text-align:center;
  font:500 var(--v5,var(--p5,13px))/1.4 var(--pismo-cisla,var(--f-mono,var(--pismo,ui-monospace)));color:var(--elox,var(--sedy,#8B908A));pointer-events:none}
.sv-nahled{position:absolute;left:10px;top:10px;z-index:3;font:600 var(--p6,var(--v6,12px))/1.2 var(--f-text,var(--pismo-text,system-ui));
  background:rgba(0,0,0,.62);color:#F2F2EC;padding:7px 11px;border-radius:999px;pointer-events:none}
.sv-nahled.hotovo{pointer-events:auto;background:var(--ryska,#FF6B1F);padding:0}
.sv-nahled.hotovo button{font:inherit;color:#2A1205;background:none;border:0;padding:8px 13px;cursor:pointer}
.sk-porovnani{display:block;width:100%;height:auto;margin-top:8px;border-radius:var(--r2,8px);background:var(--plech,#121412)}
.sv-chyba .sv-stav{color:var(--chyba,#E0523C)}
.sv-pruh{position:absolute;left:0;right:0;bottom:var(--sv-spodek,0px);height:2px;background:var(--linka,#262A26);transition:opacity .4s}
.sv-pruh span{display:block;height:100%;width:0;background:var(--ryska,var(--zelena,#FF6B1F));transition:width .2s}
.sv-pruh.pryc,.sv-tip.pryc{opacity:0}
.sv-hud{position:absolute;left:12px;top:12px;z-index:2;pointer-events:none;opacity:0;transition:opacity .6s;letter-spacing:.06em;
  font:500 var(--v6,var(--p6,11.5px))/1.3 var(--pismo-cisla,var(--f-mono,var(--pismo,ui-monospace)));color:var(--elox,var(--sedy,#8B908A))}
.sv-hud.ted{opacity:1}
.sv-lista{position:absolute;right:10px;top:10px;display:flex;gap:6px;z-index:2}
.sv-tl{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:var(--r2,8px);cursor:pointer;
  border:1px solid var(--linka2,#363A35);background:color-mix(in srgb,var(--plech,var(--plocha,#121412)) 82%,transparent);color:var(--rytina,var(--text,#F2F2EC));
  -webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.sv-tl:hover{border-color:var(--elox,var(--sedy2,#8B908A))}
.sv-tl svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.sv-tip{position:absolute;left:50%;bottom:calc(var(--sv-spodek,0px) + 70px);transform:translateX(-50%);z-index:2;pointer-events:none;transition:opacity .6s;
  display:grid;gap:3px;width:max-content;max-width:calc(100% - 120px);padding:10px 14px;border-radius:var(--r3,12px);
  border:1px solid var(--linka2,#363A35);background:color-mix(in srgb,var(--plech,var(--plocha,#121412)) 88%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);
  font:400 var(--v6,var(--p6,11.5px))/1.35 var(--pismo-cisla,var(--f-mono,var(--pismo,ui-monospace)));color:var(--elox,var(--sedy,#8B908A))}
.sv-tip b{font-weight:600;color:var(--rytina,var(--text,#F2F2EC))}
.sv:not(.sv-hotovo) .sv-tip,.sv:not(.sv-hotovo) .sv-lista,.sv:not(.sv-hotovo) .sv-ovl,.sv:not(.sv-hotovo) .sv-rezim,.sv:not(.sv-hotovo) .sv-joy,.sv-projit .sv-tip{display:none}
/* pohyb ve skenu: tlačítka vpravo, přepínač Obejít · Projít, joystick, kroužek „sem“, náklon, klávesy, oznámení.
   --sv-spodek = výška lišty zastávek dole (dá ji druhá část prohlížeče), všechno dolní se posune nad ni */
.sv:focus-visible,.sv-tl:focus-visible,.sv-rezim button:focus-visible,.sv-naklon-stav:focus-visible,.sv-klavesy-x:focus-visible{outline:2px solid var(--ryska,var(--zelena,#FF6B1F));outline-offset:2px}
.sv:focus{outline-offset:-2px}
.sv-tl[aria-pressed="true"],.sv-tl[aria-expanded="true"]{border-color:var(--ryska,var(--zelena,#FF6B1F));color:var(--ryska,var(--zelena,#FF6B1F))}
.sv-ovl{position:absolute;right:10px;top:50%;transform:translateY(calc(-50% - var(--sv-spodek,0px) / 2));display:flex;flex-direction:column;gap:6px;z-index:2}
.sv-male .sv-otoc{display:none}
.sv-rezim{position:absolute;left:50%;bottom:calc(var(--sv-spodek,0px) + 12px);transform:translateX(-50%);z-index:2;display:flex;gap:2px;padding:3px;border-radius:999px;
  border:1px solid var(--linka2,#363A35);background:color-mix(in srgb,var(--plech,var(--plocha,#121412)) 82%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.sv-rezim button{min-height:36px;min-width:80px;padding:0 14px;border:0;border-radius:999px;background:none;cursor:pointer;color:var(--elox,var(--sedy,#8B908A));
  font:600 var(--v5,var(--p5,13px))/1 var(--pismo-text,var(--f-txt,var(--pismo,system-ui,sans-serif)))}
.sv-rezim button:hover{color:var(--rytina,var(--text,#F2F2EC))}
.sv-rezim button[aria-pressed="true"]{background:var(--rytina,var(--text,#F2F2EC));color:var(--tubus,var(--plocha,#0B0C0B))}
.sv-joy{position:absolute;left:12px;bottom:calc(var(--sv-spodek,0px) + 68px);z-index:2;width:112px;height:112px;border-radius:50%;touch-action:none;
  border:1px solid var(--linka2,#363A35);background:color-mix(in srgb,var(--plech,var(--plocha,#121412)) 55%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.sv-joy span{position:absolute;left:50%;top:50%;width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:50%;pointer-events:none;
  background:var(--rytina,var(--text,#F2F2EC));opacity:.8;transition:transform .18s}
.sv-joy.ted span{transition:none;opacity:.95}
.sv-male .sv-joy{width:92px;height:92px}
.sv-sem{position:absolute;z-index:3;width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:50%;border:2px solid currentColor;pointer-events:none;
  box-shadow:0 0 0 1px rgba(0,0,0,.25);animation:sv-sem .9s ease-out forwards}
.sv-sem::after{content:"";position:absolute;left:50%;top:50%;width:6px;height:6px;margin:-3px 0 0 -3px;border-radius:50%;background:currentColor}
@keyframes sv-sem{0%{transform:scale(.55);opacity:0}18%{opacity:1}70%{transform:scale(1);opacity:1}100%{transform:scale(1.15);opacity:0}}
.sv-naklon-stav{position:absolute;left:10px;top:10px;z-index:3;min-height:38px;max-width:calc(100% - 230px);padding:0 14px;border-radius:999px;cursor:pointer;
  border:1px solid var(--ryska,var(--zelena,#FF6B1F));background:color-mix(in srgb,var(--plech,var(--plocha,#121412)) 86%,transparent);color:var(--rytina,var(--text,#F2F2EC));
  font:600 var(--v6,var(--p6,12px))/1.2 var(--pismo-text,var(--f-txt,var(--pismo,system-ui,sans-serif)));-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.sv-naklon-zap .sv-hud{opacity:0}
.sv-klavesy{position:absolute;right:10px;top:56px;z-index:4;width:300px;max-width:calc(100% - 20px);max-height:calc(100% - 66px - var(--sv-spodek,0px));overflow:auto;
  padding:10px 14px 12px;border-radius:var(--r3,12px);border:1px solid var(--linka2,#363A35);background:color-mix(in srgb,var(--plech,var(--plocha,#121412)) 94%,transparent);
  color:var(--rytina,var(--text,#F2F2EC));font:400 var(--v6,var(--p6,12px))/1.4 var(--pismo-text,var(--f-txt,var(--pismo,system-ui,sans-serif)))}
.sv-klavesy-hlava{display:flex;align-items:center;justify-content:space-between;gap:8px}
.sv-klavesy-x{width:32px;height:32px;border:0;border-radius:var(--r2,8px);background:none;color:inherit;font-size:20px;line-height:1;cursor:pointer}
.sv-klavesy dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:5px 12px;margin:8px 0 0}
.sv-klavesy dt{font-family:var(--pismo-cisla,var(--f-mono,ui-monospace));white-space:nowrap}
.sv-klavesy dd{margin:0;color:var(--elox,var(--sedy,#8B908A))}
.sv-oznam{position:absolute;left:50%;top:56px;z-index:4;transform:translate(-50%,-6px);width:max-content;max-width:calc(100% - 32px);padding:9px 14px;border-radius:var(--r2,8px);
  border:1px solid var(--linka2,#363A35);background:color-mix(in srgb,var(--plech,var(--plocha,#121412)) 94%,transparent);color:var(--rytina,var(--text,#F2F2EC));text-align:center;
  font:500 var(--v6,var(--p6,12px))/1.35 var(--pismo-text,var(--f-txt,var(--pismo,system-ui,sans-serif)));opacity:0;pointer-events:none;transition:opacity .25s,transform .25s}
.sv-oznam.ted{opacity:1;transform:translate(-50%,0)}
.sv-nazev{position:absolute;left:10px;top:10px;z-index:2;max-width:calc(100% - 210px);padding:7px 12px;border-radius:999px;pointer-events:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  background:color-mix(in srgb,var(--plech,var(--plocha,#121412)) 82%,transparent);color:var(--rytina,var(--text,#F2F2EC));font:600 var(--v6,var(--p6,12px))/1.2 var(--pismo-text,var(--f-txt,system-ui,sans-serif))}
.sv-projit .sv-nazev,.sv-naklon-zap .sv-nazev{display:none}
@media (pointer:coarse){.sv-tl{width:44px;height:44px}.sv-rezim button{min-height:44px}.sv-naklon-stav{min-height:44px}}
@media (max-width:420px){.sv-tip{max-width:calc(100% - 84px)}}
.sv-male .sv-tip{bottom:calc(var(--sv-spodek,0px) + 64px);max-width:calc(100% - 80px);padding:8px 10px;gap:2px}
@media (prefers-reduced-motion:reduce){.sv-sem{animation:none}.sv-oznam,.sv-joy span{transition:none}}
.sv-model{display:flex;flex-direction:column;touch-action:auto;user-select:auto;-webkit-user-select:auto}
.sv-model-obal{position:relative;flex:1;display:flex;align-items:center;justify-content:center;min-height:200px}
.sv-model-obr{display:block;width:100%;height:100%;max-height:70vh;object-fit:contain}
.sv-model-tip{padding:8px 12px 10px;font:400 var(--v6,var(--p6,11.5px))/1.4 var(--pismo-cisla,var(--f-mono,var(--pismo,ui-monospace)));color:var(--elox,var(--sedy,#8B908A))}
.sv-plna,.sv:fullscreen{position:fixed!important;inset:0!important;z-index:1000;border-radius:0!important;width:100vw!important;height:100dvh!important;min-height:0}
.sv:-webkit-full-screen{width:100vw;height:100vh;border-radius:0}

/* ───────────── galerie (ukázky, klient) ───────────── */
.sk-mrizka{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
@media (max-width:520px){.sk-mrizka{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.sk-dlazdice .tx{padding:8px 10px 10px}}
.sk-dlazdice{display:flex;flex-direction:column;gap:0;padding:0;text-align:left;cursor:pointer;overflow:hidden;color:inherit;font:inherit;
  border:1px solid var(--linka,#262A26);border-radius:var(--r3,12px);background:var(--plech,var(--plocha,#121412))}
.sk-dlazdice:hover,.sk-dlazdice[aria-current="true"]{border-color:var(--ryska,var(--zelena,#FF6B1F))}
.sk-dlazdice .nah{aspect-ratio:16/10;background:var(--vrstva,#1A1D1A) center/cover no-repeat}
.sk-dlazdice .nah{position:relative}
.sk-typ{position:absolute;right:8px;bottom:8px;padding:3px 7px;border-radius:999px;background:rgba(11,12,11,.72);color:#F2F2EC;font:600 10.5px/1.2 var(--pismo-cisla,var(--f-mono,ui-monospace,monospace));letter-spacing:.04em}
.sk-dlazdice .tx{padding:10px 12px 12px;display:grid;gap:2px}
.sk-dlazdice b{font-weight:600}
.sk-dlazdice small{color:var(--elox,var(--sedy,#8B908A))}
.sk-velky{aspect-ratio:16/10;width:100%;max-height:78vh}
@media (max-width:700px){.sk-velky{aspect-ratio:4/5}}

/* ───────────── /scan (PWA) ───────────── */
.sk-app{min-height:100dvh;background:var(--tubus);color:var(--rytina);font:var(--v4)/1.45 var(--pismo-text);-webkit-font-smoothing:antialiased}
.sk-hlava{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:10px;padding:calc(10px + env(safe-area-inset-top)) 16px 10px;
  background:var(--plech);border-bottom:1px solid var(--linka)}
.sk-hlava h1{margin:0;white-space:nowrap;font:700 var(--v3)/1 var(--pismo-znacka);letter-spacing:.02em;text-transform:uppercase}
.sk-hlava img{height:18px}
.sk-hlava .sp{flex:1}
.sk-zalozky{display:flex;gap:4px}
.sk-zalozky button{font:inherit;font-size:var(--v5);padding:6px 10px;border-radius:999px;border:1px solid var(--linka);background:none;color:var(--elox);cursor:pointer}
.sk-zalozky button[aria-pressed="true"]{color:var(--rytina);border-color:var(--ryska)}
@media (max-width:420px){.sk-hlava{gap:8px}.sk-zalozky button{padding:6px 8px}}   /* telefon: hlavička se vejde (dřív o 4 px širší než displej) */
.sk-obsah{max-width:1100px;margin:0 auto;padding:16px 16px calc(40px + env(safe-area-inset-bottom));display:grid;gap:18px}
.sk-panel{background:var(--plech);border:1px solid var(--linka);border-radius:var(--r3);padding:16px;display:grid;grid-template-columns:minmax(0,1fr);gap:14px;min-width:0}
.sk-panel h2{margin:0;font-size:var(--v5);text-transform:uppercase;letter-spacing:.06em;color:var(--elox);font-weight:600}
.sk-pole{display:grid;grid-template-columns:minmax(0,1fr);gap:6px;min-width:0}
.sk-pole>span{font-size:var(--v6);text-transform:uppercase;letter-spacing:.06em;color:var(--elox)}
.sk-pole input[type=text],.sk-pole input[type=password],.sk-pole input[type=url],.sk-pole select,.sk-pole input:not([type]){width:100%;min-height:44px;padding:10px 12px;border-radius:var(--r2);
  border:1px solid var(--linka2);background:var(--pole);color:var(--rytina);font:inherit;font-size:16px}
.sk-pole input:focus,.sk-pole select:focus{outline:none;border-color:var(--ryska)}
.sk-volby{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px}
.sk-volba{display:flex;gap:10px;align-items:flex-start;padding:12px;border:1px solid var(--linka);border-radius:var(--r2);cursor:pointer;background:var(--vrstva)}
.sk-volba:has(input:checked){border-color:var(--ryska)}
.sk-volba input{margin-top:3px;accent-color:var(--ryska)}
.sk-volba b{display:block}.sk-volba small{color:var(--elox)}
.sk-tlacitka{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.sk-tl{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 16px;border-radius:var(--r2);border:1px solid var(--linka2);
  background:var(--vrstva);color:var(--rytina);font:600 var(--v4)/1 var(--pismo-text);cursor:pointer;text-decoration:none}
.sk-tl:hover{border-color:var(--elox)}
.sk-tl.hlavni{background:var(--ryska);border-color:var(--ryska);color:var(--ink)}
.sk-tl.male{min-height:34px;padding:0 11px;font-size:var(--v5)}
.sk-tl[disabled]{opacity:.5;cursor:not-allowed}
.sk-vyber{font-size:var(--v5);color:var(--elox)}
.sk-pozor{padding:10px 12px;border-radius:var(--r2);background:var(--pozor-pozadi);color:var(--pozor);font-size:var(--v5)}
.sk-chyba{padding:10px 12px;border-radius:var(--r2);background:var(--chyba-pozadi);color:var(--chyba);font-size:var(--v5);white-space:pre-wrap;overflow-wrap:anywhere}
.sk-prubeh{height:6px;border-radius:999px;background:var(--vrstva);overflow:hidden}
.sk-prubeh span{display:block;height:100%;width:0;background:var(--ryska);transition:width .25s}
.sk-seznam{display:grid;gap:8px}
.sk-radek{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:12px;align-items:center;padding:8px;border:1px solid var(--linka);border-radius:var(--r3);
  background:var(--plech);color:inherit;text-align:left;font:inherit;cursor:pointer;width:100%}
.sk-radek:hover{border-color:var(--linka2)}
.sk-radek .nah{width:72px;height:48px;border-radius:var(--r1);background:var(--vrstva) center/cover no-repeat}
.sk-radek .tx{display:grid;gap:2px;min-width:0}
.sk-radek .tx b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sk-radek .tx small{color:var(--elox);font-size:var(--v6)}
.sk-cip{font-size:var(--v6);padding:3px 8px;border-radius:999px;white-space:nowrap;background:var(--vrstva);color:var(--elox)}
.sk-tl.sk-smazat{color:var(--chyba)}
.sk-tl.sk-smazat[data-jiste]{background:var(--chyba-pozadi);border-color:var(--chyba)}
.sk-cip.done{color:var(--ok);background:var(--ok-pozadi)}.sk-cip.failed{color:var(--chyba);background:var(--chyba-pozadi)}
.sk-cip.processing,.sk-cip.queued,.sk-cip.uploading{color:var(--pozor);background:var(--pozor-pozadi)}
.sk-cip.demo{color:var(--ryska);background:var(--ryska-pozadi)}
.sk-cip.app{color:var(--modra);background:color-mix(in srgb,var(--modra) 14%,transparent)}   /* klient převzatý z aplikace na Macu */
.sk-detail{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:16px;align-items:start}
@media (max-width:860px){.sk-detail{grid-template-columns:minmax(0,1fr)}}
.sk-detail .sv{aspect-ratio:4/3;width:100%}
@media (max-width:860px){.sk-detail .sv{aspect-ratio:1/1}}
@media (max-width:860px){.sk-detail .sv.sv-nastroj{aspect-ratio:3/4;max-height:82vh}}   /* nástroj (měření, popisek, plot) na telefonu: víc místa pro sken pod panelem */
.sk-odkaz{display:flex;gap:6px;align-items:center}
.sk-odkaz code{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:var(--v6)/1.3 var(--pismo-cisla);color:var(--text2);padding:8px 10px;background:var(--pole);border:1px solid var(--linka);border-radius:var(--r1)}
.sk-log{max-height:220px;overflow:auto;font:var(--v6)/1.45 var(--pismo-cisla);color:var(--elox);background:var(--pole);border:1px solid var(--linka);border-radius:var(--r2);padding:10px;white-space:pre-wrap}
.sk-tiche{color:var(--elox);font-size:var(--v5)}
.sk-prihlaseni{max-width:380px;margin:12vh auto 0;width:calc(100% - 32px)}
.sk-klient{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:center;padding:10px 0;border-top:1px solid var(--linka)}
.sk-klient:first-child{border-top:0}
[hidden]{display:none!important}

/* Průvodce skenem (pruvodce.js): kamera na celou obrazovku, mapa pokrytí, samospoušť */
html.skp-otevreny,html.skp-otevreny body{overflow:hidden}
.skp{position:fixed;inset:0;z-index:2000;background:#000;color:#fff;
  font:400 15px/1.35 var(--pismo,system-ui,-apple-system,sans-serif);-webkit-user-select:none;user-select:none;touch-action:manipulation}
.skp-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.skp-horni{position:absolute;left:0;right:0;top:0;display:flex;align-items:center;gap:8px;
  padding:calc(env(safe-area-inset-top) + 10px) 12px 10px;background:linear-gradient(rgba(0,0,0,.65),transparent)}
.skp-info{flex:1;text-align:center;font:500 12.5px/1.3 var(--pismo-cisla,ui-monospace,monospace);letter-spacing:.03em;opacity:.9}
.skp-tl{appearance:none;border:1px solid rgba(255,255,255,.35);background:rgba(0,0,0,.45);color:#fff;border-radius:999px;
  padding:9px 14px;font-family:inherit;font-weight:600;font-size:13.5px;line-height:1;cursor:pointer}
.skp-tl.hlavni{background:var(--ryska,#FF6B1F);border-color:transparent;color:#111}
.skp-tl:disabled{opacity:.45}
.skp-mapa{position:absolute;right:12px;bottom:calc(env(safe-area-inset-bottom) + 104px);width:170px;height:170px;pointer-events:none}
.skp-rada{position:absolute;left:12px;right:196px;bottom:calc(env(safe-area-inset-bottom) + 112px);font-weight:650;font-size:19px;line-height:1.25;
  text-shadow:0 1px 6px rgba(0,0,0,.8)}
.skp-rada.pozor{color:#FFC24A}.skp-rada.ok{color:#7EE29A}
.skp-dolni{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:14px 14px calc(env(safe-area-inset-bottom) + 16px);background:linear-gradient(transparent,rgba(0,0,0,.7))}
.skp-spoust{width:70px;height:70px;border-radius:50%;border:4px solid #fff;background:rgba(255,255,255,.25);flex:none;cursor:pointer}
.skp-spoust:active{background:#fff}
.skp-blesk{position:absolute;inset:0;background:#fff;opacity:0;pointer-events:none}
.skp-blesk.ted{animation:skp-blesk .25s ease-out}
@keyframes skp-blesk{from{opacity:.35}to{opacity:0}}
.skp-uvod{position:absolute;inset:0;overflow:auto;padding:calc(env(safe-area-inset-top) + 64px) 22px 40px;background:rgba(0,0,0,.86)}
.skp-uvod h2{font-weight:700;font-size:24px;line-height:1.2;margin:0 0 12px}.skp-uvod p,.skp-uvod li{opacity:.9;margin:0 0 10px}
.skp-uvod ul{padding-left:18px;margin:0 0 16px}.skp-uvod .skp-tl{font-size:16px;padding:13px 26px;margin-top:8px}
@media (prefers-reduced-motion:reduce){.skp-blesk.ted{animation:none}}
.skp-levy{display:flex;flex-direction:column;gap:8px;align-items:flex-start}
.skp-kontrola-tl{border-color:var(--ryska,#FF6B1F)}
.skp-panel{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;gap:10px;background:#080908;
  padding:calc(env(safe-area-inset-top) + 12px) 14px calc(env(safe-area-inset-bottom) + 16px)}
.skp-panel[hidden]{display:none}
.skp-panel-hlava{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:17px}
.skp-panel-stav{font:500 13.5px/1.35 var(--pismo-cisla,ui-monospace,monospace);opacity:.9}
.skp-panel-stav.chyba{color:#FF8A80;opacity:1}
.skp-panel-3d{position:relative;flex:1;min-height:200px;border-radius:10px;overflow:hidden;background:#0B0C0B}
.skp-panel-popis{font-size:14px;line-height:1.4;opacity:.92}

/* ───────────── Zastávky prohlídky (zastavky.js): lišta štítků dole v prohlížeči, ▶ prohlídka, „2 / 4“ ─────────────
   Tokeny stránky jako prohlížeč: aktivní štítek barvou rysky (u ČESKÝCH PLOTŮ zelená). Výška lišty → --sv-spodek na .sv. */
.sv-zastavky{position:absolute;left:0;right:0;bottom:0;z-index:3;display:flex;flex-direction:column;gap:6px;padding:0 8px 8px;pointer-events:none;
  background:linear-gradient(to top,color-mix(in srgb,var(--tubus,var(--pozadi,#0B0C0B)) 72%,transparent) 0,color-mix(in srgb,var(--tubus,var(--pozadi,#0B0C0B)) 40%,transparent) 50px,transparent 100%)}
.sv-zast-hlava{display:flex;justify-content:flex-end;padding:0 3px}
.sv-zast-stitky{display:flex;gap:6px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;touch-action:pan-x;padding:3px;pointer-events:auto;-webkit-overflow-scrolling:touch}
.sv-zast-stitky::-webkit-scrollbar{display:none}
.sv-zast-stitek,.sv-zast-prehraj{cursor:pointer;border:1px solid var(--linka2,#363A35);color:var(--rytina,var(--text,#F2F2EC));
  background:color-mix(in srgb,var(--plech,var(--plocha,#121412)) 84%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.sv-zast-stitek{flex:none;min-height:44px;max-width:min(72vw,320px);padding:0 16px;border-radius:999px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  font:600 var(--v5,var(--p5,14px))/1 var(--pismo-text,var(--f-text,var(--pismo,system-ui,-apple-system,sans-serif)))}
.sv-zast-stitek:hover,.sv-zast-prehraj:hover{border-color:var(--elox,var(--sedy2,#8B908A))}
.sv-zast-stitek[aria-pressed="true"]{background:var(--ryska,var(--tmava,var(--zelena,#FF6B1F)));border-color:var(--ryska,var(--tmava,var(--zelena,#FF6B1F)));color:var(--ink,var(--na-zelene,#2A1205))}
.sv-zast-prehraj{pointer-events:auto;display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;padding:0;border-radius:50%}
.sv-zast-prehraj svg{width:18px;height:18px;fill:currentColor}
.sv-zastavky.hraje .sv-zast-prehraj{border-color:var(--ryska,var(--zelena,#FF6B1F));color:var(--ryska,var(--zelena,#FF6B1F))}
.sv-zast-stitek:focus-visible,.sv-zast-prehraj:focus-visible{outline:2px solid var(--ryska,var(--zelena,#FF6B1F));outline-offset:2px}
.sv-zast-citac{position:absolute;top:12px;left:50%;transform:translateX(-50%);z-index:3;padding:7px 12px;border-radius:999px;pointer-events:none;letter-spacing:.06em;
  font:500 var(--v6,var(--p6,12px))/1 var(--pismo-cisla,var(--f-mono,var(--pismo,ui-monospace)));color:var(--rytina,var(--text,#F2F2EC));
  background:color-mix(in srgb,var(--plech,var(--plocha,#121412)) 84%,transparent);border:1px solid var(--linka2,#363A35)}
.sv-plna .sv-zastavky,.sv:fullscreen .sv-zastavky{padding-bottom:calc(8px + env(safe-area-inset-bottom))}
.sv-plna .sv-zast-citac,.sv:fullscreen .sv-zast-citac{top:calc(12px + env(safe-area-inset-top))}
/* správa zastávek v /scan (detail skenu) */
.sk-zast{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;padding-top:12px;border-top:1px solid var(--linka)}
.sk-zast-hlava{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-size:var(--v6);text-transform:uppercase;letter-spacing:.06em;color:var(--elox)}
.sk-zast-seznam{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.sk-zast-polozka{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:center;padding:8px;border:1px solid var(--linka);border-radius:var(--r2);background:var(--vrstva)}
.sk-zast-cislo{min-width:1.6em;text-align:center;font:500 var(--v5)/1 var(--pismo-cisla);color:var(--elox)}
.sk-zast-polozka input{box-sizing:border-box;width:100%;min-width:0;min-height:40px;padding:8px 10px;border-radius:var(--r2);border:1px solid var(--linka2);background:var(--pole);color:var(--rytina);font:inherit;font-size:16px}
.sk-zast-polozka input:focus{outline:none;border-color:var(--ryska)}
.sk-zast-akce{grid-column:1/-1;display:flex;gap:6px;flex-wrap:wrap}
.sk-zast.uklada .sk-zast-akce{opacity:.6}
.sk-zast-novy{display:grid;gap:8px}.sk-zast-novy input{box-sizing:border-box;min-width:0}

/* ───────────── Čistší skeny (cistota.js): přepínač Rychlý · Velký · Pro video, kontrola záběrů, kvalita, úklid a ořez ─────────────
   barvy jen tokeny stránky (ok / pozor / chyba), oranžová (ryska) jen ukazuje — vybraná volba, kvádr ořezu */
.sk-profil{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;padding:3px;border:1px solid var(--linka2);border-radius:var(--r2);background:var(--pole)}
.sk-profil label{position:relative;display:flex;cursor:pointer}
.sk-profil input{position:absolute;opacity:0;pointer-events:none}
.sk-profil span{flex:1;display:flex;align-items:center;justify-content:center;min-height:40px;padding:0 8px;border-radius:calc(var(--r2) - 2px);text-align:center;
  font:600 var(--v5)/1.15 var(--pismo-text);color:var(--elox)}
.sk-profil label:hover span{color:var(--rytina)}
.sk-profil input:checked+span{background:var(--rytina);color:var(--tubus)}
.sk-profil input:focus-visible+span{outline:2px solid var(--ryska);outline-offset:1px}
.sk-profil input:disabled+span{opacity:.4;cursor:not-allowed}
.sk-cip.video{color:var(--rytina);background:var(--vrstva);border:1px solid var(--linka2)}
.sk-cip.znamka-ok{color:var(--ok);background:var(--ok-pozadi)}.sk-cip.znamka-pozor{color:var(--pozor);background:var(--pozor-pozadi)}
.sk-cip.znamka-chyba{color:var(--chyba);background:var(--chyba-pozadi)}
.sk-cistota{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin-top:12px}
.sk-cistota:empty,.sk-cistota>div:empty{display:none}
.sk-cist{gap:12px}
.sk-cist-ok{border-color:color-mix(in srgb,var(--ok) 45%,var(--linka))}
.sk-cist-pozor{border-color:color-mix(in srgb,var(--pozor) 45%,var(--linka))}
.sk-cist-chyba{border-color:color-mix(in srgb,var(--chyba) 55%,var(--linka))}
.sk-cist-hlava{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.sk-cist-stav{display:flex;align-items:center;gap:8px;font-weight:600}
.sk-cist-stav.ok{color:var(--ok)}.sk-cist-stav.pozor{color:var(--pozor)}.sk-cist-stav.chyba{color:var(--chyba)}
.sk-tecka{display:inline-block;width:8px;height:8px;border-radius:50%;background:currentColor;flex:none}
.sk-tocka{display:inline-block;width:12px;height:12px;margin-right:6px;vertical-align:-1px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:sk-toc 1s linear infinite;flex:none}
@keyframes sk-toc{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.sk-tocka{animation:none}}
.sk-cist-telo{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center}
@media (max-width:440px){.sk-cist-telo{grid-template-columns:minmax(0,1fr)}.sk-cist-telo .sk-kruh{justify-self:center}}   /* telefon: kroužek pod řádky */
.sk-cist-radky{margin:0;display:grid;gap:0}
.sk-cist-radky div{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:7px 0;border-top:1px solid var(--linka)}
.sk-cist-radky div:first-child{border-top:0}
.sk-cist-radky dt{color:var(--elox);font-size:var(--v5)}
.sk-cist-radky dd{margin:0;text-align:right;font:500 var(--v5)/1.3 var(--pismo-cisla)}
.sk-cist-radky dd.ok{color:var(--ok)}.sk-cist-radky dd.pozor{color:var(--pozor)}.sk-cist-radky dd.chyba{color:var(--chyba)}
.sk-cist-rady{margin:0;padding-left:18px;display:grid;gap:4px;font-size:var(--v5)}
.sk-kruh{margin:0;display:grid;justify-items:center;gap:4px;width:128px}
.sk-kruh svg{width:128px;height:126px;display:block;overflow:visible}
.sk-kruh-strana{fill:var(--elox);font:600 7.5px var(--pismo-text)}
.sk-kruh-ok{fill:var(--ok)}.sk-kruh-pozor{fill:var(--pozor)}.sk-kruh-chyba{fill:var(--chyba)}
.sk-kruh-cislo{fill:var(--rytina);font:600 15px var(--pismo-cisla)}
.sk-kruh-pod{fill:var(--elox);font:500 8px var(--pismo-text);text-transform:uppercase;letter-spacing:.06em}
.sk-kruh figcaption{font-size:var(--v6);line-height:1.3;color:var(--elox);text-align:center}
.sk-znamka{display:grid;gap:4px;min-width:0}
.sk-znamka b{font:700 var(--v2,28px)/1 var(--pismo-znacka,var(--pismo-text));letter-spacing:.01em}
.sk-znamka.ok b{color:var(--ok)}.sk-znamka.pozor b{color:var(--pozor)}.sk-znamka.chyba b{color:var(--chyba)}
.sk-znamka small{font:500 var(--v6)/1.3 var(--pismo-cisla);color:var(--elox)}
.sk-cist-slaba{margin-top:6px;display:grid;gap:2px;font-size:var(--v5)}
.sk-cist-slaba>span{font-size:var(--v6);text-transform:uppercase;letter-spacing:.06em;color:var(--elox)}
.sk-cist-slaba ul{margin:0;padding-left:18px}
.sk-orez{display:grid;gap:10px;padding:12px;border:1px solid var(--ryska);border-radius:var(--r2);background:var(--vrstva)}
.sk-orez-hlava{display:grid;gap:2px}
.sk-orez-osa{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,1fr);gap:4px 12px;align-items:center}
.sk-orez-x{font:600 var(--v4)/1 var(--pismo-cisla);color:var(--elox);min-width:1.2em}
.sk-orez-pos{display:grid;gap:2px;min-width:0}
.sk-orez-pos>span{font-size:var(--v6);color:var(--elox);display:flex;justify-content:space-between;gap:6px}
.sk-orez-pos output{font-family:var(--pismo-cisla);color:var(--rytina)}
.sk-orez-pos input{width:100%;min-height:32px;accent-color:var(--ryska);margin:0}
.sk-cistota.uklada,.sk-cistota .uklada{opacity:.7}
.sk-dele{display:grid;gap:8px;padding:12px;border:1px solid var(--linka2);border-radius:var(--r2);background:var(--vrstva)}
.sk-dele .sk-volba{text-align:left;font:inherit;color:inherit;width:100%}
.sk-dele .sk-volba:hover{border-color:var(--ryska)}
.sk-dele .sk-volba.sk-ted{border-color:var(--ryska);cursor:default}.sk-dele .sk-volba:disabled:not(.sk-ted){opacity:.6;cursor:default}
/* video průletu (render.js): volby jako přepínače, seznam videí se stavem, výřez poměru stran přes náhled */
.sk-render{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;padding-top:12px;border-top:1px solid var(--linka)}
.sk-seg{display:flex;flex-wrap:wrap;gap:2px;padding:3px;border-radius:var(--r2);border:1px solid var(--linka2);background:var(--pole);width:max-content;max-width:100%;box-sizing:border-box}
.sk-seg button{min-height:38px;min-width:52px;padding:0 12px;border:0;border-radius:calc(var(--r2) - 2px);background:none;cursor:pointer;color:var(--elox);font:600 var(--v5)/1 var(--pismo-text)}
.sk-seg button:hover:not([disabled]){color:var(--rytina)}
.sk-seg button[aria-pressed="true"],.sk-seg button[aria-pressed="true"]:hover{background:var(--rytina);color:var(--plech)}
.sk-seg button[disabled]{opacity:.45;cursor:not-allowed}
.sk-seg button:focus-visible{outline:2px solid var(--ryska);outline-offset:1px}
.sk-render-radek{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}
.sk-render input[type=number]{box-sizing:border-box;width:100%;min-height:44px;padding:10px 12px;border-radius:var(--r2);border:1px solid var(--linka2);background:var(--pole);color:var(--rytina);font:inherit;font-size:16px}
.sk-render input[type=number]:focus{outline:none;border-color:var(--ryska)}
.sk-render-seznam{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.sk-render-polozka{display:grid;gap:8px;padding:10px;border:1px solid var(--linka);border-radius:var(--r2);background:var(--vrstva)}
.sk-render-hlava{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap}
.sk-render-hlava b{font:500 var(--v5)/1.3 var(--pismo-cisla);color:var(--rytina)}
.sk-render-ramecek{position:absolute;left:50%;top:0;transform:translateX(-50%);z-index:1;pointer-events:none;box-sizing:border-box;
  border:1px solid var(--ryska);box-shadow:0 0 0 100vmax rgba(0,0,0,.62);display:flex;align-items:flex-start;justify-content:flex-end;padding:6px 8px;
  font:500 var(--v6)/1 var(--pismo-cisla);letter-spacing:.06em;color:var(--ryska)}

/* ───────────── Dron (dron.js): dráhy dronu pro sken — seznam, editor s mapou, souhrn, kontrola před letem ───────────── */
.dr-hlava{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.dr-hlava h2{flex:1;min-width:0}
.dr-hlava .sp{flex:1}
.dr-radek{grid-template-columns:40px minmax(0,1fr) auto}
@media (max-width:560px){.dr-radek{grid-template-columns:40px minmax(0,1fr)}.dr-radek .sk-cip{grid-column:2;justify-self:start}}
.dr-ikona{width:40px;height:40px;border-radius:var(--r2);background:var(--vrstva);position:relative}
.dr-ikona::after{content:"";position:absolute;inset:9px;border:2px dashed var(--ryska)}
.dr-kruhy::after{border-radius:50%}
.dr-pas::after{inset:18px 6px;border-width:2px 0}
.dr-mrizka::after{border-width:2px 0;box-shadow:inset 0 8px 0 -6px var(--ryska)}
.dr-ok{margin:0;padding:10px 12px;border-radius:var(--r2);background:var(--ok-pozadi);color:var(--ok);font-size:var(--v5)}
.dr-soubor{position:relative;overflow:hidden;justify-self:start}
.dr-soubor input{position:absolute;inset:0;opacity:0;cursor:pointer}
.dr-typy{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
@media (max-width:720px){.dr-typy{grid-template-columns:minmax(0,1fr)}}
.dr-mapa-obal{position:relative;isolation:isolate;z-index:0;border-radius:var(--r3);overflow:hidden;border:1px solid var(--linka)}
.dr-mapa{height:min(62vh,560px);min-height:320px;background:var(--vrstva)}
.dr-mapa .leaflet-control-attribution{font-size:10px}
.dr-mapa-tl{position:absolute;top:10px;right:10px;z-index:500;display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.dr-mapa-tl .sk-tl{background:var(--plech);box-shadow:var(--stin-mala)}
.dr-napoveda{position:absolute;left:10px;bottom:10px;z-index:500;max-width:calc(100% - 20px);padding:6px 10px;border-radius:var(--r2);pointer-events:none;
  background:color-mix(in srgb,var(--plech) 88%,transparent);color:var(--rytina);font-size:var(--v6)}
.dr-body-tl{display:flex;gap:8px;flex-wrap:wrap}
.dr-posuvniky{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px 20px}
.dr-sl{display:grid;grid-template-columns:minmax(110px,auto) minmax(0,1fr) 64px;align-items:center;gap:10px;font-size:var(--v5);color:var(--elox)}
.dr-sl input{width:100%;accent-color:var(--ryska);margin:0;min-height:32px}
.dr-sl b{font:500 var(--v5) var(--pismo-cisla);color:var(--rytina);text-align:right;font-variant-numeric:tabular-nums}
.dr-souhrn{display:grid;gap:8px}
.dr-cipy{display:flex;gap:6px;flex-wrap:wrap}
.dr-cipy .sk-cip{font-family:var(--pismo-cisla);font-variant-numeric:tabular-nums}
.dr-vysky{display:flex;gap:14px;flex-wrap:wrap;font:var(--v6) var(--pismo-cisla);color:var(--text2)}
.dr-vysky i{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:6px;vertical-align:0}
.dr-kontrola{display:grid;gap:0}
.dr-k{display:flex;gap:10px;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--linka);font-size:var(--v5);color:var(--text2)}
.dr-k:last-child{border-bottom:0}
.dr-k em{flex:0 0 20px;height:20px;border-radius:var(--r1);display:flex;align-items:center;justify-content:center;font-style:normal;font-size:12px;line-height:1}
.dr-k.ok em{background:var(--ok);color:var(--tubus)}
.dr-k.ne em{background:var(--pozor-pozadi);color:var(--pozor)}
.dr-k input{width:20px;height:20px;margin:0;accent-color:var(--ok);flex:none}
.dr-k a{color:var(--ryska-text)}
.dr-let{grid-template-columns:minmax(0,1fr)}
.dr-editor .sk-pole input{box-sizing:border-box}
.dr-ceka p{margin:0;color:var(--text2)}
.dr-3d-plocha{position:relative;border:1px solid var(--linka);border-radius:var(--r3);overflow:hidden;background:var(--pole)}
.dr-3d canvas{display:block;width:100%;touch-action:none;cursor:grab}
.dr-3d canvas:active{cursor:grabbing}
.dr-3d{display:grid;gap:8px}
.dr-3d-tl{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.dr-3d-info{position:absolute;left:10px;top:10px;font:500 var(--v6) var(--pismo-cisla);color:var(--rytina);background:color-mix(in srgb,var(--plech) 85%,transparent);padding:4px 8px;border-radius:var(--r1);pointer-events:none}
.dr-3d-napoveda{font-size:var(--v6);color:var(--elox)}
.dr-kruhy{display:grid;gap:10px}
.dr-radek2{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.dr-radek2 input{accent-color:var(--ryska);margin:0 6px 0 0}
.dr-tab{display:grid;gap:6px;overflow-x:auto}
.dr-tab-h,.dr-tab-r{display:grid;grid-template-columns:52px repeat(4,minmax(72px,1fr)) 40px;gap:8px;align-items:center;min-width:440px}
.dr-tab-h span{font-size:var(--v6);color:var(--elox)}
.dr-tab-r input{width:100%;box-sizing:border-box;min-height:34px;padding:4px 8px;border-radius:var(--r1);border:1px solid var(--linka2);background:var(--pole);color:var(--rytina);font:inherit}
.dr-tab .sk-tl{justify-self:start}
.dr-tuk{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.dr-tuk .sk-tl[aria-pressed="true"]{border-color:var(--ryska);color:var(--rytina)}
.dr-prekazky{display:grid;gap:6px}
.dr-prek{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:6px 10px;border:1px solid var(--linka);border-radius:var(--r2);font-size:var(--v5)}
.dr-prek b{min-width:70px}
.dr-prek label{display:flex;gap:6px;align-items:center;color:var(--elox)}
.dr-prek input{width:64px;min-height:32px;padding:4px 6px;border-radius:var(--r1);border:1px solid var(--linka2);background:var(--pole);color:var(--rytina);font:inherit}
.dr-volby{display:grid;gap:8px}
.dr-volby input{accent-color:var(--ryska);margin:0 6px 0 0}
.dr-bod{font:13px/1.4 var(--pismo-text);color:#151715}
.dr-bod small{color:#6B6E68}
.dr-bod-tl{display:flex;gap:4px;flex-wrap:wrap;margin-top:6px}
.dr-bod-tl button{font:600 12px var(--pismo-text);padding:5px 8px;border-radius:6px;border:1px solid #C9C4B6;background:#F1EFE8;color:#151715;cursor:pointer}
.dr-navod{font-size:var(--v5);color:var(--text2)}
.dr-navod summary{cursor:pointer;color:var(--rytina);font-weight:600}
.dr-navod ol{padding-left:20px;display:grid;gap:4px;margin:8px 0 0}
.dr-pomery{display:flex;gap:16px;flex-wrap:wrap}
.dr-pomery input{accent-color:var(--ryska);margin:0 4px 0 0}
.dr-postup{margin:0;padding-left:20px;display:grid;gap:6px;color:var(--text2);font-size:var(--v5)}
@media (max-width:480px){.sk-hlava h1{display:none}}   /* 4 záložky (i Dron) se na telefon vejdou jen bez nápisu */
/* ── Dron: plánovač „Kokpit“ (počítač: vrstvy · mapa · 3D · výškový profil; telefon: mapa / 3D, záložky, Uložit dole) ── */
.sk-obsah.dr-siroky{max-width:1680px}
.dr-kokpit{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;min-width:0}
.dr-k-hlava{display:flex;gap:10px;align-items:center;min-width:0}
.dr-k-nazev{flex:1;min-width:0;box-sizing:border-box;min-height:40px;padding:4px 2px;border:0;border-bottom:1px solid var(--linka2);background:none;color:var(--rytina);
  font:600 var(--v3)/1.2 var(--pismo-text);border-radius:0}
.dr-k-nazev:focus{outline:none;border-bottom-color:var(--ryska)}
.dr-k-nazev::placeholder{color:var(--hloubka)}
.dr-k-cipy{display:flex;gap:6px;flex-wrap:wrap;align-items:center;min-width:0}
.dr-k-akce{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;align-items:center}
.dr-k-pohled{justify-self:start}
.dr-k-mapa .dr-mapa{height:min(62vh,560px);min-height:300px}
.dr-k-3d{height:min(62vh,560px);min-height:300px;min-width:0}
.dr-3d.vypln{display:flex;flex-direction:column;gap:8px}
.dr-3d.vypln .dr-3d-plocha{flex:1;min-height:0}
.dr-3d.vypln canvas{position:absolute;inset:0;width:100%;height:100%}
.dr-kokpit[data-pohled="mapa"] .dr-k-3d{display:none}
.dr-kokpit[data-pohled="3d"] .dr-k-mapa{display:none}
.dr-tuk.sk-seg{position:absolute;top:10px;left:10px;z-index:500;background:var(--plech);box-shadow:var(--stin-mala)}
.dr-tuk.sk-seg button{min-height:32px;min-width:0;padding:0 10px}
.dr-k-mapa .dr-mapa-tl{top:56px}
.dr-mapa-tl .sk-tl[aria-pressed="true"]{border-color:var(--ryska);color:var(--rytina)}
.dr-pokryti-leg{position:absolute;left:10px;top:60px;z-index:500;display:flex;flex-direction:column;gap:3px;padding:8px 10px;border-radius:var(--r2);
  background:var(--plech);box-shadow:var(--stin-mala);font:500 11px var(--f-cisla);color:var(--rytina)}
.dr-pokryti-leg i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:6px;vertical-align:-1px}
.dr-k-mapa .dr-pokryti-leg{top:62px}
.dr-k-profil{display:flex;flex-direction:column;gap:6px;min-width:0;padding:10px 12px;background:var(--plech);border:1px solid var(--linka);border-radius:var(--r3);height:170px;box-sizing:border-box}
.dr-pr-hlava{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.dr-pr-hlava b{font-size:var(--v6);text-transform:uppercase;letter-spacing:.06em;color:var(--elox);font-weight:600}
.dr-pr-hlava .sp{flex:1}
.dr-pr-plocha{position:relative;flex:1;min-height:70px}
.dr-pr-plocha canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none;cursor:ew-resize}
.dr-kolize{min-height:32px;padding:0 12px;border-radius:999px;border:1px solid transparent;font:600 var(--v6)/1 var(--pismo-text);cursor:default}
.dr-kolize.ok{background:var(--ok-pozadi);color:var(--ok)}
.dr-kolize.ticho{background:var(--vrstva);color:var(--elox)}
.dr-kolize.chyba{background:var(--chyba-pozadi);color:var(--chyba-text);border-color:var(--chyba);cursor:pointer}
.dr-k-panel{display:flex;flex-direction:column;gap:14px;min-width:0;padding:14px;background:var(--plech);border:1px solid var(--linka);border-radius:var(--r3);box-sizing:border-box}
.dr-k-panel > .sk-pozor{margin:0}
.dr-k-zalozky{order:-1;width:100%}
.dr-k-zalozky button{flex:1}
.dr-k-zalozky button[aria-selected="true"],.dr-k-zalozky button[aria-selected="true"]:hover{background:var(--rytina);color:var(--plech)}
.dr-k-pane{display:none;gap:12px;grid-template-columns:minmax(0,1fr)}
.dr-k-panel[data-tab="tvar"] .dr-p-tvar,.dr-k-panel[data-tab="vrstvy"] .dr-p-vrstvy,.dr-k-panel[data-tab="zaznam"] .dr-p-zaznam,.dr-k-panel[data-tab="let"] .dr-p-let{display:grid}
.dr-k-nadpis{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.dr-k-nadpis b{font-size:var(--v6);text-transform:uppercase;letter-spacing:.06em;color:var(--elox);font-weight:600}
.dr-k-nadpis .sp{flex:1}
.dr-pridej{display:flex;gap:4px;flex-wrap:wrap}
.dr-pridej .sk-tl.male{min-height:30px;padding:0 9px}
.dr-predvolby{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
.dr-pv{display:grid;justify-items:center;gap:4px;padding:8px 2px;border-radius:var(--r2);border:1px solid var(--linka);background:var(--vrstva);color:var(--text2);cursor:pointer;font:600 var(--v6)/1.1 var(--pismo-text)}
.dr-pv svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.dr-pv:hover{border-color:var(--elox);color:var(--rytina)}
.dr-pv[aria-pressed="true"]{border-color:var(--ryska);color:var(--rytina);background:var(--ryska-pozadi)}
.dr-typ{width:100%}.dr-typ button{flex:1}
.dr-typ-popis{margin:-6px 0 0}
.dr-pocasi p{margin:0}.dr-poc-ok{color:var(--ok);font-weight:600}.dr-poc-pozor{color:var(--pozor);font-weight:600}.dr-poc-ne{color:var(--chyba);font-weight:600}
.dr-poc-den{display:grid;gap:4px}.dr-poc-den b{font:600 12px var(--f-cisla);color:var(--elox);text-transform:uppercase;letter-spacing:.06em}
.dr-poc-hod{display:grid;grid-template-columns:repeat(auto-fill,minmax(38px,1fr));gap:3px}
.dr-poc-hod span{display:flex;flex-direction:column;align-items:center;gap:1px;padding:5px 0;border-radius:6px;background:var(--pole);font:500 11px var(--f-cisla);border:1px solid transparent}
.dr-poc-hod i{font-style:normal;font-size:10px;color:var(--elox)}
.dr-poc-hod .st2{background:var(--ok-pozadi)}.dr-poc-hod .st1{background:var(--pozor-pozadi)}.dr-poc-hod .st0{background:var(--chyba-pozadi);color:var(--elox)}
.dr-poc-hod .nej{border-color:var(--ok)}
.dr-mista{display:grid;gap:8px}   /* uložená místa */
.dr-misto{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:10px 12px;border:1px solid var(--linka);border-radius:var(--r2);background:var(--pole)}
.dr-misto .tx{flex:1;min-width:180px;display:flex;flex-direction:column;gap:2px}.dr-misto .tx small{color:var(--elox)}
.dr-misto-ik{width:34px;height:34px;border-radius:var(--r1, 6px);display:grid;place-items:center;background:var(--ok-pozadi);color:var(--ok);font:600 15px var(--f-cisla)}
.dr-misto-skeny{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}.dr-misto-skeny a{font:500 11px var(--f-cisla);color:var(--rytina);border:1px solid var(--linka2);border-radius:99px;padding:2px 8px;text-decoration:none}
.dr-misto-tl{display:flex;gap:6px;flex-wrap:wrap}
.dr-misto-ul .dr-radek2 input{flex:1;min-width:0;box-sizing:border-box}
.dr-cil-pole{display:grid;gap:6px;margin:0 0 12px}.dr-cil{width:100%}.dr-cil button{flex:1}   /* Kruhy: střed / prostředí / obojí */
.dr-k-panel .dr-posuvniky{grid-template-columns:minmax(0,1fr);gap:6px}
.dr-k-panel .dr-sl{grid-template-columns:minmax(0,1fr) minmax(90px,1.2fr) 58px;gap:8px}
.dr-zaznam{display:grid;gap:8px}
.dr-volba1 input{accent-color:var(--ryska);margin:0 6px 0 0}
.dr-vrstvy{display:grid;gap:4px}
.dr-v{border:1px solid var(--linka);border-radius:var(--r2);background:var(--vrstva)}
.dr-v.vybrana{border-color:var(--ryska);box-shadow:inset 3px 0 0 var(--ryska)}
.dr-v.skryta .dr-v-jm{opacity:.45}
.dr-v.tazena{opacity:.4}
.dr-v.nad{border-color:var(--rytina)}
.dr-v-r{display:flex;align-items:center;gap:8px;padding:4px 6px 4px 10px;min-height:44px}
.dr-v-r > i{flex:none;width:10px;height:10px;border-radius:50%}
.dr-v-tah{flex:none;width:8px;height:18px;margin-left:-4px;cursor:grab;background:radial-gradient(circle,var(--hloubka) 1.2px,transparent 1.5px) 0 0/4px 4px}
.dr-v-jm{flex:1;min-width:0;display:grid;gap:1px;padding:4px 0;border:0;background:none;color:var(--rytina);text-align:left;cursor:pointer;font:inherit}
.dr-v-jm b{font-size:var(--v5);font-weight:600}
.dr-v-jm small{font:var(--v6) var(--pismo-cisla);color:var(--elox);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dr-v-prep input{width:18px;height:18px;margin:0;accent-color:var(--ryska)}
.dr-v-oko{flex:none;width:34px;height:34px;display:grid;place-items:center;border:0;border-radius:var(--r1);background:none;color:var(--elox);cursor:pointer}
.dr-v-oko:hover{color:var(--rytina);background:var(--hover)}
.dr-v-oko svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.dr-v-ed{display:grid;gap:8px;padding:2px 10px 10px}
.dr-v-ed p{margin:0}
.dr-v-ed .sk-tl{justify-self:start}
.dr-v-pole{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.dr-v-pole label{display:grid;gap:3px;font-size:var(--v6);color:var(--elox)}
.dr-v-pole input{box-sizing:border-box;width:100%;min-height:34px;padding:4px 8px;border-radius:var(--r1);border:1px solid var(--linka2);background:var(--pole);color:var(--rytina);font:500 var(--v5) var(--pismo-cisla)}
.dr-v-pole input:focus{outline:none;border-color:var(--ryska)}
.dr-v-pata{display:flex;gap:4px 12px;flex-wrap:wrap;padding:6px 2px 0}
.dr-v-pata input{accent-color:var(--ryska);margin:0 5px 0 0}
.dr-lety-souhrn{display:grid;gap:4px}
.dr-lety-souhrn div{display:flex;justify-content:space-between;gap:10px;padding:8px 10px;border-radius:var(--r2);background:var(--vrstva);font-size:var(--v5)}
.dr-lety-souhrn span{font-family:var(--pismo-cisla);color:var(--text2)}
.dr-p-let .sk-smazat{justify-self:start}
.dr-u{border-radius:50%;border:2px solid #0B0C0B;box-sizing:border-box;cursor:grab;box-shadow:0 1px 4px rgba(0,0,0,.5)}
.dr-u-stred{background:#FF6B1F}
.dr-u-r{background:#F2F2EC;border-color:#FF6B1F}
.dr-u-bod{background:#FF6B1F;border-radius:4px}
.dr-u-strom{background:#7FB083;transform:scale(.8)}
.dr-u-budova{background:#E0A33C;transform:scale(.8);border-radius:3px}
.dr-u-cuzk{transform:scale(.5);opacity:.75}   /* stromy a budovy z ČÚZK: menší, ať mapa není přeplněná */
.dr-u-zem{background:#C9A06A;transform:scale(.8)}
.dr-u-vzlet{background:#0B0C0B;border-color:#F2F2EC}
/* telefon (A): pořadí odshora, Uložit přilepené dole */
@media (max-width:1099px){
  .dr-k-hlava{order:1}.dr-k-pohled{order:2}.dr-k-mapa,.dr-k-3d{order:3}.dr-k-cipy{order:4}.dr-k-profil{order:5}.dr-k-panel{order:6}
  .dr-k-akce{order:7;position:sticky;bottom:0;z-index:5;justify-content:stretch;margin:0 -16px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));
    background:color-mix(in srgb,var(--tubus) 94%,transparent);border-top:1px solid var(--linka)}
  .dr-k-akce .sk-tl{flex:1 1 auto}
  .dr-k-akce .hlavni{flex-basis:100%;order:-1}
  .dr-k-profil{height:150px}
}
@media (max-width:520px){
  .dr-tuk.sk-seg{right:10px;width:auto}
  .dr-tuk.sk-seg button{flex:1}
  .dr-predvolby{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}
  .dr-pv span{font-size:10.5px}
}
/* počítač (C): vrstvy vlevo, mapa a 3D vedle sebe, profil dole */
@media (min-width:1100px){
  .dr-kokpit{grid-template-columns:330px minmax(0,1.25fr) minmax(0,1fr);grid-template-rows:auto minmax(420px,calc(100vh - 330px)) 170px;
    grid-template-areas:"hlava cipy akce" "panel mapa d3" "panel profil profil"}
  .dr-k-hlava{grid-area:hlava}.dr-k-cipy{grid-area:cipy}.dr-k-akce{grid-area:akce}.dr-k-pohled{display:none}
  .dr-k-mapa{grid-area:mapa;min-height:0}.dr-k-3d{grid-area:d3;height:auto;min-height:0}.dr-k-profil{grid-area:profil;height:auto}
  .dr-k-panel{grid-area:panel;overflow:auto;min-height:0}
  .dr-k-mapa .dr-mapa{height:100%;min-height:0}
  .dr-kokpit[data-pohled] .dr-k-3d{display:flex}.dr-kokpit[data-pohled] .dr-k-mapa{display:block}
  .dr-k-zalozky{order:0}
  .dr-p-vrstvy{order:-1}
  .dr-k-zalozky [data-tab="vrstvy"]{display:none}
  .dr-k-panel .dr-p-vrstvy{display:grid}
  .dr-k-panel[data-tab="vrstvy"] .dr-p-tvar{display:grid}
}
/* ── /scan: Přehled (úvod), větší náhledy v seznamu, detail ve skupinách ── */
.sk-prehled-hlava{display:flex;align-items:center;gap:12px}
.sk-prehled-hlava h2{margin:0;font:700 var(--v2)/1.1 var(--pismo-znacka);text-transform:uppercase;letter-spacing:.02em}
.sk-prehled-hlava .sp{flex:1}
.sk-prehled{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr) minmax(0,1fr);gap:14px;align-items:start}
@media (max-width:900px){.sk-prehled{grid-template-columns:minmax(0,1fr)}}
.sk-dlaz{gap:8px;align-content:start}
.sk-velke{font:700 40px/1 var(--pismo-znacka);color:var(--rytina)}
.sk-mini{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:10px;align-items:center;padding:6px;margin:0 -6px;border:0;border-radius:var(--r2);background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}
.sk-mini:hover{background:var(--hover)}
.sk-mini .nah{position:relative;width:64px;height:44px;border-radius:var(--r1);background:var(--vrstva) center/cover no-repeat;overflow:hidden}
.sk-mini .nah i{position:absolute;left:0;bottom:0;height:3px;background:var(--pozor)}
.sk-mini .tx{display:grid;gap:1px;min-width:0}
.sk-mini b{font-weight:600;font-size:var(--v5);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sk-mini small{font:var(--v6) var(--pismo-cisla);color:var(--elox)}
.sk-chyba-text{color:var(--chyba)}
.sk-mini-r{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:7px 6px;margin:0 -6px;border:0;border-radius:var(--r2);background:none;color:var(--rytina);font:inherit;font-size:var(--v5);text-align:left;cursor:pointer}
.sk-mini-r:hover{background:var(--hover)}
.sk-mini-r span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sk-mezera{height:1px;background:var(--linka);margin:4px 0}
.sk-posledni{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px}
.sk-posledni .sk-dlazdice{border:1px solid var(--linka);border-radius:var(--r2);background:var(--vrstva)}
#seznam .sk-radek{grid-template-columns:128px minmax(0,1fr) auto;padding:8px}
#seznam .sk-radek .nah{width:128px;height:84px;border-radius:var(--r2)}
@media (max-width:520px){#seznam .sk-radek{grid-template-columns:96px minmax(0,1fr)}#seznam .sk-radek .nah{width:96px;height:64px}#seznam .sk-radek > span:last-child{grid-column:2;justify-items:start!important}}
.sk-skup{display:grid;gap:12px;padding-top:14px;border-top:1px solid var(--linka)}
.sk-skup:first-child{padding-top:0;border-top:0}
.sk-skup > h3{margin:0;font:600 var(--v6)/1 var(--pismo-cisla,monospace);letter-spacing:.12em;text-transform:uppercase;color:var(--elox)}
@media (max-width:420px){.sk-zalozky{gap:2px}.sk-zalozky button{padding:6px 7px;font-size:12px}}
.sk-pole input:not([type]),.sk-pole input[type=text]{box-sizing:border-box}
@media (max-width:520px){.sk-posledni{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Dron: víc soch v jednom skenu */
.dr-u-socha{background:#C9CCC4;border-radius:4px}
.dr-v-nazev{display:grid;gap:3px;font-size:var(--v6);color:var(--elox)}
.dr-v-nazev input{box-sizing:border-box;width:100%;min-height:34px;padding:4px 8px;border-radius:var(--r1);border:1px solid var(--linka2);background:var(--pole);color:var(--rytina);font:inherit;font-size:var(--v5)}
.dr-v-ed .dr-radek2 input{accent-color:var(--ryska);margin:0 5px 0 0}
.dr-lety-pary{display:flex;gap:6px;flex-wrap:wrap;margin:6px 0 4px}
.dr-okoli{display:grid;gap:8px;padding:10px 12px;border:1px solid var(--linka);border-radius:var(--r2);background:var(--vrstva)}
.dr-okoli .sk-tl[aria-pressed="true"]{border-color:var(--ryska);color:var(--rytina)}

/* ───────────── měření ve skenu (mereni.js, docs/sken-2026-10/MERENI.md) ─────────────
   Barvy jako ostatní prohlížeč: 21art tmavě s ryskou, ČESKÉ PLOTY světle se zelenou (--plocha, --text, --zelena) */
.sv-prekryv{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.sm-svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.sm-cara{fill:none;stroke:var(--ryska,var(--zelena,#FF6B1F));stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round;
  filter:drop-shadow(0 0 1.5px rgba(0,0,0,.65))}
.sm-cara.sm-plocha{fill:color-mix(in srgb,var(--ryska,var(--zelena,#FF6B1F)) 16%,transparent)}
.sm-cara.ted{stroke-dasharray:7 4}
.sm-cara.vybrana{stroke-width:4}
.sm-cara.sm-svisle{stroke-dasharray:2 5}
.sm-cara.sm-vynechana{stroke:#F2F2EC;stroke-dasharray:3 5;stroke-width:3}
.sm-cara.sm-plotcara{stroke:#F2F2EC;stroke-width:5;stroke-dasharray:1 7}
.sm-bod{fill:none;stroke:var(--ryska,var(--zelena,#FF6B1F));stroke-width:11;stroke-linecap:round;filter:drop-shadow(0 0 1.5px rgba(0,0,0,.7))}
.sm-bod.prvni{stroke-width:17}
.sm-bod.oko{stroke:#F2F2EC;stroke-width:16}
.sm-stitky{position:absolute;inset:0}
.sm-stitek{position:absolute;left:0;top:0;padding:4px 8px;border-radius:var(--r1,4px);white-space:nowrap;pointer-events:none;
  background:var(--ryska,var(--zelena,#FF6B1F));color:var(--ink,#2A1205);font:600 12px/1.2 var(--pismo-cisla,var(--f-mono,ui-monospace,monospace));
  box-shadow:0 1px 4px rgba(0,0,0,.35)}
[data-tema="ploty"] .sm-stitek{color:#fff}
.sm-stitek.klik{pointer-events:auto;cursor:pointer}
.sm-stitek.vybrana{outline:2px solid var(--rytina,var(--text,#F2F2EC))}
.sm-stitek.mala{padding:2px 6px;font-size:11px;background:color-mix(in srgb,var(--plech,var(--plocha,#121412)) 88%,transparent);color:var(--rytina,var(--text,#F2F2EC))}
.sm-stitek.mala.vynechana{text-decoration:line-through;opacity:.65}
.sm-shora{position:absolute;inset:0;width:100%;height:100%}
.sm-panel{position:absolute;left:10px;top:10px;z-index:4;width:300px;max-width:calc(100% - 70px);max-height:calc(100% - 20px - var(--sv-spodek,0px));overflow:auto;
  border-radius:var(--r3,12px);border:1px solid var(--linka2,#363A35);background:color-mix(in srgb,var(--plech,var(--plocha,#121412)) 90%,transparent);
  color:var(--rytina,var(--text,#F2F2EC));
  font:400 var(--v6,var(--p6,12.5px))/1.4 var(--pismo-text,var(--f-txt,var(--pismo,system-ui,sans-serif)));touch-action:auto;user-select:text;-webkit-user-select:text}
.sm-hlava{display:flex;align-items:center;gap:4px;padding:6px 4px 6px 6px;border-bottom:1px solid var(--linka,#262A26)}
.sm-cipy{display:flex;gap:4px;flex:1;min-width:0;overflow-x:auto;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,#000 88%,transparent)}
.sm-cipy::-webkit-scrollbar{display:none}
.sm-cipy button{flex:none}
.sm-cipy button,.sm-vrstvy button,.sm-tlacitka button,.sm-ulozit button{min-height:30px;padding:0 10px;border-radius:999px;cursor:pointer;
  border:1px solid var(--linka2,#363A35);background:none;color:var(--elox,var(--sedy,#8B908A));font:600 12px/1 var(--pismo-text,var(--f-txt,system-ui,sans-serif))}
.sm-cipy button:hover,.sm-vrstvy button:hover,.sm-tlacitka button:hover{color:var(--rytina,var(--text,#F2F2EC))}
.sm-cipy button[aria-pressed="true"],.sm-vrstvy button[aria-pressed="true"],.sm-tlacitka button[aria-pressed="true"]{border-color:var(--ryska,var(--zelena,#FF6B1F));color:var(--rytina,var(--text,#F2F2EC))}
.sm-tlacitka button:disabled{opacity:.45;cursor:default}
.sm-ulozit button.hlavni{background:var(--ryska,var(--zelena,#FF6B1F));border-color:transparent;color:var(--ink,#2A1205)}
[data-tema="ploty"] .sm-ulozit button.hlavni{color:#fff}
.sm-smazat{color:var(--chyba,#E0523C)!important}
.sm-x{flex:none;width:30px;height:30px;border:0;border-radius:var(--r2,8px);background:none;color:inherit;font-size:20px;line-height:1;cursor:pointer}
.sm-telo{display:grid;gap:7px;padding:8px 10px 10px}
.sm-nadpis{font-weight:600;font-size:13px}
.sm-tiche{color:var(--elox,var(--sedy,#8B908A))}
.sm-pocitam::before{content:"";display:inline-block;width:9px;height:9px;margin-right:6px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:sm-toc 0.8s linear infinite;vertical-align:-1px}
@keyframes sm-toc{to{transform:rotate(360deg)}}
.sm-radek{display:flex;justify-content:space-between;gap:12px;padding:3px 0;border-bottom:1px dashed var(--linka,#262A26)}
.sm-radek span{color:var(--elox,var(--sedy,#8B908A))}
.sm-radek b{font:600 13px/1.3 var(--pismo-cisla,var(--f-mono,ui-monospace,monospace));font-variant-numeric:tabular-nums;white-space:nowrap}
.sm-tlacitka,.sm-vrstvy{display:flex;flex-wrap:wrap;gap:6px}
.sm-ulozit{display:grid;gap:6px}
.sm-ulozit input[type=text],.sm-ulozit input[type=number]{box-sizing:border-box;width:100%;min-height:36px;padding:6px 10px;border-radius:var(--r2,8px);
  border:1px solid var(--linka2,#363A35);background:var(--pole,var(--pozadi,#0E100E));color:inherit;font:inherit;font-size:16px}
.sm-zaskrt{display:flex;align-items:center;gap:6px;cursor:pointer}
.sm-zaskrt input{accent-color:var(--ryska,var(--zelena,#FF6B1F))}
.sm-rozsah{display:grid;gap:4px}
.sm-rozsah input{width:100%;accent-color:var(--ryska,var(--zelena,#FF6B1F))}
.sm-graf{position:absolute;left:10px;right:10px;bottom:calc(var(--sv-spodek,0px) + 60px);z-index:5;padding:8px 10px 6px;border-radius:var(--r3,12px);
  border:1px solid var(--linka2,#363A35);background:color-mix(in srgb,var(--plech,var(--plocha,#121412)) 97%,transparent);
  color:var(--rytina,var(--text,#F2F2EC))}
.sm-graf-hlava{display:flex;align-items:center;gap:10px;font-size:12px}
.sm-graf-hlava span{flex:1;min-width:0;color:var(--elox,var(--sedy,#8B908A));font-family:var(--pismo-cisla,var(--f-mono,ui-monospace,monospace));font-size:11.5px;overflow-wrap:anywhere}
.sm-graf svg{display:block;width:100%;height:112px}
.sm-graf text{fill:var(--elox,var(--sedy,#8B908A));font:500 10.5px var(--pismo-cisla,var(--f-mono,ui-monospace,monospace))}
.sm-graf .sm-graf-pozor{fill:var(--pozor,#E0A33C)}
.sm-graf-osa{stroke:var(--linka2,#363A35)}
.sm-graf-cara{fill:none;stroke:var(--ryska,var(--zelena,#FF6B1F));stroke-width:2;vector-effect:non-scaling-stroke}
.sm-graf-vypln{fill:color-mix(in srgb,var(--ryska,var(--zelena,#FF6B1F)) 18%,transparent)}
.sm-graf-prudke{fill:color-mix(in srgb,var(--pozor,#E0A33C) 18%,transparent)}
.sm-legenda{position:absolute;right:10px;bottom:calc(var(--sv-spodek,0px) + 140px);z-index:3;width:150px;padding:8px 10px;border-radius:var(--r2,8px);pointer-events:none;
  background:color-mix(in srgb,var(--plech,var(--plocha,#121412)) 88%,transparent);color:var(--rytina,var(--text,#F2F2EC));font:500 11px/1.35 var(--pismo-cisla,var(--f-mono,ui-monospace,monospace))}
.sm-legenda:empty{display:none}
.sm-leg-stupnice{height:8px;border-radius:4px;background:linear-gradient(90deg,#2F6FA8,#3FA06A,#E0C23C,#E0523C)}
.sm-leg-cisla{display:flex;justify-content:space-between;margin-top:3px}
.sm-leg-pozn{margin-top:4px;color:var(--elox,var(--sedy,#8B908A))}
.sm-leg-videt{display:flex;align-items:center;gap:5px;flex-wrap:wrap}
.sm-leg-videt i{display:inline-block;width:11px;height:11px;border-radius:2px}
.sm-leg-videt i.vidi{background:#E0523C}.sm-leg-videt i.schovane{background:#3FAA60;margin-left:6px}
@media (max-width:520px){.sm-graf{left:6px;right:6px}}

/* ───────────── popisky v prostoru (popisky.js) ───────────── */
.sp-vrstva{position:absolute;inset:0}
.sp-pin{position:absolute;left:0;top:0;display:flex;align-items:center;gap:6px;padding:0;border:0;background:none;cursor:pointer;pointer-events:auto;
  margin:-9px 0 0 -9px;color:var(--rytina,var(--text,#F2F2EC));font:600 12px/1.2 var(--pismo-text,var(--f-txt,system-ui,sans-serif))}
.sp-pin i{flex:none;width:18px;height:18px;border-radius:50%;background:var(--ryska,var(--zelena,#FF6B1F));border:3px solid #fff;box-shadow:0 1px 5px rgba(0,0,0,.45)}
.sp-pin span{max-width:180px;padding:5px 9px;border-radius:999px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  background:color-mix(in srgb,var(--plech,var(--plocha,#121412)) 90%,transparent);box-shadow:0 1px 4px rgba(0,0,0,.3)}
.sp-pin:hover span,.sp-pin.otevreny span,.sp-pin:focus-visible span{background:var(--rytina,var(--text,#F2F2EC));color:var(--tubus,var(--plocha,#0B0C0B))}
.sp-pin:focus-visible{outline:none}.sp-pin:focus-visible i{outline:2px solid var(--ryska,var(--zelena,#FF6B1F));outline-offset:2px}
.sv-male .sp-pin span{max-width:120px;padding:4px 7px;font-size:11px}
.sp-umistuji .sv-platno{cursor:crosshair}
.sp-karta{position:absolute;left:10px;bottom:calc(var(--sv-spodek,0px) + 62px);z-index:5;width:300px;max-width:calc(100% - 20px);max-height:calc(100% - 80px - var(--sv-spodek,0px));overflow:auto;
  display:grid;gap:8px;padding:10px 12px 12px;border-radius:var(--r3,12px);border:1px solid var(--linka2,#363A35);
  background:color-mix(in srgb,var(--plech,var(--plocha,#121412)) 97%,transparent);color:var(--rytina,var(--text,#F2F2EC));
  font:400 var(--v6,var(--p6,12.5px))/1.45 var(--pismo-text,var(--f-txt,system-ui,sans-serif));touch-action:auto;user-select:text;-webkit-user-select:text}
.sp-karta.uklada{opacity:.6;pointer-events:none}
.sp-k-hlava{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.sp-k-hlava b{font-size:14px;line-height:1.3}
.sp-x{flex:none;width:28px;height:28px;margin:-4px -6px 0 0;border:0;border-radius:var(--r2,8px);background:none;color:inherit;font-size:20px;line-height:1;cursor:pointer}
.sp-k-foto{display:block;width:100%;max-height:220px;object-fit:cover;border-radius:var(--r2,8px)}
.sp-k-popis{margin:0;white-space:pre-line;color:var(--text2,var(--rytina,#C9CCC4))}
.sp-k-odkaz{color:var(--ryska,var(--zelena,#FF6B1F));font-weight:600;text-decoration:none}
.sp-k-odkaz::after{content:" ↗"}
.sp-pole{display:grid;gap:4px}
.sp-pole span{color:var(--elox,var(--sedy,#8B908A));font-size:11px;text-transform:uppercase;letter-spacing:.06em}
.sp-pole input,.sp-pole textarea{box-sizing:border-box;width:100%;padding:7px 10px;border-radius:var(--r2,8px);border:1px solid var(--linka2,#363A35);
  background:var(--pole,var(--pozadi,#0E100E));color:inherit;font:inherit;font-size:16px;resize:vertical}
.sp-foto{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.sp-foto img{width:100%;max-height:140px;object-fit:cover;border-radius:var(--r2,8px)}
.sp-tlacitka{display:flex;flex-wrap:wrap;gap:6px}
.sp-tlacitka button,.sp-tl-mal{min-height:32px;padding:0 12px;border-radius:999px;border:1px solid var(--linka2,#363A35);background:none;color:inherit;cursor:pointer;
  display:inline-flex;align-items:center;font:600 12px/1 var(--pismo-text,var(--f-txt,system-ui,sans-serif))}
.sp-tl-mal.nahrava{opacity:.5;pointer-events:none}
.sp-tlacitka button.hlavni{background:var(--ryska,var(--zelena,#FF6B1F));border-color:transparent;color:var(--ink,#2A1205)}
[data-tema="ploty"] .sp-tlacitka button.hlavni{color:#fff}
.sp-smazat{color:var(--chyba,#E0523C)!important}
@media (max-width:520px){.sp-karta{left:6px;right:6px;width:auto}}

/* ───────────── plot ve skenu (plot3d.js) — panel jako u měření ───────────── */
.pl-nadpis{flex:1;padding-left:4px;font-size:13px}
.pl-radek{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 0;border-bottom:1px dashed var(--linka,#262A26)}
.pl-radek div{display:grid;gap:2px;min-width:0}
.pl-radek small{color:var(--elox,var(--sedy,#8B908A))}
.pl-radek button{flex:none;min-height:30px;padding:0 10px;border-radius:999px;border:1px solid var(--linka2,#363A35);background:none;color:inherit;cursor:pointer;font:600 12px/1 var(--pismo-text,var(--f-txt,system-ui,sans-serif))}
.pl-skup{display:grid;gap:5px}
.pl-skup>span{color:var(--elox,var(--sedy,#8B908A));font-size:11px;text-transform:uppercase;letter-spacing:.06em}
.pl-skup select,.pl-brana select,.pl-brana input[type=number],.pl-nazev{box-sizing:border-box;min-height:34px;padding:4px 8px;border-radius:var(--r2,8px);border:1px solid var(--linka2,#363A35);
  background:var(--pole,var(--pozadi,#0E100E));color:inherit;font:inherit;font-size:16px}
.pl-nazev{width:100%}
.pl-barvy{display:flex;flex-wrap:wrap;gap:4px}
.pl-barvy button{display:inline-flex;align-items:center;gap:5px;min-height:30px;padding:0 9px 0 5px;border-radius:999px;border:1px solid var(--linka2,#363A35);background:none;color:inherit;cursor:pointer;font:600 11.5px/1 var(--pismo-text,var(--f-txt,system-ui,sans-serif))}
.pl-barvy button[aria-pressed="true"]{border-color:var(--ryska,var(--zelena,#FF6B1F))}
.pl-barvy i{width:16px;height:16px;border-radius:50%;border:1px solid rgba(255,255,255,.35)}
.pl-brana{display:grid;gap:6px;padding:8px;border-radius:var(--r2,8px);background:var(--vrstva,rgba(127,127,127,.08))}
.pl-brana label{display:flex;align-items:center;justify-content:space-between;gap:8px}
.pl-brana input[type=number]{width:90px}
.sm-panel.pl-panel{top:10px;left:10px}

/* ───────────── Před a po (predpo.js) ───────────── */
.pp-delic{position:absolute;top:0;bottom:var(--sv-spodek,0px);z-index:2;width:0;border-left:2px solid #fff;box-shadow:0 0 6px rgba(0,0,0,.5);pointer-events:none}
.pp-tahlo{position:absolute;left:-22px;top:50%;width:44px;height:44px;margin-top:-22px;border-radius:50%;border:0;cursor:ew-resize;pointer-events:auto;touch-action:none;
  display:flex;align-items:center;justify-content:center;background:#fff;color:#0B0C0B;box-shadow:0 2px 8px rgba(0,0,0,.45)}
.pp-tahlo svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.pp-tahlo:focus-visible{outline:2px solid var(--ryska,var(--zelena,#FF6B1F));outline-offset:2px}
.pp-stitek{position:absolute;top:56px;z-index:2;padding:6px 11px;border-radius:999px;pointer-events:none;white-space:nowrap;max-width:44%;overflow:hidden;text-overflow:ellipsis;
  font:600 12px/1.2 var(--pismo-text,var(--f-txt,system-ui,sans-serif));background:color-mix(in srgb,var(--plech,var(--plocha,#121412)) 88%,transparent);color:var(--rytina,var(--text,#F2F2EC))}
.pp-stitek.pred{left:10px}.pp-stitek.po{right:10px;background:var(--ryska,var(--zelena,#FF6B1F));color:var(--ink,#2A1205)}
[data-tema="ploty"] .pp-stitek.po{color:#fff}
.pp-stav{position:absolute;left:50%;top:56px;z-index:3;transform:translateX(-50%);padding:7px 12px;border-radius:var(--r2,8px);
  background:color-mix(in srgb,var(--plech,var(--plocha,#121412)) 92%,transparent);color:var(--rytina,var(--text,#F2F2EC));font:500 12px/1.3 var(--pismo-text,system-ui,sans-serif)}
/* /scan: Před a po a vložení (scan.js) */
.sk-pp,.sk-vl{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;padding:12px;border:1px solid var(--linka);border-radius:var(--r2);background:var(--vrstva)}
.sk-pp.uklada,.sk-vl.uklada{opacity:.6;pointer-events:none}
.sk-dvoje{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px}
/* vložení „začít obrázkem“ (galerie.js) */
.sv-plakat{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;border:0;padding:0;cursor:pointer;border-radius:inherit;
  background:var(--vrstva,#1A1D1A) center/cover no-repeat}
.sv-plakat::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(0,0,0,.45));border-radius:inherit}
.sv-plakat span{position:relative;display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:0 20px;border-radius:999px;
  background:rgba(11,12,11,.82);color:#fff;font:600 15px/1 var(--pismo-text,var(--f-txt,system-ui,sans-serif));box-shadow:0 4px 18px rgba(0,0,0,.4)}
.sv-plakat svg{width:16px;height:16px;fill:currentColor}
.sv-plakat:hover span,.sv-plakat:focus-visible span{background:var(--ryska,var(--zelena,#FF6B1F));color:var(--ink,#2A1205)}
[data-tema="ploty"] .sv-plakat:hover span{color:#fff}
.sk-vl-nahled{position:relative;width:100%;max-width:560px;border-radius:var(--r2);overflow:hidden;background:var(--tubus)}
.sk-vl-nahled iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
/* video průletu: časová osa (render.js) */
.sk-osa{display:grid;gap:8px}
.sk-osa-seznam{margin:0;padding:0;list-style:none;display:grid;gap:6px;counter-reset:osa}
.sk-osa-seznam li{display:grid;grid-template-columns:72px auto minmax(0,1fr) auto auto;gap:6px;align-items:center}
.sk-osa-seznam input{box-sizing:border-box;min-height:36px;padding:4px 8px;border-radius:var(--r2);border:1px solid var(--linka2);background:var(--pole);color:var(--rytina);font:inherit;font-size:16px;width:100%}
.sk-osa-s{color:var(--elox);font-size:var(--v6)}
.sk-osa-novy{max-width:110px}
.sk-osa-novy input{box-sizing:border-box;min-height:36px;width:100%;padding:4px 8px;border-radius:var(--r2);border:1px solid var(--linka2);background:var(--pole);color:var(--rytina);font:inherit;font-size:16px}
@media (max-width:520px){.sk-osa-seznam li{grid-template-columns:64px auto minmax(0,1fr) auto}.sk-osa-seznam li [data-osaukaz]{grid-column:3}}
/* telefon: lišta s nástroji se zalomí, panel měření / plotu jako list dole (lišta i sken nahoře zůstanou), graf profilu nahoře */
.sv-lista{flex-wrap:wrap;justify-content:flex-end;max-width:calc(100% - 20px)}
@media (max-width:560px){
  .sv-nazev{display:none}
  .sm-panel{top:auto;bottom:calc(var(--sv-spodek,0px) + 64px);left:6px;right:6px;width:auto;max-width:none;max-height:min(58%,calc(100% - 140px - var(--sv-spodek,0px)))}
  .sm-graf{top:62px;bottom:auto}
  .sp-karta{bottom:calc(var(--sv-spodek,0px) + 64px)}
  .sm-legenda{bottom:auto;top:62px;right:6px}
}

/* ───────────── přidat záběry a předchozí verze (zabery.js) ───────────── */
.zb-drop{display:grid;gap:4px;justify-items:center;text-align:center;padding:18px 14px;border:1.5px dashed var(--linka2);border-radius:var(--r2);cursor:pointer;color:var(--text2,var(--rytina))}
.zb-drop:hover,.zb-drop.nad{border-color:var(--ryska);background:var(--ryska-pozadi)}
.zb-seznam{display:grid;gap:4px;max-height:260px;overflow:auto}
.zb-soubor{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;gap:10px;align-items:center;padding:6px 6px 6px 10px;border:1px solid var(--linka);border-radius:var(--r1);background:var(--plech);font:500 var(--v6)/1.3 var(--pismo-cisla)}
.zb-soubor>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.zb-soubor small{color:var(--elox)}
.zb-stav{color:var(--ok);min-width:3ch;text-align:right}
.zb-pryc{width:28px;height:28px;border-radius:var(--r1);border:1px solid var(--linka2);background:none;color:var(--elox);cursor:pointer;font:inherit}
.zb-pryc:hover{border-color:var(--chyba);color:var(--chyba)}
.zb-prubeh{height:4px;border-radius:2px;background:var(--linka2);overflow:hidden}
.zb-prubeh span{display:block;height:100%;width:0;background:var(--ryska);transition:width .2s}
.zb-verze{border:1px solid var(--ryska);border-radius:var(--r2);padding:12px}
.zb-dve{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.zb-karta{display:grid;gap:3px;padding:7px;border:1px solid var(--linka);border-radius:var(--r2);background:var(--plech);min-width:0}
.zb-karta.nova{border-color:var(--ryska)}
.zb-karta small{color:var(--elox);font-size:var(--v6)}
.zb-obr{aspect-ratio:4/3;max-width:100%;border-radius:var(--r1);background:var(--vrstva) center/cover no-repeat}
.zb-dvojice{display:grid;gap:4px}
.zb-dvojice img{display:block;width:100%;height:auto;border-radius:var(--r1);background:var(--plech)}
/* kde chybí záběry (pokryti.js) — legenda v náhledu */
.pk-legenda{position:absolute;left:10px;bottom:calc(var(--sv-spodek,0px) + 62px);z-index:4;display:grid;gap:5px;max-width:min(300px,calc(100% - 20px));
  padding:10px 12px;border-radius:var(--r2,8px);background:rgba(11,12,11,.86);border:1px solid var(--linka2,#363A35);color:#F2F2EC;
  font:500 var(--v6,11.5px)/1.35 var(--pismo-text,system-ui);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.pk-legenda span{display:flex;gap:8px;align-items:center}
.pk-legenda i{display:inline-block;width:11px;height:11px;flex:none;border-radius:2px}
.pk-legenda small{color:#C9CCC4}
.pk-legenda .sk-tl{justify-self:start;margin-top:2px}
