/* Cloudová složka (cloud-folder.js) — jen tokeny z tokens.css (UI-THEME-02), žádné vlastní tmavé větve.
   Společné komponenty: .v2-btn, .v2-pill, .v2-note, .v2-param-option, .v2-table-frame, sdílený picker selectu,
   tooltip (data-v2-tooltip), confirmDialog (UI_VISUAL_STANDARD). */

[data-ui="v2"] .cf-svg { width: 18px; height: 18px; flex: none; }
[data-ui="v2"] .cf-intro { margin: 0 0 var(--sp-5); }
[data-ui="v2"] .cf-note { margin: var(--sp-4) 0; }
[data-ui="v2"] .cf-small { font-size: 12px; }
[data-ui="v2"] .cf-ferr { display: block; margin-top: 4px; color: var(--bad); font-size: 12.5px; }
[data-ui="v2"] [data-cf-providers], [data-ui="v2"] .cf-folders, [data-ui="v2"] .cf-items { margin-top: var(--sp-6); }
[data-ui="v2"] [data-cf-providers] { margin-top: 0; }

/* ---------- výběr poskytovatele: dvě stejně vysoké dlaždice (UI-BAS-03) ---------- */
[data-ui="v2"] .cf-provider-grid {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); gap: var(--sp-4);
  align-items: stretch; margin-top: var(--sp-4);
}
[data-ui="v2"] .cf-provider {
  display: flex; align-items: center; gap: var(--sp-5); min-height: 72px; width: 100%; padding: var(--sp-5) var(--sp-6);
  border: 1px solid var(--line); border-radius: var(--r-lg); background: var(--surface); color: var(--ink);
  font: inherit; text-align: left; cursor: pointer;
}
[data-ui="v2"] .cf-provider:hover:not(:disabled) { border-color: var(--accent-line); background: var(--surface-2); }
[data-ui="v2"] .cf-provider:focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; }
[data-ui="v2"] .cf-provider:disabled { cursor: default; background: var(--surface-2); color: var(--ink-3); }
[data-ui="v2"] .cf-provider:disabled b { color: var(--ink-2); }
[data-ui="v2"] .cf-provider-ico {
  display: inline-grid; place-items: center; width: 40px; height: 40px; flex: none;
  border-radius: var(--r-md); background: var(--info-soft); color: var(--info);
}
[data-ui="v2"] .cf-provider:disabled .cf-provider-ico { background: var(--bg-2); color: var(--ink-3); }
[data-ui="v2"] .cf-provider-ico .cf-svg { width: 22px; height: 22px; }
[data-ui="v2"] .cf-provider-text { display: flex; flex-direction: column; gap: 2px; min-width: 0; flex: 1 1 auto; }
[data-ui="v2"] .cf-provider-text small { color: var(--ink-2); font-size: 12.5px; }
[data-ui="v2"] .cf-provider:disabled .cf-provider-text small { color: var(--ink-3); }
[data-ui="v2"] .cf-provider-go { color: var(--ink-3); }

