/*
  FRANCIZOR.RO — Biblioteca de Resurse · page-scoped stylesheet for Guide pages.

  Reusable across every Guide (Guide 01 is only the first consumer): it styles
  ONLY the .guide-* structural hooks emitted by resources/views/resources/guides/
  show.blade.php and resources/views/components/guide/*. It encodes no guide
  content, no wording and no SEO/ASEO logic.

  It reuses the existing premium design system (navy/gold tokens, Cormorant
  Garamond + Manrope, .wrap / .section-pad / .eyebrow / .s-title / .glass / .btn
  from styles.css + site.css). Only genuinely new Guide UI shapes live here. No
  @import, no remote fonts/images, no data URIs, no JavaScript.

  .reveal on Guide wrappers is the inherited site-wide entrance animation
  (styles.css) — untouched here; it already resolves to visible under
  prefers-reduced-motion.
*/

/* ---------- shared rhythm ---------- */
.guide-persona-band,
.guide-authority-notes,
.guide-demo,
.guide-threshold,
.guide-os-cta,
.guide-faq,
.guide-sources,
.guide-disclaimer{
  position:relative;
  z-index:2;
}

.guide-authority-notes > .eyebrow,
.guide-demo .s-title,
.guide-threshold__heading,
.guide-os-cta .s-title,
.guide-faq .s-title,
.guide-sources .s-title{
  margin-bottom:18px;
}

/* ---------- preview banner ---------- */
.guide-preview-banner{
  position:relative;
  z-index:3;
  margin:18px auto 0;
  padding:10px 32px;
  max-width:var(--maxw);
  border:1px dashed var(--gold);
  border-radius:8px;
  background:rgba(212,175,55,.10);
  color:var(--gold-bright);
  font-family:var(--sans);
  font-size:13px;
  letter-spacing:.02em;
  text-align:center;
}

/* ---------- persona / traseu band ---------- */
.guide-persona-band{
  padding-block:22px;
  border-block:1px solid var(--line-soft);
}
.guide-persona-band__persona{
  font-family:var(--serif);
  font-size:clamp(19px,2.2vw,24px);
  color:var(--text);
  margin-top:10px;
}
.guide-persona-band__intent{
  margin-top:6px;
  font-size:14px;
  color:var(--muted);
  max-width:70ch;
}

/* ---------- hero ---------- */
.guide-hero h1{
  font-size:clamp(30px,4.4vw,50px);
  line-height:1.06;
  color:#fff;
  margin:14px 0 0;
}
.guide-hero__meta{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:22px;
  font-size:13.5px;
  color:var(--muted-2);
}
.guide-hero__meta > span{
  display:inline-flex;
  align-items:center;
  gap:14px;
}
.guide-hero__meta > span + span::before{
  content:"·";
  color:var(--line);
}

/* ---------- table of contents ---------- */
.guide-toc{
  margin:0 auto;
  max-width:820px;
  padding:22px 26px;
  border:1px solid var(--line-soft);
  border-radius:12px;
  background:var(--glass);
}
.guide-toc .eyebrow{margin-bottom:12px}
.guide-toc__list{
  margin:0;
  padding:0;
  list-style:none;
  columns:2;
  column-gap:40px;
}
.guide-toc__list li{
  break-inside:avoid;
  padding:6px 0;
  border-bottom:1px solid var(--line-soft);
}
.guide-toc__list a{
  font-family:var(--sans);
  font-size:14px;
  color:var(--muted);
  overflow-wrap:anywhere;
}
.guide-toc__list a:hover,
.guide-toc__list a:focus-visible{color:var(--gold-soft)}

/* ---------- main body ---------- */
.guide-body{max-width:780px}
.guide-body .prose > :first-child{margin-top:0}
.guide-body .prose h2{scroll-margin-top:110px}
.guide-body .prose h3{
  font-family:var(--serif);
  font-size:21px;
  color:#fff;
  margin:26px 0 10px;
}

