/* Folhas & Prosas · cartões de planos (home e planos.html) e página de comparação. Usa os tokens de livro.css. */
.pl-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}
.pl-card{position:relative;background:var(--surface);border:1.5px solid var(--ink);padding:26px 22px 22px;display:flex;flex-direction:column;gap:14px;min-width:0}
.pl-card.skel{min-height:420px;background:linear-gradient(90deg,var(--paper),var(--surface),var(--paper));background-size:200% 100%;animation:sk 1.2s linear infinite}
.pl-card.star{box-shadow:8px 8px 0 var(--red)}
.pl-card .ribbon{position:absolute;top:-14px;left:18px}
.pl-card h3{font-size:30px;font-weight:900;line-height:1.05}
.pl-card .para{font:400 13px/1.35 var(--type);color:var(--mute);letter-spacing:.03em;margin:0}
.pl-preco{font:700 34px/1 var(--display);color:var(--red);margin:0;font-variant-numeric:tabular-nums}
.pl-preco span{font:400 15px var(--body);color:var(--mute)}
.pl-preco.consulta{font-size:21px;line-height:1.2}
.pl-preco small{display:block;font:400 12px/1.4 var(--type);color:var(--mute);margin-top:6px}
.pl-login{padding:12px 14px;background:var(--paper);border-left:4px solid var(--line);display:grid;gap:3px}
.pl-login.tem{background:var(--wall);color:var(--on-red);border-left-color:var(--ink)}
.pl-login b{font:700 12px/1.3 var(--type);letter-spacing:.07em;text-transform:uppercase}
.pl-login span{font-size:14.5px;line-height:1.4}
.pl-card ul{margin:0;padding:0;list-style:none;display:grid;gap:8px;font-size:15.5px;line-height:1.4;align-content:start;flex:1}
.pl-card li{display:grid;grid-template-columns:18px 1fr;gap:6px}
.pl-card li::before{content:"✿";color:var(--red);font-size:13px;line-height:1.6}
.pl-acoes{display:grid;gap:6px}
.pl-acoes .btn{width:100%}
.pl-avulso{font:700 13px/1.4 var(--type);color:var(--ink);text-align:center;text-decoration:underline;text-underline-offset:4px;padding-top:4px}
.pl-avulso:hover{color:var(--red)}
.pl-nota{font:400 12px/1.4 var(--type);color:var(--mute);text-align:center;margin:0}
.pl-comparar{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;margin-top:26px;padding:18px 20px;background:var(--paper)}
.pl-comparar p{margin:0;max-width:58ch}

/* abertura da página */
.pl-aviso{background:var(--ink);color:var(--bg);text-align:center;padding:9px var(--gut);font:700 12px/1.4 var(--type);letter-spacing:.08em;text-transform:uppercase}
.pl-painel{position:relative;background:var(--wall);color:var(--on-red);overflow:hidden;padding-block:clamp(44px,7vw,84px) clamp(150px,18vw,190px);text-align:center}
.pl-painel::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,rgba(0,0,0,.08) 0 3px,transparent 3px 41px,rgba(255,255,255,.05) 41px 44px,transparent 44px 90px);pointer-events:none}
.pl-painel .wrap{position:relative;display:grid;gap:18px;justify-items:center}
.pl-painel h1{font-size:clamp(44px,7.5vw,88px);font-weight:900;letter-spacing:-.02em;line-height:.98}
.pl-painel h1 em{font-weight:500}
.pl-painel p{font-size:clamp(18px,2vw,21px);max-width:58ch;margin:0}
.pl-inclui{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px 22px;justify-content:center;font:700 13px/1.4 var(--type);letter-spacing:.03em}
.pl-inclui li::before{content:"✿ ";color:var(--pink)}
.pl-sobe{margin-top:clamp(-140px,-14vw,-110px);position:relative;padding-bottom:clamp(40px,6vw,72px)}

/* o diferencial */
.pl-dif{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0;border-top:1.5px solid var(--ink)}
.pl-dif article{padding:20px 20px 6px 0;display:grid;gap:8px;align-content:start}
.pl-dif article+article{padding-left:20px;border-left:1px solid var(--line)}
.pl-dif h3{font-size:24px}