/* ---------- průvodci připojením ---------- */
[data-ui="v2"] .cf-wizard-head { display: flex; align-items: flex-start; gap: var(--sp-5); flex-wrap: wrap; }
[data-ui="v2"] .cf-wizard-head > div { flex: 1 1 260px; min-width: 0; }
[data-ui="v2"] .cf-wizard-head p { margin: 2px 0 0; }
[data-ui="v2"] .cf-wizard-ico { width: 28px; height: 28px; color: var(--info); margin-top: 2px; }
[data-ui="v2"] .cf-back { flex: none; }
[data-ui="v2"] .cf-steps { list-style: none; margin: var(--sp-5) 0 0; padding: 0; display: flex; flex-direction: column; gap: var(--sp-4); counter-reset: none; }
[data-ui="v2"] .cf-step {
  border: 1px solid var(--line); border-radius: var(--r-lg); background: var(--surface); padding: var(--sp-5) var(--sp-6);
  display: flex; flex-direction: column; gap: var(--sp-3); min-width: 0;
}
[data-ui="v2"] .cf-step > p { margin: 0; }
[data-ui="v2"] .cf-step.is-locked { background: var(--surface-2); }
[data-ui="v2"] .cf-step.is-locked .cf-step-head b { color: var(--ink-2); }
[data-ui="v2"] .cf-step-head { display: flex; align-items: center; gap: var(--sp-4); }
[data-ui="v2"] .cf-step-no {
  display: inline-grid; place-items: center; width: 26px; height: 26px; flex: none; border-radius: 50%;
  background: var(--bg-2); color: var(--ink-2); font: 700 13px/1 var(--font-sans);
}
[data-ui="v2"] .cf-step-no.is-done { background: var(--ok-soft); color: var(--ok); }
[data-ui="v2"] .cf-step-no .icon { font-size: 16px; }
[data-ui="v2"] .cf-pick-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); gap: var(--sp-5); }
[data-ui="v2"] .cf-pick { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
[data-ui="v2"] .cf-pick > label, [data-ui="v2"] .cf-gurl > label, [data-ui="v2"] .cf-newname > label, [data-ui="v2"] .cf-admin .pcell > label { font-weight: 600; font-size: 13px; color: var(--ink); }
[data-ui="v2"] .cf-site-search { display: flex; gap: var(--sp-3); margin-top: var(--sp-2); }
[data-ui="v2"] .cf-site-search .v2-input { flex: 1 1 auto; min-width: 0; }
[data-ui="v2"] .cf-site-search .v2-btn { flex: none; }

/* procházení složek knihovny */
[data-ui="v2"] .cf-crumbs { display: flex; flex-wrap: wrap; align-items: center; gap: 2px var(--sp-2); font-size: 13px; }
[data-ui="v2"] .cf-crumb.is-current { font-weight: 600; color: var(--ink); }
[data-ui="v2"] .cf-crumb-sep { font-size: 16px; color: var(--ink-3); }
[data-ui="v2"] .cf-folder-list {
  display: flex; flex-direction: column; border: 1px solid var(--line); border-radius: var(--r-md);
  max-height: 320px; overflow: auto; background: var(--surface);
}
[data-ui="v2"] .cf-folder-row {
  display: flex; align-items: center; flex-wrap: wrap; gap: var(--sp-3) var(--sp-4); padding: var(--sp-3) var(--sp-5);
  border-bottom: 1px solid var(--line);
}
[data-ui="v2"] .cf-folder-row:last-child { border-bottom: 0; }
[data-ui="v2"] .cf-folder-row.selected { background: var(--info-soft); }
[data-ui="v2"] .cf-folder-pick { display: flex; align-items: center; gap: var(--sp-3); flex: 1 1 220px; min-width: 0; cursor: pointer; min-height: 32px; }
[data-ui="v2"] .cf-folder-pick > span:last-child { display: flex; flex-direction: column; min-width: 0; }
[data-ui="v2"] .cf-folder-pick b { font-weight: 600; overflow-wrap: anywhere; }
[data-ui="v2"] .cf-folder-pick .cf-svg, [data-ui="v2"] .cf-folder-pick .icon { color: var(--ink-2); }
[data-ui="v2"] .cf-folder-open { flex: none; }
[data-ui="v2"] .cf-newname { flex: 1 1 100%; display: flex; flex-direction: column; gap: 4px; padding-left: 30px; max-width: 460px; }
[data-ui="v2"] .cf-folder-empty { margin: 0; padding: var(--sp-4) var(--sp-5); }
[data-ui="v2"] .cf-existing { margin: 0; }

/* Google: adresa pro sdílení a návod */
[data-ui="v2"] .cf-share { display: inline-flex; align-items: center; gap: var(--sp-3); flex-wrap: wrap; min-width: 0; }
[data-ui="v2"] .cf-share-email, [data-ui="v2"] .cf-redirect { overflow-wrap: anywhere; font-weight: 600; color: var(--ink); }
[data-ui="v2"] .cf-howto { margin: 0; padding-left: 22px; display: flex; flex-direction: column; gap: var(--sp-2); font-size: 13px; line-height: 1.5; color: var(--ink); }
[data-ui="v2"] .cf-gurl { display: flex; flex-direction: column; gap: 4px; max-width: 640px; }
[data-ui="v2"] .cf-missing { margin: 0; padding-left: 22px; }

/* ---------- připojeno: stav, umístění, údaje, akce ---------- */
[data-ui="v2"] .cf-status {
  display: flex; align-items: flex-start; gap: var(--sp-4); padding: var(--sp-5) var(--sp-6);
  border: 1px solid var(--line); border-radius: var(--r-lg); background: var(--surface-2);
}
[data-ui="v2"] .cf-light { width: 12px; height: 12px; border-radius: 50%; flex: none; margin-top: 4px; background: var(--ink-3); box-shadow: 0 0 0 3px var(--bg-2); }
[data-ui="v2"] .cf-tone-ok { border-color: var(--ok); background: var(--ok-soft); }
[data-ui="v2"] .cf-tone-ok .cf-light { background: var(--ok); box-shadow: 0 0 0 3px var(--surface); }
[data-ui="v2"] .cf-tone-warn { border-color: var(--warn); background: var(--warn-soft); }
[data-ui="v2"] .cf-tone-warn .cf-light { background: var(--warn); box-shadow: 0 0 0 3px var(--surface); }
[data-ui="v2"] .cf-tone-bad { border-color: var(--bad); background: var(--bad-soft); }
[data-ui="v2"] .cf-tone-bad .cf-light { background: var(--bad); box-shadow: 0 0 0 3px var(--surface); }
[data-ui="v2"] .cf-status-text { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
[data-ui="v2"] .cf-status-text b { color: var(--ink); }
[data-ui="v2"] .cf-status-text .t-meta { color: var(--ink-2); }
[data-ui="v2"] .cf-where { display: flex; align-items: center; gap: var(--sp-4); flex-wrap: wrap; margin-top: var(--sp-5); }
[data-ui="v2"] .cf-where-ico { display: inline-grid; place-items: center; width: 36px; height: 36px; border-radius: var(--r-md); background: var(--info-soft); color: var(--info); flex: none; }
[data-ui="v2"] .cf-where-text { display: flex; flex-direction: column; min-width: 0; flex: 1 1 240px; }
[data-ui="v2"] .cf-path { overflow-wrap: anywhere; color: var(--ink); }
[data-ui="v2"] .cf-open { flex: none; text-decoration: none; }
[data-ui="v2"] .cf-facts {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 170px), 1fr)); gap: var(--sp-4);
  margin: var(--sp-5) 0 0; align-items: stretch;
}
[data-ui="v2"] .cf-facts > div { border: 1px solid var(--line); border-radius: var(--r-md); padding: var(--sp-4) var(--sp-5); background: var(--surface); min-width: 0; }
[data-ui="v2"] .cf-facts dt { font-size: 12px; color: var(--ink-2); margin: 0 0 2px; }
[data-ui="v2"] .cf-facts dd { margin: 0; font-weight: 600; color: var(--ink); }
[data-ui="v2"] .cf-break { overflow-wrap: anywhere; }
[data-ui="v2"] .cf-created { margin: var(--sp-3) 0 0; }
[data-ui="v2"] .cf-actions { display: flex; flex-wrap: wrap; gap: var(--sp-3); margin-top: var(--sp-5); }
[data-ui="v2"] .cf-btn-svg { width: 16px; height: 16px; flex: none; }