/* ---------- authority notes ---------- */
.guide-authority-notes{padding-top:0}
.guide-authority-notes .guide-authority-note{margin-top:16px}
.guide-authority-note{
  padding:20px 22px;
  border:1px solid var(--line-soft);
  border-left-width:3px;
  border-radius:10px;
  background:var(--glass);
}
.guide-authority-note[data-authority-layer="LEGE"]{border-left-color:var(--gold)}
.guide-authority-note[data-authority-layer="STANDARD_ARF"]{border-left-color:var(--ro-blue)}
.guide-authority-note[data-authority-layer="RECOMANDARE"]{
  border-left-color:var(--muted-2);
  border-left-style:dashed;
}
.guide-authority-note__layer{
  margin-bottom:10px;
  color:var(--gold-soft);
}
.guide-authority-note[data-authority-layer="STANDARD_ARF"] .guide-authority-note__layer{color:#7ea6e8}
.guide-authority-note[data-authority-layer="RECOMANDARE"] .guide-authority-note__layer{color:var(--muted)}
.guide-authority-note__body{
  font-size:15px;
  line-height:1.7;
  color:#d6deef;
}
.guide-authority-note__body p{margin:0 0 12px}
.guide-authority-note__body :last-child{margin-bottom:0}
.guide-authority-note__source{
  margin-top:12px;
  font-size:12.5px;
  color:var(--muted-2);
  overflow-wrap:anywhere;
}
.guide-authority-note__source a{color:var(--gold-soft)}

/* ---------- demo (self-check, static) ---------- */
.guide-demo__frame{
  max-width:70ch;
  margin-bottom:26px;
  font-size:16px;
  color:var(--muted);
}
.guide-demo__form{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
  gap:18px;
}
.guide-demo__category{
  min-width:0;
  margin:0;
  padding:20px 22px;
  border:1px solid var(--line-soft);
  border-radius:12px;
  background:var(--glass);
}
.guide-demo__label{
  font-family:var(--serif);
  font-size:18px;
  color:var(--gold-soft);
  padding:0;
}
.guide-demo__question{
  margin:8px 0 0;
  font-size:14.5px;
  color:#d6deef;
}
.guide-demo__explanation{
  margin:8px 0 0;
  font-size:13.5px;
  color:var(--muted);
}
.guide-demo__options{
  display:flex;
  flex-direction:column;
  gap:8px;
  margin:16px 0 0;
}
.guide-demo__option{
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:8px 10px;
  border:1px solid transparent;
  border-radius:8px;
  cursor:pointer;
}
.guide-demo__option:hover{background:var(--glass-2)}
.guide-demo__option:focus-within{
  border-color:var(--gold);
  background:var(--glass-2);
}
.guide-demo__option input{
  margin-top:3px;
  accent-color:var(--gold);
  flex:none;
}
.guide-demo__option input:checked ~ .guide-demo__option-microcopy{color:var(--text)}
.guide-demo__option:has(input:checked){
  border-color:var(--line);
  background:var(--glass-2);
}
.guide-demo__option-microcopy{
  font-size:13.5px;
  line-height:1.5;
  color:var(--muted);
}
.guide-demo__not-this{
  margin:12px 0 0;
  font-size:12.5px;
  color:var(--muted-2);
}
.guide-demo__warning{
  margin:8px 0 0;
  font-size:12.5px;
  color:var(--gold-soft);
}
.guide-demo__guidance{
  max-width:70ch;
  margin:22px 0 0;
  font-size:14.5px;
  color:var(--muted);
}
.guide-demo .demo-persistence{
  margin:14px 0 0;
  font-size:12.5px;
  color:var(--muted-2);
}
.guide-demo__disclaimer{
  margin:18px 0 0;
  padding:16px 24px;
  border-left:3px solid var(--gold);
  font-family:var(--serif);
  font-size:16px;
  line-height:1.6;
  color:#d6deef;
}

/* ---------- implementation threshold (#prag) ---------- */
.guide-threshold{
  scroll-margin-top:110px;
  padding-top:34px;
  border-top:1px solid var(--line);
}
.guide-threshold__heading{
  font-family:var(--serif);
  font-weight:600;
  font-size:clamp(24px,3.4vw,40px);
  line-height:1.12;
  letter-spacing:-.015em;
  max-width:24ch;
  background:var(--gold-grad);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.guide-threshold__rows{
  display:grid;
  gap:14px;
  margin-top:22px;
}
.guide-threshold__row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
  padding:16px 0;
  border-bottom:1px solid var(--line-soft);
}
.guide-threshold__row:last-child{border-bottom:none}
.guide-threshold__generic,
.guide-threshold__real-case{
  min-width:0;
  font-size:14.5px;
  line-height:1.65;
}
.guide-threshold__generic{color:var(--muted)}
.guide-threshold__real-case{color:#d6deef}

/* ---------- Francizor OS CTA ---------- */
.guide-os-cta{
  scroll-margin-top:110px;
}
.guide-os-cta::before{
  content:"";
  display:block;
  width:64px;
  height:1px;
  margin-bottom:22px;
  background:linear-gradient(90deg,var(--gold),transparent);
}
.guide-os-cta__body{
  max-width:70ch;
  font-size:15.5px;
  line-height:1.7;
  color:#d6deef;
}
.guide-os-cta__body p{margin:0 0 14px}
.guide-os-cta__body :last-child{margin-bottom:0}
.guide-os-cta__action{margin:20px 0 0}
.guide-os-cta__microcopy{
  margin:12px 0 0;
  font-size:12.5px;
  color:var(--muted-2);
  max-width:60ch;
}
.guide-os-cta__status{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:20px 0 0;
  padding:0;
  list-style:none;
}

/* ---------- OS status badge ---------- */
.guide-os-status-badge{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:6px 14px;
  border:1px solid var(--line);
  border-radius:999px;
  background:var(--glass);
  font-family:var(--sans);
}
.guide-os-status-badge__capability{
  font-size:13px;
  color:var(--muted);
}
.guide-os-status-badge__status{
  font-size:11px;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--muted-2);
}
.guide-os-status-badge[data-os-available="true"]{
  border-color:var(--gold);
  background:rgba(212,175,55,.10);
}
.guide-os-status-badge[data-os-available="true"] .guide-os-status-badge__status{color:var(--gold-soft)}
.guide-os-status-badge[data-os-status="ROADMAP"],
.guide-os-status-badge[data-os-status="DE_VERIFICAT"]{
  border-style:dashed;
  border-color:var(--line-soft);
}

/* ---------- FAQ (visible only — schema is projector-owned) ---------- */
.guide-faq{max-width:820px;margin-inline:auto}
.guide-faq__item{
  padding:18px 0;
  border-bottom:1px solid var(--line-soft);
}
.guide-faq__item:last-child{border-bottom:none}
.guide-faq__item h3{
  font-family:var(--serif);
  font-size:19px;
  color:#fff;
  margin:0 0 8px;
}
.guide-faq__answer{
  font-size:14.5px;
  line-height:1.7;
  color:#d6deef;
}
.guide-faq__answer p{margin:0 0 12px}
.guide-faq__answer :last-child{margin-bottom:0}

/* ---------- sources ---------- */
.guide-sources{max-width:820px;margin-inline:auto}
.guide-sources__list{
  margin:0;
  padding:0;
  list-style:none;
}
.guide-sources__list li{
  padding:12px 0;
  border-bottom:1px solid var(--line-soft);
  font-size:13.5px;
  line-height:1.6;
  color:var(--muted);
  overflow-wrap:anywhere;
}
.guide-sources__list li:last-child{border-bottom:none}
.guide-sources__list a{color:var(--gold-soft)}

/* ---------- closing disclaimer ---------- */
.guide-disclaimer{max-width:820px;margin-inline:auto}
.guide-disclaimer blockquote{
  margin:0;
  padding:16px 24px;
  border-left:3px solid var(--gold);
  font-family:var(--serif);
  font-size:16px;
  line-height:1.6;
  color:var(--muted);
}

/* ---------- responsive ---------- */
@media(max-width:1080px){
  .guide-toc__list{columns:1}
  .guide-demo__form{grid-template-columns:1fr}
}

@media(max-width:760px){
  .guide-preview-banner{margin-inline:16px;padding-inline:16px}
  .guide-persona-band{padding-block:18px}
  .guide-hero__meta{gap:8px}
  .guide-hero__meta > span + span::before{content:none}
  .guide-toc{padding:18px 18px}
  .guide-authority-note{padding:16px 18px}
  .guide-demo__category{padding:16px 18px}
  .guide-threshold__row{grid-template-columns:1fr;gap:6px;padding:14px 0}
  .guide-threshold__generic{color:var(--muted-2)}
}

@media(prefers-reduced-motion:reduce){
  .guide-demo__option,
  .guide-toc__list a,
  .guide-os-status-badge{transition:none}
}
