/* Pás výrobců na úvodu (js/znacky.js). Jeden řádek, na širokém i úzkém displeji jede pomalu dokola,
   při najetí nebo fokusu stojí. S prefers-reduced-motion stojí a dá se posouvat prstem. */
.h-vyr .h-wrap>p.h-sub{margin-bottom:20px}
.zn-pas{display:flex;gap:12px;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);padding:2px 0 6px}
.zn-r{display:flex;gap:12px;margin:0;padding:0;list-style:none;flex:none;width:max-content}
.zn-pas.run .zn-r{animation:znjed 60s linear infinite}
@media (hover:hover){.zn-pas:hover .zn-r{animation-play-state:paused}}
.zn-pas:has(:focus-visible) .zn-r{animation-play-state:paused}
/* na dotyku zůstane :hover po ťuknutí (třeba na SIKO) viset a pás stál (backlog 158), proto zastavení najetím jen u myši */
/* po kliku na logo a návratu Zpět zůstával odkaz zaostřený a pás stál (Tom 26. 10.): zastaví jen najetí myší a klávesnice */
@keyframes znjed{to{transform:translateX(calc(-100% - 12px))}}
.zn-k a,.zn-sk{display:flex;flex-direction:column;justify-content:center;gap:6px;width:176px;height:112px;padding:14px 16px;border-radius:18px;box-sizing:border-box}
.zn-k a{position:relative;background:var(--surface);border:1px solid var(--line);color:inherit;text-decoration:none;transition:border-color .15s}
.zn-k a:hover,.zn-k a:focus-visible{border-color:var(--blue)}
.zn-sk{width:150px;background:var(--canvas);border:1px dashed var(--line2)}
.zn-sk b{font-size:14px;letter-spacing:-.01em}
.zn-sk span{font-size:12px;color:var(--muted);line-height:1.35}
.zn-m{height:44px;display:flex;align-items:center}
.zn-logo{max-height:36px;max-width:124px;width:auto;height:auto;display:block}
:root[data-theme="dark"] .zn-logo{background:#fff;border-radius:6px;padding:3px 6px}
.zn-text{font-weight:800;font-size:20px;letter-spacing:-.01em;color:var(--ink);white-space:nowrap}
.zn-co{font-size:12px;color:var(--muted);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.zn-logo.ctv{max-height:44px}
.zn-cz{position:absolute;top:8px;right:8px;font-size:10.5px;font-weight:800;color:var(--blue);background:var(--blue-soft);border-radius:999px;padding:2px 8px}
.zn-pozn{font-size:12px;color:var(--faint);margin:14px 0 0;max-width:720px;line-height:1.5}
.zn-stitek{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 8px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);text-decoration:none;font-size:11.5px;vertical-align:middle}
.zn-stitek .zn-text{font-size:11.5px}
.zn-stitek .zn-logo{max-height:14px;max-width:70px}
@media (max-width:640px){
  .zn-k a{width:150px;height:104px;padding:12px 14px}
  .zn-sk{width:130px;height:104px;padding:12px 14px}
  .zn-text{font-size:18px}
}
@media (prefers-reduced-motion:reduce){
  .zn-pas{overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;mask-image:none;-webkit-mask-image:none}
  .zn-pas::-webkit-scrollbar{display:none}
  .zn-pas .zn-r{animation:none!important}
  .zn-pas .zn-r[aria-hidden="true"]{display:none}
  .zn-k,.zn-sk{scroll-snap-align:start}
}
.zn-pozn a{color:var(--blue);font-weight:800;font-size:13px;text-decoration:none;display:inline-block;margin-bottom:4px}

/* přepínač CZ / EN (js/i18n.js): v patičce úvodu a v menu účtu */
.langsw{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;min-height:36px;border:1px solid var(--line,#d9d4c7);border-radius:999px;background:transparent;color:inherit;font:500 13px/1 inherit;cursor:pointer}
.langsw .i,.acm-lang .i{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6}
.acm-lang{display:flex!important;align-items:center;gap:8px}

/* návrat z přihlášení / platby rovnou do návrhu (js/navrat.js): Komunita ani úvod mezitím neprobliknou */
html.md-navrat #home,html.md-navrat #feed,html.md-navrat #dash,html.md-navrat #gen{visibility:hidden}
html.md-navrat body::after{content:'Vracím vás k návrhu…';position:fixed;inset:0;z-index:40;display:grid;place-items:center;background:var(--bg,#faf8f4);color:var(--muted,#6b665e);font:500 15px/1.4 system-ui,sans-serif}

/* Moje návrhy: řazení (js/moje-navrhy.js) */
.dash-raz select{height:36px;border:1px solid var(--line);border-radius:10px;background:var(--surface,#fff);color:var(--ink);font:inherit;font-size:13px;padding:0 8px}
.dash-raz .vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* záložky (Komunita, profil): jen vodorovný posun prstem, bez svislého posuvníku od podtržení (margin-bottom:-1px) */
.ftabs{overflow-y:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
.ftabs::-webkit-scrollbar{display:none}

/* úprava profilu (js/most.js): fotka z účtu Google */
.pf-foto{display:flex;align-items:center;gap:12px;margin:2px 0 12px}
.pf-foto .av{width:52px;height:52px;border-radius:50%;flex:none;display:grid;place-items:center;background:var(--blue-soft,#e8efff);color:var(--blue,#2d6bff);font-weight:800;font-size:18px;overflow:hidden}
.pf-foto .av img{width:100%;height:100%;object-fit:cover}
.pf-foto small{display:block;color:var(--muted)}
.pf-foto label{display:flex;gap:6px;align-items:center;font-size:14px;margin-top:4px}

/* zavírací křížky bublin, lišt a oken: dotyková plocha aspoň 44 × 44 px, i když je křížek menší (Tom 25. 10.) */
/* :where() = nulová specifičnost: tlačítka, která si polohu nastavují sama (.mx vpravo nahoře), si ji nechají */
:where(button[aria-label^="Zavřít"]){position:relative}
.mbox>.mx+h2,.mbox>.mx+div>h2:first-child{padding-right:40px}
button[aria-label^="Zavřít"]::before{content:'';position:absolute;left:50%;top:50%;width:max(100%,44px);height:max(100%,44px);transform:translate(-50%,-50%)}

/* velké monitory (Tom 25. 10.: „na notebooku s vysokým rozlišením je to úzký proužek uprostřed“):
   Katalog a Moje návrhy jdou skoro přes celou šířku a přidávají sloupce karet, úvod se rozšíří na 1440 px */
@media (min-width:1400px){
  .screen .wrap{max-width:min(2400px,calc(100vw - 64px))}
  .masonry{columns:auto 270px}
  .pgrid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
  .h-wrap{max-width:1440px}
}
@media (min-width:2200px){.masonry{columns:auto 300px}.h-wrap{max-width:1600px}}

/* Navigace (js/navigace.js): volba „Jak chcete začít?“ a velké karty na stránce Navrhnout dům */
.nav-zac{max-width:none}.nav-zac h2{margin:0 0 14px}
.nav-pokr{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:14px 16px;margin:0 0 14px;border:1px solid var(--blue,#2f6bf2);border-radius:14px;background:var(--blue-soft,#eef3ff);color:var(--ink);font:inherit;text-align:left;cursor:pointer}
.nav-pokr small{display:block;color:var(--muted);font-size:12.5px}.nav-pokr b{font-size:15px}
.nav-moz{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.nav-k{display:flex;flex-direction:column;gap:4px;padding:10px 10px 14px;border:1px solid var(--line);border-radius:16px;background:var(--surface,#fff);font:inherit;color:var(--ink);text-align:left;cursor:pointer;transition:border-color .15s,transform .15s}
.nav-k:hover{border-color:var(--blue,#2f6bf2);transform:translateY(-1px)}
.nav-k svg,.nav-obr svg{width:100%;height:auto;display:block;border-radius:10px;margin-bottom:6px}
.nav-k b{font-size:15px;padding:0 4px}.nav-k span{font-size:13px;color:var(--muted);padding:0 4px;line-height:1.4}
.nav-k[data-wide]{grid-column:1/-1;display:grid;grid-template-columns:180px 1fr;grid-template-rows:1fr auto 1fr;column-gap:12px;row-gap:4px}.nav-k[data-wide] svg{grid-row:1/4;margin:0}.nav-k[data-wide] b{grid-column:2;grid-row:2;align-self:end}.nav-k[data-wide] span{grid-column:2;grid-row:3;align-self:start}
.nav-demo{margin:14px 0 0;text-align:center}.nav-demo button{border:0;background:none;color:var(--blue,#2f6bf2);font:inherit;font-weight:700;cursor:pointer;text-decoration:underline}
@media (max-width:560px){.nav-moz{grid-template-columns:1fr}.nav-k[data-wide]{display:flex}.nav-k[data-wide] svg{grid-row:auto}.nav-k{flex-direction:row;flex-wrap:wrap;align-items:center}.nav-k svg{width:96px;flex:none;margin:0 8px 0 0}.nav-k b{flex:1;min-width:0}.nav-k span{flex-basis:100%}}
.nav-velke{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.nav-velke .ccard{padding:12px 12px 16px}.nav-velke .nav-obr{display:block;margin:-2px -2px 4px}
.nav-velke .ccard b{font-size:16px}
.nav-pozor{animation:konzPozor 1.4s ease 1}
.nav-hledat{display:flex;gap:8px;align-items:center;margin:0;flex:0 0 auto;width:min(520px,46vw)}
.nav-hledat .fsearch{flex:1 1 auto}
.nav-zac h2{padding:0 44px}
@media (max-width:560px){.nav-zac h2{padding:22px 0 0}}
@media (max-width:760px){#dash header.top .nav-hledat{order:4;width:100%;flex:1 1 100%}#dash header.top .nav-hledat .fsearch{flex:1;min-width:0;order:0;width:auto}}
@media (max-width:560px){.nav-velke .nav-obr svg{max-height:92px;width:auto;margin:0 auto 4px}.nav-velke .nav-obr{background:none}}
.det-ok{display:inline-flex;align-items:center;gap:3px;margin-left:6px;font-size:11.5px;font-weight:600;color:#1d7a3e;white-space:nowrap}
.det-ok svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
/* Domy / Byty: velký přepínač s ikonami */
.zbar .zseg{padding:4px;border-radius:12px;border:1px solid var(--line,#e2ded4)}
.zbar .zseg button{display:inline-flex;align-items:center;gap:7px;font-size:15px;padding:9px 16px;border-radius:9px}
.zbar .zseg button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round}
.zbar .zseg button[aria-pressed="true"]{color:var(--blue,#2f6fdf)}
@media(max-width:700px){.zbar .zseg{flex:1 1 100%;max-width:none}.zbar .zseg button{justify-content:center;padding:10px 8px}}
/* jazyk: zeměkoule vedle účtu */
.lang-g{position:relative;display:inline-flex;align-items:center}
.lang-gb{display:inline-flex;align-items:center;gap:4px;height:36px;padding:0 8px;border:0;border-radius:999px;background:transparent;color:var(--muted,#6b665c);font:600 12px/1 inherit;cursor:pointer}
.lang-gb:hover,.lang-gb[aria-expanded="true"]{background:var(--surface-2,#f1f0ec);color:var(--ink,#1f1e1b)}
.lang-gb .i{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6}
.lang-gm{position:absolute;right:0;top:calc(100% + 6px);z-index:60;display:flex;flex-direction:column;min-width:140px;padding:6px;background:var(--surface,#fff);border:1px solid var(--line,#e2ded4);border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.12)}
.lang-gm[hidden]{display:none}
.lang-gm button{border:0;background:none;text-align:left;padding:9px 10px;border-radius:8px;font:500 14px/1.2 inherit;color:var(--ink,#1f1e1b);cursor:pointer}
.lang-gm button:hover{background:var(--surface-2,#f1f0ec)}
.lang-gm button[aria-checked="true"]{font-weight:700;color:var(--blue,#2f6fdf)}
html.md-ed .app>header.top .lang-g{display:none}
@media(max-width:700px){.lang-gb span{display:none}.lang-gb{padding:0 6px}}
@media(max-width:440px){#home .lang-g{display:none}}
/* Export: ukázka studie jako tlačítko, ne holý podtržený text (Tom 25. 10. 22:11) */
.ex-ukazka{display:inline-flex;align-items:center;gap:6px;margin-top:8px;padding:7px 12px;border:1px solid var(--line,#e2ded4);border-radius:999px;background:var(--surface,#fff);color:var(--blue,#2f6fdf);font:700 13px/1 var(--f,inherit);text-decoration:none}
.ex-ukazka:hover{background:var(--surface-2,#f1f0ec)}
.ex-ukazka svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linejoin:round}
.exrow>div{display:flex;flex-direction:column;align-items:flex-start}
/* Moje návrhy: 3D náhled na kartě, půdorys malý v rohu; skupiny úprav stejného domu; hromadný výběr (js/moje-navrhy.js) */
.pcard .pv.p-3d{position:relative;overflow:hidden}
.pcard .pv .p-snap{position:absolute;inset:0;display:block}
.pcard .pv .p-snap img{width:100%;height:100%;object-fit:cover;display:block}
.pcard .pv.p-3d .p-snap:not(:empty)~svg{position:absolute;left:8px;bottom:8px;width:34%;height:auto;max-height:46%;background:var(--surface,#fff);border:1px solid var(--line);border-radius:8px;padding:3px;box-shadow:0 2px 8px rgba(0,0,0,.08)}
.p-skup{border:0;border-top:1px dashed var(--line);background:transparent;color:var(--blue);font:inherit;font-size:12.5px;font-weight:700;text-align:left;padding:8px 12px;cursor:pointer;width:100%}
.prow .p-skup{border:0;padding:4px 0;width:auto;grid-column:1/-1}
.pcard.p-clen{border-style:dashed}
/* hromadné úpravy jako ve WordPressu: zaškrtávátko u každého návrhu pořád vidět, lišta s akcemi nahoře nad návrhy */
.p-check{position:absolute;left:10px;top:10px;width:30px;height:30px;border-radius:8px;background:var(--surface,#fff);border:1.5px solid var(--line);display:grid;place-items:center;z-index:2;cursor:pointer;box-shadow:0 1px 4px rgba(0,0,0,.10)}
.p-check:hover{border-color:var(--blue)}
.p-check input{width:18px;height:18px;margin:0;accent-color:var(--blue);cursor:pointer}
.pcard.p-ma-check .tag{left:48px;top:13px}
.prow{position:relative}
.prow.p-ma-check{padding-left:50px}
.prow .p-check{top:16px}
.p-vybrano{outline:2.5px solid var(--blue);outline-offset:-1px}
.prow.p-vybrano{background:color-mix(in srgb,var(--blue) 7%,transparent);outline:0}
.p-lista{position:sticky;top:0;z-index:20;margin:0 0 14px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:var(--surface,#fff);border:1px solid var(--line);border-radius:12px;padding:8px 12px;font-size:13.5px}
.p-lista.p-lista-aktivni{border-color:var(--blue);box-shadow:0 6px 22px rgba(0,0,0,.12)}
.p-lista .pl-vse{display:inline-flex;align-items:center;gap:8px;font-weight:700;cursor:pointer;padding:4px 10px 4px 2px;border-right:1px solid var(--line)}
.p-lista .pl-vse input{width:18px;height:18px;margin:0;accent-color:var(--blue);cursor:pointer}
.p-lista>.pl-n{flex:1;min-width:140px;color:var(--muted)}
.p-lista.p-lista-aktivni>.pl-n{color:var(--ink)}
.p-lista .pl-akce{display:flex;gap:8px;flex-wrap:wrap}
@media (max-width:560px){.p-lista{padding:8px 10px;gap:8px}.p-lista>.pl-n{min-width:0}.p-lista .pl-akce{flex-basis:100%}.p-lista .pl-akce .btn{flex:1}}
/* jedna posuvná lišta: když je otevřená obrazovka (Katalog, Moje návrhy, Navrhnout), stránka pod ní se neposouvá (Tom 10. 11., dva posuvníky vpravo) */
html:has(body .screen:not([hidden])),html:has(body .screen:not([hidden])) body{overflow:hidden}
.dash-raz select{appearance:none;-webkit-appearance:none;border-radius:999px;padding:0 30px 0 14px;font-weight:600;cursor:pointer;background:var(--surface,#fff) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 10px center/14px}
/* detail domu na širokém displeji: pod galerií technické údaje (js/karty.js) */
.det>.dleva{display:flex;flex-direction:column;gap:18px;min-width:0}
.det>.dleva>.dcar{position:relative}
.det>.dleva>.dmore{margin-top:0}
/* notifikace: zvoneček s červeným číslem a panel (js/notifikace.js) */
.nt{position:relative;display:inline-flex}
.nt-b{position:relative;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:12px;border:1px solid var(--line2,#e2ded4);background:var(--surface,#fff);color:var(--ink);cursor:pointer;padding:0}
.nt-b svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round}
.nt-n{position:absolute;top:-5px;right:-5px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:#e5383b;color:#fff;font:800 11px/18px var(--f,inherit);font-style:normal;text-align:center;box-shadow:0 0 0 2px var(--bg,#f6f4ef)}
.nt-n[hidden]{display:none}
.nt-p{position:absolute;right:0;top:calc(100% + 8px);z-index:60;width:min(340px,calc(100vw - 24px));background:var(--surface,#fff);border:1px solid var(--line2,#e2ded4);border-radius:16px;box-shadow:0 18px 40px rgba(30,25,15,.18);padding:10px;text-align:left}
.nt-p[hidden]{display:none}
.nt-p h3{margin:4px 6px 8px;font-size:15px;display:flex;align-items:center;justify-content:space-between}.nt-x{border:0;background:none;font-size:22px;line-height:1;cursor:pointer;padding:2px 8px;color:var(--muted,#777)}
.nt-p ul{list-style:none;margin:0;padding:0}
.nt-p li button{display:flex;gap:10px;width:100%;border:0;background:none;text-align:left;padding:9px 8px;border-radius:10px;font:inherit;color:var(--ink);cursor:pointer}
.nt-p li button:hover{background:var(--bg,#f6f4ef)}
.nt-p li button.nove{background:#eef3ff}
.nt-p b{display:block;font-size:13.5px}
.nt-p small{display:block;font-size:12.5px;color:var(--muted);margin-top:1px}
.nt-p em{display:block;font-style:normal;font-size:11.5px;color:var(--muted);margin-top:2px}
.nt-ic{flex:none;font-size:18px;line-height:1.2}
.nt-0{margin:4px 6px 8px;font-size:13px;color:var(--muted)}
.nt-pes{margin:8px 6px 2px;padding-top:8px;border-top:1px solid var(--line,#eee9df);font-size:12.5px;color:var(--muted)}
.nt-pes button{border:0;background:none;color:var(--blue);font:inherit;font-weight:700;cursor:pointer}
.nt-pesb{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line2,#e2ded4);background:var(--surface,#fff);border-radius:999px;padding:6px 12px;font:inherit;font-size:13px;font-weight:700;color:var(--ink);cursor:pointer}
.nt-pesb svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8}
.nt-pesb[aria-pressed="true"]{background:#eef3ff;border-color:var(--blue);color:var(--blue)}
@media (max-width:420px){#home .nt{display:none}}
/* na telefonu panel přes šířku obrazovky (zvoneček je vlevo, panel pak utíkal za okraj) */
@media (max-width:600px){.nt-p{position:fixed;left:12px;right:12px;top:68px;width:auto;max-height:calc(100vh - 96px);overflow:auto}}
/* rádce „architekt na drátě“ v editoru (js/radce.js) */
.radce{position:fixed;left:50%;bottom:calc(104px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);z-index:70;display:flex;gap:12px;align-items:flex-start;width:min(440px,calc(100vw - 24px));background:var(--surface,#fff);border:1px solid var(--line2,#e2ded4);border-left:4px solid var(--blue,#2f6bf2);border-radius:16px;box-shadow:0 16px 40px rgba(30,25,15,.2);padding:12px 14px;animation:radceIn .35s ease-out}
.radce-av{flex:none;font-size:24px;line-height:1}
.radce b{font-size:13px;color:var(--blue,#2f6bf2)}
.radce p{margin:3px 0 8px;font-size:14px;line-height:1.4;color:var(--ink)}
.radce-b{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.radce-vyp{border:0;background:none;color:var(--muted);font:inherit;font-size:12px;cursor:pointer;text-decoration:underline;margin-left:auto}
@keyframes radceIn{from{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%,0)}}
@media (prefers-reduced-motion:reduce){.radce{animation:none}}
/* filtr Styl: paleta barev a popis ke každému stylu */
.fx-opts.fx-styly{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;max-width:460px}
.fx-opts.fx-styly button{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:10px;text-align:left;align-items:center;padding:8px 10px;border-radius:12px}
.fx-opts.fx-styly .fx-pal{grid-row:1/3;display:grid;grid-template-columns:repeat(2,14px);gap:2px;border-radius:7px;overflow:hidden}
.fx-opts.fx-styly .fx-pal i{width:14px;height:14px;display:block}
/* fajfka u vybraného stylu je mimo mřížku, jinak ukradne buňku a název ujede doprava (Tom 28. 10.) */
.fx-opts.fx-styly button{position:relative}
.fx-opts.fx-styly button[aria-pressed="true"]::before{content:"✓";position:absolute;top:6px;right:9px;font-size:13px}
.fx-opts.fx-styly b{font-size:13.5px}
.fx-opts.fx-styly small{font-size:11.5px;color:var(--muted);font-weight:500;line-height:1.3}
@media(max-width:520px){.fx-opts.fx-styly{grid-template-columns:1fr}}
.fx-pop:has(.fx-styly){width:min(560px,calc(100vw - 24px));max-width:none}
.fx-opts.fx-styly{max-width:none}
.fx-opts.fx-styly button>*{justify-self:start}

/* Slavnostní „Dokončit návrh“ (js/dokoncit.js) */
.dk{position:relative;overflow:hidden}
.dk h2{margin:0 0 4px}
.dk-sub{color:var(--mut,#6b6760);margin:0 0 14px}
.dk-konf{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.dk-k{position:absolute;top:-14px;width:8px;height:12px;border-radius:2px;animation:dkPad 2.2s ease-in forwards;opacity:.9}
@keyframes dkPad{to{top:110%;transform:rotate(540deg) translateX(30px);opacity:0}}
.dk-obr{display:grid;place-items:center;aspect-ratio:4/5;max-height:46vh;margin:0 auto 12px;border-radius:14px;background:#eef3e6;overflow:hidden;color:#6b6760}
.dk-obr img{width:100%;height:100%;object-fit:contain;display:block}
.dk-row{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-bottom:16px}
.dk h3{margin:6px 0 8px;font-size:1rem}
.dk-kroky{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.dk-kroky button{text-align:left;border:1px solid var(--line,#e4e0d8);background:var(--card,#fff);border-radius:12px;padding:10px 12px;cursor:pointer;font:inherit;color:inherit}
.dk-kroky button:hover,.dk-kroky button:focus-visible{border-color:#2f6bf2}
.dk-kroky b{display:block;margin-bottom:2px}
.dk-kroky span{font-size:.85rem;color:var(--mut,#6b6760)}
.dk-mi small{display:block;font-size:.78rem;opacity:.7;font-weight:400}
@media (max-width:560px){.dk-kroky{grid-template-columns:1fr}.dk-obr{max-height:38vh}}
.dk-row a.btn{text-decoration:none}
.dk-och{border:1px solid var(--line,#e4e0d8);border-radius:12px;padding:12px 14px;margin:0 0 14px;background:var(--card,#fff)}
.dk-och-h{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-bottom:6px}
.dk-och-h span{font-size:.85rem;color:var(--mut,#6b6760)}
.dk-och ul{list-style:none;margin:0 0 10px;padding:0}
.dk-och li{display:flex;justify-content:space-between;gap:10px;padding:4px 0;border-bottom:1px dashed var(--line,#e4e0d8);font-size:.9rem}
.dk-och li.dk-bl{filter:blur(4px);user-select:none}
@media (max-width:600px){.drow:has(.det-ok){flex-wrap:wrap}.drow .det-ok{flex-basis:100%;order:9;margin:4px 0 0}}
/* Navrhnout dům: pro koho je která cesta (#25) */
.nav-velke .nav-pro{display:inline-block;align-self:flex-start;font-size:11.5px;font-weight:700;color:var(--muted,#6b6760);background:var(--surface-2,#f1f0ec);border-radius:6px;padding:2px 8px;margin:2px 0 6px}
.nav-velke .nav-pro.doporuc{background:#e5f5ea;color:#1d7a3e}
/* Nahrát plánek z úvodu: karta s nahráním krátce zazáří, ať je jasné, kam člověk přišel (#36) */
.ccard.nav-zvyr{animation:navZvyr 1.3s ease-in-out 2}
@keyframes navZvyr{0%,100%{box-shadow:0 0 0 0 rgba(47,107,242,0)}50%{box-shadow:0 0 0 4px rgba(47,107,242,.55)}}
/* vzorník stylu pokoje v levém dolním rohu náhledu */
.fvz{position:absolute;left:8px;bottom:8px;z-index:2;display:flex;flex-direction:column;gap:3px;max-width:62%;padding:6px 8px;border-radius:10px;background:rgba(255,255,255,.86);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 1px 6px rgba(30,30,30,.12);pointer-events:none;text-align:left}
.fvz-b{display:flex;gap:4px}
.fvz-b i{width:16px;height:16px;border-radius:5px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.12)}
.fvz-m{display:flex;align-items:center;gap:5px;font-size:10px;font-weight:700;line-height:1.2;color:#3b3a36;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fvz-m i{flex:none;width:8px;height:8px;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(0,0,0,.15)}
@media(max-width:600px){.fvz{left:6px;bottom:6px;padding:4px 6px;max-width:58%}.fvz-b i{width:12px;height:12px;border-radius:4px}.fvz-m{font-size:9px}.fvz-m+.fvz-m{display:none}}

/* křížek ve vyhledávání katalogu */
.fsearch{position:relative}
.fq-x{flex:none;width:26px;height:26px;margin-left:4px;border:0;border-radius:50%;background:var(--line2,#e2ded4);color:var(--ink);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0}
.fq-x[hidden]{display:none}
.fq-x svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round}
/* položka „Dokončit návrh“ v nabídce Uložit: text se zalamuje, ať se neřeže na úzkém telefonu */
.dk-mi{white-space:normal;flex-wrap:wrap;align-items:flex-start;line-height:1.3;max-width:100%}
.dk-mi small{margin-left:0;padding-left:0;width:100%;white-space:normal}

/* čekání po vyhledání z úvodu (js/uvod.js caka()) */
.h-caka{position:fixed;inset:0;z-index:90;background:#f6f4ef;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:6px;padding:96px 16px 16px}
.h-caka[hidden]{display:none}
.h-caka-t{display:flex;align-items:center;gap:10px;font-size:18px}
.h-caka small{color:#6b675f;font-size:14px;max-width:90vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.h-caka-sp{width:18px;height:18px;border-radius:50%;border:3px solid #d9d4c8;border-top-color:#2f6bff;animation:hcakaspin .8s linear infinite}
.h-caka-k{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;width:min(1100px,100%);margin-top:22px}
.h-caka-k i{display:block;height:230px;border-radius:16px;background:linear-gradient(100deg,#ebe7dd 30%,#f5f2ea 50%,#ebe7dd 70%);background-size:200% 100%;animation:hcakash 1.2s ease-in-out infinite}
@keyframes hcakaspin{to{transform:rotate(360deg)}}
@keyframes hcakash{to{background-position:-200% 0}}
@media (prefers-reduced-motion:reduce){.h-caka-sp,.h-caka-k i{animation:none}}

.nt-vse{margin:6px 0 2px;text-align:center}.nt-vse button{border:0;background:none;font:inherit;font-weight:700;font-size:13px;color:var(--blue,#2f6bf2);cursor:pointer;padding:6px 10px;border-radius:8px}.nt-vse button:hover{background:var(--canvas,#f4f1ea)}
/* Výzvy a odznaky (js/vyzvy.js) */
.vz-box{margin:16px 0 4px}
.vz-box h3,.vz-box .vz-h{display:flex;align-items:center;gap:8px}.vz-box h2.vz-h{font-size:1.17em;margin:1em 0 .6em}
.vz-poc{font-size:12px;font-weight:700;color:var(--muted,#5f6a65);background:var(--panel2,#f3f5f2);border-radius:999px;padding:2px 8px}
.vz-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px}
.vz{display:flex;align-items:center;gap:10px;border:1px solid var(--line,#e4e0d8);background:var(--card,#fff);border-radius:12px;padding:10px 12px}
.vz>div{flex:1;min-width:0}
.vz b{display:block;font-size:14px}
.vz small{display:block;color:var(--muted,#5f6a65);font-size:12.5px;line-height:1.35}
.vz-i{font-size:22px;width:28px;text-align:center;color:var(--faint,#9aa39e)}
.vz-ok{border-color:#e9c44a;background:color-mix(in srgb,#f5c400 9%,var(--card,#fff))}
.vz-ok small{color:#8a6a00}
/* Seznam skříněk kuchyně (js/kuchyn-seznam.js) */
.ks-tab{width:100%;border-collapse:collapse;font-size:14px}
.ks-tab td{padding:6px 4px;border-bottom:1px solid var(--line,#e4e0d8)}
.ks-tab td:first-child{width:68%}
.ks-tab td:nth-child(2),.ks-tab td:nth-child(3){text-align:right;white-space:nowrap;color:var(--muted,#5f6a65)}
