/* L31 kit — terminal retrô CRT (terminal lobby). Colours ONLY via :root vars; cfg.palette appends a later :root. */
:root{--bg:#EEF1EA;--bg2:#E3E8DC;--elev:#F7F8F4;--line:#C5D0C2;--ink:#142018;--ink-soft:#2A3A30;--muted:#58685C;
--brand:#1A9A32;--brand-deep:#0D6E22;--brand-hi:#E3F6E6;--accent2:#C4A015;--cta-a:#157A28;--cta-b:#0C5C1C;--cta-ink:#ffffff;
--hot:#C23A2A;--novo:#1A6FA8;--hero-wash:#E8EDE4;--tray:#E8EDE6;
--crt-bg:#0B0F0C;--phosphor:#3DFF6A;--phosphor-dim:#1C8A38;--phosphor-soft:#7CFF9A;--bezel:#6B736C;--bezel-deep:#3E4540;--crt-wash:#07110A;
--header:72px}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:400 16px/1.6 "Karla",system-ui,sans-serif}
img{max-width:100%;display:block}a{color:var(--brand-deep)}
h1,h2,h3{font-family:"Chakra Petch","Karla",sans-serif;line-height:1.15;color:var(--ink)}
.l31-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
/* header */
.l31-head{position:sticky;top:0;z-index:40;height:var(--header);display:flex;align-items:center;gap:18px;padding:0 24px;background:var(--elev);border-bottom:1px solid var(--line);box-shadow:0 2px 12px rgba(0,0,0,.05)}
.l31-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);flex:none}
.l31-brand img{width:60px;height:60px;border-radius:12px}
.l31-word{display:flex;flex-direction:column;line-height:1.1}.l31-word strong{font:700 20px "Chakra Petch",sans-serif}
.l31-indep{font-size:12px;font-weight:700;color:var(--muted);letter-spacing:.02em}
.l31-tray{display:flex;gap:6px;margin:0 auto;align-items:center}
.l31-tray a{display:flex;align-items:center;gap:6px;padding:7px 12px;border-radius:8px;text-decoration:none;color:var(--ink);font-weight:700;font-size:14px;white-space:nowrap;background:var(--tray);border:1px solid var(--line)}
.l31-tray a[aria-current]{background:var(--brand-hi);border-color:var(--brand);color:var(--brand-deep)}
.l31-tools{display:flex;align-items:center;gap:10px;flex:none}
.l31-hcta,.l31-cta,.l31-mcta,.l31-stick a,.l31-cmd{display:inline-flex;align-items:center;justify-content:center;text-align:center;font:700 16px "Chakra Petch",sans-serif;color:var(--cta-ink);text-decoration:none;border-radius:8px;background:linear-gradient(180deg,var(--cta-a),var(--cta-b));box-shadow:0 4px 0 color-mix(in srgb,var(--cta-b) 80%,#000)}
.l31-hcta{min-width:140px;min-height:44px;padding:0 16px;font-size:15px}
.l31-cta,.l31-cmd{width:max-content;min-width:260px;min-height:68px;padding:0 22px;font-size:22px}
.l31-menu{display:none;width:44px;height:44px;border:1px solid var(--line);border-radius:8px;background:var(--elev);color:var(--ink);align-items:center;justify-content:center;cursor:pointer}
.l31-gaveta{position:fixed;inset:0;z-index:80}
.l31-gaveta-bg{position:absolute;inset:0;background:rgba(0,0,0,.45)}
.l31-gaveta-pan{position:absolute;top:0;right:0;bottom:0;width:min(360px,90vw);background:var(--elev);padding:20px;overflow:auto;box-shadow:-8px 0 24px rgba(0,0,0,.12)}
.l31-gaveta-x{display:inline-flex;width:40px;height:40px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink);align-items:center;justify-content:center;cursor:pointer;margin-bottom:12px}
.l31-gaveta-nav{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}
.l31-gaveta-nav a{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:8px;text-decoration:none;color:var(--ink);font-weight:700;background:var(--tray)}
/* desktop fold = CRT bezel filling 1280x800 under the header */
.l31-fold{display:none;position:relative;height:calc(800px - var(--header));overflow:hidden;background:var(--hero-wash)}
.l31-desk{position:absolute;inset:0}
.l31-desk-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55}
.l31-desk::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,var(--hero-wash) 0 18%,color-mix(in srgb,var(--hero-wash) 55%,transparent) 42%,var(--hero-wash) 100%);pointer-events:none}
.l31-bezel{position:relative;z-index:2;height:100%;margin:10px 18px 12px;padding:16px 18px 22px;border-radius:28px 28px 34px 34px;background:linear-gradient(165deg,var(--bezel),var(--bezel-deep));box-shadow:0 16px 36px rgba(0,0,0,.2),inset 0 1px 0 rgba(255,255,255,.28)}
.l31-glass{position:relative;height:100%;border-radius:16px;overflow:hidden;background:var(--crt-bg);color:var(--phosphor);box-shadow:inset 0 0 42px rgba(0,0,0,.55),0 0 22px color-mix(in srgb,var(--phosphor) 22%,transparent);display:flex;flex-direction:column;padding:10px 14px 12px;font-family:"Chakra Petch","Karla",sans-serif}
.l31-scan{pointer-events:none;position:absolute;inset:0;z-index:3;background:repeating-linear-gradient(180deg,transparent 0 2px,rgba(0,0,0,.2) 2px 3px);opacity:.32}
.l31-curv{pointer-events:none;position:absolute;inset:0;z-index:4;border-radius:16px;box-shadow:inset 0 0 48px rgba(0,0,0,.35);background:radial-gradient(120% 80% at 50% 40%,transparent 55%,rgba(0,0,0,.28) 100%)}
.l31-screen{position:relative;z-index:2;display:flex;flex-direction:column;height:100%;min-height:0}
.l31-top{display:grid;grid-template-columns:1fr 180px;gap:12px 18px;align-items:center;flex:none}
.l31-type{position:relative;padding:6px 10px 8px;border-radius:8px;background:color-mix(in srgb,var(--crt-wash) 78%,transparent)}
.l31-prompt{display:flex;align-items:center;gap:8px;margin:0 0 4px;font:400 13px/1.2 "Chakra Petch",monospace;color:var(--phosphor-soft)}
.l31-prompt-in{flex:1;min-width:0;border:0;background:transparent;color:var(--phosphor);font:400 13px "Chakra Petch",monospace;outline:none;caret-color:var(--phosphor)}
.l31-prompt-in::placeholder{color:color-mix(in srgb,var(--phosphor) 55%,transparent)}
.l31-type h1{margin:0 0 8px;font-size:44px;font-weight:700;color:var(--phosphor);letter-spacing:.01em}
.l31-type h1 span{display:block;overflow:hidden}
.l31-cta-note{margin:8px 0 0;font:400 12px/1.35 "Karla",sans-serif;color:var(--phosphor-soft);max-width:36ch}
.l31-placa{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px;border:1px solid var(--phosphor-dim);border-radius:8px;background:color-mix(in srgb,var(--crt-wash) 88%,transparent);color:var(--phosphor-soft);font-size:11px;font-weight:700;text-align:center}
.l31-placa img{width:160px;height:160px;object-fit:contain;background:var(--elev);border-radius:10px}
.l31-winlab{font:400 11px "Chakra Petch",monospace;color:var(--phosphor-dim);letter-spacing:.04em}
.l31-panes{flex:1;min-height:0;display:grid;grid-template-columns:200px 1fr;gap:10px;margin-top:8px}
.l31-tree{border:1px solid var(--phosphor-dim);border-radius:6px;padding:8px 6px;overflow:auto;background:color-mix(in srgb,var(--crt-wash) 65%,transparent)}
.l31-tree p{margin:0 0 6px;font-size:12px;color:var(--phosphor-soft)}
.l31-dir{display:flex;width:100%;align-items:center;gap:6px;padding:5px 8px;border:0;background:transparent;color:var(--phosphor);font:600 13px "Chakra Petch",sans-serif;text-align:left;cursor:pointer;border-radius:4px;text-decoration:none}
.l31-dir:hover,.l31-dir:focus{background:color-mix(in srgb,var(--phosphor) 14%,transparent);outline:none}
.l31-dir.is-on{background:color-mix(in srgb,var(--phosphor) 22%,transparent);box-shadow:inset 3px 0 0 var(--phosphor)}
.l31-wins{border:1px solid var(--phosphor-dim);border-radius:6px;padding:8px;display:flex;flex-direction:column;min-height:0;background:color-mix(in srgb,var(--crt-wash) 55%,transparent)}
.l31-pane-lab{margin:0 0 6px;font-size:12px;color:var(--phosphor-soft)}
.l31-grid{flex:1;min-height:0;display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(2,1fr);gap:8px}
.l31-win{position:relative;display:flex;flex-direction:column;text-decoration:none;color:var(--phosphor);border:1px solid var(--phosphor-dim);border-radius:4px;padding:4px;background:rgba(0,0,0,.25);min-width:0;overflow:hidden}
.l31-win:hover{border-color:var(--phosphor)}
.l31-win img{width:100%;height:88px;object-fit:cover;border-radius:2px;flex:none}
.l31-nome{display:block;font:700 11px/1.2 "Chakra Petch",sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:3px 2px 0}
.l31-prov{display:block;font:400 10px/1.2 "Karla",sans-serif;color:var(--phosphor-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 2px 2px}
.l31-sel{position:absolute;top:6px;left:6px;z-index:2;padding:1px 6px;border-radius:3px;font:700 9px "Chakra Petch",sans-serif;color:#fff;background:var(--hot)}
.l31-sel-novo{background:var(--novo)}
.l31-win.is-fora,.l31-casa.is-fora,.l31-gtile.is-fora,.l31-mtile.is-fora{display:none}
.l31-casa.is-guardada{display:none}
/* below the fold */
.l31-mfold{display:none}
.l31-wrap,.l31-page{max-width:1200px;margin:0 auto;padding:28px 20px 40px}
.l31-sec{margin:0 0 36px}
.l31-note{color:var(--muted);font-size:14px}
.l31-cta-box{margin:18px 0;display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.l31-promos-in,.l31-tz-in{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.l31-promo,.l31-tz{display:block;text-decoration:none;color:var(--ink);background:var(--elev);border:1px solid var(--line);border-radius:12px;overflow:hidden}
.l31-promo img{width:100%;height:160px;object-fit:cover}
.l31-promo h3,.l31-tz strong{display:block;margin:10px 12px 4px;font:700 16px "Chakra Petch",sans-serif}
.l31-promo p,.l31-tz small,.l31-tz em{display:block;margin:0 12px 12px;color:var(--ink-soft);font-size:14px;font-style:normal}
.l31-tiers-in{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.l31-tier{display:block;padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--elev);text-decoration:none;color:var(--ink)}
.l31-tier b{display:block;font:700 15px "Chakra Petch",sans-serif}
.l31-estudios{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}
.l31-estudio{display:inline-flex;padding:6px 12px;border-radius:999px;background:var(--brand-hi);color:var(--brand-deep);text-decoration:none;font-weight:700}
.l31-busca{width:100%;max-width:480px;margin:8px 0 14px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;font:400 15px "Karla",sans-serif;background:var(--elev);color:var(--ink)}
.l31-grade{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.l31-gtile,.l31-mtile{position:relative;display:flex;flex-direction:column;text-decoration:none;color:var(--ink);background:var(--elev);border:1px solid var(--line);border-radius:10px;overflow:hidden}
.l31-gtile img{width:100%;height:140px;object-fit:cover}
.l31-gtile .l31-nome,.l31-mtile .l31-nome{color:var(--ink);font:700 13px "Chakra Petch",sans-serif;padding:8px 8px 0}
.l31-gtile .l31-prov,.l31-mtile .l31-prov{color:var(--muted);font-size:12px;padding:0 8px 8px}
.l31-chip{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;border:1px solid var(--line);background:var(--elev);color:var(--ink);font-weight:700;cursor:pointer}
.l31-chip.is-on{background:var(--brand-deep);color:var(--cta-ink);border-color:var(--brand-deep)}
.l31-filtros,.l31-mchips{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 14px}
.l31-ghost{display:inline-flex;margin-top:14px;padding:8px 14px;border:1px solid var(--brand);border-radius:8px;color:var(--brand-deep);text-decoration:none;font-weight:700}
.l31-crit{columns:2;gap:24px}
.l31-casas[data-layout="grid"]{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.l31-casas[data-layout="list"]{display:flex;flex-direction:column;gap:10px}
.l31-casas[data-layout="table"]{display:table;width:100%;border-collapse:separate;border-spacing:0 8px}
.l31-casas[data-layout="table"] .l31-casa{display:table-row}
.l31-casas[data-layout="table"] .l31-casa > *{display:table-cell;vertical-align:middle;padding:8px 10px;background:var(--elev);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.l31-casas[data-layout="table"] .l31-casa > :first-child{border-left:1px solid var(--line);border-radius:8px 0 0 8px}
.l31-casas[data-layout="table"] .l31-casa > :last-child{border-right:1px solid var(--line);border-radius:0 8px 8px 0}
.l31-casa{display:flex;gap:12px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--elev);text-decoration:none;color:var(--ink)}
.l31-marca{width:72px;height:72px;object-fit:contain;border-radius:8px;background:var(--bg);flex:none}
.l31-fact{display:block;font-size:13px;color:var(--ink-soft);margin-top:2px}
.l31-mais{display:inline-flex;margin:16px 0;padding:10px 16px;border:1px solid var(--line);border-radius:8px;background:var(--brand-hi);color:var(--brand-deep);font:700 15px "Chakra Petch",sans-serif;cursor:pointer}
.l31-revhead{display:flex;gap:16px;align-items:center;margin:0 0 18px}
.l31-notas{width:100%;border-collapse:collapse;margin:8px 0 20px}
.l31-notas th,.l31-notas td{border:1px solid var(--line);padding:10px 12px;text-align:left}
.l31-prons{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.l31-acc{display:flex;width:100%;justify-content:space-between;align-items:center;padding:12px 0;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);font:700 16px "Chakra Petch",sans-serif;cursor:pointer;text-align:left}
.l31-acc-p{margin:0;padding:8px 0 16px;color:var(--ink-soft)}
.l31-crumb{font-size:14px;color:var(--muted)}
.l31-page h1{font-size:36px;margin:8px 0 16px}
/* footer + sticky */
.l31-foot{background:var(--bg2);border-top:4px solid var(--brand);padding:34px 20px 100px}
.l31-foot-in{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr;gap:26px}
.l31-foot h2{font-size:17px}.l31-foot a{display:block;margin:6px 0;color:var(--ink)}
.l31-18{display:inline-block;padding:1px 7px;border-radius:999px;background:var(--brand-deep);color:var(--cta-ink);font-weight:800}
.l31-credit,.l31-foot .rl2-credit{max-width:1200px;margin:16px auto 0;font-size:13px;color:var(--muted)}
.l31-stick{display:none}
@media (min-width:801px){
  .l31-fold{display:block}
  .l31-type h1{font-size:44px}
}
@media (prefers-reduced-motion:no-preference){
  .l31-type h1 span{max-width:0;white-space:nowrap;animation:l31-type .7s steps(18,end) forwards}
  .l31-type h1 .l31-h1b{animation-delay:.45s}
  @keyframes l31-type{to{max-width:22ch}}
}
@media (prefers-reduced-motion:reduce){
  .l31-scan{opacity:.12}
  .l31-type h1 span{animation:none;max-width:none;white-space:normal}
}
/* H5 first-screen */
@media (max-width:800px){
  :root{--header:62px}
  .l31-head{padding:0 12px;gap:10px}.l31-brand img{width:56px;height:56px}.l31-word strong{font-size:17px}
  .l31-tray,.l31-head .l31-hcta{display:none}.l31-tools{margin-left:auto}.l31-menu{display:inline-flex}
  .l31-fold{display:none}
  .l31-mfold{display:block;padding:8px 12px 6px;background:linear-gradient(180deg,var(--hero-wash),var(--bg))}
  .l31-mfold .l31-kicker{margin:0 0 2px;font-size:12px;color:var(--muted)}
  .l31-mfold h1{font-size:26px;margin:0 0 8px;color:var(--ink)}
  .l31-mfold h1 span{display:block}
  .l31-mcta{display:flex;width:100%;min-width:0;min-height:56px;font-size:18px}
  .l31-mgrid{display:grid;grid-template-columns:1fr 1fr;gap:8px 10px;margin:8px 0}
  .l31-mtile img{width:100%;height:64px;object-fit:cover}
  .l31-mtile .l31-nome{padding:4px 6px 0;font-size:12px}
  .l31-mtile .l31-prov{padding:0 6px 4px;font-size:11px}
  .l31-promos-in,.l31-tz-in,.l31-casas[data-layout="grid"],.l31-prons,.l31-foot-in{grid-template-columns:1fr}
  .l31-tiers-in,.l31-grade{grid-template-columns:1fr 1fr}
  .l31-page h1{font-size:28px}.l31-cta{width:100%;min-width:0}.l31-crit{columns:1}
  .l31-casas[data-layout="table"]{display:flex;flex-direction:column;gap:10px}
  .l31-casas[data-layout="table"] .l31-casa{display:flex}
  .l31-casas[data-layout="table"] .l31-casa > *{display:block;border:0;padding:0;background:transparent}
  .l31-stick{display:block;position:fixed;left:0;right:0;bottom:0;z-index:50;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:var(--elev);box-shadow:0 -6px 18px rgba(0,0,0,.12)}
  .l31-stick a{display:flex;width:100%;min-width:0;min-height:54px;font-size:18px}
}
@media (min-width:801px) and (max-width:1180px){
  .l31-tray a span{display:none}
  .l31-type h1{font-size:36px}
  .l31-panes{grid-template-columns:160px 1fr}
}

/* site palette (cfg) */
:root{--bg:#f1eeea;--bg2:#e8e2dc;--elev:#f8f6f4;--line:#d0c9c2;--ink:#201a14;--ink-soft:#3a322a;--muted:#686058;--brand:#1a6f9a;--brand-deep:#6e3d0d;--brand-hi:#e3f0f6;--accent2:#c44f15;--cta-a:#7a4815;--cta-b:#5c340c;--cta-ink:#ffffff;--hot:#2a8fc2;--novo:#1a79a8;--tray:#e6ebed;--hero-wash:#e4eaed;--crt-bg:#0f0d0b;--phosphor:#3dbeff;--phosphor-dim:#1c658a;--phosphor-soft:#7cd3ff;--bezel:#6b736c;--bezel-deep:#3e4540;--crt-wash:#110c07}
