/*
 * Botframe 2000 — stilark for boten.
 *
 * Hentet ordrett fra forklar-meg-embed.html, som er fasit for hvordan boten
 * skal se ut og oppføre seg. Endrer du noe her, må du endre det samme i malen
 * (includes/template.php), som bygger inn dette stilarket i kopier-HTML-utdata.
 *
 * Kjør `php tools/diff-markup.php` etter endringer.
 *
 * Alle regler er prefikset .nafo-bot slik at ingenting lekker ut i temaet.
 */

.nafo-bot{
  --nafo-dark:#2A2A2A;
  --nafo-red:#8b0021;
  --text:#1f2937;
  --muted:#6b7280;
  --card-bg:#fff;
  --line:rgba(42,42,42,.14);
  --line-soft:rgba(42,42,42,.08);
  --shadow:0 6px 18px rgba(0,0,0,.06);
  --radius:14px;
  margin:0 auto;padding:1rem;width:100%;max-width:800px;
}
.nafo-bot .card{background:var(--card-bg);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;}
.nafo-bot .top{padding:1rem 1rem .75rem;border-bottom:1px solid var(--line-soft);background:linear-gradient(180deg,#f7f8fc,rgba(255,255,255,0) 70%);}
.nafo-bot .top-header{display:flex;gap:.85rem;align-items:center;margin-bottom:1rem;}
.nafo-bot .avatar,.nafo-bot .summary-icon{max-width:none;height:auto;}
.nafo-bot .avatar{width:64px;height:64px;border-radius:10%;object-fit:cover;border:2px solid #fff;outline:2px solid var(--nafo-dark);flex:0 0 64px;}
.nafo-bot h2{margin:0;font-size:1.15rem;line-height:1.2;color:var(--text);font-weight:600;}
.nafo-bot p.lead{margin:.25rem 0 0;color:var(--muted);font-size:.98rem;}
.nafo-bot .body{padding:1rem;background:#fff;}
.nafo-bot .iframe-wrap{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff;}

/* «Andre assistenter»: valgfrie lenker under boten.
   AVVIK FRA FASITFILA, avtalt: elektro-botene lenker til hverandre. Reglene er
   hentet fra .assistant-card i den gamle markupen. De håndtegnede SVG-ikonene
   er utelatt — de lå ikke i mediebiblioteket. */
.nafo-bot .assistants{margin:1rem 0 0;}
.nafo-bot .assistants h3{
  text-align:center;color:var(--muted);font-size:.8rem;margin:0 0 .5rem;
  font-weight:500;text-transform:uppercase;letter-spacing:.5px;
}
.nafo-bot .assistants ul{
  list-style:none;margin:0 auto;padding:0;
  display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;max-width:400px;
}
.nafo-bot .assistants li{margin:0;flex:1 1 auto;}
.nafo-bot .assistants a{
  display:block;text-align:center;text-decoration:none;
  background:#fff;border:1px solid var(--line);border-radius:6px;
  padding:.5rem .8rem;color:var(--text);font-weight:500;font-size:.85rem;
  transition:border-color .2s ease,box-shadow .2s ease;
}
.nafo-bot .assistants a:hover{border-color:var(--nafo-red);box-shadow:0 2px 8px rgba(139,0,33,.12);}
.nafo-bot .assistants a:focus-visible{outline:3px solid var(--nafo-red);outline-offset:2px;}

@media (prefers-reduced-motion:reduce){
  .nafo-bot .assistants a{transition:none;}
}
.nafo-bot iframe{display:block;width:100%;height:min(70vh,900px);border:0;}

/* Informasjon (samme innhold på desktop og mobil, kun ulik styling av knappen) */
.nafo-bot details.disclosure{margin:0;border:1px solid var(--line);border-radius:10px;background:#fff;}
.nafo-bot details.disclosure summary{
  list-style:none;cursor:pointer;padding:.75rem 1rem;
  display:flex;align-items:center;gap:.5rem;
  font-weight:600;color:var(--text);user-select:none;
}
.nafo-bot details.disclosure summary::-webkit-details-marker{display:none;}
.nafo-bot details.disclosure summary:focus-visible{outline:3px solid var(--nafo-red);outline-offset:2px;border-radius:10px;}
.nafo-bot .summary-icon{display:none;}
.nafo-bot .chev{
  width:.6rem;height:.6rem;
  border-right:2px solid currentColor;border-bottom:2px solid currentColor;
  transform:rotate(-45deg);transition:transform .2s ease;flex:0 0 auto;
}
.nafo-bot details[open] .chev{transform:rotate(45deg);}
.nafo-bot details.disclosure .content{padding:0 1rem 1rem 1rem;color:var(--text);line-height:1.5;}
.nafo-bot .content p{margin:0 0 .75rem;}
/* ul lagt til: fasitfila har bare ol, men flere av de gamle botene bruker ul. */
.nafo-bot .content ol,.nafo-bot .content ul{margin:.5rem 0 0 1.25rem;padding:0;}
.nafo-bot .content li{margin:.25rem 0;}

/* Mellomoverskrifter i infopanelet. AVVIK FRA FASITFILA, avtalt: flere av
   botene har «Hvordan:» og «Viktig å vite:» som overskrifter. Botnavnet er h2,
   så h3 er riktig nivå. */
.nafo-bot .content h3{margin:1rem 0 .35rem;font-size:1rem;font-weight:600;color:var(--text);}
.nafo-bot .content h3:first-child{margin-top:0;}

/* Bilder i infopanelet.
   AVVIK FRA FASITFILA, avtalt: flere av botene som ble laget før pluginen har
   et hjelpebilde som viser hvor en knapp ligger inne i Sikt-boten. Reglene er
   hentet fra .help-figure i den gamle markupen, så utseendet er uendret fra
   det redaktørene allerede kjenner.
   max-width er nødvendig: .nafo-bot .avatar setter max-width:none, og uten
   dette ville et stort skjermbilde sprengt kortet. */
.nafo-bot .content figure{margin:.5rem 0;}
.nafo-bot .content figure a{
  display:inline-block;text-decoration:none;
  border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff;
}
.nafo-bot .content img{display:block;max-width:100%;height:auto;}
.nafo-bot .content figcaption{font-size:.9rem;color:var(--muted);margin-top:.4rem;}


@media (prefers-reduced-motion:reduce){
  .nafo-bot .chev{transition:none;}
}

@media (max-width:640px){
  .nafo-bot{padding:0;max-width:none;}
  .nafo-bot .card{position:relative;left:50%;margin-left:-50vw;width:100vw;border-radius:0;box-shadow:none;border-left:0;border-right:0;}
  .nafo-bot .top{padding:0;border-bottom:0;background:none;}
  /* Skjult for øyet, men h2 leses fortsatt av skjermlesere */
  .nafo-bot .top-header{
    position:absolute;width:1px;height:1px;margin:0;overflow:hidden;
    clip-path:inset(50%);white-space:nowrap;
  }

  /* Summary blir det mørke toppbanneret. Lukket som standard. */
  .nafo-bot details.disclosure{border:0;border-bottom:1px solid var(--line);border-radius:0;}
  .nafo-bot details.disclosure summary{
    background:var(--nafo-dark);color:#fff;
    justify-content:flex-start;padding:.5rem .75rem;font-size:.85rem;
  }
  .nafo-bot details.disclosure summary:active{background:#111;}
  .nafo-bot .info-icon{display:none;}
  .nafo-bot .summary-icon{
    display:block;width:28px;height:28px;border-radius:6px;object-fit:cover;
    border:1px solid rgba(255,255,255,.3);
  }
  .nafo-bot details.disclosure .content{
    padding:.75rem 1rem 1rem;
    background:linear-gradient(180deg,#f7f8fc,rgba(255,255,255,0) 70%);
  }

  .nafo-bot .body{padding:.5rem;}
  .nafo-bot .iframe-wrap{border-radius:0;border-left:0;border-right:0;margin:0 -.5rem;}

  /* dvh unngår hopping når adressefeltet vises/skjules. vh er fallback.
     100px er høyden på topplinjen til nafoki.no, 330px er topplinjen pluss et
     åpent infopanel. Tallene er målt mot nettstedet — endrer temaet topplinjen,
     må de justeres her. */
  .nafo-bot iframe{height:calc(100vh - 100px);height:calc(100dvh - 100px);min-height:320px;}
  /* :has() krymper iframen når infopanelet åpnes, uten JavaScript. */
  .nafo-bot .card:has(details[open]) iframe{height:calc(100vh - 330px);height:calc(100dvh - 330px);min-height:300px;}
}
