/* diaspora.ro source-first module extracted from #cv-mobile-pro; behavior preserved during migration. */
/* ═══════════════════════════════════════════════════
   CV BUILDER — MOBILE PRO STYLES (max-width:900px)
   Stil exclusiv mobil: alb/light, layout curat
   ═══════════════════════════════════════════════════ */
@media(max-width:900px){
  html,body{background:#f1f5f9;color:#0f172a;overflow-x:hidden}
  a{color:#0B2559}
  .wrap{padding:8px 10px 110px;max-width:100%}
  h1{font-size:17px;color:#0f172a;margin:10px 0 4px}
  .lead{font-size:12px;color:#64748b;margin:0 0 10px}

  /* Tabs */
  .cv-type-tabs{gap:4px;margin-bottom:10px;flex-wrap:nowrap;overflow-x:auto}
  .cv-type-tab{padding:9px 12px;font-size:12px;flex:1;text-align:center;white-space:nowrap}

  /* Toolbar */
  .tbv2{gap:5px;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:2px 0 8px}
  .tbv2::-webkit-scrollbar{display:none}
  .tbv2-primary{padding:11px 14px;font-size:12.5px;border-radius:9px}
  .tbv2-dd-btn{padding:10px 10px;font-size:12px;border-radius:9px;background:#fff;border:1px solid #e2e8f0;color:#374151}
  .tbv2-dd.open .tbv2-dd-btn{background:#f1f5f9;border-color:#94a3b8}
  .tbv2-voice{padding:11px 12px}
  .tbv2-dd-btn span:first-of-type{display:inline}
  .tbv2-menu{background:#fff;border-color:#e2e8f0;min-width:190px;left:0;box-shadow:0 16px 48px rgba(0,0,0,.15)}
  .tbv2-menu button,.tbv2-menu a{color:#374151}
  .tbv2-menu button:hover,.tbv2-menu a:hover{background:#f1f5f9;color:#0f172a}
  .tbv2-menu-sep{background:#e2e8f0}
  .tbv2-menu-voice{color:#dc2626}
  .tbv2-menu-danger{color:#dc2626}

  /* Mode switch */
  #cv-mode-switch{margin:8px 0 10px}
  .cv-mode-btn{padding:10px 10px}
  .cv-mode-btn strong{font-size:13px;color:#0f172a}
  .cv-mode-btn small{font-size:10px}
  .cv-mode-icon{width:32px;height:32px;font-size:16px}

  /* Form panel — alb pe mobil */
  .panel{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:14px;color:#0f172a;box-shadow:0 1px 6px rgba(0,0,0,.06)}
  .panel h2{color:#0f172a;font-size:15px;margin:0 0 12px}
  .panel label,.hint{color:#374151}
  .panel input,.panel select,.panel textarea{background:#f8fafc;border:1px solid #e2e8f0;color:#0f172a;font-size:14.5px;padding:10px 12px;border-radius:9px}
  .panel input:focus,.panel select:focus,.panel textarea:focus{border-color:#0B2559;background:#fff;outline:none}
  .panel .btn{background:linear-gradient(135deg,#0B2559,#1D3A8A);color:#fff;border:none}
  .panel .btn.ghost{background:#f1f5f9;color:#0B2559;border:1px solid #e2e8f0}
  .panel .btn.warn{background:linear-gradient(135deg,#CE1126,#b91c1c);color:#fff}
  .entry{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px}
  .section-order-item{background:#f8fafc;border:1px solid #e2e8f0;color:#0f172a}

  /* Grid on one column */
  .row2{grid-template-columns:1fr;gap:8px}
  .row5{grid-template-columns:1fr 1fr;gap:6px}

  /* Preview */
  .preview-wrap{background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 1px 6px rgba(0,0,0,.06)}
  .preview-header{background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:10px 14px}
  .preview-header-title{color:#0f172a;font-size:13px;font-weight:700}
  #preview-outer{background:#e2e8f0;min-height:55vh}

  /* Completeness + ATS */
  .cv-complete{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:10px 14px;margin:8px 0}
  .cv-complete-top,.cv-complete-tip{color:#374151}
  .ats-panel{background:#fff;border:1px solid #e2e8f0;border-radius:12px}
  .ats-title{color:#0f172a}.ats-subtitle{color:#64748b}
  .ats-body{background:#fff}
  .ats-good,.ats-tip{background:#f8fafc;border:1px solid #e2e8f0}

  /* Bottom navigation */
  .mob-nav{position:fixed;bottom:0;left:0;right:0;width:100%;box-sizing:border-box;z-index:500;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:#fff;border-top:1.5px solid #e2e8f0;box-shadow:0 -4px 16px rgba(0,0,0,.12)}
  .mob-nav-btn{flex:1 1 0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:8px 4px 10px;width:100%;min-width:0;box-sizing:border-box;border:none;background:none;color:#64748b;font-size:10.5px;font-weight:600;cursor:pointer;font-family:inherit;min-height:56px;touch-action:manipulation}
  .mob-nav-btn.active{color:#0B2559}
  #mob-btn-preview{color:#0B2559}
  #mob-btn-preview svg{stroke:#0B2559}
  .mob-nav-btn svg{flex-shrink:0}
  .mob-nav-voice{background:linear-gradient(135deg,#CE1126,#b91c1c);color:#fff;border-radius:0;box-shadow:none}
  .mob-nav-voice.active,.mob-nav-voice:focus{color:#fff}
  #mob-voice-fab{position:relative;justify-self:center;margin-top:-16px;border-radius:50%;width:56px;height:56px;min-width:56px;flex:0 0 56px;box-shadow:0 4px 14px rgba(206,17,38,.4)}

  /* Tab switching helpers */
  #form-panel.mob-hidden{display:none}
  .preview-wrap.mob-hidden{display:none}

  /* Guided builder — single column */
  .cv-guided-layout{grid-template-columns:1fr;gap:12px}
  .cv-guided-steps{display:none}
  .cv-guided-preview{display:none}
  .cv-guided-card{padding:16px}

  /* Color picker */
  .color-pick-wrap{flex-direction:column;gap:8px}
  .color-swatches{gap:6px}
  .color-swatch{width:28px;height:28px}

  /* Lang table scrollable */
  .lang-table{overflow-x:auto;-webkit-overflow-scrolling:touch}

  /* Topbar pe mobil */
  header.dh{background:#fff;border-bottom:1px solid #e2e8f0}
  .dh-logo-name{color:#0f172a;-webkit-text-fill-color:#0f172a}
  .dh-link{color:#374151}
  /* Pasul 1: contactele scurte rămân lizibile și nu lungesc inutil cardul pe telefon. */
  .cv-guided-contact-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:10px;row-gap:10px}
  .cv-guided-contact-grid .cv-question:nth-child(7),.cv-guided-contact-grid .cv-question:nth-child(8){grid-column:1/-1}
}
@media(max-width:360px){
  .cv-guided-contact-grid{grid-template-columns:1fr}
  .cv-guided-contact-grid .cv-question:nth-child(7),.cv-guided-contact-grid .cv-question:nth-child(8){grid-column:auto}
}

/* Sprint 7 — FAQ static, vizibil pentru utilizatori și crawlere */
.cv-seo-faq{margin:0 0 18px;padding:22px 24px;background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 8px 24px rgba(15,23,42,.05)}
.cv-seo-faq-heading{margin-bottom:12px}.cv-seo-faq-kicker{text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:800;color:#2563eb}.cv-seo-faq h2{margin:3px 0 5px;font-size:20px;line-height:1.2;color:#0f172a}.cv-seo-faq-heading p{margin:0;color:#64748b;font-size:13px}
.cv-seo-faq-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.cv-seo-faq details{border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc;padding:11px 13px}.cv-seo-faq summary{cursor:pointer;color:#0f172a;font-size:13px;font-weight:750;list-style-position:inside}.cv-seo-faq details p{margin:8px 0 1px;color:#475569;font-size:12px;line-height:1.55}.cv-seo-faq details[open]{background:#fff;border-color:#bfdbfe}
@media(max-width:700px){.cv-seo-faq{padding:17px 15px;border-radius:14px}.cv-seo-faq-list{grid-template-columns:1fr}.cv-seo-faq h2{font-size:18px}}

/* Sprint 8 / photo editor — local, mobile-first */
.photo-action-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.photo-action-row .btn{margin:0;font-size:11px;padding:5px 8px}.photo-action-row .btn.primary{background:#0B2559;color:#fff;border-color:#0B2559}
#photo-editor-overlay{display:none;position:fixed;inset:0;z-index:10050;background:rgba(5,10,25,.78);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);align-items:center;justify-content:center;padding:14px}
#photo-editor-overlay.open{display:flex}.photo-editor-card{width:min(100%,560px);max-height:calc(100dvh - 28px);overflow:auto;background:#fff;border-radius:20px;box-shadow:0 24px 80px rgba(0,0,0,.35);padding:18px;color:#0f172a}.photo-editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.photo-editor-head h2{margin:0;font-size:18px;line-height:1.2;color:#0f172a}.photo-editor-head p{margin:4px 0 0;font-size:12px;color:#64748b}.photo-editor-close{border:0;background:#f1f5f9;color:#475569;width:32px;height:32px;border-radius:9px;cursor:pointer;font-size:18px}
.photo-editor-stage{display:flex;justify-content:center;background:#eef2f7;border-radius:14px;padding:12px;margin-bottom:14px}.photo-editor-stage canvas{display:block;width:min(100%,360px);height:auto;max-height:48dvh;border-radius:10px;box-shadow:0 8px 24px rgba(15,23,42,.18);background:#fff}.photo-editor-controls{display:grid;gap:10px}.photo-editor-control{display:grid;grid-template-columns:105px 1fr 42px;gap:9px;align-items:center;font-size:12px;color:#334155}.photo-editor-control input[type=range]{width:100%;accent-color:#0B2559}.photo-editor-control output{text-align:right;font-variant-numeric:tabular-nums;color:#64748b;font-size:11px}.photo-editor-section-label{font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:#64748b;margin-top:2px}.photo-bg-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:7px}.photo-bg-option{min-height:39px;border:2px solid transparent;border-radius:9px;cursor:pointer;position:relative}.photo-bg-option.active{border-color:#0B2559;box-shadow:0 0 0 2px rgba(11,37,89,.16)}.photo-bg-option span{position:absolute;inset:auto 0 3px;text-align:center;font-size:9px;color:#334155;font-weight:700;text-shadow:0 1px 3px rgba(255,255,255,.9)}.photo-editor-rotate{display:flex;gap:7px}.photo-editor-rotate button{flex:1;padding:8px;border:1px solid #e2e8f0;border-radius:9px;background:#f8fafc;color:#334155;font:700 12px inherit;cursor:pointer}.photo-editor-actions{display:flex;gap:8px;margin-top:14px}.photo-editor-actions button{flex:1;min-height:42px;border-radius:10px;border:1px solid #e2e8f0;font:800 13px inherit;cursor:pointer}.photo-editor-actions .photo-save{background:#0B2559;color:#fff;border-color:#0B2559}.photo-editor-actions .photo-reset{background:#f8fafc;color:#475569}@media(max-width:460px){#photo-editor-overlay{padding:0;align-items:flex-end}.photo-editor-card{border-radius:20px 20px 0 0;padding:16px;max-height:94dvh}.photo-editor-stage canvas{max-height:38dvh}.photo-bg-grid{grid-template-columns:repeat(3,1fr)}.photo-editor-control{grid-template-columns:92px 1fr 38px}}
