/* ArchiBIMO: průvodce prvním domem, tabulka klávesových zkratek a hláška po exportu (pro/pruvodce.js). */
.pruvodce{position:absolute;left:12px;bottom:12px;z-index:30;width:min(380px,calc(100% - 24px));background:var(--card);color:var(--fg);border:1px solid var(--line);border-radius:14px;padding:14px 16px 14px;
  box-shadow:0 2px 6px rgba(0,0,0,.08),0 18px 44px rgba(0,0,0,.18);font-size:14px;line-height:1.45}
.pruvodce h3{margin:6px 0 4px;font-size:17px;line-height:1.25}
.pruvodce p{margin:0;color:var(--mut)}
.pruvodce .pv-hotovo{margin-top:8px;color:var(--acc);font-weight:700}
.pv-hlava{display:flex;align-items:center;gap:10px}
.pv-hlava h3{margin:0;flex:1}
.pv-cislo{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--acc)}
.pv-tecky{display:flex;gap:4px;flex:1}
.pv-tecky i{width:16px;height:4px;border-radius:2px;background:var(--line)}
.pv-tecky i.ok{background:var(--acc)}
.pv-tecky i.ted{background:var(--acc);opacity:.5}
.pv-x{margin-left:auto;width:32px;height:32px;padding:0;border-radius:50%;font-size:20px;line-height:1;display:grid;place-items:center;flex:none}
.pv-akce{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.pv-akce button,.pv-zk-pruvodce{min-height:40px;padding:0 14px;border-radius:999px;font-weight:600}
.pv-hl{background:var(--acc)!important;border-color:var(--acc)!important;color:#fff!important}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .pv-hl{color:#0f1513!important}}
:root[data-theme="dark"] .pv-hl{color:#0f1513!important}
/* zvýrazněné tlačítko, na které má člověk ťuknout */
.pv-cil{position:relative;outline:3px solid var(--acc)!important;outline-offset:2px;animation:pv-puls 1.4s ease-in-out infinite}
@keyframes pv-puls{50%{outline-color:transparent}}
@media (prefers-reduced-motion:reduce){.pv-cil{animation:none}}
@media (max-width:760px){.pruvodce{left:8px;right:8px;bottom:8px;width:auto;padding:12px 14px}.pruvodce h3{font-size:16px}}

/* klávesové zkratky */
.pv-zkratky{position:fixed;inset:0;z-index:60;background:rgba(10,14,12,.45);display:grid;place-items:center;padding:16px}
.pv-zkratky[hidden]{display:none}
.pv-zk-in{background:var(--card);color:var(--fg);border-radius:16px;border:1px solid var(--line);width:min(560px,100%);max-height:calc(100dvh - 32px);overflow:auto;padding:18px 20px 20px;box-shadow:0 24px 60px rgba(0,0,0,.3)}
.pv-zk-in h3{font-size:18px}
.pv-zk-in h4{margin:16px 0 6px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--mut)}
.pv-zk-pozn{margin:6px 0 0;color:var(--mut);font-size:13px}
.pv-zk-in dl{display:grid;grid-template-columns:minmax(110px,auto) 1fr;gap:6px 14px;margin:0;align-items:center}
.pv-zk-in dt{white-space:nowrap}
.pv-zk-in dd{margin:0;color:var(--fg)}
.pv-zk-in kbd{display:inline-block;min-width:24px;padding:2px 7px;border:1px solid var(--line);border-bottom-width:2px;border-radius:6px;background:var(--plocha);font:600 12px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;text-align:center}
.pv-zk-pruvodce{margin-top:18px;width:100%}

/* krátká hláška (např. po stažení IFC) */
.pv-hlaska{position:fixed;left:50%;transform:translateX(-50%);top:70px;z-index:70;max-width:min(520px,calc(100% - 24px));background:var(--fg);color:var(--card);padding:10px 14px;border-radius:10px;font-size:14px;box-shadow:0 10px 30px rgba(0,0,0,.25)}
.pv-hlaska[hidden]{display:none}
/* onboarding (pro/onboarding.js): krátká prohlídka se zvýrazněním a prázdné stavy s návodem */
.ob-ram{position:fixed;z-index:59;border-radius:12px;box-shadow:0 0 0 3px var(--acc),0 0 0 9999px rgba(10,14,12,.45);pointer-events:none;transition:all .25s ease}
.ob-karta{position:fixed;z-index:60;left:8px;top:8px;bottom:auto;width:min(360px,calc(100vw - 16px))}
@media (max-width:760px){.ob-karta{left:8px;right:auto;bottom:auto;width:calc(100vw - 16px)}}
.ob-prazdno{position:absolute;z-index:25;left:50%;top:50%;transform:translate(-50%,-50%);width:min(420px,calc(100% - 24px));background:var(--card);color:var(--fg);border:1px solid var(--line);border-radius:14px;padding:16px 18px;
  box-shadow:0 2px 6px rgba(0,0,0,.06),0 14px 36px rgba(0,0,0,.14);font-size:14px;line-height:1.45}
.ob-prazdno h3{margin:0 0 4px;font-size:17px}.ob-prazdno p{margin:0;color:var(--mut)}
.ob-prazdno .pv-akce button{min-height:40px}
@media (max-width:760px){.ob-prazdno{top:auto;bottom:12px;transform:translateX(-50%);padding:12px 14px}}
@media (prefers-reduced-motion:reduce){.ob-ram{transition:none}}
/* menu ☰ má s položkami onboardingu a hlášení víc řádků než výška telefonu: posouvat uvnitř */
#menu.menu{max-height:calc(100dvh - 64px);overflow-y:auto;overscroll-behavior:contain}
/* šablony pro začátek projektu (pro/sablony.js) */
.sb-okno{position:fixed;z-index:65;left:50%;top:50%;bottom:auto;transform:translate(-50%,-50%);overscroll-behavior:contain;width:min(560px,calc(100vw - 16px));max-height:calc(100dvh - 16px);overflow-y:auto}
.sb-okno[hidden]{display:none}
.sb-dlazdice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0 6px}
.sb-dlazdice-1{display:flex;flex-direction:column;align-items:flex-start;gap:3px;text-align:left;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--fg);font:inherit;cursor:pointer;min-height:44px}
.sb-dlazdice-1:hover,.sb-dlazdice-1:focus-visible{border-color:var(--acc)}
.sb-dlazdice-1 svg{width:64px;height:46px;color:var(--acc)}
.sb-dlazdice-1 b{font-size:14px}.sb-dlazdice-1 span{font-size:12px;color:var(--mut);line-height:1.35}
/* ukázka bez přihlášení (/pro/?demo=1) */
.demo-pruh{position:fixed;z-index:20;right:8px;bottom:calc(60px + env(safe-area-inset-bottom));display:flex;align-items:center;gap:8px;max-width:calc(100vw - 16px);background:var(--fg);color:var(--card);border-radius:999px;padding:4px 4px 4px 12px;font-size:12px;white-space:nowrap;box-shadow:0 6px 18px rgba(0,0,0,.2)}
.demo-pruh a{font-weight:700;white-space:nowrap;background:var(--acc);color:#fff;border-radius:999px;padding:5px 10px;text-decoration:none}
.demo-pruh button{background:none;border:0;color:inherit;font-size:18px;line-height:1;cursor:pointer;padding:4px 6px}
.demo-pruh[hidden]{display:none}
/* telefon (432 px, prst): okno šablon jako spodní list, tlačítka zaučení aspoň 44 px vysoká */
@media (max-width:760px){
  .sb-okno{left:0;right:0;top:auto;bottom:0;transform:none;width:auto;max-height:88dvh;border-radius:16px 16px 0 0;padding-bottom:calc(14px + env(safe-area-inset-bottom))}
  .sb-dlazdice{gap:8px}.sb-dlazdice-1{padding:8px 10px}.sb-dlazdice-1 svg{width:52px;height:38px}
}
@media (pointer:coarse){
  .pv-akce button,.ob-prazdno .pv-akce button,.pv-zk-pruvodce{min-height:44px}
  .pv-x{width:44px;height:44px;margin:-6px -8px -6px auto}
  .demo-pruh{padding:4px 4px 4px 14px;font-size:13px}
  .demo-pruh a{display:inline-flex;align-items:center;min-height:44px;padding:0 14px}
  .demo-pruh button{min-width:44px;min-height:44px;font-size:20px}
}
/* hláška při kreslení výkresových listů (pro/onboarding.js) */
.ob-kreslim{position:absolute;z-index:40;left:50%;top:40%;transform:translate(-50%,-50%);background:var(--fg);color:var(--card);padding:12px 18px;border-radius:12px;font-weight:600;box-shadow:0 10px 30px rgba(0,0,0,.25)}
.ob-ceka{opacity:.6}
/* složený proužek ukázky: jen štítek „Ukázka“ (ťuknutím se rozbalí) */
.demo-pruh .demo-stitek{display:none}
.demo-pruh.mala{padding:0 14px;min-height:36px;cursor:pointer;opacity:.85}
.demo-pruh.mala>span,.demo-pruh.mala>a,.demo-pruh.mala>button{display:none}
.demo-pruh.mala .demo-stitek{display:inline;font-weight:700}
@media (pointer:coarse){.demo-pruh.mala{min-height:44px}}
/* náhled tisku na telefonu (pro/tisk.js): název a × nahoře, čtyři tlačítka v jedné řadě pro prst */
@media (max-width:760px){
  .nt-hlava{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) 44px;gap:6px;padding:6px 10px 8px}
  .nt-hlava>b{grid-column:1/5;grid-row:1;align-self:center;font-size:15px}
  .nt-akce{display:contents}
  .nt-akce button{grid-row:2;min-height:44px;padding:4px 6px;font-size:13px;line-height:1.15;white-space:normal}
  .nt-akce [data-nt="zavrit"]{grid-column:5;grid-row:1;min-width:44px;font-size:18px;padding:0}
  .nt-pozn{font-size:12.5px;margin:8px auto}
  .nt-listy{padding:0 8px 40px}
}

/* průvodce „První projekt za 10 minut“ (pro/projekt10.js) */
.p10-volby{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.p10-volby button{min-height:40px;padding:0 14px;border-radius:10px;font-weight:600}
.p10-volby button.on{border-color:var(--acc);box-shadow:inset 0 0 0 2px var(--acc);color:var(--fg)}
.p10-cas{margin-top:8px!important;font-size:12px}
/* telefon: karta průvodce dole na obrazovce přes panel vlastností, ať plocha s domem zůstane volná */
@media (max-width:760px){.pruvodce.p10{position:fixed;left:8px;right:8px;bottom:8px;max-height:46vh;overflow:auto}}