/* čtyři podsložky */
[data-ui="v2"] .cf-folder-grid {
  list-style: none; margin: var(--sp-4) 0 0; padding: 0;
  display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 210px), 1fr)); gap: var(--sp-4); align-items: stretch;
}
[data-ui="v2"] .cf-subfolder { display: flex; gap: var(--sp-4); align-items: flex-start; padding: var(--sp-4) var(--sp-5); border: 1px solid var(--line); border-radius: var(--r-md); background: var(--surface); min-width: 0; }
[data-ui="v2"] .cf-subfolder > span { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
[data-ui="v2"] .cf-subfolder small { color: var(--ink-2); font-size: 12.5px; line-height: 1.45; }
[data-ui="v2"] .cf-subfolder .cf-svg { color: var(--ink-2); margin-top: 1px; }
[data-ui="v2"] .cf-sub-intake .cf-svg { color: var(--info); }
[data-ui="v2"] .cf-sub-archive .cf-svg { color: var(--ok); }

/* ---------- tabulka posledních souborů ---------- */
[data-ui="v2"] .cf-items-head { display: flex; align-items: flex-end; justify-content: space-between; gap: var(--sp-4); flex-wrap: wrap; margin-bottom: var(--sp-4); }
[data-ui="v2"] .cf-items-head p { margin: 2px 0 0; }
[data-ui="v2"] .cf-ignored { display: flex; align-items: center; gap: var(--sp-3); flex-wrap: wrap; }
[data-ui="v2"] .cf-items-frame { background: var(--surface); --v2-table-frame-height: min(520px, max(260px, calc(100dvh - var(--header-h) - 200px))); }
[data-ui="v2"] .cf-items-frame .v2-table-viewport { position: relative; }
[data-ui="v2"] .cf-table { width: 100%; min-width: 760px; border-collapse: separate; border-spacing: 0; }
[data-ui="v2"] .cf-table thead th {
  padding: 9px var(--sp-5); text-align: left; white-space: nowrap; border-bottom: 1px solid var(--line);
  font: 700 12px/1.3 var(--font-sans); letter-spacing: .05em; text-transform: uppercase; color: var(--ink-2); background: var(--surface-2);
}
[data-ui="v2"] .cf-table tbody td { padding: 7px var(--sp-5); border-bottom: 1px solid var(--line); vertical-align: top; font: 400 13px/1.4 var(--font-sans); color: var(--ink); }
[data-ui="v2"] .cf-table tbody tr:last-child td { border-bottom: 0; }
[data-ui="v2"] .cf-table td small { display: block; margin-top: 2px; font-size: 12px; }
[data-ui="v2"] .cf-table td.empty { color: var(--ink-2); text-align: center; padding: var(--sp-6); }
[data-ui="v2"] .cf-c-file { max-width: 280px; }
[data-ui="v2"] .cf-file { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 600; }
[data-ui="v2"] .cf-c-state { white-space: nowrap; }
[data-ui="v2"] .cf-c-reason { min-width: 200px; color: var(--ink-2); }
[data-ui="v2"] .cf-c-who { max-width: 220px; overflow-wrap: anywhere; }
[data-ui="v2"] .cf-who.is-external { font-weight: 600; }
[data-ui="v2"] .cf-c-doc { white-space: nowrap; }
[data-ui="v2"] .cf-c-path { max-width: 260px; overflow-wrap: anywhere; }
[data-ui="v2"] .cf-doclink { display: inline-flex; align-items: center; gap: 5px; color: var(--accent-text); text-decoration: none; border-radius: var(--r-xs); min-height: 24px; }
[data-ui="v2"] .cf-doclink:hover { text-decoration: underline; }
[data-ui="v2"] .cf-doclink:focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; }
[data-ui="v2"] .cf-doclink .icon { font-size: 16px; }
[data-ui="v2"] .cf-empty { display: flex; flex-direction: column; align-items: center; gap: var(--sp-2); padding: var(--sp-6) var(--sp-5); color: var(--ink-2); text-align: center; }
[data-ui="v2"] .cf-empty .cf-svg { width: 28px; height: 28px; color: var(--info); }
[data-ui="v2"] .cf-empty b { color: var(--ink); }
[data-ui="v2"] .cf-empty p { margin: 0; }

