/* The printed Lakbay cards (spirits and Special cards), shared by the game (lakbay.html) and the card pages
   (/games/lakbay/cards/). Design F (Salapi), scoped under .lk-sc. Tiers: K, B, M, A, and E for Espesyal. */
.lk-sc .card{position:relative;width:280px;height:392px;box-sizing:border-box;padding:0;border:0;border-radius:9px;background:none;box-shadow:none;color:var(--ink);overflow:visible;perspective:1100px;touch-action:pan-y}
.lk-sc .c3d{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .55s cubic-bezier(.2,.9,.3,1.25);transform:translateZ(var(--lift,0px)) rotateX(var(--rx,var(--rest-x,4deg))) rotateY(calc(var(--ry,var(--rest-y,-11deg)) + var(--flip,0deg)))}
.lk-sc .card.on .c3d{--lift:34px;transition:transform .1s ease-out}
.lk-sc .cface{position:absolute;inset:0;border-radius:9px;background:var(--paper);overflow:hidden;backface-visibility:hidden}
.lk-sc .cfront{transform:translateZ(9px)}
.lk-sc .cback{transform:rotateY(180deg) translateZ(9px);display:grid;place-items:center}
.lk-sc .ply{position:absolute;inset:0;border-radius:9px;background:var(--edge);transform:translateZ(var(--d))}
.lk-sc .ply:nth-child(even){background:var(--edge2)}
.lk-sc .gs{position:absolute;left:8%;right:8%;bottom:-14px;height:30px;border-radius:50%;background:rgba(40,24,8,.5);filter:blur(12px);opacity:.75;transform:translateX(var(--sx,0px));transition:transform .4s,opacity .3s;pointer-events:none}
.lk-sc .card.on .gs{opacity:1;transition:transform .1s}
.lk-sc .mark{position:relative;display:grid;gap:2px;justify-items:center;font:800 31px 'Cinzel',serif;letter-spacing:.06em}
.lk-sc .mark small{font:700 12px 'JetBrains Mono',monospace;letter-spacing:.04em}
.lk-sc .cback .rose{top:74px}
.lk-sc .t-K{--paper:#E9EDDB;--ink:#2B4A33;--tint:rgba(43,74,51,.18);--oval:#D3DEC2;--red:#A8232B;--edge:#b9c7a2;--edge2:#8fa37c}
.lk-sc .t-B{--paper:#DFE8F0;--ink:#1D3D69;--tint:rgba(29,61,105,.18);--oval:#C5D6E8;--red:#A8232B;--edge:#9db6d3;--edge2:#6f8fb6}
.lk-sc .t-M{--paper:#F7E3D6;--ink:#761B38;--tint:rgba(118,27,56,.2);--oval:#F0C8B4;--red:#A8232B;--edge:#c88a95;--edge2:#a35068}
.lk-sc .t-A{--paper:#15141A;--ink:#E5C266;--tint:rgba(229,194,102,.2);--oval:#272230;--red:#FF7A5C;--edge:#e5c266;--edge2:#a07f2e}
.lk-sc .guil{position:absolute;inset:0;background:repeating-radial-gradient(circle at 50% 38%,var(--tint) 0 1px,transparent 1px 6px)}
.lk-sc .frame{position:absolute;inset:7px;border:2px solid var(--ink);outline:1px solid var(--ink);outline-offset:-5px;border-radius:3px}
.lk-sc .rose{position:absolute;left:18px;top:24px;width:244px;height:244px;border-radius:50%;background:repeating-conic-gradient(var(--ink) 0 1.5deg,transparent 1.5deg 6deg);opacity:.5;-webkit-mask:radial-gradient(circle,transparent 66%,#000 67%);mask:radial-gradient(circle,transparent 66%,#000 67%);animation:lksc-spin var(--rs,60s) linear infinite}
.lk-sc .t-B{--rs:30s}
.lk-sc .t-M{--rs:16s}
.lk-sc .t-A{--rs:9s}
.lk-sc .oval{position:absolute;left:50px;top:40px;width:180px;height:212px;border-radius:50%;background:var(--oval);border:3px solid var(--ink);box-sizing:border-box}
.lk-sc .thread{position:absolute;right:30px;top:34px;bottom:42px;width:5px;background:repeating-linear-gradient(#D9A92F 0 15px,transparent 15px 21px)}
.lk-sc .t-B .thread,.lk-sc .t-M .thread,.lk-sc .t-A .thread{animation:lksc-shift 3s linear infinite}
.lk-sc .sp{position:absolute;left:30px;top:30px;width:220px;height:226px;object-fit:contain}
.lk-sc .top{position:absolute;left:18px;right:18px;top:15px;display:flex;justify-content:space-between;font:700 11px 'JetBrains Mono',monospace}
.lk-sc .name{position:absolute;left:12px;right:12px;top:260px;text-align:center;font:800 25px/1.1 'Cinzel',serif}
.lk-sc .meta{position:absolute;left:12px;right:12px;top:292px;text-align:center;font:500 13px/1.3 'Schibsted Grotesk',sans-serif}
.lk-sc .serial{position:absolute;left:18px;right:18px;bottom:17px;display:flex;justify-content:space-between;align-items:baseline;color:var(--red);font:700 15px 'JetBrains Mono',monospace;letter-spacing:.04em}
.lk-sc .serial small{font-size:11px}
@keyframes lksc-shift{to{filter:hue-rotate(360deg)}}
.lk-sc .foil,.lk-sc .shine,.lk-sc .glare{position:absolute;inset:0;pointer-events:none;overflow:hidden;border-radius:inherit}
.lk-sc .t-K .foil,.lk-sc .t-K .shine{display:none}
.lk-sc .t-B .foil,.lk-sc .t-M .foil,.lk-sc .t-A .foil{background:linear-gradient(115deg,transparent 28%,#ff5fa2 36%,#ffd76a 43%,#7dffb0 50%,#5fd4ff 57%,#b38bff 64%,transparent 72%);background-size:300% 300%;animation:lksc-holo 7s linear infinite alternate}
.lk-sc .t-B .foil{mix-blend-mode:soft-light;opacity:0}
.lk-sc .t-M .foil{mix-blend-mode:soft-light}
.lk-sc .t-A .foil{mix-blend-mode:screen;opacity:.28}
.lk-sc .card.on .foil{animation:none;background-position:var(--gx,50%) var(--gy,50%)}
.lk-sc .card.t-B.on .foil{opacity:.7}
.lk-sc .card.t-A.on .foil{opacity:.5}
.lk-sc .glare{background:radial-gradient(circle at var(--gx,35%) var(--gy,18%),rgba(255,255,255,.62),rgba(255,255,255,.12) 34%,transparent 62%);opacity:.3;transition:opacity .25s}
.lk-sc .card.on .glare{opacity:1}
.lk-sc .t-A .glare{mix-blend-mode:screen}
.lk-sc .shine::before{content:"";position:absolute;inset:-50%;background:linear-gradient(115deg,transparent 44%,rgba(255,255,255,.65) 50%,transparent 56%);animation:lksc-sweep 5s ease-in-out infinite}
.lk-sc .t-M .shine::before{animation-duration:4s}
.lk-sc .t-A .shine::before{animation-duration:3s}
.lk-sc .t-A .shine::after{content:"";position:absolute;inset:0;background-image:radial-gradient(circle,#fff 0 1.5px,transparent 2.5px),radial-gradient(circle,#ffe9a8 0 1px,transparent 2px),radial-gradient(circle,#fff 0 1px,transparent 2px);background-size:90px 110px,70px 83px,120px 67px;background-position:12px 20px,40px 8px,75px 44px;animation:lksc-twinkle 2.2s ease-in-out infinite}
@keyframes lksc-sweep{0%{transform:translateX(-70%)}45%,100%{transform:translateX(70%)}}
@keyframes lksc-holo{to{background-position:100% 100%}}
@keyframes lksc-twinkle{0%,100%{opacity:.2}50%{opacity:1}}
@keyframes lksc-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.lk-sc .card,.lk-sc .card *,.lk-sc .card::before,.lk-sc .card::after,.lk-sc .card *::before,.lk-sc .card *::after{animation:none!important;transition:none!important}
  .lk-sc .shine{display:none} /* with its sweep stopped, the shine is a white band frozen over the art */
  /* the tilt follows the player's own hand, so it keeps its easing */
  .lk-sc .card .c3d{transition:transform .55s cubic-bezier(.2,.9,.3,1.25)!important}
  .lk-sc .card.on .c3d{transition:transform .1s ease-out!important}}
/* PinasDex has site-wide .thread and .meta rules: reset what the card does not set */
.lk-sc .thread{padding:0;gap:0}
.lk-sc .meta{color:inherit}

/* the Espesyal tier: gold edge, a foil that always shows, and one frame-breaking trick per card */
.lk-sc .t-E{--paper:#FBF3DF;--ink:#5A3A10;--tint:rgba(90,58,16,.18);--oval:#F4E3B8;--red:#A8232B;--edge:#e5c266;--edge2:#a07f2e;--rs:12s}
.lk-sc .t-E .foil{background:linear-gradient(115deg,transparent 28%,#ff5fa2 36%,#ffd76a 43%,#7dffb0 50%,#5fd4ff 57%,#b38bff 64%,transparent 72%);background-size:300% 300%;animation:lksc-holo 7s linear infinite alternate;mix-blend-mode:soft-light}
.lk-sc .t-E.on .foil{animation:none;background-position:var(--gx,50%) var(--gy,50%);opacity:.75}
.lk-sc .t-E .shine::before{content:"";position:absolute;inset:-50%;background:linear-gradient(115deg,transparent 44%,rgba(255,255,255,.65) 50%,transparent 56%);animation:lksc-sweep 3.6s ease-in-out infinite}
.lk-sc .x-aldub{--paper:#FBEFD2;--ink:#6B1738;--tint:rgba(107,23,56,.16);--oval:transparent;--edge:#e7a7b4;--edge2:#c9818f}
.lk-sc .x-aldub .halfL{position:absolute;inset:0 50% 0 0;background:#F8D9DF}.lk-sc .x-aldub .halfR{position:absolute;inset:0 0 0 50%;background:#FBEFD2}
.lk-sc .x-aldub .thread{left:50%;right:auto;top:0;bottom:142px;margin-left:-2px;width:4px}.lk-sc .x-aldub .sp{left:12px;top:18px;width:256px;height:256px}
.lk-sc .x-aldub .oval{background:linear-gradient(90deg,#F2BFCB 50%,#F5DFA8 50%);opacity:.75}
.lk-sc .x-flood{--paper:#DEDFD9;--ink:#27384A;--tint:rgba(39,56,74,.16);--oval:#EDEEE9;--red:#A8232B;--edge:#8a8d8f;--edge2:#5e6265}
.lk-sc .x-flood .thread{background:repeating-linear-gradient(#27384A 0 15px,#D9A92F 15px 30px);opacity:.75}
.lk-sc .x-flood .fstamp{position:absolute;right:20px;top:208px;z-index:3;padding:2px 7px;border:2px solid #A8232B;border-radius:3px;color:#A8232B;font:700 10.5px 'JetBrains Mono',monospace;letter-spacing:.04em;text-transform:uppercase;transform:rotate(-7deg);background:rgba(251,250,242,.55)}
.lk-sc .x-isla .name{font-size:21px}.lk-sc .x-flood .name{font-size:23px}.lk-sc .x-flood .fsign{position:absolute;z-index:3;left:134px;top:89px;width:38px;text-align:center;font:800 5.4px/1.15 Outfit,sans-serif;color:#1d3d69;transform:rotate(4deg)}.lk-sc .x-flood .fsign b{color:#a8232b;display:block}
.lk-sc .x-isla{--paper:#0F2B30;--ink:#F0C36A;--tint:rgba(240,195,106,.18);--oval:#17414A;--red:#FF9D7A;--edge:#f0c36a;--edge2:#a07f2e}
.lk-sc .x-isla .stars{position:absolute;inset:0;background-image:radial-gradient(circle,#fff3cf 0 1px,transparent 2px),radial-gradient(circle,#f0c36a 0 1px,transparent 2px);background-size:64px 58px,97px 83px;background-position:7px 11px,31px 40px;opacity:.75}
.lk-sc .x-isla .sp{left:22px;top:24px;width:236px;height:236px}.lk-sc .x-isla .thread{top:266px}.lk-sc .x-isla .foil{mix-blend-mode:screen;opacity:.2}
/* a spirit with no art yet: its silhouette in the colour of its element */
.lk-sc .ghost{--c:#888;-webkit-mask:url(/static/games/lakbay/spirits/bakunawa.webp) center / contain no-repeat;mask:url(/static/games/lakbay/spirits/bakunawa.webp) center / contain no-repeat;background:linear-gradient(160deg,color-mix(in srgb,var(--c) 70%,#fff),var(--c) 60%,color-mix(in srgb,var(--c) 60%,#000))}
