/* =====================================================================
   Lente A Fotografia — Área do cliente e álbuns particulares
   Mesmas cores e fontes do site (assets/css/style.css), sem depender do Bootstrap.
   ===================================================================== */
:root{
  --ink:#0a0a0b; --film:#060607; --smoke:#15151a; --card:#111114; --line:#1f1f24; --line2:#2c2c33;
  --bone:#e7e3da; --ash:#9a9a9a; --dim:#6f6f72;
  --gold:#a8842f; --gold-soft:#cdb068; --pale:#ecd89a;
  --metal:linear-gradient(180deg,#d2b068 0%,#a8842f 48%,#6e521b 100%);
  --f-display:'Bodoni Moda',Didot,'Bodoni 72',serif;
  --f-body:'Cormorant Garamond',Georgia,serif;
  --f-mono:'Space Mono',ui-monospace,Consolas,monospace;
  --f-script:'Pinyon Script','Snell Roundhand',cursive;
  --f-ui:system-ui,'Segoe UI',Roboto,Arial,sans-serif;
  --bar:58px; --gap:6px;
}
*{box-sizing:border-box;}
[hidden]{display:none!important;}
html{scrollbar-gutter:stable;-webkit-text-size-adjust:100%;}
body{margin:0;background-color:var(--ink);color:var(--bone);
  font-family:var(--f-body);font-size:19px;line-height:1.55;-webkit-font-smoothing:antialiased;
  font-variant-numeric:lining-nums;font-feature-settings:"lnum" 1,"onum" 0;
  background-image:radial-gradient(circle at 50% 50%,rgba(255,255,255,.014) 0 1px,transparent 1.6px),
    repeating-linear-gradient(45deg,rgba(0,0,0,.22) 0 1px,transparent 1px 4px),
    repeating-linear-gradient(-45deg,rgba(0,0,0,.22) 0 1px,transparent 1px 4px);
  background-size:5px 5px,6px 6px,6px 6px;}
body.trava{overflow:hidden;}
img{max-width:100%;}
button{font:inherit;color:inherit;background:none;border:0;padding:0;margin:0;cursor:pointer;text-align:inherit;}
button:disabled{cursor:default;opacity:.45;}
:focus-visible{outline:2px solid var(--pale);outline-offset:2px;}
.i{width:18px;height:18px;flex:none;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;}
.over{font:400 10.5px var(--f-mono);letter-spacing:.24em;text-transform:uppercase;color:var(--ash);}
.mono{font-family:var(--f-mono);}
.sc{font-family:var(--f-script);}

/* Botões */
.b{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:13px 20px;border:1px solid var(--gold);
  background:transparent;color:var(--gold-soft);font:400 11px var(--f-mono);letter-spacing:.14em;text-transform:uppercase;
  text-decoration:none;white-space:nowrap;transition:background .2s,color .2s,filter .2s;}
.b:hover{background:rgba(205,176,104,.1);color:var(--pale);}
.b.ouro{background:var(--metal);border-color:transparent;color:#1a1406;font-weight:700;}
.b.ouro:hover{filter:brightness(1.1);color:#1a1406;}
.b.mini{padding:8px 12px;font-size:10px;}
.b.larg{width:100%;}
.lk{display:inline-flex;align-items:center;gap:7px;color:var(--gold-soft);font:400 10.5px var(--f-mono);letter-spacing:.12em;text-transform:uppercase;}
.lk:hover{color:var(--pale);}
.lk .i{width:15px;height:15px;}

/* Campos */
.cp{display:block;margin-top:16px;font:400 10px var(--f-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--ash);}
.cp input,.cp select,.cp textarea{display:block;width:100%;margin-top:7px;padding:13px 14px;background:#0e0e10;border:1px solid var(--line2);
  border-radius:0;color:var(--bone);font:400 16px var(--f-ui);letter-spacing:0;text-transform:none;color-scheme:dark;}
.cp input:focus,.cp select:focus,.cp textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(168,132,47,.22);}

/* =====================================================================
   1 · ENTRADA DO CLIENTE
   ===================================================================== */
.entrar{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(380px,.9fr);}
.en-foto{position:relative;min-height:300px;overflow:hidden;background:#000;}
.en-foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 62%;animation:surge 1.4s ease both;}
.en-foto::after{content:'';position:absolute;inset:18px;border:1px solid rgba(205,176,104,.38);pointer-events:none;}
.en-leg{position:absolute;left:36px;bottom:34px;z-index:1;font:400 10px var(--f-mono);letter-spacing:.24em;text-transform:uppercase;color:rgba(231,227,218,.82);}
.en-painel{display:flex;flex-direction:column;justify-content:center;width:100%;max-width:600px;padding:clamp(28px,6vw,84px);}
.en-logo{height:74px;width:auto;align-self:flex-start;margin-bottom:clamp(22px,5vh,54px);}
.en-painel h1{margin:12px 0 0;font:500 clamp(34px,4.2vw,56px)/1.02 var(--f-display);letter-spacing:-.01em;color:#f4f1ea;}
.en-painel h1 em{font-style:italic;color:var(--gold-soft);}
.en-sub{margin:16px 0 4px;color:var(--ash);max-width:26em;}
.en-painel form{margin-top:6px;} .en-painel form .b{margin-top:24px;}
.en-links{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 18px;margin-top:18px;}
.en-ajuda{margin:clamp(24px,5vh,48px) 0 0;padding-top:18px;border-top:1px solid var(--line);font-size:16px;color:var(--dim);}
.en-ajuda b{color:var(--ash);font-weight:500;}
@media(max-width:860px){.entrar{grid-template-columns:1fr;grid-template-rows:26vh auto;}.en-foto{min-height:0;}
  .en-painel{max-width:none;justify-content:flex-start;padding-top:20px;}
  .en-foto::after{inset:10px;}.en-leg{left:22px;bottom:20px;}.en-logo{height:46px;margin-bottom:16px;}
  .en-painel h1{font-size:30px;}.en-sub{margin-top:10px;font-size:17px;}.en-painel .cp{margin-top:12px;}.en-painel form .b{margin-top:18px;}}

/* =====================================================================
   2 · MEUS ÁLBUNS
   ===================================================================== */
.cl-top{display:flex;align-items:center;gap:14px;padding:10px clamp(16px,4vw,44px);border-bottom:1px solid var(--line);}
.cl-top img{height:40px;display:block;}
.cl-quem{margin-left:auto;display:flex;align-items:center;gap:16px;font:400 11px var(--f-mono);letter-spacing:.08em;color:var(--ash);}
.al-wrap{max-width:1180px;margin:0 auto;padding:clamp(34px,7vh,80px) clamp(18px,4vw,44px) 90px;}
.al-wrap h1{margin:10px 0 12px;font:italic 500 clamp(40px,6vw,72px)/1 var(--f-display);color:#f4f1ea;}
.al-wrap>p{margin:0;max-width:34em;color:var(--ash);}
.al-lista{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:clamp(18px,3vw,42px);margin-top:44px;}
@media(max-width:860px){.al-lista{grid-template-columns:1fr 1fr;}} @media(max-width:540px){.al-lista{grid-template-columns:1fr;}}
.al-card{display:block;width:100%;}
.al-capa{position:relative;display:block;aspect-ratio:4/5;padding:10px;border:1px solid var(--line2);background:#0d0d0f;overflow:hidden;transition:border-color .35s;}
.al-capa img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .9s ease,filter .5s;}
.al-card:hover .al-capa{border-color:var(--gold-soft);} .al-card:hover .al-capa img{transform:scale(1.035);}
.al-card.arq .al-capa img{filter:grayscale(1) brightness(.45);}
.al-trava{position:absolute;inset:0;display:grid;place-items:center;color:var(--bone);} .al-trava .i{width:30px;height:30px;}
.al-selo{position:absolute;left:20px;top:20px;padding:4px 9px;background:var(--metal);color:#1a1406;font:700 9.5px var(--f-mono);letter-spacing:.18em;text-transform:uppercase;}
.al-tit{display:block;margin-top:16px;font:500 26px/1.1 var(--f-display);color:#f4f1ea;}
.al-meta{display:block;margin-top:7px;font:400 10.5px var(--f-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ash);}
.al-val{display:flex;align-items:center;gap:7px;margin-top:9px;font-size:16px;color:var(--ash);}
.al-val .i{width:15px;height:15px;color:var(--gold-soft);} .al-val.aviso{color:#e8d6bc;}

/* =====================================================================
   3 · ÁLBUM
   ===================================================================== */
/* Barra fixa: capítulos + ações */
.tb{position:sticky;top:0;z-index:50;display:flex;align-items:center;flex-wrap:wrap;gap:6px 18px;padding:8px clamp(10px,2vw,28px);
  background:rgba(10,10,11,.93);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);}
.tb-logo{flex:none;display:block;} .tb-logo img{display:block;height:40px;}
.tb-caps{flex:1 1 0;min-width:0;display:flex;gap:2px;overflow-x:auto;scrollbar-width:none;}
.tb-caps::-webkit-scrollbar{display:none;}
.tb-caps button{flex:none;padding:10px 12px;border-bottom:1px solid transparent;color:var(--ash);white-space:nowrap;
  font:400 10.5px var(--f-mono);letter-spacing:.16em;text-transform:uppercase;transition:color .2s,border-color .2s;}
.tb-caps button b{margin-right:7px;font:italic 500 15px var(--f-display);letter-spacing:0;text-transform:none;color:var(--gold-soft);}
.tb-caps button:hover{color:var(--bone);} .tb-caps button.on{color:var(--pale);border-bottom-color:var(--gold-soft);}
.tb-acoes{flex:none;display:flex;align-items:center;gap:2px;margin-left:auto;}
.tb-b{display:inline-flex;align-items:center;gap:7px;padding:10px;color:var(--bone);white-space:nowrap;
  font:400 10.5px var(--f-mono);letter-spacing:.12em;text-transform:uppercase;transition:color .2s;}
.tb-b:hover{color:var(--pale);} .tb-b[aria-pressed=true]{color:var(--gold-soft);}
#btFavs[aria-pressed=true] .i,#lbFav[aria-pressed=true] .i{fill:currentColor;}
.cont{min-width:20px;padding:1px 5px;border:1px solid var(--line2);font-size:10px;letter-spacing:0;text-align:center;}
.tb-acoes .b{margin-left:8px;}
@media(max-width:1240px){.tb-caps{order:3;flex:1 0 100%;}}
@media(max-width:980px){.rot{display:none;}.tb-acoes .b{padding:9px 12px;}}
@media(max-width:560px){.tb{gap:2px 8px;padding:6px 8px 0;}.tb-logo img{height:32px;}.tb-b{padding:9px 8px;}.tb-acoes .b{margin-left:4px;}.tb-caps button{padding:9px 10px;}}

/* Capa — a folha de rosto do álbum */
.capa{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1fr);align-items:center;gap:clamp(28px,5.5vw,92px);
  max-width:1260px;margin:0 auto;padding:clamp(28px,6vh,74px) clamp(18px,4vw,48px) clamp(34px,7vh,84px);}
.capa-foto{position:relative;justify-self:end;width:min(100%,470px);padding:14px;border:1px solid rgba(205,176,104,.42);background:#0d0d0f;
  box-shadow:0 40px 90px rgba(0,0,0,.55);}
.capa-foto img{display:block;width:100%;aspect-ratio:2/3;object-fit:cover;background:#121215;}
.capa-txt h1{margin:14px 0 0;font:italic 500 clamp(48px,7.2vw,106px)/.92 var(--f-display);letter-spacing:-.015em;color:#f4f1ea;}
.capa-txt h1 span{display:block;padding-left:.72em;}
.capa-fam{display:inline-block;margin:14px 0 0 6px;font:400 clamp(34px,4vw,52px)/1 var(--f-script);color:var(--gold-soft);transform:rotate(-3deg);transform-origin:left center;}
.capa-meta{display:flex;flex-wrap:wrap;gap:6px 22px;margin:26px 0 0;padding:0;list-style:none;font:400 10.5px var(--f-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--ash);}
.capa-meta li{display:flex;align-items:center;gap:8px;} .capa-meta .i{width:15px;height:15px;color:var(--gold-soft);}
.capa-bilhete{margin:26px 0 0;max-width:27em;font-size:21px;font-style:italic;line-height:1.5;color:#d6d1c6;}
.capa-assina{margin-top:6px;font:400 30px/1.2 var(--f-script);color:var(--gold-soft);}
.capa-acoes{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:28px;}
.capa-val{display:flex;align-items:center;gap:8px;margin-top:18px;font-size:16px;color:var(--ash);}
.capa-val .i{width:15px;height:15px;color:var(--gold-soft);}
@media(max-width:860px){.capa{grid-template-columns:1fr;gap:24px;padding-top:22px;}.capa-foto{justify-self:center;padding:9px;width:min(76%,340px);}
  .capa-foto img{aspect-ratio:4/5;}.capa-txt{text-align:center;}.capa-txt h1 span{padding-left:0;}.capa-fam{margin-left:0;transform-origin:center;}
  .capa-meta,.capa-acoes,.capa-val{justify-content:center;}.capa-bilhete{margin-left:auto;margin-right:auto;font-size:19px;}}
.capa.entra .capa-foto{animation:sobe 1s cubic-bezier(.2,.7,.2,1) both;}
.capa.entra .capa-txt>*{animation:sobe .8s cubic-bezier(.2,.7,.2,1) both;}
.capa.entra .capa-txt>:nth-child(1){animation-delay:.15s;}.capa.entra .capa-txt>:nth-child(2){animation-delay:.25s;}
.capa.entra .capa-txt>:nth-child(3){animation-delay:.4s;}.capa.entra .capa-txt>:nth-child(n+4){animation-delay:.55s;}
@keyframes sobe{from{opacity:0;transform:translateY(22px);}to{opacity:1;transform:none;}}
@keyframes surge{from{opacity:0;transform:scale(1.04);}to{opacity:1;transform:none;}}
.capa.entra .capa-fam{animation-name:sobeGira;}
@keyframes sobeGira{from{opacity:0;transform:translateY(22px) rotate(-3deg);}to{opacity:1;transform:rotate(-3deg);}}

/* Cabeçalho das favoritas (quando o filtro está ligado) */
.favs-h{max-width:1640px;margin:0 auto;padding:clamp(30px,6vh,64px) clamp(14px,2.4vw,32px) 0;}
.favs-h h2{margin:8px 0 8px;font:italic 500 clamp(34px,5vw,60px)/1 var(--f-display);color:#f4f1ea;}
.favs-h p{margin:0 0 18px;max-width:34em;color:var(--ash);}
.vazio{max-width:520px;margin:40px auto;padding:34px 24px;border:1px dashed var(--line2);text-align:center;color:var(--ash);}
.vazio .i{width:28px;height:28px;color:var(--gold-soft);}

/* Capítulos */
.cap{max-width:1640px;margin:0 auto;padding:0 clamp(8px,2vw,28px);scroll-margin-top:calc(var(--bar) + 6px);}
.cap-h{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px 20px;padding:clamp(40px,7vh,86px) 4px 16px;margin-bottom:10px;border-bottom:1px solid var(--line);}
.cap-n{min-width:.9em;font:italic 500 clamp(56px,6vw,92px)/.78 var(--f-display);background:var(--metal);-webkit-background-clip:text;background-clip:text;color:transparent;}
.cap-t h2{margin:5px 0 0;font:500 clamp(26px,3vw,40px)/1.05 var(--f-display);color:#f4f1ea;}
.cap-r{display:flex;align-items:center;gap:20px;margin-left:auto;font:400 10.5px var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ash);}
@media(max-width:700px){.cap-r{flex:1 0 100%;margin-left:0;justify-content:space-between;}}
body.so-favs .cap-r{display:none;} body.so-favs .cap-h{padding-top:clamp(24px,4vh,44px);}

/* Grade justificada — largura/altura de cada foto vêm do JS (leiaute) */
.grade{display:flex;flex-wrap:wrap;gap:var(--gap);--h:230px;}
.ph{position:relative;flex:none;margin:0;width:calc(var(--r)*var(--h));height:var(--h);overflow:hidden;background:#121215;}
.ph-abre{position:absolute;inset:0;display:block;width:100%;height:100%;cursor:zoom-in;}
.ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .6s ease,transform .6s ease;}
.ph img.ok{opacity:1;}
.ph::after{content:'';position:absolute;left:0;right:0;bottom:0;height:60px;background:linear-gradient(transparent,rgba(0,0,0,.66));opacity:0;transition:opacity .25s;pointer-events:none;}
.ph-n{position:absolute;left:10px;bottom:9px;z-index:2;font:400 10px/1 var(--f-mono);letter-spacing:.14em;color:var(--pale);opacity:0;transition:opacity .25s;pointer-events:none;}
.ph-b{position:absolute;bottom:3px;z-index:2;width:34px;height:34px;display:grid;place-items:center;color:#fff;opacity:0;transition:opacity .25s,color .2s,transform .2s;}
.ph-dl{right:3px;} .ph-fav{right:37px;}
.ph-b:hover{color:var(--pale);transform:scale(1.14);}
@media(hover:hover){.ph:hover img{transform:scale(1.025);}.ph:hover::after,.ph:hover .ph-n,.ph:hover .ph-b{opacity:1;}}
.ph:focus-within::after,.ph:focus-within .ph-n,.ph:focus-within .ph-b{opacity:1;}
/* Favorita = quadro marcado, como na folha de contato */
.ph.fav::before{content:'';position:absolute;inset:0;z-index:1;border:1.5px solid var(--gold-soft);pointer-events:none;}
.ph.fav .ph-fav{opacity:1;color:var(--gold-soft);} .ph.fav .ph-fav .i{fill:currentColor;}
@media(hover:none){.ph-n,.ph-dl{display:none;}.ph-fav{right:3px;pointer-events:none;}.ph.fav::after{opacity:1;}}
/* Modo seleção */
.ph-chk{position:absolute;top:8px;left:8px;z-index:3;width:24px;height:24px;border-radius:50%;display:none;place-items:center;
  border:1.5px solid rgba(255,255,255,.9);background:rgba(0,0,0,.4);pointer-events:none;}
.ph-chk .i{width:14px;height:14px;stroke-width:2.6;color:#1a1406;opacity:0;}
body.sel-on .ph-chk{display:grid;} body.sel-on .ph-abre{cursor:pointer;} body.sel-on .ph-b{display:none;}
.ph.sel{background:#1d1a12;} .ph.sel img{transform:scale(.92);}
.ph.sel .ph-chk{background:var(--gold-soft);border-color:var(--gold-soft);} .ph.sel .ph-chk .i{opacity:1;}
.selbar{position:fixed;left:50%;bottom:14px;z-index:90;transform:translateX(-50%);display:flex;align-items:center;gap:10px;
  padding:10px 12px 10px 18px;background:var(--card);border:1px solid var(--gold);box-shadow:0 18px 50px rgba(0,0,0,.65);}
.selbar span{margin-right:8px;font:400 11px var(--f-mono);letter-spacing:.08em;color:var(--bone);white-space:nowrap;}
@media(max-width:700px){.selbar{left:8px;right:8px;transform:none;flex-wrap:wrap;}.selbar span{flex:1 0 100%;}}

/* Colofão — fecha o álbum */
.colofao{max-width:680px;margin:clamp(64px,12vh,140px) auto 0;padding:0 22px 90px;text-align:center;color:var(--ash);}
.colofao .sc{font-size:38px;line-height:1.1;color:var(--gold-soft);}
.colofao p{margin:14px 0 22px;font-style:italic;}
.colofao small{display:block;margin-top:22px;font:400 10.5px var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--dim);}

/* =====================================================================
   Foto ampliada
   ===================================================================== */
.lb{position:fixed;inset:0;z-index:200;display:grid;grid-template-rows:auto minmax(0,1fr) auto;background:var(--film);}
.lb-top{display:flex;align-items:center;gap:6px;padding:6px clamp(6px,1.4vw,18px);border-bottom:1px solid var(--line);}
.lb-info{flex:1;min-width:0;text-align:center;}
#lbN{display:block;font:italic 500 22px/1.1 var(--f-display);color:#f4f1ea;}
#lbCap{font:400 10px var(--f-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ash);}
.lb-acoes{display:flex;align-items:center;}
.lb-palco{position:relative;display:grid;place-items:center;min-height:0;padding:clamp(10px,2.6vh,30px) clamp(8px,6vw,100px);overflow:hidden;}
#lbImg{display:block;background:#101013;box-shadow:0 30px 80px rgba(0,0,0,.6);opacity:0;transition:opacity .35s ease;}
#lbImg.vis{opacity:1;}
.lb-nav{position:absolute;top:50%;z-index:2;width:48px;height:48px;margin-top:-24px;border-radius:50%;display:grid;place-items:center;
  border:1px solid var(--gold);background:rgba(10,10,11,.62);color:var(--pale);transition:background .25s;}
.lb-nav:hover{background:rgba(205,176,104,.22);color:#fff;} .lb-nav .i{width:22px;height:22px;}
.lb-nav.prev{left:16px;} .lb-nav.next{right:16px;}
@media(max-width:700px){.lb-nav{display:none;}.lb-palco{padding:10px 6px;}}
.lb-base{padding:10px 14px 14px;text-align:center;font:400 10.5px var(--f-mono);letter-spacing:.08em;color:var(--dim);}
.pop{position:relative;}
.pop-m{position:absolute;right:0;top:100%;z-index:5;min-width:250px;padding:6px;background:var(--card);border:1px solid var(--gold);box-shadow:0 18px 50px rgba(0,0,0,.7);}
.pop-m button{display:block;width:100%;padding:10px 12px;} .pop-m button:hover{background:rgba(205,176,104,.1);}
.pop-m b{display:block;font:400 11px var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--pale);}
.pop-m span{display:block;font-size:16px;color:var(--ash);}

/* =====================================================================
   Janelas (baixar, compartilhar, acesso, aviso) e avisos rápidos
   ===================================================================== */
.md{position:fixed;inset:0;z-index:220;display:grid;place-items:center;padding:14px;background:rgba(4,4,5,.78);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);overflow:auto;}
.md-cx{position:relative;width:min(100%,580px);padding:clamp(22px,4vw,38px);background:var(--ink);border:1px solid var(--line2);box-shadow:0 40px 100px rgba(0,0,0,.7);animation:sobe .35s ease both;}
.md-x{position:absolute;right:10px;top:10px;width:38px;height:38px;display:grid;place-items:center;color:var(--ash);} .md-x:hover{color:var(--pale);}
.md-cx h2{margin:8px 0 10px;font:italic 500 clamp(28px,4vw,38px)/1.05 var(--f-display);color:#f4f1ea;}
.md-cx>p{margin:0 0 16px;color:var(--ash);}
.q{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0 6px;}
@media(max-width:520px){.q{grid-template-columns:1fr;}}
.q-op{position:relative;display:block;padding:14px 14px 12px;border:1px solid var(--line2);cursor:pointer;transition:border-color .2s,background .2s;}
.q-op input{position:absolute;opacity:0;}
.q-op:has(input:checked){border-color:var(--gold-soft);background:rgba(205,176,104,.07);}
.q-op:has(input:focus-visible){outline:2px solid var(--pale);outline-offset:2px;}
.q-t{display:block;font:400 11px var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--pale);}
.q-d{display:block;margin-top:5px;font-size:16.5px;line-height:1.3;color:var(--ash);}
.q-n{display:block;margin-top:9px;font:italic 500 24px/1 var(--f-display);color:#f4f1ea;}
.partes{margin:16px 0 0;padding:0;list-style:none;border-top:1px solid var(--line);}
.partes li{position:relative;display:flex;align-items:center;gap:12px;padding:12px 2px 13px;border-bottom:1px solid var(--line);}
.partes li>div{flex:1;min-width:0;}
.partes b{display:block;font:500 20px/1.2 var(--f-display);color:#f4f1ea;}
.partes span{display:block;font:400 10px var(--f-mono);letter-spacing:.1em;color:var(--ash);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.barra{position:absolute;left:0;right:0;bottom:-1px;height:2px;} .barra i{display:block;width:0;height:100%;background:var(--gold-soft);transition:width .12s linear;}
.partes li.ok .b{border-color:#2e5a3a;color:#bfe3c8;} .partes li.ok .barra i{background:#3f7a50;}
.md-pe{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;}
.nota{margin:14px 0 0;font-size:16px;line-height:1.4;color:var(--dim);}
.copia{display:flex;align-items:center;gap:12px;margin-top:10px;padding:10px 10px 10px 14px;border:1px solid var(--line2);background:#0e0e10;}
.copia>span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:400 13px var(--f-mono);color:var(--bone);}
.copia small{display:block;font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ash);}
.chave{display:flex;align-items:flex-start;gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line);font-size:17px;color:var(--bone);cursor:pointer;}
.chave input{margin-top:5px;width:16px;height:16px;accent-color:#cdb068;} .chave small{display:block;font-size:15.5px;color:var(--dim);}
.msg-acesso{margin:0;padding:14px 16px;background:#0e0e10;border:1px solid var(--line2);border-left:2px solid var(--gold-soft);
  font:400 14px/1.55 var(--f-ui);color:var(--bone);white-space:pre-wrap;}
.toast{position:fixed;left:50%;bottom:18px;z-index:300;transform:translate(-50%,16px);max-width:min(92vw,560px);padding:11px 16px;
  background:var(--card);border:1px solid var(--gold);color:var(--bone);font:400 11.5px/1.5 var(--f-mono);letter-spacing:.02em;text-align:center;
  box-shadow:0 18px 50px rgba(0,0,0,.7);opacity:0;pointer-events:none;transition:opacity .25s,transform .25s;}
.toast.on{opacity:1;transform:translate(-50%,0);}

/* =====================================================================
   Complementos das páginas reais
   ===================================================================== */
.tela{min-height:100vh;}
a{color:var(--gold-soft);}
.lk,.al-card{text-decoration:none;} .al-card{color:inherit;}
.en-ajuda a{color:inherit;text-decoration:none;}
.entrar.sem-foto{grid-template-columns:1fr;} .entrar.sem-foto .en-painel{margin:0 auto;}
.capa.sem-capa{grid-template-columns:1fr;max-width:860px;}
.capa-txt h1.longo{font-size:clamp(38px,5vw,72px);line-height:1;}
.cap.sem-titulo{padding-top:clamp(18px,4vh,40px);}
.colofao small a{color:inherit;}
.erro-form{margin:14px 0 0;padding:10px 14px;border:1px solid #5a2e2e;background:rgba(90,46,46,.18);color:#e8bcbc;font-size:17px;}
.aviso-form{margin:14px 0 0;padding:10px 14px;border:1px solid #2e5a3a;background:rgba(46,90,58,.18);color:#bfe3c8;font-size:17px;}
.faixa-painel{padding:7px 14px;background:#15120a;border-bottom:1px dashed rgba(205,176,104,.6);color:var(--pale);font:400 11px var(--f-mono);letter-spacing:.04em;text-align:center;}
.faixa-painel a{color:#f3e2ad;text-decoration:underline;}
.al-capa.vazia{display:grid;place-items:center;color:var(--dim);} .al-capa.vazia .i{width:34px;height:34px;}
.pagina-aviso{max-width:560px;margin:0 auto;padding:clamp(60px,16vh,160px) 22px 80px;text-align:center;}
.pagina-aviso h1{margin:10px 0 14px;font:italic 500 clamp(34px,5vw,54px)/1.05 var(--f-display);color:#f4f1ea;}
.pagina-aviso p{margin:0 0 26px;color:var(--ash);}
.pagina-aviso .acoes{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;}
.partes li.parou .b{border-color:#5a4a2e;color:#e8d6bc;}
.partes .carregando{padding:18px 2px;color:var(--ash);font-size:17px;}
.q-op:has(input:disabled){opacity:.4;cursor:default;}
.dica-ios{margin:14px 0 0;padding:10px 14px;border:1px solid var(--line2);font-size:16.5px;line-height:1.4;color:var(--ash);}

/* Vídeos: selo com ▶ e duração na grade; player na tela ampliada; lista própria no download */
.ph-vid{position:absolute;top:8px;right:8px;z-index:2;display:flex;align-items:center;gap:5px;padding:4px 9px 4px 7px;border-radius:99px;
  background:rgba(10,10,12,.72);color:var(--gold-soft);font:400 10.5px/1 var(--f-mono);letter-spacing:.06em;pointer-events:none;}
.ph-vid .i{width:11px;height:11px;fill:currentColor;stroke-width:1;}
.ph.vid .ph-abre{cursor:pointer;}
#lbVid{display:block;max-width:100%;max-height:100%;background:#000;box-shadow:0 30px 80px rgba(0,0,0,.6);}
.vids-t{margin:22px 0 0;}
#vidsBaixar .partes{margin-top:10px;}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important;}}