/* ---------- SuperAdmin: karta integrace ---------- */
[data-ui="v2"] .cf-admin-head { display: flex; align-items: center; justify-content: space-between; gap: var(--sp-4); }
[data-ui="v2"] .cf-admin-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 380px), 1fr)); gap: var(--sp-5); align-items: stretch; margin-top: var(--sp-4); }
[data-ui="v2"] .cf-admin-block { display: flex; flex-direction: column; gap: var(--sp-4); border: 1px solid var(--line); border-radius: var(--r-lg); padding: var(--sp-5) var(--sp-6); background: var(--surface); min-width: 0; }
[data-ui="v2"] .cf-admin-block .pcell { display: flex; flex-direction: column; gap: 4px; }
[data-ui="v2"] .cf-admin-bhead { display: flex; align-items: center; gap: var(--sp-3); flex-wrap: wrap; }
[data-ui="v2"] .cf-admin-bhead .cf-svg { color: var(--info); }
[data-ui="v2"] .cf-admin-bhead b { flex: 1 1 auto; }
[data-ui="v2"] .cf-inline { display: flex; gap: var(--sp-3); align-items: center; flex-wrap: wrap; }
[data-ui="v2"] .cf-inline .v2-input { flex: 1 1 240px; min-width: 0; }
[data-ui="v2"] .cf-admin-row { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
[data-ui="v2"] .cf-admin-actions { display: flex; gap: var(--sp-3); flex-wrap: wrap; }
[data-ui="v2"] .cf-admin-actions a.v2-btn { text-decoration: none; }
[data-ui="v2"] .cf-problems { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: var(--sp-2); }
[data-ui="v2"] .cf-problems li { display: flex; gap: var(--sp-2); align-items: flex-start; font-size: 13px; color: var(--ink); }
[data-ui="v2"] .cf-problems .icon { color: var(--warn); font-size: 17px; }
[data-ui="v2"] .cf-facts-admin { margin-top: 0; }
[data-ui="v2"] .cf-admin-subtitle { margin: var(--sp-6) 0 var(--sp-4); }

/* ---------- štítek zdroje „Cloudová složka“ ve Frontě a Dokladech (v2.js) ---------- */
[data-ui="v2"] .v2-cloudsrc { display: inline-flex; align-items: center; gap: 5px; min-width: 0; }
[data-ui="v2"] .v2-cloudsrc .cf-src-svg { width: 15px; height: 15px; flex: none; }

@media (max-width: 560px) {
  [data-ui="v2"] .cf-step { padding: var(--sp-4) var(--sp-5); }
  [data-ui="v2"] .cf-newname { padding-left: 0; }
  [data-ui="v2"] .cf-site-search { flex-wrap: wrap; }
}
@media (pointer: coarse) {
  [data-ui="v2"] .cf-folder-pick { min-height: 40px; }
  [data-ui="v2"] .cf-doclink { min-height: 40px; }
}
[data-ui="v2"] .cf-admin input[type="file"].v2-input { padding: 5px var(--sp-3); }
[data-ui="v2"] .cf-admin input[type="file"]::file-selector-button {
  margin-right: var(--sp-4); padding: 4px var(--sp-5); border: 1px solid var(--line); border-radius: var(--r-sm);
  background: var(--surface-2); color: var(--ink); font: 600 12.5px/1.4 var(--font-sans); cursor: pointer;
}