/* demonstração */
.pl-abas{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.pl-abas button{font:700 13px/1 var(--type);letter-spacing:.05em;text-transform:uppercase;padding:13px 16px;border:1.5px solid var(--ink);background:var(--surface);color:var(--ink);cursor:pointer}
.pl-abas button[aria-selected="true"]{background:var(--ink);color:var(--bg)}
.pl-demo{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(20px,4vw,48px);align-items:start;background:var(--surface);border:1.5px solid var(--ink);padding:clamp(18px,3vw,32px)}
.pl-demo[hidden]{display:none}
.pl-demo h3{font-size:clamp(26px,3vw,34px);font-weight:900;margin-bottom:10px}
.pl-demo .txt ul{margin:12px 0 18px;padding:0;list-style:none;display:grid;gap:8px}
.pl-demo .txt li{display:grid;grid-template-columns:18px 1fr;gap:6px;font-size:16px}
.pl-demo .txt li::before{content:"✿";color:var(--red);font-size:13px;line-height:1.7}
.pl-tela{border:1.5px solid var(--ink);background:var(--bg);box-shadow:6px 6px 0 var(--ink);min-width:0}
.pl-tela .barra{display:flex;align-items:center;gap:8px;padding:9px 12px;background:var(--wall);color:var(--on-red);font:700 11px/1.3 var(--type);letter-spacing:.06em;text-transform:uppercase}
.pl-tela .barra i{margin-left:auto;font-style:normal;opacity:.85}
.pl-tela .corpo{padding:14px;display:grid;gap:12px}
.pl-tabs{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none}
.pl-tabs span{flex:none;font:700 11px/1 var(--type);padding:8px 10px;background:var(--paper);text-transform:uppercase;letter-spacing:.04em}
.pl-tabs span.on{background:var(--ink);color:var(--bg)}
.pl-barra-prog{height:8px;background:var(--paper);border:1px solid var(--ink)}
.pl-barra-prog i{display:block;height:100%;background:var(--red);transition:width .3s}
.pl-tela .card{background:var(--surface);border:1px solid var(--line);padding:14px;display:grid;gap:8px}
.pl-tela .card h4{font:700 19px/1.2 var(--display);margin:0}
.pl-tela .card p{margin:0;font-size:15px;line-height:1.45}
.pl-tela .card .tg{font:700 11px/1.2 var(--type);letter-spacing:.08em;text-transform:uppercase;color:var(--deep)}
.pl-tela .card textarea{width:100%;min-height:62px;font:400 15px var(--body);padding:8px;border:1px solid var(--line);background:var(--bg);resize:vertical}
.pl-tela .opcoes{display:grid;gap:6px}
.pl-tela .opcoes button{font:400 14px/1.3 var(--body);text-align:left;padding:8px 10px;border:1px solid var(--line);background:var(--bg);color:var(--ink);cursor:pointer}
.pl-tela .opcoes button.certa{background:var(--green);color:#fff;border-color:var(--green)}
.pl-arquivos{display:grid;gap:6px}
.pl-arquivos span{display:flex;gap:8px;align-items:center;padding:10px 12px;border:1px solid var(--line);background:var(--surface);font-size:14.5px}
.pl-arquivos span::before{content:"PDF";font:700 10px/1 var(--type);padding:4px 5px;background:var(--wall);color:var(--on-red)}
.pl-fotos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.pl-fotos img{width:100%;aspect-ratio:7/10;object-fit:cover;border:1px solid var(--ink)}

/* comparação */
.pl-tabela-caixa{border:1.5px solid var(--ink);background:var(--surface)}
.pl-tabela{width:100%;border-collapse:separate;border-spacing:0;font-size:15.5px}
.pl-tabela thead th{position:sticky;top:61px;z-index:5;background:var(--surface);border-bottom:1.5px solid var(--ink);padding:14px 12px;vertical-align:top;text-align:left;font-weight:400}
.pl-tabela thead th b{display:block;font:900 22px/1.1 var(--display)}
.pl-tabela thead th .v{display:block;font:700 15px/1.3 var(--type);color:var(--red);margin:6px 0 10px}
.pl-tabela thead th .btn{width:100%;padding:10px 8px;font-size:12px}
.pl-tabela thead th.star{background:var(--paper)}
.pl-tabela .sec th{background:var(--ink);color:var(--bg);text-align:left;padding:0}
.pl-tabela .sec button{all:unset;box-sizing:border-box;display:flex;justify-content:space-between;gap:12px;width:100%;padding:12px;cursor:pointer;font:700 13px/1.3 var(--type);letter-spacing:.08em;text-transform:uppercase}
.pl-tabela .sec button:focus-visible{outline:2px solid var(--pink);outline-offset:-3px}
.pl-tabela .sec button i{font-style:normal;font-weight:400;opacity:.8;letter-spacing:.02em;text-transform:none}
.pl-tabela tbody th,.pl-tabela tbody td{padding:11px 12px;border-bottom:1px solid var(--line);vertical-align:top;line-height:1.35}
.pl-tabela tbody th{font-weight:400;text-align:left;width:37%}
.pl-tabela tbody td{width:21%}
.pl-tabela tbody td.star{background:color-mix(in srgb,var(--paper) 45%,transparent)}
.pl-tabela .sim{font:700 17px/1 var(--type);color:var(--green);display:block}
.pl-tabela .nao{color:var(--mute)}
.pl-tabela small{display:block;font-size:13.5px;color:var(--mute);line-height:1.3;margin-top:2px}
.pl-tabela tr.forte th{font-weight:600}
.pl-avulsos{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.pl-avulsos article{background:var(--surface);border:1.5px solid var(--ink);padding:20px;display:grid;gap:8px;align-content:start}
.pl-avulsos h3{font-size:24px}
.pl-avulsos .v{font:700 20px/1.2 var(--display);color:var(--red)}

@media (max-width:900px){
  .pl-cards{grid-template-columns:1fr;gap:26px}
  .pl-demo{grid-template-columns:1fr}
  .pl-dif{grid-template-columns:1fr}
  .pl-dif article+article{padding-left:0;border-left:0;border-top:1px solid var(--line)}
  .pl-tabela-caixa{overflow-x:auto}
  .pl-tabela{min-width:680px}
  .pl-tabela thead th{position:static}
  .pl-tabela tbody th,.pl-tabela thead th:first-child{position:sticky;left:0;background:var(--surface);z-index:2}
  .pl-tabela .sec th{position:sticky;left:0}
  .pl-tabela .sec button{width:min(86vw,100%)}
}
@media (max-width:560px){.pl-avulsos{grid-template-columns:1fr}.pl-comparar .btn{width:100%}}

.pl-tela [hidden]{display:none}