:root{--sora-color:#4a9be7;--roboco-color:#e76161;--miko-color:#f7a9bd;--suisei-color:#4169E1;--azki-color:#e999ab;--aki-color:#f5768b;--mel-color:#fcc52b;--fubuki-color:#ace5ed;--matsuri-color:#f79d26;--haato-color:#FF69B4;--aqua-color:#f4bee0;--shion-color:#9370DB;--ayame-color:#df315a;--choco-color:#DDA0DD;--subaru-color:#f0d881;--mio-color:#228B22;--okayu-color:#9370DB;--korone-color:#FFD700;--pekora-color:#84ccf7;--flare-color:#FF4500;--noel-color:#d2dcdc;--marine-color:#DC143C;--coco-color:#FE8B04;--kanata-color:#66ade4;--watame-color:#fef09d;--towa-color:#b395e0;--luna-color:#fe95ed;--lamy-color:#E0FFFF;--nene-color:#feb55d;--botan-color:#F5F5DC;--aloe-color:#e858a8;--polka-color:#fe0f80;--laplus-color:#9166c8;--lui-color:#CD5C5C;--koyori-color:#FFB6C1;--chloe-color:#bb5562;--iroha-color:#98FB98;--risu-color:#DEB887;--moona-color:#9370DB;--iofi-color:#FFB6C1;--ollie-color:#FF6347;--anya-color:#DDA0DD;--reine-color:#4169E1;--zeta-color:#517a7a;--kaela-color:#d83f3f;--kobo-color:#c0d3ed;--calli-color:#FF69B4;--kiara-color:#fe511d;--ina-color:#9370DB;--gura-color:#5d80c6;--amelia-color:#FFD700;--irys-color:#FF1493;--kronii-color:#4682B4;--mumei-color:#DEB887;--fauna-color:#d5e7c0;--bae-color:#FF6347;--sana-color:#9370DB;--shiori-color:#6d6d81;--bijou-color:#6e5bf4;--nerissa-color:#9370DB;--fuwawa-color:#c3daf7;--mococo-color:#FF82C9;--elizabeth-color:#DC143C;--gigi-color:#f7b242;--cecilia-color:#98FB98;--raora-color:#e883a4;--ao-color:#4169E1;--kanade-color:#f7dfaf;--ririka-color:#F47DA9;--raden-color:#9370DB;--hajime-color:#B6B9FF;--riona-color:#f6337c;--niko-color:#f69828;--su-color:#4169E1;--chihaya-color:#9370DB;--vivi-color:#FFB6C1;--mela-color:#53b0ff;--mera-color:var(--mela-color);--sopia-color:#7b85ff;--kyoko-color:#ff862e;--tsuzuri-color:#bb1f25;--kurosama-color:#3a3a48;--burinyan-color:#f352c0;--ai-koyori-color:#ffb6c1;--danchomu-color:var(--noel-color);--gamers-color:var(--fubuki-color);--color-main:#FF6E9D;--color-main-deep:#D94A7A;--color-main-light:#FFE4EE;--color-sub:#31D8D4;--color-sub-deep:#1FAFAB;--color-sub-light:#D6F6F5;--color-cyan:#42B9EF;--color-yellow:#FFD65B;--color-paper:#F3EFE8;--color-paper-soft:#FBF9F5;--color-white:color-mix(in srgb,#fff 100%,transparent);--color-black:#2D3142;--color-text:#434343;--color-gray:#8C8A86;--color-line:#E6E0D6;--font-title:"Zen Maru Gothic","Hiragino Maru Gothic ProN",sans-serif;--font-en:"Fredoka",sans-serif;--font-main:"Zen Maru Gothic","Hiragino Maru Gothic ProN",sans-serif;--radius-sm:10px;--radius-md:16px;--radius-lg:22px;--radius-full:9999px;--shadow-soft:0 10px 26px color-mix(in srgb,var(--color-black) 8%,transparent);--shadow-offset-sub:6px 6px 0 var(--color-sub);--shadow-offset-main:6px 6px 0 var(--color-main);--ease-pop:cubic-bezier(.34,1.56,.64,1);--ease-out:cubic-bezier(.22,1,.36,1)}@view-transition{navigation:auto}@keyframes pageViewEnter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-main);background-color:var(--color-paper);background-image:radial-gradient(color-mix(in srgb,var(--color-black) 4.5%,transparent) 1px,transparent 1px);background-size:6px 6px;color:var(--color-text);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased}button{font-family:inherit;cursor:pointer;user-select:none;border:none;background-color:transparent;background-image:none;color:inherit}input{font-family:inherit}.u-hidden{display:none!important}.icon{display:inline-block;flex-shrink:0;width:1.1em;height:1.1em;margin-inline-end:.35em;vertical-align:-.2em;&.is-solo{margin-inline-end:0}}._pink{color:var(--color-main)}._mint{color:var(--color-sub)}.section-header{display:flex;align-items:flex-end;gap:.5rem 1.25rem;margin-bottom:1.75rem;flex-wrap:wrap;.section-sub{font-size:.88rem;color:var(--color-gray);padding-bottom:.35rem}}.section-ttl{display:inline-flex;flex-wrap:wrap;align-items:flex-end;gap:.6rem;position:relative;padding-left:1.4rem;&::before{content:"";position:absolute;left:-.4rem;top:-.9rem;width:2.6rem;height:2.6rem;border-radius:50%;border:2.5px solid var(--color-sub)}&::after{content:"";position:absolute;left:.55rem;top:-.05rem;width:.8rem;height:.9rem;background-color:var(--color-sub);clip-path:polygon(0 0,100% 50%,0 100%)}.ttl-en{position:relative;isolation:isolate;font-family:var(--font-en);font-weight:600;font-size:clamp(2rem,4vw,2.9rem);line-height:1;letter-spacing:.02em;color:var(--color-main);&::after{content:"";position:absolute;z-index:-1;left:-.4rem;right:-.6rem;bottom:-.1rem;height:.55em;background-color:var(--color-sub);opacity:.55;border-radius:40% 60% 55% 45% / 60% 40% 60% 40%;transform:rotate(-2.5deg)}}.ttl-jp{font-family:var(--font-title);font-weight:900;font-size:.98rem;color:var(--color-black);letter-spacing:.08em;white-space:nowrap}}.detail-badge,.event-date-tag,.hero-date-today{position:relative;display:inline-block;font-family:var(--font-en);font-weight:600;letter-spacing:.06em;line-height:1.3;color:var(--color-white);background-color:var(--color-main);padding:.2rem .9rem;white-space:nowrap;&::before{content:"";position:absolute;left:0;bottom:-6px;width:7px;height:6px;background-color:var(--color-main-deep);clip-path:polygon(0 0,100% 0,100% 100%)}}.type-label{display:inline-block;align-self:flex-start;font-size:.72rem;font-weight:900;line-height:1.5;color:var(--color-white);background-color:var(--color-sub);padding:.1rem .75rem;border-radius:var(--radius-full);letter-spacing:.04em;&.is-birthday{background-color:var(--color-main)}&.is-debut{background-color:var(--color-cyan)}}.deco-tri{position:absolute;pointer-events:none;clip-path:polygon(0 0,100% 50%,0 100%);&._pink{width:46px;height:50px;background-color:var(--color-main);opacity:.85;transform:rotate(-20deg)}&._mint{width:26px;height:28px;background-color:var(--color-sub);transform:rotate(15deg)}&._line{width:22px;height:24px;background-color:var(--color-main);opacity:.6;transform:rotate(-35deg)}}.heart-btn{flex-shrink:0;width:38px;height:38px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;transition:transform .25s var(--ease-pop),background-color .2s ease;svg{fill:transparent;stroke:var(--color-gray);stroke-width:2;stroke-linejoin:round;transition:fill .2s ease,stroke .2s ease}&:hover{background-color:var(--color-main-light);svg{stroke:var(--color-main)}}&.is-active svg{fill:var(--color-main);stroke:var(--color-main)}}.member-avatar{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;.avatar-img{width:100%;height:100%;object-fit:cover}.avatar-emoji-fallback{font-size:clamp(2.4rem,5vw,3.6rem);line-height:1;filter:drop-shadow(0 6px 14px color-mix(in srgb,#000 14%,transparent))}.pizza-slice{position:absolute;inset:0;overflow:hidden;background-color:color-mix(in srgb,var(--cell-color,var(--color-main)) 30%,white);.avatar-img{position:absolute;left:calc(var(--x) - var(--size) / 2);top:calc(var(--y) - var(--size) / 2);width:var(--size);height:var(--size);max-width:none}.avatar-emoji-fallback{position:absolute;left:var(--x);top:var(--y);translate:-50% -50%;font-size:1.4rem}}&.is-thumb{width:52px;height:52px;flex-shrink:0;border-radius:50%;overflow:hidden;background-color:color-mix(in srgb,var(--item-color,var(--color-main)) 30%,white);box-shadow:0 0 0 3px var(--color-white),0 0 0 5px color-mix(in srgb,var(--item-color,var(--color-main)) 70%,white);.avatar-emoji-fallback{font-size:1.6rem}}}.filter-chip,.filter-pill .pill-label{display:inline-block;font-size:.88rem;font-weight:700;padding:.45rem 1.1rem;border-radius:var(--radius-full);background-color:var(--color-white);color:var(--color-text);border:2px solid var(--color-line);cursor:pointer;transition:transform .2s var(--ease-pop),background-color .2s ease,border-color .2s ease,color .2s ease;&:hover{border-color:var(--color-sub);color:var(--color-sub-deep);transform:translateY(-2px)}}.filter-chip.active,.filter-pill input:checked + .pill-label{background-color:var(--color-sub);border-color:var(--color-sub);color:var(--color-white)}.btn-mint{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-en),var(--font-main);font-size:.95rem;font-weight:600;padding:.65rem 1.6rem;border-radius:var(--radius-full);background-color:var(--color-sub);color:var(--color-white);transition:transform .2s var(--ease-pop);&:hover{transform:translateY(-2px)}}#app-layout{display:flex;min-height:100dvh}.sidebar{width:240px;background-color:var(--color-white);box-shadow:4px 0 24px color-mix(in srgb,var(--color-black) 5%,transparent);padding:1.75rem 1.1rem;display:flex;flex-direction:column;position:fixed;top:0;bottom:0;left:0;z-index:100;transform:translateX(-100%);transition:transform .3s var(--ease-out);&.open{transform:translateX(0);box-shadow:0 0 25px color-mix(in srgb,#000 25%,transparent)}.sidebar-header{display:flex;flex-direction:column;gap:.5rem;padding:0 .35rem 1.25rem;margin-bottom:1.25rem;border-bottom:2px dashed var(--color-line);.brand-badge-wrap{display:flex;align-items:center;justify-content:space-between;.brand-badge{font-size:.7rem;font-weight:900;padding:.1rem .7rem;border-radius:var(--radius-full);background-color:var(--color-main);color:var(--color-white)}}.brand-title{font-family:var(--font-title);font-weight:900;font-size:1.6rem;letter-spacing:.04em;line-height:1.2}.brand-subtitle{font-family:var(--font-en);font-size:.85rem;color:var(--color-gray);font-weight:500;letter-spacing:.08em}}.sidebar-nav{display:flex;flex-direction:column;gap:.5rem;flex-grow:1;flex-shrink:1;flex-basis:0%;.nav-item{display:flex;align-items:center;gap:.8rem;padding:.75rem 1.1rem;border-radius:var(--radius-full);font-size:.98rem;font-weight:700;color:var(--color-text);text-align:left;transition:background-color .2s ease,color .2s ease,transform .2s var(--ease-pop);.nav-icon{font-size:1.15rem}&:hover{background-color:var(--color-sub-light);color:var(--color-sub-deep);transform:translateX(3px)}&.active{background-color:var(--color-main);color:var(--color-white)}}}.sidebar-member-status:not(:empty){margin-bottom:1rem;padding:.85rem;background-color:var(--color-paper-soft);border:2px solid var(--color-main);border-radius:var(--radius-md);font-size:.82rem;display:flex;flex-direction:column;gap:.35rem;.status-title{font-family:var(--font-en);font-weight:600;color:var(--color-main)}.btn-clear-member{font-size:.75rem;padding:.2rem .65rem;background-color:var(--color-main-light);color:var(--color-main-deep);border-radius:var(--radius-full);font-weight:700;align-self:flex-start}}.sidebar-footer{padding:1rem .35rem 0;border-top:2px dashed var(--color-line);display:flex;justify-content:space-between;align-items:center;.sidebar-deco-dots{display:flex;gap:5px;.dot{width:8px;height:8px;border-radius:50%;&._pink{background-color:var(--color-main)}&._cyan{background-color:var(--color-sub)}&._yellow{background-color:var(--color-yellow)}}}.sidebar-copyright{font-family:var(--font-en);color:var(--color-gray);font-size:.85rem}}}.sidebar-overlay{display:none;position:fixed;inset:0;background-color:color-mix(in srgb,var(--color-black) 40%,transparent);backdrop-filter:blur(3px);z-index:90;&.open{display:block}}.main-wrapper{flex-grow:1;flex-shrink:1;flex-basis:0%;min-width:0;display:flex;flex-direction:column;min-height:100dvh;overflow-x:clip}.menu-toggle{position:fixed;top:.9rem;left:.9rem;z-index:80;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;border:3px solid var(--color-white);color:var(--color-white);background-color:var(--color-sub);transition:transform .2s var(--ease-pop);&:hover{transform:scale(1.08) rotate(-6deg)}}.main-content{flex-grow:1;flex-shrink:1;flex-basis:0%;width:100%;max-width:1320px;margin:0 auto;padding:2.5rem 2.25rem 4rem}.page-view{display:none;&.active{display:block;animation:pageViewEnter .35s var(--ease-out) both}}.section-block{margin-bottom:4rem}.hero-banner{position:relative;isolation:isolate;background-color:var(--color-white);border:2px solid var(--color-main);border-radius:var(--radius-lg);padding:2.5rem 2.75rem;margin:.5rem .75rem 4rem 0;display:flex;align-items:center;justify-content:space-between;gap:2rem;&::before{content:"";position:absolute;z-index:-1;inset:10px -12px -12px 10px;background-color:var(--color-main);opacity:.35;border-radius:var(--radius-lg);transform:rotate(1.2deg)}&::after{content:"";position:absolute;left:2.75rem;right:40%;bottom:-1px;height:12px;background-image:repeating-conic-gradient(var(--color-sub) 0 25%,transparent 0 50%);background-size:12px 12px;opacity:.35;border-radius:4px 4px 0 0}.hero-content{.hero-tag{font-family:var(--font-en);font-weight:600;font-size:.9rem;letter-spacing:.12em;color:var(--color-sub-deep);margin-bottom:.4rem}.hero-title{font-family:var(--font-title);font-weight:900;font-size:clamp(1.9rem,4vw,2.8rem);line-height:1.2;letter-spacing:.04em;margin-bottom:.6rem}.hero-desc{font-size:1rem;color:var(--color-text)}}.hero-date-box{flex-shrink:0;position:relative;text-align:center;background-color:var(--color-white);border:2px solid var(--color-sub);border-radius:var(--radius-md);padding:1.6rem 1.9rem 1.1rem;box-shadow:var(--shadow-offset-sub);transform:rotate(2deg);.hero-date-today{position:absolute;top:-.9rem;left:-.6rem;font-size:.85rem}.hero-date-year{font-family:var(--font-en);font-weight:500;font-size:.9rem;color:var(--color-gray);letter-spacing:.1em}.hero-date-number{font-family:var(--font-en);font-size:2.6rem;font-weight:600;color:var(--color-black);line-height:1.05}.hero-date-day{font-size:.88rem;font-weight:900;color:var(--color-main)}}.deco-tri{&._pink{right:-1.5rem;top:-1.8rem}&._mint{right:9.5rem;bottom:-1rem}&._line{left:-.9rem;bottom:1.4rem}}}.upcoming-filter-bar{display:flex;gap:.6rem;margin-bottom:1.75rem;flex-wrap:wrap}.upcoming-events-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:2.25rem 1.75rem}.today-events-container{--today-min-h:380px;display:grid;grid-template-columns:minmax(0,1fr);min-height:var(--today-min-h)}.today-skeleton{border-radius:var(--radius-lg);background-color:color-mix(in srgb,var(--color-line) 55%,var(--color-white));background-image:linear-gradient(100deg,transparent 30%,color-mix(in srgb,#fff 70%,transparent) 50%,transparent 70%);background-size:200% 100%;animation:skeletonShine 1.4s linear infinite}.today-featured{display:grid;grid-template-columns:minmax(0,1fr);gap:2rem;&.is-tomorrow{grid-template-columns:240px minmax(0,1fr)}}.today-stage{--stage-ink:color-mix(in oklab,var(--stage-color) 70%,var(--color-black));position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:240px minmax(0,1fr);align-items:center;gap:3rem;min-height:340px;padding:3.25rem 3rem 2.5rem;border-radius:var(--radius-lg);border:3px solid color-mix(in srgb,var(--stage-color) 55%,white);background-color:color-mix(in srgb,var(--stage-color) 10%,var(--color-white));box-shadow:8px 8px 0 color-mix(in srgb,var(--stage-color) 35%,white);.stage-bg{position:absolute;inset:0;z-index:-1;background-image:radial-gradient(color-mix(in srgb,var(--stage-color) 22%,transparent) 1.5px,transparent 1.5px);background-size:18px 18px;&::before,&::after{content:"✦";position:absolute;color:color-mix(in srgb,var(--stage-color) 70%,white);animation:twinkleKira 1.2s ease-in-out infinite alternate}&::before{top:12%;right:8%;font-size:2.2rem}&::after{bottom:14%;right:30%;font-size:1.3rem;animation-delay:.6s}}.stage-rays{position:absolute;left:calc(3rem + 120px);top:50%;width:1200px;aspect-ratio:1;translate:-50% -50%;background-image:repeating-conic-gradient(color-mix(in srgb,var(--stage-color) 20%,transparent) 0 9deg,transparent 9deg 18deg);mask-image:radial-gradient(closest-side,color-mix(in srgb,#000 100%,transparent) 20%,transparent 75%);animation:stageRaysSpin 40s linear infinite}.stage-spot{position:absolute;top:-10%;z-index:0;width:200px;height:130%;background-image:linear-gradient(to bottom,color-mix(in srgb,#fff 85%,transparent),transparent 90%);clip-path:polygon(44% 0,56% 0,100% 100%,0 100%);transform-origin:50% 0;pointer-events:none;animation:stageSpotSwing 4s ease-in-out infinite alternate;&._l{left:12%}&._r{right:16%;animation-delay:-2s}}.stage-avatar-wrap{position:relative;z-index:2;justify-self:center;width:220px;aspect-ratio:1;cursor:pointer;outline:none;&:focus-visible .stage-ring{border-style:solid}}.stage-ring{position:absolute;inset:-16px;border-radius:50%;border:3px dashed var(--stage-color);animation:stageRaysSpin 16s linear infinite}.stage-info{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;gap:.55rem;min-width:0}.stage-kicker{margin:0 0 .25rem;font-family:var(--font-en);font-weight:700;font-size:clamp(1.6rem,3.4vw,2.7rem);line-height:1;color:var(--stage-ink);text-shadow:3px 3px 0 var(--color-white),-1px -1px 0 var(--color-white);span{display:inline-block;animation:kickerWave 1.8s ease-in-out infinite;animation-delay:calc(var(--i) * .07s)}}.stage-labels,.stage-members{display:flex;flex-wrap:wrap;gap:.4rem}.stage-member-pill{font-size:.85rem;font-weight:700;padding:.15rem .7rem;border-radius:var(--radius-full);background-color:color-mix(in srgb,var(--pill-color,var(--color-main)) 26%,white);color:var(--color-black)}.stage-name{display:flex;flex-wrap:wrap;align-items:baseline;gap:.2rem .75rem;margin:0;.name-jp{font-family:var(--font-title);font-weight:900;font-size:clamp(1.8rem,3vw,2.5rem);color:var(--color-black)}.name-en{font-family:var(--font-en);font-weight:600;font-size:1rem;color:var(--stage-ink);text-transform:capitalize}}.stage-event{margin:0;font-weight:700;color:var(--color-gray)}.stage-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;.stage-date{font-family:var(--font-en);font-weight:600;font-size:1.15rem;color:var(--color-main)}.stage-countdown{padding:.3rem 1rem;border-radius:var(--radius-full);background-color:var(--color-main);color:var(--color-white);font-weight:900;animation:countdownPulse 1.4s ease-in-out infinite}}&:is(.is-day-1,.is-day-2) .stage-rays{animation-duration:90s}.stage-popper{--popper-flip:1;position:absolute;bottom:.6rem;padding:0;font-size:2.3rem;line-height:1;color:var(--color-main);scale:var(--popper-flip) 1;pointer-events:auto;transition:scale .2s var(--ease-pop);&._l{left:.8rem}&._r{--popper-flip:-1;right:.8rem}&:hover,&:focus-visible{scale:calc(var(--popper-flip) * 1.1) 1.1}}&.is-popping .stage-popper{animation:popperKick .5s var(--ease-pop)}}.today-stage .stage-avatar-wrap .stage-avatar{border-radius:50%;overflow:hidden;border:6px solid var(--color-white);background-image:linear-gradient(150deg,color-mix(in srgb,var(--stage-color) 55%,white),var(--color-white));box-shadow:0 14px 30px color-mix(in srgb,var(--stage-color) 40%,transparent);.avatar-emoji-fallback{font-size:5rem}}.stage-party-hat{position:absolute;z-index:3;top:-64px;left:16%;width:84px;height:104px;rotate:-22deg;transform-origin:50% 100%;animation:hatWiggle 1.4s ease-in-out infinite alternate;&::before{content:"";position:absolute;inset:0;clip-path:polygon(50% 0,100% 100%,0 100%);background-image:repeating-linear-gradient(-58deg,var(--color-main) 0 12px,#FFD43B 12px 24px,var(--color-sub) 24px 36px)}&::after{content:"";position:absolute;left:-8px;right:-8px;bottom:-6px;height:14px;border-radius:var(--radius-full);background-color:var(--color-white);background-image:radial-gradient(var(--color-main) 2px,transparent 2.5px);background-size:10px 10px;border:2px solid var(--color-main)}.hat-pom{position:absolute;top:-14px;left:calc(50% - 14px);width:28px;height:28px;border-radius:50%;background-image:radial-gradient(circle at 35% 35%,var(--color-white),#FFE066 70%);box-shadow:0 2px 6px color-mix(in srgb,var(--color-black) 20%,transparent);animation:pomBounce .7s ease-in-out infinite alternate}}.stage-sticker{position:absolute;z-index:3;right:-6px;bottom:4px;display:grid;place-items:center;width:58px;height:58px;border-radius:50%;border:3px solid var(--color-white);background-color:var(--color-main);color:var(--color-white);font-size:1.7rem;box-shadow:0 4px 10px color-mix(in srgb,var(--color-black) 18%,transparent);animation:stickerWobble 2.2s ease-in-out infinite;&.is-sub{background-color:var(--color-sub)}&._alt{right:auto;left:-6px}}.stage-rosette{position:absolute;z-index:3;top:-4px;right:-14px;width:78px;height:78px;display:grid;place-items:center;animation:stickerWobble 2.6s ease-in-out infinite;&::before{content:"";position:absolute;inset:0;border-radius:50%;background-image:repeating-conic-gradient(var(--color-main) 0 10deg,var(--color-main-deep) 10deg 20deg);box-shadow:0 4px 10px color-mix(in srgb,var(--color-main) 40%,transparent)}&::after{content:"";position:absolute;top:62px;left:18px;z-index:-1;width:42px;height:40px;background-color:var(--color-sub);clip-path:polygon(0 0,100% 0,100% 100%,50% 72%,0 100%)}b{position:relative;display:grid;place-items:center;width:56px;height:56px;border-radius:50%;border:2px dashed var(--color-white);background-color:var(--color-main);color:var(--color-white);font-family:var(--font-title);font-weight:900;font-size:1.5rem}}.stage-bubble{position:absolute;z-index:1;font-size:1.7rem;opacity:0;animation:bubbleRise 4.2s ease-in infinite;&._a{left:-18%;bottom:10%}&._b{right:-20%;bottom:34%;animation-delay:1.4s}&._c{left:8%;bottom:-8%;animation-delay:2.8s}}.stage-confetti{position:absolute;inset:0;z-index:4;pointer-events:none;.confetti-piece{position:absolute;left:var(--x0);bottom:-12px;width:9px;height:13px;border-radius:2px;background-color:var(--c);animation:confettiShoot var(--dur) var(--delay) both;&._streamer{width:5px;height:28px;border-radius:3px}}}.tomorrow-teaser{align-self:center;display:flex;flex-direction:column;align-items:center;gap:1.4rem;padding-top:14px;.teaser-polaroid{position:relative;width:100%;margin:0;padding:12px 12px 14px;border-radius:10px;background-color:var(--color-white);box-shadow:var(--shadow-soft);rotate:-4deg;animation:teaserBob 3.6s ease-in-out infinite}.teaser-tape{position:absolute;z-index:1;top:-12px;left:calc(50% - 45px);width:90px;height:24px;rotate:4deg;background-image:repeating-linear-gradient(45deg,color-mix(in srgb,var(--color-main) 55%,transparent) 0 8px,color-mix(in srgb,#fff 55%,transparent) 8px 16px)}.teaser-gif{width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:6px;vertical-align:top;background:url('images/deco/tomorrow-last.webp') center / cover no-repeat}.teaser-caption{margin-top:.6rem;text-align:center;font-family:var(--font-title);font-weight:900;font-size:.95rem;color:var(--color-main)}.teaser-timer-box{position:relative;display:flex;flex-direction:column;align-items:center;padding:.55rem 1.4rem .6rem;border-radius:var(--radius-full);background-color:var(--color-sub);color:var(--color-white);&::before{content:"";position:absolute;top:-9px;left:calc(50% - 10px);width:20px;height:10px;background-color:var(--color-sub);clip-path:polygon(50% 0,100% 100%,0 100%)}}.teaser-timer-label{font-family:var(--font-en);font-size:.7rem;font-weight:600;letter-spacing:.2em}.teaser-timer{font-family:var(--font-en);font-size:1.7rem;font-weight:700;line-height:1.1;font-variant-numeric:tabular-nums}}.today-stage-slider{position:relative;min-width:0}.today-swiper{height:100%;padding:0 10px 10px 0;&:not(.swiper-initialized) .swiper-slide:not(:first-child){display:none}.swiper-slide{height:auto;.today-stage{height:calc(100% - 8px)}}.swiper-pagination{bottom:1.4rem;.swiper-pagination-bullet{width:10px;height:10px;background-color:var(--color-line);opacity:1;transition:width .25s var(--ease-out),background-color .25s ease}.swiper-pagination-bullet-active{width:26px;border-radius:var(--radius-full);background-color:var(--color-main)}}}.today-swiper-prev,.today-swiper-next{position:absolute;z-index:5;top:1.25rem;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;border:2px solid var(--color-sub);background-color:var(--color-white);color:var(--color-sub);font-family:var(--font-en);font-size:1.2rem;font-weight:700;transition:transform .2s var(--ease-pop),background-color .2s ease,color .2s ease,opacity .2s ease;&:hover{transform:scale(1.08);background-color:var(--color-sub);color:var(--color-white)}&.swiper-button-disabled{opacity:.35;pointer-events:none}&.swiper-button-lock{display:none}}.today-swiper-prev{right:4.75rem}.today-swiper-next{right:1.5rem}@keyframes skeletonShine{from{background-position:100% 0}to{background-position:-100% 0}}@keyframes stageRaysSpin{to{rotate:360deg}}@keyframes stageSpotSwing{from{rotate:-14deg}to{rotate:14deg}}@keyframes kickerWave{0%,60%,100%{translate:0 0}30%{translate:0 -10px}}@keyframes countdownPulse{0%,100%{scale:1}50%{scale:1.08}}@keyframes popperKick{0%{translate:0 0}40%{translate:0 -10px}100%{translate:0 0}}@keyframes hatWiggle{from{rotate:-26deg}to{rotate:-14deg}}@keyframes pomBounce{from{translate:0 0}to{translate:0 -4px}}@keyframes stickerWobble{0%,100%{rotate:-8deg}50%{rotate:8deg}}@keyframes bubbleRise{0%{opacity:0;translate:0 0;scale:.6}20%{opacity:1}100%{opacity:0;translate:0 -170px;scale:1.15}}@keyframes confettiShoot{0%{transform:translate(0,0) rotate(0) rotateY(0);opacity:1;animation-timing-function:cubic-bezier(.15,.75,.35,1)}40%{transform:translate(calc(var(--dx) * .75),var(--dy)) rotate(calc(var(--rot) * .45)) rotateY(360deg);opacity:1;animation-timing-function:cubic-bezier(.45,0,.8,.6)}100%{transform:translate(var(--dx),calc(var(--dy) + 380px)) rotate(var(--rot)) rotateY(1080deg);opacity:0}}@keyframes teaserBob{0%,100%{translate:0 0;rotate:-4deg}50%{translate:0 -8px;rotate:-1deg}}@media (prefers-reduced-motion:reduce){.today-stage,.tomorrow-teaser{*,::before,::after{animation-name:none!important}}}.photo-card,.member-card{--photo-ink:color-mix(in oklab,var(--photo-color,var(--color-main)) 72%,var(--color-black));position:relative;display:flex;flex-direction:column;background-color:var(--color-white);border:2px solid color-mix(in srgb,var(--photo-color,var(--color-main)) 75%,white);border-radius:var(--radius-md);padding:10px 10px 12px;box-shadow:var(--shadow-soft);cursor:pointer;transition:transform .3s var(--ease-pop),box-shadow .3s ease;&:hover{transform:translateY(-6px) rotate(-1deg);box-shadow:8px 10px 0 color-mix(in srgb,var(--photo-color,var(--color-main)) 45%,white);.photo-card-kira{animation:twinkleKira .8s ease-in-out infinite alternate}.avatar-img{transform:scale(1.05)}}.photo-card-img,.member-card-img{position:relative;aspect-ratio:1 / 1;border-radius:var(--radius-sm);overflow:hidden;background-image:linear-gradient(150deg,color-mix(in srgb,var(--photo-color,var(--color-main)) 55%,white),var(--color-white));.avatar-img{transition:transform .4s var(--ease-out)}}.photo-deco-hanko{position:absolute;bottom:8px;right:8px;z-index:2;width:68px;height:68px;border-radius:50%;border:2.5px solid #FF4757;background-color:color-mix(in srgb,#fff 94%,transparent);display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(-12deg);box-shadow:0 4px 14px color-mix(in srgb,#FF4757 25%,transparent);transition:transform .25s var(--ease-pop);&::before{content:"";position:absolute;inset:3px;border-radius:50%;border:1px dashed #FF4757;pointer-events:none}.hanko-text{font-family:var(--font-title);font-weight:900;font-size:.9rem;color:#FF4757;text-align:center;line-height:1.15;padding:0 6px}&.is-today,&.is-tomorrow{border-color:var(--color-white);&::before{border-color:color-mix(in srgb,#fff 60%,transparent)}.hanko-text{color:var(--color-white)}}&.is-today{background-color:#FF4757;box-shadow:0 6px 18px color-mix(in srgb,#FF4757 45%,transparent)}&.is-tomorrow{background-color:#FFA502;box-shadow:0 6px 18px color-mix(in srgb,#FFA502 40%,transparent)}}&:hover .photo-deco-hanko{transform:rotate(-6deg) scale(1.08)}.photo-card-name{display:flex;flex-direction:column;min-width:0;.name-jp{font-family:var(--font-title);font-weight:900;font-size:1.1rem;line-height:1.3;color:var(--color-black)}.name-en{font-family:var(--font-en);font-weight:600;font-size:.82rem;letter-spacing:.04em;color:var(--photo-ink);text-transform:capitalize}}}.photo-card{&.is-group{cursor:default}.photo-card-kira{position:absolute;z-index:3;font-size:1.35rem;line-height:1;color:var(--photo-ink);pointer-events:none;&._rt{top:-12px;right:-10px}&._lb{bottom:-12px;left:-10px;font-size:1rem;color:var(--color-yellow)}}.photo-card-img{aspect-ratio:4 / 3}.photo-card-body{display:flex;flex-direction:column;gap:.35rem;padding:.8rem .3rem 0;flex-grow:1;flex-shrink:1;flex-basis:0%}.photo-card-event{font-size:.85rem;color:var(--color-text);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.photo-card-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:.25rem}.photo-card-date{display:inline-flex;align-items:center;gap:.35rem;font-family:var(--font-en);font-weight:600;font-size:1rem;letter-spacing:.04em;color:var(--color-main);.monday-face{width:24px;height:24px}}}.today-empty-card{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:var(--color-white);border:2px dashed var(--color-sub);border-radius:var(--radius-lg);padding:3rem 2rem;text-align:center;.empty-icon{font-size:3rem;margin-bottom:.5rem;color:var(--color-sub);.icon{stroke-width:1.6}}.empty-title{font-family:var(--font-title);font-weight:900;font-size:1.3rem;color:var(--color-black);margin-bottom:.4rem}.empty-desc{color:var(--color-gray);font-size:.95rem;margin-bottom:1.5rem}.btn-go-calendar{font-size:.95rem;font-weight:700;padding:.65rem 1.6rem;border-radius:var(--radius-full);background-color:var(--color-sub);color:var(--color-white);transition:transform .2s var(--ease-pop);&:hover{transform:translateY(-2px)}}}@keyframes twinkleKira{from{transform:scale(.9) rotate(0deg);opacity:.7}to{transform:scale(1.25) rotate(20deg);opacity:1}}.calendar-top-bar{background-color:var(--color-white);border:2px solid var(--color-sub);border-radius:var(--radius-lg);box-shadow:var(--shadow-offset-sub);padding:1.1rem 1.5rem;margin:0 6px 2rem 0;display:flex;align-items:center;justify-content:space-between;gap:1rem 1.5rem;flex-wrap:wrap}.calendar-nav-controls{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;.nav-arrow-btn{width:42px;height:42px;border-radius:50%;border:2px solid var(--color-sub);color:var(--color-sub-deep);display:flex;align-items:center;justify-content:center;transition:background-color .2s ease,color .2s ease,transform .2s var(--ease-pop);&:hover{background-color:var(--color-sub);color:var(--color-white);transform:scale(1.08)}}.calendar-month-label{font-family:var(--font-en),var(--font-title);font-weight:600;font-size:1.7rem;color:var(--color-black);min-width:170px;text-align:center}.btn-today{font-size:.85rem;font-weight:700;padding:.45rem 1rem;border-radius:var(--radius-full);background-color:var(--color-main);color:var(--color-white);transition:transform .2s var(--ease-pop);&:hover{transform:translateY(-2px)}}}.calendar-toolbar{display:flex;align-items:center;gap:.75rem 1rem;flex-wrap:wrap;.filter-pills{display:flex;gap:.5rem;flex-wrap:wrap;.filter-pill{user-select:none;input[type="checkbox"]{display:none}}}}.member-select,.member-select::picker(select){appearance:base-select}.member-select{display:flex;align-items:center;width:min(300px,100%);padding:.3rem .9rem .3rem .35rem;border-radius:var(--radius-full);border:2px solid var(--color-line);background-color:var(--color-paper-soft);color:var(--color-black);font-size:.9rem;font-weight:700;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease;&:focus{outline:none}&:hover{border-color:var(--color-main)}&:focus-visible,&:open{border-color:var(--color-main);box-shadow:0 0 0 3px var(--color-main-light)}&::picker-icon{content:"";width:.55rem;height:.55rem;border-right:2.5px solid var(--color-sub);border-bottom:2.5px solid var(--color-sub);rotate:45deg;translate:0 -2px;transition:rotate .25s var(--ease-pop),translate .25s var(--ease-pop)}&:open::picker-icon{rotate:225deg;translate:0 2px}.member-select-button{flex-grow:1;flex-shrink:1;flex-basis:0%;min-width:0;selectedcontent{display:flex;align-items:center;gap:.5rem;min-width:0}.option-oshi{display:none}}&::picker(select){max-height:min(420px,60dvh);margin-block-start:.45rem;padding:.4rem;border-radius:var(--radius-md);border:2px solid var(--color-line);background-color:var(--color-white);box-shadow:var(--shadow-soft);scrollbar-width:thin;scrollbar-color:var(--color-line) transparent;opacity:0;translate:0 -6px;transition:opacity .18s ease,translate .22s var(--ease-out),overlay .22s allow-discrete,display .22s allow-discrete}&:open::picker(select){opacity:1;translate:0 0}}@starting-style{.member-select:open::picker(select){opacity:0;translate:0 -6px}}.member-option{--option-color:var(--color-main);display:flex;align-items:center;gap:.6rem;padding:.4rem .6rem;border-radius:var(--radius-sm);font-size:.9rem;font-weight:700;color:var(--color-black);cursor:pointer;transition:background-color .15s ease;&:hover,&:focus-visible{background-color:color-mix(in srgb,var(--option-color) 16%,var(--color-white));outline:none}&:checked{background-color:color-mix(in srgb,var(--option-color) 30%,var(--color-white))}&::checkmark{order:1;margin-inline-start:auto;color:var(--color-main);font-weight:900}.option-name{flex-grow:1;flex-shrink:1;flex-basis:0%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.option-oshi{font-size:.85rem;white-space:nowrap}}.option-avatar{flex-shrink:0;width:28px;height:28px;border-radius:50%;border:2px solid color-mix(in srgb,var(--option-color,var(--color-main)) 70%,white);object-fit:cover;&.is-icon{display:grid;place-items:center;font-size:.95rem;background-color:var(--color-paper-soft)}}.calendar-member-filter-banner{background-color:var(--color-main-light);border:2px dashed var(--color-main);border-radius:var(--radius-md);padding:.75rem 1.25rem;margin-bottom:1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;.filter-desc{font-weight:700;color:var(--color-main-deep)}.btn-clear-filter{font-size:.85rem;font-weight:700;padding:.3rem .9rem;background-color:var(--color-main);color:var(--color-white);border-radius:var(--radius-full)}}.calendar-layout-container{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:2rem;align-items:start}.calendar-main-column{min-width:0;background-color:var(--color-white);border-radius:var(--radius-lg);padding:1.25rem;box-shadow:var(--shadow-soft)}.weekday-labels-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.4rem;margin-bottom:.5rem;.weekday-header{font-family:var(--font-title);font-size:.95rem;font-weight:900;text-align:center;padding:.35rem 0;color:var(--color-text);border-radius:var(--radius-full);background-color:var(--color-paper-soft);&.is-sun{color:var(--color-main)}&.is-sat{color:var(--color-cyan)}}}.calendar-cards-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.4rem;&.slide-from-left{animation:calendarSlideLeft .32s var(--ease-out) both}&.slide-from-right{animation:calendarSlideRight .32s var(--ease-out) both}.day-cell{min-width:0;min-height:104px;background-color:var(--color-paper-soft);border-radius:var(--radius-sm);padding:.45rem;display:flex;flex-direction:column;border:2px solid transparent;cursor:pointer;user-select:none;transition:border-color .2s ease,background-color .2s ease,transform .2s var(--ease-pop),box-shadow .2s ease;&:hover{background-color:var(--color-white);border-color:var(--color-sub);transform:translateY(-2px)}&.is-today{background-color:var(--color-white);border-color:var(--color-main);.day-number::after{content:"TODAY";font-size:.55rem;font-weight:600;letter-spacing:.06em;background-color:var(--color-main);color:var(--color-white);padding:.05rem .4rem;border-radius:var(--radius-full);margin-left:.3rem;vertical-align:middle}}&.is-active{background-color:var(--color-white);border-color:var(--color-sub);box-shadow:4px 4px 0 var(--color-sub);transform:translateY(-2px)}.day-number-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:.3rem;.day-number{font-family:var(--font-en);font-size:1.05rem;font-weight:600;color:var(--color-black)}.mobile-dots{display:none;gap:3px;.mobile-dot{width:6px;height:6px;border-radius:50%;background-color:var(--dot-color,var(--color-main))}}}.cell-badges-wrapper{display:flex;flex-direction:column;gap:3px;min-width:0;.mini-event-chip{display:flex;align-items:center;gap:3px;min-width:0;font-size:.72rem;font-weight:700;line-height:1.5;padding:.1rem .45rem;border-radius:var(--radius-full);color:var(--color-black);background-color:color-mix(in srgb,var(--chip-color,var(--color-main)) 24%,white);.chip-emoji{flex-shrink:0;font-size:.7rem}.chip-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}.more-events-chip{font-family:var(--font-en);font-size:.7rem;font-weight:600;color:var(--color-main);text-align:center}}}.empty-cell{background-color:transparent;cursor:default;pointer-events:none}}.calendar-detail-panel{position:sticky;top:1.5rem;padding:.8rem 6px 0 0;.detail-panel-card{position:relative;background-color:var(--color-white);border:2px solid var(--color-sub);border-radius:var(--radius-lg);box-shadow:var(--shadow-offset-sub);padding:1.9rem 1.4rem 1.4rem;.detail-header{padding-bottom:.9rem;margin-bottom:1.1rem;border-bottom:2px dashed var(--color-line);.detail-badge{position:absolute;top:-.85rem;left:-.55rem;font-family:var(--font-main);font-weight:900;font-size:.78rem;letter-spacing:.04em}.panel-date-title{font-family:var(--font-title);font-weight:900;font-size:1.3rem;color:var(--color-black)}}}.panel-events-list{display:flex;flex-direction:column;gap:.75rem;&.detail-inner{animation:detailPopIn .3s var(--ease-out) both}.panel-event-item{display:flex;align-items:flex-start;gap:.85rem;background-color:var(--color-paper-soft);border-radius:var(--radius-md);padding:.85rem;border:2px solid transparent;cursor:pointer;transition:border-color .2s ease,transform .2s var(--ease-pop);&:hover{border-color:color-mix(in srgb,var(--item-color,var(--color-main)) 70%,white);transform:translateY(-2px)}.item-body{display:flex;flex-direction:column;gap:.2rem;min-width:0}.item-member-name{font-family:var(--font-title);font-weight:900;font-size:1.02rem;color:var(--color-black);line-height:1.35}.item-event-title{font-size:.85rem;color:var(--color-text)}.item-members-list{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.25rem;.mini-member-pill{font-size:.72rem;font-weight:700;padding:.05rem .55rem;border-radius:var(--radius-full);background-color:color-mix(in srgb,var(--pill-color,var(--color-main)) 26%,white);color:var(--color-black)}}}.panel-empty-state{text-align:center;padding:2rem 1rem;color:var(--color-gray);.empty-tea-icon{font-size:2.2rem;margin-bottom:.4rem;color:var(--color-sub)}p{font-weight:700}}}}:root:has(.day-dialog[open]){overflow:hidden}.calendar-detail-panel.day-dialog{position:fixed;inset:0;width:100%;max-width:100%;height:100dvh;max-height:100dvh;margin:0;padding:0;border:none;background-color:var(--color-white);opacity:0;translate:0 24px;transition:opacity .25s ease,translate .25s var(--ease-out),overlay .25s allow-discrete,display .25s allow-discrete;&[open]{opacity:1;translate:0 0}&::backdrop{background-color:var(--color-white)}.detail-panel-card{display:flex;flex-direction:column;height:100%;box-sizing:border-box;padding:1.5rem 1.25rem calc(1.25rem + env(safe-area-inset-bottom));border:none;border-radius:0;box-shadow:none;.detail-header .detail-badge{position:relative;top:auto;left:auto;margin-bottom:.4rem}.panel-date-title{padding-right:3rem}}.dialog-close-btn{position:absolute;top:1.2rem;right:1rem;width:2.6rem;height:2.6rem;border-radius:50%;font-size:1.1rem;color:var(--color-gray);background-color:var(--color-paper-soft);&:focus-visible{outline:2px solid var(--color-sub);outline-offset:2px}}.panel-events-list{flex-grow:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:2px 2px .25rem}}@starting-style{.calendar-detail-panel.day-dialog[open]{opacity:0;translate:0 24px}}@media (prefers-reduced-motion:reduce){.day-dialog{transition-duration:.01s}}@keyframes calendarSlideLeft{from{opacity:.35;transform:translateX(-26px)}to{opacity:1;transform:translateX(0)}}@keyframes calendarSlideRight{from{opacity:.35;transform:translateX(26px)}to{opacity:1;transform:translateX(0)}}@keyframes detailPopIn{from{opacity:.4;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.members-search-bar{position:relative;max-width:460px;margin-bottom:2rem;.search-bar-icon{position:absolute;top:50%;left:1.1rem;translate:0 -50%;color:var(--color-gray);pointer-events:none}input{width:100%;padding:.75rem 1.4rem .75rem 2.9rem;border-radius:var(--radius-full);border:2px solid var(--color-line);background-color:var(--color-white);font-size:1rem;outline:none;transition:border-color .2s ease,box-shadow .2s ease;&:focus{border-color:var(--color-main);box-shadow:0 0 0 4px var(--color-main-light)}}}.members-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:1.75rem 1.25rem}.member-card{padding:8px 8px 10px;.photo-deco-hanko{width:58px;height:58px;bottom:6px;right:6px;.hanko-text{font-size:.74rem}}.member-card-body{display:flex;align-items:center;justify-content:space-between;gap:.25rem;padding:.6rem .2rem 0;.name-jp{font-size:.98rem}}.member-card-dates{display:flex;flex-wrap:wrap;gap:.1rem .6rem;padding:.3rem .2rem 0;font-family:var(--font-en);font-size:.78rem;font-weight:500;color:var(--color-gray)}}.member-profile-subview{animation:memberProfileEnter .38s var(--ease-out) both;.member-profile-top-nav{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:2rem;flex-wrap:wrap;.member-back-btn,.member-view-calendar-btn{font-size:.92rem;font-weight:700;padding:.6rem 1.3rem;border-radius:var(--radius-full);transition:transform .2s var(--ease-pop),background-color .2s ease,color .2s ease;&:hover{transform:translateY(-2px)}}.member-back-btn{background-color:var(--color-white);color:var(--color-sub-deep);border:2px solid var(--color-sub);&:hover{background-color:var(--color-sub);color:var(--color-white)}}.member-view-calendar-btn{background-color:var(--color-sub);color:var(--color-white)}}.member-spotlight-card{--member-ink:color-mix(in oklab,var(--member-color,var(--color-main)) 72%,var(--color-black));position:relative;background-color:var(--color-white);border:2px solid color-mix(in srgb,var(--member-color,var(--color-main)) 75%,white);border-radius:var(--radius-lg);box-shadow:8px 8px 0 color-mix(in srgb,var(--member-color,var(--color-main)) 40%,white);margin:0 8px 3.5rem 0;overflow:hidden;.member-hero-header{display:flex;align-items:center;gap:2.5rem;padding:2.5rem;background-image:repeating-conic-gradient(color-mix(in srgb,var(--member-color,var(--color-main)) 18%,white) 0 25%,transparent 0 50%),linear-gradient(135deg,color-mix(in srgb,var(--member-color,var(--color-main)) 30%,white),var(--color-white) 75%);background-size:28px 28px,auto;.member-hero-photo{flex-shrink:0;width:210px;aspect-ratio:1 / 1;padding:10px 10px 34px;background-color:var(--color-white);border-radius:var(--radius-sm);box-shadow:0 14px 30px color-mix(in srgb,var(--color-black) 15%,transparent);transform:rotate(-3deg);animation:heroPhotoPop .5s var(--ease-pop) both;box-sizing:content-box;.member-avatar{border-radius:6px;overflow:hidden;background-image:linear-gradient(150deg,color-mix(in srgb,var(--member-color,var(--color-main)) 55%,white),var(--color-white))}}.member-hero-title-box{display:flex;flex-direction:column;align-items:flex-start;gap:.2rem;.member-hero-oshi{font-size:1.8rem;line-height:1}.member-hero-name{font-family:var(--font-title);font-weight:900;font-size:clamp(1.8rem,4vw,2.6rem);color:var(--color-black);line-height:1.25}.member-hero-sub{font-family:var(--font-en);font-size:1.15rem;font-weight:600;letter-spacing:.06em;text-transform:capitalize;color:var(--member-ink)}.heart-btn{margin-top:.4rem;width:46px;height:46px;background-color:var(--color-white);box-shadow:0 4px 12px color-mix(in srgb,var(--color-black) 10%,transparent);svg{width:26px;height:26px}}}}.member-countdown-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem;padding:1.75rem 2.5rem 2.25rem;.member-date-card{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;background-color:var(--color-paper-soft);border-radius:var(--radius-md);padding:1.25rem 1.4rem;.date-card-label{font-size:.78rem;font-weight:900;color:var(--color-white);background-color:var(--color-sub);padding:.1rem .8rem;border-radius:var(--radius-full)}.date-card-date{display:block;font-family:var(--font-en);font-size:2rem;font-weight:600;line-height:1.1;color:var(--color-black)}.date-card-countdown{font-size:.95rem;font-weight:700;color:var(--color-main)}}}}.member-timeline-block{.timeline-header{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-bottom:2rem;.timeline-count{white-space:nowrap;font-family:var(--font-en);font-size:.95rem;font-weight:600;color:var(--color-gray)}}.member-events-timeline{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:2rem 1.75rem;padding:0 6px 6px 0;.timeline-event-item{position:relative;background-color:var(--color-white);border:2px solid var(--color-sub);border-radius:var(--radius-md);box-shadow:var(--shadow-offset-sub);padding:1.75rem 1.2rem 1.2rem;min-height:110px;transition:transform .2s var(--ease-pop);&:hover{transform:translateY(-3px)}.event-date-tag{position:absolute;top:-.8rem;left:-.55rem;font-size:1rem}.event-title-text{font-size:.98rem;font-weight:700;color:var(--color-black)}.event-status{display:inline-block;margin-top:.75rem;padding:.2rem .75rem;border-radius:999px;font-family:var(--font-en);font-size:.82rem;font-weight:600;color:var(--color-sub);background-color:color-mix(in srgb,var(--color-sub) 14%,transparent);&:is(.is-today,.is-tomorrow,.is-soon){color:var(--color-main);background-color:color-mix(in srgb,var(--color-main) 14%,transparent)}&.is-past{color:var(--color-gray);background-color:var(--color-line)}}&.is-past{border-color:var(--color-line);box-shadow:6px 6px 0 var(--color-line);.event-date-tag{filter:grayscale(.6)}}}.timeline-empty{grid-column:1 / -1;text-align:center;padding:2.5rem 0;color:var(--color-gray);font-weight:700;background-color:var(--color-white);border:2px dashed var(--color-line);border-radius:var(--radius-md)}}}}@keyframes memberProfileEnter{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes heroPhotoPop{from{opacity:0;transform:scale(.6) rotate(-12deg)}to{opacity:1;transform:scale(1) rotate(-3deg)}}.stripe-divider{height:12px;background-image:repeating-linear-gradient(60deg,var(--color-main) 0 34px,transparent 34px 42px,var(--roboco-color) 42px 76px,transparent 76px 84px,var(--mel-color) 84px 118px,transparent 118px 126px,var(--color-sub) 126px 160px,transparent 160px 168px,var(--shion-color) 168px 202px,transparent 202px 210px,var(--sora-color) 210px 244px,transparent 244px 252px,var(--matsuri-color) 252px 286px,transparent 286px 294px,var(--luna-color) 294px 328px,transparent 328px 336px,var(--mio-color) 336px 370px,transparent 370px 378px,var(--noel-color) 378px 412px,transparent 412px 420px,var(--marine-color) 420px 454px,transparent 454px 462px,var(--watame-color) 462px 496px,transparent 496px 504px)}.site-footer{background-color:var(--color-white);padding:2rem;text-align:center;.footer-brand{font-weight:900;font-size:.95rem;color:var(--color-black);margin-bottom:.2rem}small{font-family:var(--font-en);color:var(--color-gray);font-size:.85rem}}.koyomi-toast{position:fixed;bottom:2rem;right:2rem;background-color:var(--color-black);color:var(--color-white);padding:.85rem 1.6rem;border-radius:var(--radius-full);font-size:.95rem;font-weight:700;box-shadow:0 10px 30px color-mix(in srgb,#000 25%,transparent);z-index:99999;opacity:0;transform:translateY(20px) scale(.92);pointer-events:none;transition:opacity .3s var(--ease-out),transform .3s var(--ease-out);&.show{opacity:1;transform:translateY(0) scale(1)}}.oshi-burst-particle{position:fixed;pointer-events:none;user-select:none;z-index:999999;font-size:1.65rem;line-height:1;will-change:transform,opacity;animation:oshiBurstAnim .85s cubic-bezier(.12,.8,.32,1) forwards}@keyframes oshiBurstAnim{0%{opacity:1;transform:translate(-50%,-50%) scale(.25) rotate(0deg)}35%{opacity:1;transform:translate(calc(-50% + var(--tx) * .72),calc(-50% + var(--ty) * .72)) scale(var(--scale,1.35)) rotate(var(--rot,45deg))}100%{opacity:0;transform:translate(calc(-50% + var(--tx)),calc(-50% + var(--ty) - 35px)) scale(.45) rotate(calc(var(--rot,45deg) * 1.5))}}:is(.photo-card,.member-card,.today-stage,.timeline-event-item)[data-member="bae"],.member-spotlight-card[data-member="bae"] .member-hero-photo .avatar-img{rotate:180deg}.noscript-note{margin:0;padding:2rem 1.5rem;border-radius:var(--radius-lg);border:2px dashed var(--color-sub);background-color:var(--color-white);text-align:center;font-weight:700;line-height:1.8;color:var(--color-gray)}@media (scripting:none){.menu-toggle,.hero-date-box,.today-skeleton,.members-search-bar,.section-block:has(.upcoming-events-container),#today-summary-label,#members-list-subview .section-sub{display:none}.today-events-container{min-height:auto}.icon{display:none}#view-members{display:block;margin-top:4rem}.member-card{cursor:default}}@media (max-width:1460px){.main-content{padding-top:4.5rem}}@media (max-width:1100px){.today-featured.is-tomorrow{position:relative;grid-template-columns:minmax(0,1fr)}.tomorrow-teaser{position:absolute;z-index:6;top:-22px;right:-6px;width:128px;padding-top:0;gap:.55rem;.teaser-polaroid{padding:6px 6px 8px}.teaser-caption{display:none}.teaser-timer-box{padding:.25rem .8rem .3rem}.teaser-timer-label{font-size:.55rem}.teaser-timer{font-size:1rem}}.calendar-layout-container{grid-template-columns:minmax(0,1fr)}.calendar-detail-panel{position:static}}@media (max-width:768px){.main-content{padding:5rem 1rem 3rem}.section-header{margin-bottom:1.4rem;.section-sub{flex-basis:100%;padding-bottom:0}}.hero-banner{flex-direction:column;align-items:stretch;padding:1.75rem 1.4rem 2rem;margin-bottom:3rem;.hero-date-box{align-self:flex-start;margin-top:.5rem}.deco-tri._mint{right:2rem}}.today-events-container{--today-min-h:530px}.tomorrow-teaser{top:10px;right:10px;width:92px}.today-swiper .today-stage{padding-bottom:3.25rem}.today-stage{grid-template-columns:minmax(0,1fr);justify-items:center;gap:2rem;padding:4rem 1.25rem 1.75rem;text-align:center;.stage-rays{left:50%;top:calc(4rem + 85px)}.stage-avatar-wrap{width:170px}.stage-info{align-items:center}.stage-labels,.stage-members,.stage-name,.stage-meta{justify-content:center}}.stage-party-hat{top:-52px;width:66px;height:84px}.today-swiper-prev,.today-swiper-next{display:none}.upcoming-events-container{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1.5rem 1rem}.photo-card{.photo-card-img{aspect-ratio:1 / 1}.photo-deco-hanko{width:56px;height:56px;.hanko-text{font-size:.72rem}}}.members-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1.25rem .85rem}.calendar-top-bar{padding:1rem}.calendar-main-column{padding:.6rem}.calendar-cards-grid{gap:.25rem;.day-cell{min-height:56px;padding:.3rem;.cell-badges-wrapper{display:none}.day-number-row{flex-direction:column;align-items:flex-start;gap:2px;.mobile-dots{display:flex}}&.is-today .day-number::after{display:none}}}.member-profile-subview .member-spotlight-card{.member-hero-header{flex-direction:column;text-align:center;padding:2rem 1.25rem;gap:1.5rem;.member-hero-photo{width:170px}.member-hero-title-box{align-items:center}}.member-countdown-grid{padding:1.25rem}}}