:root{--bg: #0a0a0f;--panel: #14141d;--panel-2: #1b1b27;--line: #2a2a3a;--text: #f1eee8;--muted: #a6a3b3;--red: #e62429;--red-deep: #8f1519;--gold: #f2b632;--ok: #3fb97a;--display: "Bebas Neue", "Oswald", Impact, sans-serif;--body: "Barlow", system-ui, -apple-system, "Segoe UI", sans-serif;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font-family:var(--body);font-size:16px;line-height:1.5}body{background:radial-gradient(900px 420px at 15% -80px,rgba(230,36,41,.22),transparent 70%),radial-gradient(700px 380px at 100% 0,rgba(242,182,50,.08),transparent 70%),var(--bg);background-attachment:fixed}a{color:var(--gold)}button{font:inherit}:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.page{max-width:1120px;margin:0 auto;padding-block:40px 56px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));display:flex;flex-direction:column;gap:24px}.eyebrow{margin:0;font-size:.78rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--red)}.masthead h1{margin:6px 0 10px;font-family:var(--display);font-weight:400;font-size:clamp(3.4rem,11vw,6.6rem);line-height:.92;letter-spacing:.02em;text-wrap:balance;text-transform:uppercase;text-shadow:4px 4px 0 var(--red-deep)}.lede{margin:0;max-width:62ch;color:var(--muted);font-size:1.05rem}.panel{background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:16px 18px}.progress-top{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:10px}.progress-count{margin:0;font-size:1rem}.progress-count strong{font-family:var(--display);font-weight:400;font-size:2rem;letter-spacing:.03em;font-variant-numeric:tabular-nums}.progress-pct{margin:0;font-family:var(--display);font-size:1.6rem;color:var(--gold);font-variant-numeric:tabular-nums}.bar{height:10px;background:var(--panel-2);border-radius:999px;overflow:hidden}.bar span{display:block;height:100%;background:linear-gradient(90deg,var(--red),var(--gold));transition:width .4s ease}.controls{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}.seg{display:inline-flex;max-width:100%;background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:3px;gap:3px}.seg button{background:transparent;color:var(--muted);border:0;padding:9px 16px;border-radius:4px;font-weight:600;cursor:pointer;letter-spacing:.02em}.seg button:hover{color:var(--text)}.seg button.on{background:var(--red);color:#fff}.seg-light button.on{background:var(--panel-2);color:var(--gold);box-shadow:inset 0 0 0 1px var(--line)}.next{display:flex;gap:18px;align-items:center;border-color:#e624298c;background:linear-gradient(120deg,rgba(230,36,41,.14),var(--panel) 55%)}.next-body{min-width:0;display:flex;flex-direction:column;gap:6px;align-items:flex-start}.next-body h2{margin:0;font-family:var(--display);font-weight:400;font-size:clamp(1.8rem,5vw,2.6rem);line-height:1;letter-spacing:.03em;text-wrap:balance}.meta{margin:0;color:var(--muted);font-size:.9rem}.group{display:flex;flex-direction:column;gap:14px}.group-head{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 14px;border-bottom:1px solid var(--line);padding-bottom:8px}.group-head h2{margin:0;font-family:var(--display);font-weight:400;font-size:2rem;letter-spacing:.06em;text-transform:uppercase}.group-head p{margin:0;color:var(--gold);font-size:.85rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.cards{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.card{display:flex;gap:16px;background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:14px;min-width:0}.card.done{border-color:#3fb97a73}.card.done .poster{filter:saturate(.55) brightness(.8)}.card.soon{border-style:dashed}.card-body{min-width:0;flex:1;display:flex;flex-direction:column;gap:6px}.card-top{display:flex;gap:8px;align-items:center;min-height:24px}.rank{font-family:var(--display);font-size:1.4rem;letter-spacing:.06em;color:var(--red);font-variant-numeric:tabular-nums;line-height:1}.tag{font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:3px 8px;border-radius:3px}.tag-seen{background:#3fb97a29;color:var(--ok)}.tag-soon{background:#f2b63229;color:var(--gold)}.card h3{margin:0;font-size:1.12rem;line-height:1.2;font-weight:700;text-wrap:balance}.synopsis{margin:4px 0 0;color:#d3d0dc;font-size:.94rem;max-width:62ch}.note{margin:0;font-size:.82rem;color:var(--gold)}.actions{margin-top:auto;padding-top:8px;display:flex;flex-wrap:wrap;gap:8px}.btn{border:1px solid transparent;border-radius:4px;padding:8px 14px;font-weight:600;font-size:.9rem;cursor:pointer;letter-spacing:.02em;transition:background .15s ease,border-color .15s ease}.btn:disabled{cursor:not-allowed;opacity:.55}.btn-primary{background:var(--red);color:#fff}.btn-primary:hover:not(:disabled){background:#ff3a3f}.btn-on{background:#3fb97a29;color:var(--ok);border-color:#3fb97a80}.btn-ghost{background:transparent;color:var(--muted);border-color:var(--line)}.btn-ghost:hover:not(:disabled){color:var(--text);border-color:var(--muted)}.btn-danger{background:var(--red-deep);color:#fff}.poster{position:relative;flex:none;aspect-ratio:2 / 3;border-radius:4px;overflow:hidden;color:#fff3;background:linear-gradient(165deg,hsl(var(--h) 78% 40%),hsl(calc(var(--h) + 40) 70% 16%));box-shadow:0 6px 18px #00000073;display:flex;flex-direction:column;justify-content:space-between;padding:8px}.poster:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(rgba(0,0,0,.3) 1px,transparent 1.4px);background-size:6px 6px;mix-blend-mode:multiply;pointer-events:none}.poster-md{width:112px}.poster-sm{width:84px}.poster-art{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.poster-year{position:relative;z-index:1;align-self:flex-start;font-family:var(--display);font-size:1.1rem;letter-spacing:.08em;color:#ffffffd9;line-height:1}.poster-title{position:relative;z-index:1;font-family:var(--display);font-size:.98rem;line-height:1;letter-spacing:.03em;text-transform:uppercase;color:#fff;text-shadow:0 2px 6px rgba(0,0,0,.6);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.poster-sm .poster-title{font-size:.78rem}.poster-sm .poster-year{font-size:.9rem}.empty{margin:0;color:var(--muted);text-align:center;padding:32px 0}.reset{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:center;color:var(--muted);font-size:.9rem}.footer{border-top:1px solid var(--line);padding-top:20px;display:flex;flex-direction:column;gap:8px;color:var(--muted);font-size:.85rem}.footer p{margin:0}.footer .legal{max-width:90ch;font-size:.78rem;line-height:1.55}@media (max-width: 860px){.cards{grid-template-columns:minmax(0,1fr)}}@media (max-width: 480px){.page{padding-block:28px 40px}.poster-md{width:92px}.card{gap:12px;padding:12px}.seg button{padding:8px 12px}.next{gap:14px}}@media (prefers-reduced-motion: reduce){.bar span{transition:none}}.content{display:flex;flex-direction:column;gap:24px;animation:fade-up .45s ease both}.topbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.brand{display:flex;align-items:center;gap:10px;font-family:var(--display);font-size:1.5rem;letter-spacing:.14em;text-transform:uppercase}.emblem{color:var(--text);flex:none;animation:emblem-spin 24s linear infinite}.topbar-tools{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.panel,.card,.seg{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.panel{background:#14141dd6}.card{background:#14141de0}.seg{background:#14141dd6}.wallpaper{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;overflow:hidden;background:var(--bg);animation:wp-in .9s ease both;pointer-events:none}.wallpaper i{position:absolute;display:block}.wallpaper .veil{top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 50% 30%,transparent 0,rgba(10,10,15,.6) 90%)}.wp-cosmos .l1{top:0;right:0;bottom:0;left:0;opacity:.75;background-image:radial-gradient(1px 1px at 20px 30px,#fff,transparent),radial-gradient(1px 1px at 90px 120px,#fff,transparent),radial-gradient(1.5px 1.5px at 160px 60px,#ffd9a0,transparent),radial-gradient(1px 1px at 130px 170px,#cfe4ff,transparent);background-size:200px 200px;animation:stars-a 80s linear infinite}.wp-cosmos .l2{top:0;right:0;bottom:0;left:0;opacity:.6;background-image:radial-gradient(1.5px 1.5px at 60px 80px,#fff,transparent),radial-gradient(2px 2px at 220px 190px,#ffd9a0,transparent),radial-gradient(1px 1px at 140px 20px,#fff,transparent);background-size:320px 320px;animation:stars-b 130s linear infinite}.wp-cosmos .l3{top:-20%;right:-20%;bottom:-20%;left:-20%;background:radial-gradient(40% 35% at 20% 25%,rgba(230,36,41,.28),transparent 70%),radial-gradient(35% 40% at 80% 70%,rgba(110,60,200,.26),transparent 70%),radial-gradient(30% 30% at 60% 15%,rgba(242,182,50,.12),transparent 70%);animation:nebula 40s ease-in-out infinite alternate}@keyframes wp-in{0%{opacity:0}to{opacity:1}}@keyframes fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes stars-a{to{background-position:0 200px}}@keyframes stars-b{to{background-position:0 -320px}}@keyframes nebula{0%{transform:translate3d(-2%,-1%,0) scale(1)}to{transform:translate3d(2%,2%,0) scale(1.08)}}@keyframes ring-pulse{0%{transform:scale(.94)}to{transform:scale(1.06)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes emblem-spin{to{transform:rotate(360deg)}}@keyframes dots{to{background-position:0 16px}}@keyframes grid-move{to{background-position:0 54px,0 0}}@keyframes scan{0%{transform:translateY(-10vh)}to{transform:translateY(110vh)}}@keyframes card-in{0%{opacity:0;transform:translateY(16px) scale(.985)}to{opacity:1;transform:none}}@keyframes title-in{0%{opacity:0;letter-spacing:.18em;text-shadow:0 0 0 var(--red-deep)}to{opacity:1;letter-spacing:.02em;text-shadow:4px 4px 0 var(--red-deep)}}@keyframes glow{0%,to{box-shadow:0 0 #e6242900}50%{box-shadow:0 0 26px #e624294d}}@keyframes stamp{0%{opacity:0;transform:scale(2.2) rotate(-14deg)}60%{opacity:1;transform:scale(.92) rotate(-6deg)}to{opacity:1;transform:scale(1) rotate(-4deg)}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(260%)}}.masthead h1{animation:title-in .9s cubic-bezier(.2,.8,.2,1) both}.card{animation:card-in .5s cubic-bezier(.2,.8,.2,1) backwards;animation-delay:calc(var(--i, 0) * 45ms);transition:transform .2s ease,border-color .2s ease}.card:hover{transform:translateY(-3px);border-color:#e6242999}.next{animation:glow 3.4s ease-in-out infinite}.bar span{position:relative;overflow:hidden}.bar span:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;width:40%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent);animation:shimmer 2.6s ease-in-out infinite}.tag-seen{display:inline-block;animation:stamp .45s cubic-bezier(.2,.9,.3,1.2) both;transform:rotate(-4deg);border:1px solid rgba(63,185,122,.55)}.poster{transition:transform .25s ease,filter .3s ease}.poster:before{content:"";position:absolute;inset:-20% auto -20% -60%;width:45%;z-index:2;background:linear-gradient(100deg,transparent,rgba(255,255,255,.28),transparent);transform:skew(-18deg);transition:transform .7s ease;pointer-events:none}.card:hover .poster{transform:rotate(-1.5deg) scale(1.03)}.card:hover .poster:before{transform:translate(520%) skew(-18deg)}.btn:active:not(:disabled){transform:scale(.96)}.btn{transition:background .15s ease,border-color .15s ease,transform .1s ease}@media (max-width: 480px){.brand{font-size:1.25rem}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.wallpaper{z-index:0}.page{position:relative;z-index:1}.brand-logo{display:block;height:38px;width:auto;border-radius:2px}.poster-img{padding:0;background:#000}.poster-img:after{display:none}.poster-img img{display:block;width:100%;height:100%;object-fit:cover}.page{max-width:1200px}.brand{text-decoration:none}.topbar{gap:14px 18px}.nav{display:flex;gap:4px;border-bottom:1px solid var(--line);overflow-x:auto}.nav a{padding:10px 16px;color:var(--muted);text-decoration:none;font-weight:600;letter-spacing:.03em;white-space:nowrap;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .15s ease,border-color .15s ease}.nav a:hover{color:var(--text)}.nav a.on{color:var(--text);border-bottom-color:var(--red)}.search{position:relative;flex:1 1 280px;max-width:520px}.search input{width:100%;height:42px;padding:0 38px 0 40px;background:#14141ddb;color:var(--text);border:1px solid var(--line);border-radius:6px;font:inherit;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.search input::placeholder{color:var(--muted)}.search input:focus{outline:none;border-color:var(--gold)}.search-icon{position:absolute;left:13px;top:12px;color:var(--muted);pointer-events:none}.search-clear{position:absolute;right:6px;top:6px;width:30px;height:30px;border:0;border-radius:50%;background:var(--panel-2);color:var(--text);font-size:1.1rem;cursor:pointer}.search-pop{position:absolute;z-index:60;top:calc(100% + 6px);left:0;right:0;max-height:60vh;overflow-y:auto;background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:6px;box-shadow:0 18px 40px #0000008c;animation:fade-up .15s ease both}.search-head{margin:8px 8px 4px;font-size:.7rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}.search-none{margin:10px;color:var(--muted)}.search-opt{display:flex;justify-content:space-between;align-items:baseline;gap:12px;width:100%;padding:8px 10px;border:0;border-radius:4px;background:transparent;color:var(--text);text-align:left;cursor:pointer}.search-opt.on{background:var(--panel-2);box-shadow:inset 2px 0 0 var(--red)}.search-opt small{color:var(--muted);white-space:nowrap}.pill{background:#14141dd6;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:6px 14px;font-weight:600;font-size:.88rem;cursor:pointer;white-space:nowrap;transition:background .15s ease,color .15s ease,border-color .15s ease}.pill:hover{color:var(--text);border-color:var(--muted)}.pill.on{background:var(--red);border-color:var(--red);color:#fff}.phase-chips,.year-strip{display:flex;flex-wrap:wrap;gap:8px}.year-strip{flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px}.controls-right{display:flex;flex-wrap:wrap;gap:12px}.result-line{display:flex;flex-wrap:wrap;align-items:center;gap:12px;color:var(--muted);font-size:.9rem}.result-line p,.result-line-text{margin:0;color:var(--muted)}.poster-xl{width:220px}.poster-fill{width:100%}.pgrid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(136px,1fr));gap:18px 14px}.pitem{animation:card-in .5s cubic-bezier(.2,.8,.2,1) backwards;animation-delay:calc(var(--i, 0) * 40ms)}.pcard{display:flex;flex-direction:column;gap:6px;width:100%;padding:0;background:none;border:0;color:inherit;text-align:left;cursor:pointer}.pcard-art{position:relative;display:block}.pcard:hover .poster,.pcard:focus-visible .poster{transform:translateY(-4px) rotate(-1deg) scale(1.03)}.pcard:hover .poster:before{transform:translate(520%) skew(-18deg)}.pitem.done .poster{filter:saturate(.5) brightness(.78)}.pcard-rank,.pcard-check,.pcard-soon{position:absolute;z-index:3;font-weight:700;line-height:1}.pcard-rank{top:6px;left:6px;padding:3px 6px;border-radius:3px;background:#000000b8;font-family:var(--display);font-size:1rem;letter-spacing:.06em}.pcard-check{top:6px;right:6px;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--ok);color:#06210f;animation:stamp .45s cubic-bezier(.2,.9,.3,1.2) both}.pcard-soon{left:6px;right:6px;bottom:6px;padding:4px 6px;border-radius:3px;background:#f2b632e6;color:#1a1204;font-size:.7rem;letter-spacing:.1em;text-align:center;text-transform:uppercase}.pcard-title{font-weight:700;font-size:.92rem;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.pcard-sub{color:var(--muted);font-size:.78rem}.next-poster,.card-poster{flex:none;padding:0;background:none;border:0;cursor:pointer}.link-title{padding:0;background:none;border:0;color:inherit;font:inherit;font-weight:700;text-align:left;cursor:pointer}.link-title:hover{color:var(--gold)}@keyframes modal-in{0%{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}.modal-back{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:flex-start;justify-content:center;padding:20px 16px;overflow-y:auto;background:#05050ac7;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:wp-in .2s ease both}.modal{position:relative;width:min(860px,100%);margin:auto;padding:26px;background:var(--panel);border:1px solid var(--line);border-radius:8px;animation:modal-in .3s cubic-bezier(.2,.8,.2,1) both}.modal-close{position:absolute;top:10px;right:10px;z-index:2;width:34px;height:34px;border-radius:50%;border:1px solid var(--line);background:var(--panel-2);color:var(--text);font-size:1.3rem;line-height:1;cursor:pointer}.modal-grid{display:flex;gap:24px;align-items:flex-start}.modal-body{min-width:0;flex:1;display:flex;flex-direction:column;gap:8px}.modal-body h2{margin:2px 0 0;font-family:var(--display);font-weight:400;font-size:clamp(2rem,5vw,3rem);line-height:1;letter-spacing:.03em;text-wrap:balance}.chips-block h3{margin:10px 0 8px;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{padding:5px 12px;border-radius:999px;border:1px solid var(--line);background:var(--panel-2);color:var(--text);font-size:.85rem;cursor:pointer}.chip:hover{border-color:var(--muted)}.chip-villain{border-color:#e6242999}.chip-antihero{border-color:#f2b63299}.modal-nav{display:flex;justify-content:space-between;gap:12px;margin-top:22px;padding-top:16px;border-top:1px solid var(--line)}.modal-nav .btn{display:flex;flex-direction:column;align-items:flex-start;gap:2px;max-width:48%;text-align:left}.modal-nav .btn:last-child{align-items:flex-end;text-align:right}.modal-nav small{max-width:100%;font-weight:400;opacity:.8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.count-big{margin:4px 0 0;font-family:var(--display);font-size:2.6rem;line-height:1;color:var(--gold);letter-spacing:.04em}.count-badge{display:grid;place-items:center;flex:none;width:84px;aspect-ratio:2 / 3;border:2px dashed var(--gold);border-radius:4px;color:var(--gold);font-family:var(--display);font-size:2.4rem}.months{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.month{display:flex;flex-direction:column;gap:8px;min-height:110px;padding:12px;background:#14141dd6;border:1px solid var(--line);border-radius:6px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.month.now{border-color:var(--red)}.month.empty-month{opacity:.6}.month h3{margin:0;font-family:var(--display);font-weight:400;font-size:1.3rem;letter-spacing:.08em;text-transform:capitalize}.month-none{margin:0;color:var(--muted);font-size:.8rem}.entry{display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:baseline;padding:8px;background:var(--panel-2);border:1px solid var(--line);border-radius:4px;color:var(--text);text-align:left;cursor:pointer;transition:border-color .15s ease,transform .15s ease}.entry:hover{border-color:var(--red);transform:translateY(-1px)}.entry.static{cursor:default}.entry.done{border-color:#3fb97a80}.entry .day{grid-row:span 2;font-family:var(--display);font-size:1.6rem;line-height:1;color:var(--gold)}.entry-title{min-width:0;font-weight:600;font-size:.9rem;line-height:1.25}.entry small{color:var(--muted)}.footnote{margin:0;color:var(--muted);font-size:.8rem}.avatar{display:grid;place-items:center;flex:none;border-radius:50%;border:2px solid rgba(255,255,255,.3);background:linear-gradient(145deg,hsl(var(--h) 70% 42%),hsl(calc(var(--h) + 40) 65% 18%));color:#fff;font-family:var(--display);letter-spacing:.04em}.avatar-md{width:64px;height:64px;font-size:1.6rem}.avatar-lg{width:96px;height:96px;font-size:2.4rem}.avatar-villain{border-color:var(--red)}.avatar-antihero{border-color:var(--gold)}.char-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.char-grid li{animation:card-in .45s cubic-bezier(.2,.8,.2,1) backwards;animation-delay:calc(var(--i, 0) * 35ms)}.char-tile{display:flex;flex-direction:column;align-items:center;gap:6px;width:100%;height:100%;padding:14px 8px;background:#14141de0;border:1px solid var(--line);border-radius:6px;color:var(--text);text-align:center;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:border-color .15s ease,transform .15s ease}.char-tile:hover{border-color:var(--red);transform:translateY(-3px)}.char-tile.on{border-color:var(--gold)}.char-name{font-weight:700;line-height:1.2}.char-tile small{color:var(--muted)}.char-panel{position:relative;animation:fade-up .3s ease both}.char-head{display:flex;gap:18px;align-items:flex-start;padding-right:36px}.char-head h2{margin:2px 0;font-family:var(--display);font-weight:400;font-size:2.4rem;line-height:1;letter-spacing:.03em}.sub-title{margin:16px 0 8px;font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}.mini-films{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:12px}.mini-film{position:relative;display:flex;flex-direction:column;gap:6px;width:92px;padding:0;background:none;border:0;color:var(--text);font-size:.78rem;text-align:left;cursor:pointer}.mini-film .poster{width:92px}.mini-film.done .poster{filter:saturate(.5) brightness(.78)}.mini-film:hover .poster{transform:translateY(-3px) scale(1.03)}.mini-film b{position:absolute;top:4px;right:4px;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--ok);color:#06210f;font-size:.7rem}.phase-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.phase-card{display:flex;flex-direction:column;gap:8px;animation:card-in .5s cubic-bezier(.2,.8,.2,1) backwards}.phase-top{display:flex;gap:12px;align-items:center}.phase-num{font-family:var(--display);font-size:3.6rem;line-height:1;color:var(--red);text-shadow:3px 3px 0 var(--red-deep)}.phase-card h3{margin:0;font-size:1.2rem;line-height:1.2}.phase-card .sub-title{margin:6px 0 0}.moments{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}.moments li{padding:3px 10px;border:1px solid var(--line);border-radius:999px;background:var(--panel-2);color:#d3d0dc;font-size:.8rem}.mini-bar{height:6px;background:var(--panel-2);border-radius:999px;overflow:hidden}.mini-bar span{display:block;height:100%;background:linear-gradient(90deg,var(--red),var(--gold));transition:width .4s ease}.poster-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(54px,1fr));gap:8px;margin-top:4px}.poster-btn{padding:0;background:none;border:0;cursor:pointer}.poster-btn .poster{width:100%;padding:0}.poster-btn .poster-title,.poster-btn .poster-year{display:none}.poster-btn.done .poster{filter:saturate(.5) brightness(.78)}.poster-btn:hover .poster{transform:translateY(-3px) scale(1.05)}@media (max-width: 980px){.months{grid-template-columns:repeat(2,minmax(0,1fr))}.phase-cards{grid-template-columns:minmax(0,1fr)}}@media (max-width: 640px){.search{order:3;flex-basis:100%;max-width:none}.months{grid-template-columns:minmax(0,1fr)}.modal{padding:18px}.modal-grid{flex-direction:column;align-items:center}.modal-body{width:100%}.poster-xl{width:160px}.char-head{flex-direction:column}.pgrid{grid-template-columns:repeat(auto-fill,minmax(112px,1fr))}}.avatar.has-photo{overflow:hidden;background:#000}.avatar img{display:block;width:100%;height:100%;object-fit:cover;object-position:top center}.avatar-lg{width:112px;height:112px}.wp-cosmos .l1,.wp-cosmos .l2{top:-40px;right:-40px;bottom:-40px;left:-40px}.wp-cosmos .l1{translate:calc(var(--mx, 0) * -10px) calc(var(--my, 0) * -10px);transition:translate .5s ease-out}.wp-cosmos .l2{translate:calc(var(--mx, 0) * -24px) calc(var(--my, 0) * -24px);transition:translate .5s ease-out}.wp-cosmos .l3{translate:calc(var(--mx, 0) * 30px) calc(var(--my, 0) * 30px);transition:translate .7s ease-out}.wallpaper .meteor{width:140px;height:2px;border-radius:2px;background:linear-gradient(90deg,#fff,rgba(255,217,160,.5) 35%,transparent);box-shadow:0 0 8px #ffffffb3;opacity:0;animation:meteor var(--dur, 12s) linear var(--delay, 0s) infinite}@keyframes meteor{0%{opacity:0;transform:translate(0) rotate(-30deg)}2%{opacity:1}9%{opacity:0;transform:translate(-55vw,32vw) rotate(-30deg)}to{opacity:0;transform:translate(-55vw,32vw) rotate(-30deg)}}.card{position:relative;will-change:transform}.card:hover{transform:perspective(900px) translateY(-3px) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg));box-shadow:0 14px 30px #00000073,0 0 0 1px #e6242940}.card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;opacity:0;background:radial-gradient(260px circle at var(--gx, 50%) var(--gy, 50%),rgba(255,255,255,.11),transparent 65%);transition:opacity .25s ease}.card:hover:after{opacity:1}.stones{display:flex;justify-content:center;gap:16px;margin-top:14px}.stone{display:block;width:16px;height:22px;filter:drop-shadow(0 0 0 transparent);transition:filter .5s ease}.stone i{display:block;width:100%;height:100%;background:#2a2a3a;clip-path:polygon(50% 0,100% 28%,100% 72%,50% 100%,0 72%,0 28%);transition:background .5s ease}.stone.on{filter:drop-shadow(0 0 7px var(--c));animation:stone-pulse 2.8s ease-in-out infinite;animation-delay:calc(var(--n, 0) * .35s)}.stone.on i{background:linear-gradient(150deg,#fff 0%,var(--c) 40%,var(--c) 100%)}@keyframes stone-pulse{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-3px) scale(1.12)}}.spark{position:fixed;left:0;top:0;width:6px;height:6px;margin:-3px 0 0 -3px;border-radius:50%;background:var(--c);box-shadow:0 0 8px var(--c);pointer-events:none;z-index:300;animation:spark .8s cubic-bezier(.1,.7,.3,1) forwards}@keyframes spark{0%{opacity:1;transform:translate(var(--x),var(--y)) scale(1)}to{opacity:0;transform:translate(calc(var(--x) + var(--dx)),calc(var(--y) + var(--dy))) scale(.2)}}.brand-logo{transition:filter .3s ease,transform .3s ease}.brand:hover .brand-logo{filter:drop-shadow(0 0 10px rgba(230,36,41,.75));transform:scale(1.04)}@media (max-width: 480px){.stones{gap:12px}}@media (prefers-reduced-motion: reduce){.wallpaper .meteor,.spark{display:none}}.nav,.year-strip{scrollbar-width:none;-ms-overflow-style:none}.nav::-webkit-scrollbar,.year-strip::-webkit-scrollbar{display:none}.nav a{flex:1 1 auto;text-align:center}.masthead h1{overflow-wrap:anywhere}.page,.content{min-width:0}@media (max-width: 640px){.nav{gap:0}.nav a{padding:10px 6px;font-size:.9rem;letter-spacing:.01em}.masthead h1{font-size:clamp(2.6rem,14vw,4.2rem)}.search input{font-size:16px}}@media (max-width: 380px){.nav a{padding-inline:4px;font-size:.82rem}}
