/* CV builder only (builder.html): the download call-to-action, the
   phone download bar, the "start" shortcuts (import / blank) and the
   CV import modal. Kept out of css/builder-shell.css, which the site,
   quote and invoice Shells share. */

/* ---------- Download: the one primary action ---------- */
.cvb-download-cta { display: inline-flex; align-items: center; gap: 6px; flex: none; white-space: nowrap; padding: 0 20px; box-shadow: 0 6px 16px rgba(14,140,140,.28); }
.cvb-download-icon { font-size: 15px; line-height: 1; }

/* Phones: the top bar's download is replaced by a bar pinned under the
   canvas (the last row of the Shell's own full-height column, so it
   never covers the CV itself). The editing drawers (z-index 30) still
   slide over it. */
.cvb-mobile-bar { display: none; }
@media (max-width: 860px) {
  #cvbshell-download-btn { display: none; }
  .cvb-mobile-bar {
    display: flex; align-items: center; gap: 12px; flex: none;
    padding: 10px 14px calc(10px + env(safe-area-inset-bottom, 0px));
    background: var(--surface); border-top: 1px solid var(--border); box-shadow: 0 -6px 18px rgba(16,24,40,.08);
    position: relative; z-index: 20;
  }
  .cvb-mobile-bar .bshell-top-status { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; }
  .cvb-mobile-bar .cvb-download-cta { flex: none; height: 46px; font-size: 15px; padding: 0 26px; }
  .bshell-mobile-tabs .bshell-top-btn { padding: 0 8px; }
  /* A closed drawer's upward shadow peeked over the download bar. */
  #cvbshell-hier:not(.bshell-drawer-open), #cvbshell-props:not(.bshell-drawer-open) { box-shadow: none; }
}
/* Phones: the two big CV-language pills (each half the screen wide) took
   a whole row of the top bar on their own — compact pills share a row
   with undo/redo, so the CV preview gets that height back. */
@media (max-width: 640px) {
  .bshell-top .lang-switch-big { width: auto; gap: 6px; }
  .bshell-top .lang-big { flex: none; height: 40px; padding: 0 14px; gap: 7px; font-size: 13.5px; border-width: 1.5px; box-shadow: none; }
  .bshell-top .lang-big .dot { width: 14px; height: 14px; }
  .bshell-top .lang-big.active .dot::after { inset: 2px; }
}

/* ---------- Start shortcuts (top of the structure list) ---------- */
.cvb-start-card { display: grid; gap: 8px; margin: 0 0 16px; }
.cvb-start-btn {
  display: flex; align-items: center; gap: 10px; width: 100%; box-sizing: border-box; text-align: start;
  background: var(--surface); border: 1.5px dashed var(--border); border-radius: 12px; padding: 10px 12px;
  cursor: pointer; font-family: inherit; color: var(--text); transition: border-color .15s ease, background .15s ease;
}
.cvb-start-btn:hover { border-color: var(--primary); background: var(--primary-light); }
.cvb-start-btn strong { display: block; font-size: 13.5px; }
.cvb-start-btn small { display: block; font-size: 12px; color: var(--text-secondary); margin-top: 1px; }
.cvb-start-icon { font-size: 18px; flex: none; }
.cvb-start-import { border-style: solid; border-color: var(--primary); background: #F0FDFA; }

/* ---------- Style picker additions (js/cv-style-picker.js) ---------- */
.cvb-pick-import { width: 100%; margin-bottom: 14px; border-color: var(--primary) !important; background: #F0FDFA !important; }
.cvb-pick-blank { display: flex; align-items: center; gap: 8px; margin-top: 14px; font-size: 13.5px; color: var(--text-secondary); cursor: pointer; }
.cvb-pick-blank input { width: 16px; height: 16px; accent-color: var(--primary-dark); }

/* ---------- Import modal (js/cv-import.js) ---------- */
.cv-import-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin: -4px 0 12px; flex-wrap: wrap; }
.cv-import-file { position: relative; display: inline-flex; align-items: center; font-size: 13px; font-weight: 600; color: var(--primary-dark); cursor: pointer; border: 1px solid var(--border); border-radius: 999px; padding: 6px 14px; background: var(--surface); }
.cv-import-file:hover { border-color: var(--primary); }
.cv-import-file input { position: absolute; inset: 0; opacity: 0; cursor: pointer; width: 100%; }
.cv-import-count { font-size: 12px; color: var(--text-muted); }
.cv-import-lang { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; font-size: 13.5px; margin-bottom: 10px; }
.cv-import-lang label { display: inline-flex; align-items: center; gap: 5px; cursor: pointer; }
.cv-import-note { font-size: 12.5px; color: var(--text-secondary); margin: 0 0 14px; line-height: 1.6; }
.cv-import-modal textarea:disabled { background: var(--bg); color: var(--text-secondary); }

/* Short confirmation after an import — above the Shell (z-index 5000). */
.cvb-toast {
  position: fixed; z-index: 6000; bottom: calc(24px + env(safe-area-inset-bottom, 0px)); left: 50%; transform: translateX(-50%);
  max-width: calc(100vw - 32px); box-sizing: border-box; background: #111827; color: #fff;
  padding: 12px 18px; border-radius: 12px; font-size: 14px; line-height: 1.5; box-shadow: 0 12px 30px rgba(0,0,0,.25);
}
@media (max-width: 860px) { .cvb-toast { bottom: 84px; } }
