/* ===== álbum: caderneta de papel (fase 5, opção A, fechada a 26 out 2026) ===== */
.ab-stage{container-type:size;--u:min(1cqw,1.7778cqh);--paper:#f3eee2;--pink:#5b5446;background:radial-gradient(70% 50% at 50% 0,rgba(255,240,200,.08),transparent 70%),repeating-linear-gradient(180deg,rgba(255,255,255,.025) 0 48px,transparent 48px 96px),linear-gradient(180deg,#14223d,#0a1424)}
.ab-hud{position:absolute;left:2%;right:2%;top:2.2%;height:7%;display:flex;align-items:center;gap:calc(1.2*var(--u));z-index:20}
.ab-hud h3{margin:0;font-family:var(--f-display);font-weight:700;font-size:calc(2.2*var(--u));text-transform:uppercase;line-height:1;color:#fff}
.ab-tot{display:grid;gap:calc(.25*var(--u));min-width:calc(13*var(--u))}
.ab-tot span{font-family:var(--f-display);font-size:calc(1*var(--u));letter-spacing:.12em;text-transform:uppercase;color:#9fb0cc;display:flex;justify-content:space-between}
.ab-tot span b{color:#fff;font-size:calc(1.2*var(--u))}
.ab-tot .hm-bar{height:calc(.6*var(--u))}
.ab-tabs{display:flex;gap:calc(.5*var(--u))}
.ab-tabs button{width:calc(3.2*var(--u));height:calc(3.6*var(--u));padding:calc(.3*var(--u));border:0;border-radius:calc(.6*var(--u));background:rgba(6,12,26,.6);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);cursor:pointer;opacity:.6}
.ab-tabs button[aria-current=true]{opacity:1;box-shadow:inset 0 0 0 calc(.2*var(--u)) #ffc440}
.ab-tabs svg{width:100%;height:100%}
.ab-filters{display:flex;gap:calc(.5*var(--u));margin-left:auto}
.ab-filters button{border:0;cursor:pointer;padding:calc(.45*var(--u)) calc(.9*var(--u));border-radius:999px;background:rgba(6,12,26,.7);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);color:#eef2f8;font-family:var(--f-display);font-weight:600;font-size:calc(1.05*var(--u));letter-spacing:.06em;text-transform:uppercase}
.ab-filters button[aria-pressed=true]{background:var(--fade);color:#1a1206;box-shadow:none}
.ab-book{position:absolute;left:3%;right:3%;top:11%;bottom:4%;display:grid;grid-template-columns:1fr 1fr;perspective:2400px;filter:drop-shadow(0 calc(1.6*var(--u)) calc(2*var(--u)) rgba(0,0,0,.55))}
.ab-page{position:relative;background:radial-gradient(120% 90% at 50% 40%,var(--paper),#e6dfcf);color:var(--pink);padding:calc(1.6*var(--u)) calc(1.8*var(--u));overflow:hidden;display:flex;flex-direction:column}
.ab-page::before{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(0,0,0,.012) 0 2px,transparent 2px 4px),repeating-linear-gradient(90deg,rgba(0,0,0,.01) 0 3px,transparent 3px 7px)}
.ab-page.l{border-radius:calc(1.2*var(--u)) 0 0 calc(1.2*var(--u));box-shadow:inset calc(-3*var(--u)) 0 calc(3*var(--u)) calc(-2*var(--u)) rgba(60,40,10,.4)}
.ab-page.r{border-radius:0 calc(1.2*var(--u)) calc(1.2*var(--u)) 0;box-shadow:inset calc(3*var(--u)) 0 calc(3*var(--u)) calc(-2*var(--u)) rgba(60,40,10,.4)}
.ab-ph{display:flex;align-items:center;gap:calc(1*var(--u));padding:calc(.8*var(--u)) calc(1.2*var(--u));margin:calc(-1.6*var(--u)) calc(-1.8*var(--u)) calc(1*var(--u));background:var(--c1);color:var(--c2)}
.ab-ph>span:first-child{width:calc(3.6*var(--u));flex:none}
.ab-ph b{font-family:var(--f-display);font-weight:700;font-size:calc(2.1*var(--u));text-transform:uppercase;line-height:1}
.ab-ph small{display:block;font-size:calc(1*var(--u));letter-spacing:.12em;text-transform:uppercase;opacity:.85}
.ab-pc{margin-left:auto;font-family:var(--f-display);font-weight:700;font-size:calc(1.8*var(--u))}
.ab-pc em{font-style:normal;color:#ffd458}
.ab-info{display:flex;gap:calc(2.4*var(--u));font-size:calc(1.05*var(--u));line-height:1.35;margin-bottom:calc(1*var(--u))}
.ab-info b{display:block;font-family:var(--f-display);font-size:calc(.85*var(--u));letter-spacing:.12em;text-transform:uppercase;color:#9b9280}
.ab-spec{flex:1;display:grid;align-content:center;gap:calc(1.2*var(--u));--sw:calc(9.2*var(--u))}
.ab-row{display:flex;justify-content:center;gap:calc(1.4*var(--u))}
.ab-pt{font-family:var(--f-display);font-weight:700;font-size:calc(1.5*var(--u));text-transform:uppercase;color:var(--c1);display:flex;justify-content:space-between;margin-bottom:calc(1*var(--u))}
.ab-pt span{color:#9b9280;font-weight:600;letter-spacing:.12em;font-size:.75em}
.ab-grid{flex:1;display:grid;grid-template-columns:repeat(4,var(--sw));justify-content:center;align-content:center;gap:calc(1.4*var(--u)) calc(1.2*var(--u));--sw:calc(9.4*var(--u))}
.ab-slot{position:relative;width:var(--sw);aspect-ratio:5/7;padding:0;border:0;background:none;cursor:pointer;transition:opacity .3s,filter .3s}
.ab-slot.hz{width:calc(var(--sw)*1.96);aspect-ratio:7/5}
.ab-slot.empty{cursor:default;border:calc(.15*var(--u)) dashed #b9b2a3;border-radius:calc(.6*var(--u));background:rgba(120,100,60,.05);display:grid;place-items:center;align-content:center;text-align:center}
.ab-slot.empty b{font-family:var(--f-display);font-weight:700;font-size:calc(3*var(--u));line-height:1;color:#c9c1b0}
.ab-slot.empty span{font-family:var(--f-display);font-size:calc(.9*var(--u));letter-spacing:.1em;text-transform:uppercase;color:#a89f8b}
.ab-slot:not(.empty){filter:drop-shadow(0 calc(.3*var(--u)) calc(.4*var(--u)) rgba(60,40,10,.35))}
.ab-slot.off{opacity:.18;filter:grayscale(1)}
.ab-dup{position:absolute;right:calc(-.5*var(--u));bottom:calc(-.5*var(--u));z-index:5;padding:0 calc(.5*var(--u));border-radius:calc(1*var(--u));background:var(--fade);color:#1a1206;font-family:var(--f-display);font-weight:700;font-size:calc(1*var(--u))}
.ab-slot.stuck .cd{animation:abpress .6s cubic-bezier(.2,1.6,.4,1) both}
.ab-slot.stuck::after{content:"";position:absolute;inset:0;z-index:6;pointer-events:none;background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.75) 50%,transparent 65%) no-repeat;background-size:250% 100%;animation:abshine 1s .3s ease-out both}
@keyframes abpress{0%{transform:translateY(-30%) scale(1.4) rotate(-8deg);opacity:0}55%{transform:scale(.95);opacity:1}100%{transform:none}}
@keyframes abshine{from{background-position:130% 0}to{background-position:-130% 0}}
.ab-blank{flex:1;display:grid;place-items:center;align-content:center;gap:calc(1*var(--u));opacity:.35;text-align:center}
.ab-blank svg{width:calc(8*var(--u))}
.ab-blank b{font-family:var(--f-display);font-size:calc(2*var(--u));text-transform:uppercase;color:var(--c1)}
.ab-blank span{font-family:var(--f-display);letter-spacing:.2em;text-transform:uppercase;font-size:calc(1.1*var(--u))}
.ab-pn{position:absolute;bottom:calc(.8*var(--u));font-family:var(--f-display);font-size:calc(1*var(--u));color:#a89f8b}
.ab-page.l .ab-pn{left:calc(1.8*var(--u))}.ab-page.r .ab-pn{right:calc(1.8*var(--u))}
.ab-leaf{position:absolute;top:0;bottom:0;width:50%;transform-style:preserve-3d;z-index:10}
.ab-leaf>.ab-page{position:absolute;inset:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}
.ab-leaf>.bk{transform:rotateY(180deg)}
.ab-corner{position:absolute;bottom:2%;z-index:12;width:calc(3.6*var(--u));height:calc(3.6*var(--u));border:0;cursor:pointer;background:none;color:#8c836f;font-size:calc(2.4*var(--u));display:grid;place-items:center}
.ab-corner.nx{right:1.5%}.ab-corner.pv{left:1.5%}
/* cromo horizontal (equipa e estádio) */
.cd.hz{aspect-ratio:7/5;font-size:4.2cqw}
.cd.hz .top{top:5%;height:20%}
.cd.hz .art{left:4%;right:auto;width:52%;top:24%;height:70%}
.cd.hz .art.obj>svg,.cd.hz .art.obj>div{height:100%;width:100%;bottom:0}
.cd.hz .nm{left:58%;right:5%;top:42%;white-space:normal;text-align:left;font-size:1.4em}
.cd.hz .stats.one{left:58%;right:5%;top:70%;text-align:left}
/* telemóvel deitado: o álbum também ocupa o ecrã todo, por cima do menu de baixo fica a caderneta */
.land.home-on .ab-stage .ab-book{bottom:16%}
.land.home-on .ab-stage .ab-corner{bottom:1%}
