/* ===========================================================
   Vlastní rozšíření webu SOLIDBRO
   (formuláře, pop-up okno referencí, stránka GDPR)
   Načítá se po základním style.css.
   =========================================================== */

/* --- potvrzovací / chybové hlášky --- */
.flash{border-radius:14px;padding:14px 18px;font-weight:800;line-height:1.45;text-align:left}
.flash-ok{background:#e3f7ec;color:#0a7a3f;border:1px solid #b6e6c9}
.flash-err{background:#fdeaea;color:#c0392b;border:1px solid #f3c4c4}

/* --- pop-up okno (přidání zkušenosti) --- */
dialog.modal{border:0;border-radius:20px;padding:32px 34px 30px;max-width:480px;width:calc(100% - 36px);
  box-shadow:0 30px 80px rgba(7,22,53,.4);color:#071635}
dialog.modal::backdrop{background:rgba(10,18,38,.62);backdrop-filter:blur(4px)}
dialog.modal h2{font-size:28px;margin:0 30px 4px 0;letter-spacing:-.03em}
.modal-sub{color:#53627c;margin:0 0 20px}

/* malý křížek vpravo nahoře (ne velký button) */
.modal-close{position:absolute;top:14px;right:16px;margin:0;padding:0;border:0;background:transparent;box-shadow:none}
.modal-close button{width:36px;height:36px;min-width:0;padding:0;background:#eef4ff;color:#53627c;border:0;
  border-radius:10px;box-shadow:none;font-size:22px;line-height:1;cursor:pointer;display:grid;place-items:center}
.modal-close button:hover{background:#0657ff;color:#fff;animation:none}

/* formulář v pop-upu: popisky NAD poli, všechna pole stejně široká přes celý box */
.modal-form{display:grid;gap:15px;padding:0;border:0;box-shadow:none;background:transparent}
.modal-form label{display:flex;flex-direction:column;gap:7px;font-weight:800;font-size:15px;text-align:left;color:#071635}
.modal-form label em{color:#8a96ad;font-weight:600;font-style:normal}
.modal-form input,.modal-form select,.modal-form textarea{width:100%}
.modal-form textarea{min-height:120px}
.modal-form button[type=submit]{width:100%;margin-top:6px;cursor:pointer}

/* --- souhlas se zpracováním osobních údajů (zatržítko) --- */
.consent{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:10px;
  font-weight:600!important;font-size:14px;color:#53627c;text-align:left;line-height:1.45}
.consent input[type=checkbox]{-webkit-appearance:checkbox;appearance:checkbox;width:18px;height:18px;min-width:18px;
  padding:0;margin:2px 0 0;background:#fff;flex:0 0 auto;accent-color:#0657ff;cursor:pointer}
.consent a{color:#0657ff;text-decoration:underline;font-weight:800}

/* --- box "Přidat zkušenost" v referencích --- */
.review-cta{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:6px}
.review-cta h3{margin:0;font-size:20px}
.review-cta p{margin:0 0 10px;color:#53627c}
.review-cta button{border:0;padding:14px 26px;cursor:pointer}

/* --- patička: odkaz na zpracování osobních údajů --- */
.foot-meta{display:flex;flex-direction:column;gap:4px}
.foot-meta p{margin:0}
.foot-meta a{color:#d9e5ff;text-decoration:underline}
.foot-meta a:hover{color:#fff}

/* --- stránka Zpracování osobních údajů --- */
.legal{max-width:820px;margin:0 auto;padding:64px 28px 90px;color:#071635}
.legal h1{font-size:40px;letter-spacing:-.04em;margin:0 0 16px}
.legal-lead{font-size:19px;color:#53627c;line-height:1.6;margin:0 0 30px}
.legal h2{font-size:22px;margin:36px 0 10px;letter-spacing:-.02em}
.legal p,.legal li{color:#3a465c;line-height:1.65}
.legal ul{padding-left:22px}
.legal li{margin:6px 0}
.legal a{color:#0657ff;text-decoration:underline}
.legal-note{font-size:14px;color:#8a96ad;margin-top:30px}
.legal-back{display:inline-block;margin-top:18px;font-weight:800;color:#0657ff;text-decoration:underline}

@media(max-width:1000px){
  dialog.modal{padding:24px 22px}
  .legal{padding:44px 20px 70px}
  .legal h1{font-size:32px}
}

/* === mobilní hamburger menu === */
.nav-toggle{display:none}
.nav-overlay{display:none}

@media(max-width:1000px){
  /* hlavička: logo vlevo (menší), hamburger vpravo */
  .header{flex-direction:row;height:auto;position:sticky;top:0;z-index:70;
    justify-content:space-between;align-items:center;gap:0;padding:12px 18px;background:#fff}
  .brand img{height:52px}

  .nav-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;
    width:46px;height:46px;padding:0 11px;background:transparent;border:0;box-shadow:none;
    cursor:pointer;position:relative;z-index:71}
  .nav-toggle:hover{animation:none}
  .nav-toggle span{display:block;width:24px;height:3px;background:#071635;border-radius:3px;transition:.25s}
  body.nav-open .nav-toggle span:nth-child(1){transform:translateY(8px) rotate(45deg)}
  body.nav-open .nav-toggle span:nth-child(2){opacity:0}
  body.nav-open .nav-toggle span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}

  /* vyjíždějící panel zprava */
  .header nav{position:fixed;top:0;right:0;height:100vh;width:min(82vw,300px);
    flex-direction:column;justify-content:flex-start;align-items:stretch;gap:4px;
    background:#fff;box-shadow:-14px 0 44px rgba(7,22,53,.2);
    padding:86px 24px 28px;transform:translateX(100%);transition:transform .3s ease;z-index:60}
  body.nav-open .header nav{transform:translateX(0)}
  .header nav a{padding:15px 8px;font-size:18px;border-bottom:1px solid #eef1f7}

  /* ztmavený překryv zbytku stránky */
  .nav-overlay{display:block;position:fixed;inset:0;background:rgba(7,22,53,.5);
    z-index:55;opacity:0;pointer-events:none;transition:opacity .3s}
  body.nav-open .nav-overlay{opacity:1;pointer-events:auto}
  body.nav-open{overflow:hidden}

  /* patička: logo nahoře, copyright + odkaz pod ním */
  footer{flex-direction:column;align-items:flex-start;gap:16px;padding:30px 24px}
  footer img{height:46px}
  .foot-meta{gap:6px}
}
