/* Audience Lens (form + results page). Site palette: ink #14494F, paper #F7F4EF. */
.al-form [hidden], .al-report [hidden] { display: none !important; }

.al-research { background: #14494F; color: #F7F4EF; border-radius: 12px; padding: 1.4rem 1.6rem; margin: 0 0 1.8rem; }
.al-research h2 { color: #F7F4EF; margin: 0 0 .6rem; font-size: 1.25rem; }
.al-research p { margin: .4rem 0; line-height: 1.6; }
.al-research strong { color: #fff; }
.al-research-note { font-size: .92rem; opacity: .9; border-top: 1px solid rgba(247,244,239,.25); padding-top: .55rem; margin-top: .7rem !important; }

.al-step { border: 0; padding: 0; margin: 0 0 1.4rem; min-width: 0; }
.al-step legend { margin-bottom: .5rem; }
.al-paths { display: grid; grid-template-columns: 1fr 1fr; gap: .8rem; }
.al-path, .al-card { display: flex; gap: .6rem; align-items: flex-start; background: #fff; border: 1.5px solid rgba(20,73,79,.18);
  border-radius: 10px; padding: .8rem .9rem; cursor: pointer; line-height: 1.4; }
.al-path:has(input:checked), .al-card:has(input:checked) { border-color: #14494F; background: rgba(20,73,79,.06); box-shadow: inset 0 0 0 1px #14494F; }
.al-formats { display: flex; flex-wrap: wrap; gap: .5rem; margin-bottom: .8rem; }
.al-format { background: #fff; border: 1.5px solid rgba(20,73,79,.18); border-radius: 999px; padding: .4rem .9rem; cursor: pointer; }
.al-format:has(input:checked) { border-color: #14494F; background: rgba(20,73,79,.08); }
.al-input textarea, .al-input input[type=url] { width: 100%; }
.al-aud-head { display: flex; justify-content: space-between; align-items: center; gap: 1rem; flex-wrap: wrap; margin: 0 0 .6rem; }
.al-count { font-weight: 600; }
.al-count-bad { color: #A33A22; }
.al-linkbtn { background: none; border: 0; color: #14494F; text-decoration: underline; cursor: pointer; padding: 0; font: inherit; }
.al-group { font-size: 1rem; margin: 1rem 0 .5rem; }
.al-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: .6rem; }
.al-card { flex-direction: column; gap: .2rem; position: relative; padding-left: 2.2rem; }
.al-card input { position: absolute; left: .8rem; top: .95rem; }
.al-card-name { font-weight: 600; }
.al-card-line { font-size: .9rem; }
.al-card-trip { font-size: .76rem; color: rgba(20,73,79,.7); letter-spacing: .01em; }
.al-opt { font-weight: 400; font-size: .85rem; color: rgba(20,73,79,.6); }
.al-price-note { font-size: .85rem; color: rgba(20,73,79,.7); }
.al-privacy { margin-top: 1rem; }
.al-method-short { font-size: .9rem; line-height: 1.55; background: rgba(201,133,60,.09); border-left: 3px solid #C9853C; padding: .7rem .9rem; border-radius: 4px; }
.al-spaces-line { margin-top: 2rem; font-size: .92rem; color: rgba(20,73,79,.75); }
.al-dialog { max-width: 760px; border: 0; border-radius: 12px; padding: 1.4rem 1.6rem; color: #14494F; }
.al-dialog::backdrop { background: rgba(20,36,42,.5); }
.al-axes { width: 100%; border-collapse: collapse; font-size: .9rem; margin: .6rem 0; }
.al-axes th, .al-axes td { text-align: left; border-bottom: 1px solid rgba(20,73,79,.12); padding: .45rem .5rem; vertical-align: top; }
@media (max-width: 640px) { .al-paths { grid-template-columns: 1fr; } }

/* results */
.al-head { display: flex; gap: 1.2rem; align-items: flex-start; }
.al-head-thumb { width: 160px; max-height: 160px; object-fit: cover; border-radius: 8px; border: 1px solid rgba(20,73,79,.15); }
.al-head-source { font-weight: 600; font-size: 1.05rem; margin: .1rem 0; word-break: break-all; }
.al-head-meta { font-size: .9rem; color: rgba(20,73,79,.8); margin: .2rem 0 .6rem; }
.al-head-actions { display: flex; gap: 1rem; align-items: center; flex-wrap: wrap; }
.al-lead { font-size: 1.04rem; line-height: 1.6; }
.al-fit { border-collapse: separate; border-spacing: 2px; width: 100%; min-width: 860px; font-size: .88rem; }
.al-fit th { font-size: .78rem; font-weight: 600; text-align: center; padding: .3rem; color: rgba(20,73,79,.8); }
.al-fit th:first-child { text-align: left; }
.al-fit-name { min-width: 210px; padding: .4rem .3rem; }
.al-fit-name small { color: rgba(20,73,79,.7); }
.al-cell { text-align: center; border-radius: 4px; padding: .4rem .3rem; font-weight: 600; font-size: .82rem; }
.al-cell small { display: block; font-weight: 400; font-size: .72rem; opacity: .9; }
.al-cell-fit { font-size: .9rem; }
.al-num { display: inline-flex; align-items: center; justify-content: center; width: 1.35em; height: 1.35em; border-radius: 50%;
  color: #14242A; font-weight: 700; font-size: .8em; vertical-align: .1em; }
.al-badge { display: inline-block; font-size: .7rem; padding: .1rem .45rem; border-radius: 4px; margin-left: .3rem; vertical-align: .1em; }
.al-badge-best { background: #C9DE2B; color: #14242A; }
.al-badge-weak { background: #C1462A; color: #fff; }
.al-legend { display: flex; flex-wrap: wrap; gap: .4rem 1.1rem; margin: .2rem 0 .8rem; font-size: .9rem; }
.al-leg { display: inline-flex; align-items: center; gap: .35rem; }
.al-leg i { display: inline-flex; align-items: center; justify-content: center; width: 1.25em; height: 1.25em; border-radius: 50%;
  font-style: normal; font-weight: 700; font-size: .78em; color: #14242A; }
.al-strip { margin: .3rem 0 .5rem; }
.al-strip-label small { color: rgba(20,73,79,.65); }
.al-strip svg, .al-chart svg { width: 100%; height: auto; display: block; }
.al-topdiv li { margin: .3rem 0; }
.al-aud { border-top: 1px solid rgba(20,73,79,.12); padding: .8rem 0 .4rem; }
.al-aud:first-of-type { border-top: 0; }
.al-aud h3 small { font-weight: 400; color: rgba(20,73,79,.7); font-size: .82rem; }
.al-aud-scores { display: flex; flex-wrap: wrap; gap: .25rem .9rem; font-size: .84rem; color: rgba(20,73,79,.85); }
.al-two { display: grid; grid-template-columns: 1fr 1fr; gap: 1.2rem; }
.al-two h4 { margin: .2rem 0; font-size: .9rem; }
.al-col-ok { border-top: 3px solid #C9DE2B; padding-top: .3rem; }
.al-col-ko { border-top: 3px solid #C1462A; padding-top: .3rem; }
.al-transcript { border-collapse: collapse; width: 100%; font-size: .92rem; }
.al-transcript td { border-bottom: 1px solid rgba(20,73,79,.1); padding: .3rem .4rem; vertical-align: top; }
.al-t { font-family: ui-monospace, monospace; font-size: .82rem; white-space: nowrap; color: rgba(20,73,79,.75); }
.al-spk { white-space: nowrap; font-weight: 600; font-size: .85rem; }
.al-kv { display: inline-block; margin-right: 1.1rem; }
.al-timed { list-style: none; padding: 0; }
.al-timed li { margin: .2rem 0; }
.al-points { display: grid; gap: .6rem; }
.al-point { display: flex; gap: .7rem; align-items: flex-start; }
.al-point img { width: 120px; border-radius: 4px; }
.al-pk { display: inline-flex; align-items: center; justify-content: center; min-width: 1.4em; height: 1.4em; background: #14242A; color: #fff;
  border-radius: 3px; font-weight: 700; font-size: .8rem; }
.al-frames { display: flex; flex-wrap: wrap; gap: .4rem; }
.al-frames figure { margin: 0; width: 110px; font-size: .75rem; text-align: center; }
.al-frames img { width: 110px; border-radius: 3px; display: block; }
.al-tg, .al-fr { border-top: 1px solid rgba(20,73,79,.12); padding: .7rem 0; }
.al-tg h3 small { font-weight: 400; color: rgba(20,73,79,.7); }
.al-tg-warn { background: rgba(193,70,42,.08); border-left: 3px solid #C1462A; padding: .5rem .7rem; }
.al-dl { display: grid; grid-template-columns: 12rem 1fr; gap: .25rem .8rem; margin: .4rem 0; }
.al-dl dt { font-weight: 600; font-size: .88rem; }
.al-dl dd { margin: 0; }
.al-fr-headline { font-size: 1.15rem; font-weight: 700; margin: .3rem 0; }
.al-fr-rewrite { white-space: pre-wrap; background: #F7F4EF; border-radius: 6px; padding: .7rem .9rem; line-height: 1.55; }
.al-method p { line-height: 1.6; }
@media (max-width: 640px) { .al-two { grid-template-columns: 1fr; } .al-dl { grid-template-columns: 1fr; } .al-head { flex-direction: column; } }
