:root{
--u:calc(min(100vw,480px)/440);
--ts:1;
--ink:#5c5b64;--accent:#a09fa3;--muted:#777;--line:#d3d3d3;--field:#e5e5e5;--wing:#c4c3c6;--wing2:#d3d3d3;--wing0:#ececee;
--th:'Noto Sans Thai',system-ui,-apple-system,'Segoe UI',sans-serif;
--serif:Georgia,'Times New Roman',serif;
--script:'Monsieur La Doulaise',cursive;
--spring:cubic-bezier(.2,1.25,.3,1);
--soft:cubic-bezier(.22,.8,.2,1);
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html{background:#fff}
body{margin:0;font-family:var(--th);color:var(--ink);background:#fff;min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{display:block;max-width:none;user-select:none;-webkit-user-drag:none}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer;border:0;background:none;padding:0}
.hide{display:none!important}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.sky{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.sky .fog{position:absolute;inset:-10%;background:
radial-gradient(ellipse 60% 22% at 25% 8%,#f2f2f2 0,rgba(242,242,242,.0) 70%),
radial-gradient(ellipse 48% 18% at 85% 42%,#f2f2f2 0,rgba(242,242,242,0) 70%),
radial-gradient(ellipse 64% 22% at 25% 82%,#f2f2f2 0,rgba(242,242,242,0) 72%);
filter:blur(20px);animation:fog 26s ease-in-out infinite alternate}
.sky .dots{position:absolute;inset:0;opacity:1;background-image:radial-gradient(circle,rgba(217,217,217,.55) 0 calc(2.5*var(--u)),transparent calc(2.6*var(--u))),radial-gradient(circle,rgba(217,217,217,.55) 0 calc(2.5*var(--u)),transparent calc(2.6*var(--u)));
background-size:calc(81*var(--u)) calc(91*var(--u));background-position:calc(50% - calc(202*var(--u))) 0,calc(50% - calc(162*var(--u))) calc(45.5*var(--u));animation:dots 9s ease-in-out infinite}
.sky canvas{position:absolute;inset:0;width:100%;height:100%}
@keyframes fog{0%{transform:translate3d(-2%,0,0) scale(1)}50%{transform:translate3d(2%,1.5%,0) scale(1.04)}100%{transform:translate3d(-1%,-1%,0) scale(1.02)}}
@keyframes dots{0%,100%{opacity:.85}50%{opacity:.45}}
.page{position:relative;z-index:1;width:calc(440*var(--u));margin:0 auto;min-height:100vh;overflow:hidden;padding-bottom:calc(24*var(--u))}
.deco{position:absolute;pointer-events:none;z-index:0}
.deco img{width:100%;height:100%}
.orn-top{left:calc(310*var(--u));top:0;width:calc(130*var(--u));height:calc(208*var(--u))}
.orn-bot{left:calc(1*var(--u));bottom:calc(1*var(--u));width:calc(130*var(--u));height:calc(208*var(--u));transform:rotate(180deg)}
.scr-about{left:calc(17*var(--u));top:calc(19*var(--u));width:calc(57.75*var(--u));height:calc(9.75*var(--u))}
.scr-love{left:calc(43*var(--u));top:calc(29*var(--u));width:calc(34.25*var(--u));height:calc(19.5*var(--u))}
.side{position:absolute;z-index:3;pointer-events:none;font:calc(12*var(--u)*var(--ts))/1.2 var(--script);color:#5c5b64;opacity:.6;white-space:nowrap}
.shop .side.s1{left:calc(364*var(--u));top:calc(301*var(--u))}.shop .side.s2{left:calc(7*var(--u));top:calc(358*var(--u))}
.review .side.s1{left:calc(367*var(--u));top:calc(348*var(--u))}.review .side.s2{left:calc(8*var(--u));top:calc(452*var(--u))}
.hero{position:relative;width:calc(440*var(--u));height:calc(295*var(--u));z-index:2}
.review .hero{height:calc(297*var(--u))}
.hero>*{position:absolute}
.wing{top:calc(18.875*var(--u));width:calc(222*var(--u));height:calc(269.67*var(--u));z-index:1;pointer-events:none}
.wing.l{left:calc(42.5*var(--u));transform-origin:85% 45%}.wing.r{left:calc(175.5*var(--u));transform-origin:15% 45%}
.wing img{width:100%;height:100%}
.heart{top:calc(77*var(--u));width:calc(121*var(--u));height:calc(143*var(--u));z-index:2}
.heart.h1{left:calc(41.5*var(--u))}.heart.h2{left:calc(159.5*var(--u))}.heart.h3{left:calc(277.5*var(--u))}
.heart .hw{position:absolute;inset:0;filter:drop-shadow(0 0 calc(3*var(--u)) rgba(0,0,0,.08))}
.heart .hw>img.pre{width:100%;height:100%}
.heart .hm{position:absolute;inset:0;-webkit-mask:url(/angel/a/heart-mask.png) center/100% 100% no-repeat;mask:url(/angel/a/heart-mask.png) center/100% 100% no-repeat;background:#fff}
.heart .hm .ph{position:absolute;inset:calc(1.2*var(--u));-webkit-mask:inherit;mask:url(/angel/a/heart-mask.png) center/100% 100% no-repeat;background:linear-gradient(160deg,#f4f4f5,#dcdcdf 60%,#eeeef0);overflow:hidden}
.heart .hm .ph img{width:100%;height:100%;object-fit:cover}
.heart .shine{position:absolute;inset:0;-webkit-mask:url(/angel/a/heart-mask.png) center/100% 100% no-repeat;mask:url(/angel/a/heart-mask.png) center/100% 100% no-repeat;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.75) 45%,transparent 60%);background-size:250% 100%;background-position:150% 0;mix-blend-mode:soft-light;pointer-events:none}
.halo{left:calc(179.5*var(--u));top:calc(56*var(--u));width:calc(81*var(--u));height:calc(21*var(--u));z-index:3}
.halo img{width:100%;height:100%}
.logo{left:calc(159.6*var(--u));top:calc(218*var(--u));width:calc(120.75*var(--u));height:calc(72*var(--u));z-index:4}
.review .logo{top:calc(224*var(--u))}
.logo img{width:100%;height:100%;object-fit:contain}
.logo.txt{left:calc(40*var(--u));width:calc(360*var(--u));top:calc(226*var(--u));height:auto;text-align:center;font:400 calc(34*var(--u)*var(--ts))/1.05 var(--serif);color:#777;letter-spacing:.02em;text-shadow:0 0 calc(6*var(--u)) rgba(0,0,0,.08);word-break:break-word}
.review .logo.txt{top:calc(232*var(--u))}
.spark{z-index:5;pointer-events:none}
.spark img{width:100%;height:100%}
.qm{width:calc(39.25*var(--u));height:calc(23.75*var(--u));z-index:8;pointer-events:none}
.qm img{width:100%;height:100%}
.wings{display:flex;width:max-content;align-items:center;gap:var(--wg,calc(2*var(--u)));filter:drop-shadow(0 0 calc(1.5*var(--u)) rgba(0,0,0,.1))}
.wings i{display:block;width:var(--ww,calc(13*var(--u)));height:var(--wh,calc(8*var(--u)));-webkit-mask:url(/angel/a/wing-icon.png) center/contain no-repeat;mask:url(/angel/a/wing-icon.png) center/contain no-repeat;background:linear-gradient(90deg,var(--wc,var(--wing)) var(--f,100%),var(--wing0) var(--f,100%))}
.btn2{display:flex;justify-content:center;gap:calc(10*var(--u))}
.pill{position:relative;min-width:calc(116*var(--u));min-height:calc(31*var(--u));padding:0 calc(18*var(--u));border-radius:calc(20*var(--u));font:600 calc(11*var(--u)*var(--ts))/1 var(--th);display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;transition:transform .25s var(--spring),box-shadow .25s,background .25s}
.pill.solid{background:var(--accent);color:#fff;box-shadow:0 calc(1*var(--u)) calc(3*var(--u)) rgba(0,0,0,.1)}
.pill.ghost{background:rgba(255,255,255,.9);color:var(--ink);border:.1px solid var(--line);box-shadow:0 calc(1*var(--u)) calc(3*var(--u)) rgba(0,0,0,.15)}
.pill:active,.bigbtn:active,.chip:active{transform:scale(.92)}
@media (hover:hover){.pill:hover,.bigbtn:hover{transform:translateY(calc(-1.5*var(--u)));box-shadow:0 calc(4*var(--u)) calc(10*var(--u)) rgba(0,0,0,.12)}}
.av{border-radius:50%;border:.2px solid var(--accent);background:#fff center/cover no-repeat;flex:none;overflow:hidden}
.av.img{border-color:transparent}
.banner{position:relative;margin:0 0 0 calc(28*var(--u));width:calc(384*var(--u));height:calc(101*var(--u));border-radius:calc(20*var(--u));box-shadow:0 0 calc(4*var(--u)) rgba(0,0,0,.1);overflow:hidden;z-index:2;background:linear-gradient(120deg,#f3f3f4,#e2e2e5)}
.banner .bi{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.banner::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.5) 54.455%,rgba(255,255,255,.5) 98.3%);mix-blend-mode:screen;pointer-events:none}
.banner .sweep{position:absolute;inset:0;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.55) 48%,transparent 62%);background-size:260% 100%;background-position:160% 0;z-index:2;pointer-events:none}
.banner.pre{background:none;box-shadow:none;overflow:visible;margin-left:calc(24*var(--u));width:calc(392*var(--u));height:calc(109*var(--u));margin-top:calc(-4*var(--u));margin-bottom:calc(-4*var(--u));border-radius:calc(24*var(--u))}
.banner.pre::after{display:none}
.banner.pre .bi{object-fit:fill}
.banner.pre .clip{position:absolute;inset:calc(4*var(--u));border-radius:calc(20*var(--u));overflow:hidden}
.banner.pre .sweep{inset:calc(4*var(--u));border-radius:calc(20*var(--u))}
.rate-row{position:relative;z-index:2;display:flex;align-items:center;gap:calc(5*var(--u));margin:calc(22*var(--u)) 0 0 calc(25*var(--u));height:calc(24*var(--u))}
.rate-row .rt{font:400 calc(11*var(--u)*var(--ts))/calc(24*var(--u)) var(--serif);color:var(--ink);text-shadow:0 0 calc(3*var(--u)) rgba(0,0,0,.1);white-space:nowrap}
.rate-row .wings{--ww:calc(13*var(--u));--wh:calc(8*var(--u));--wg:calc(2*var(--u))}
.rail{position:relative;z-index:2;display:flex;gap:calc(6.69*var(--u));overflow-x:auto;overflow-y:visible;padding:calc(2.43*var(--u)) calc(21*var(--u)) calc(6*var(--u)) calc(19*var(--u));margin-top:calc(-1*var(--u));scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:none}
.rail::-webkit-scrollbar{display:none}
.rcard{flex:none;position:relative;width:calc(143.31*var(--u));min-height:calc(82.57*var(--u));background:#fff;border-radius:0 calc(10*var(--u)) 0 calc(10*var(--u));padding:calc(8*var(--u)) calc(7*var(--u)) calc(7*var(--u)) calc(7.3*var(--u));box-shadow:0 calc(2*var(--u)) calc(6*var(--u)) rgba(0,0,0,.05);text-align:left;color:inherit;transition:transform .35s var(--spring),box-shadow .3s}
.rcard .top{display:flex;align-items:center;gap:calc(3*var(--u));height:calc(10.4*var(--u))}
.rcard .av{width:calc(10.33*var(--u));height:calc(10.33*var(--u))}
.rcard .nm{font:600 calc(9*var(--u)*var(--ts))/1 var(--th);color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:calc(80*var(--u));padding-left:calc(1*var(--u))}
.rcard .dt{margin-left:auto;font:500 calc(4*var(--u)*var(--ts))/1 var(--th);color:rgba(0,0,0,.2);white-space:nowrap;align-self:flex-start;padding-top:calc(2*var(--u))}
.rcard .wings{--ww:calc(6.5*var(--u));--wh:calc(4*var(--u));--wg:calc(1.02*var(--u));--wc:var(--wing2);margin:calc(3.4*var(--u)) 0 0 calc(.4*var(--u));filter:none}
.rcard .tx{margin:calc(3.6*var(--u)) 0 0 calc(1.7*var(--u));font:500 calc(7*var(--u)*var(--ts))/1.55 var(--th);color:#000;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word;width:calc(125.94*var(--u))}
.rcard .pics{display:flex;gap:calc(2*var(--u));margin:calc(3*var(--u)) 0 0 calc(1.7*var(--u))}.rcard .pics span{width:calc(16*var(--u));height:calc(16*var(--u));border-radius:calc(4*var(--u));background:#eee center/cover}
.rcard:active{transform:scale(.97)}
.rail .empty{flex:none;width:calc(398*var(--u));min-height:calc(82.57*var(--u));display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.7);border-radius:0 calc(10*var(--u)) 0 calc(10*var(--u));font:500 calc(7*var(--u)*var(--ts))/1.4 var(--th);color:var(--accent)}
.shop .btn2{margin-top:calc(12*var(--u));position:relative;z-index:2}
.grp-h{position:relative;z-index:2;margin:calc(16*var(--u)) 0 0 calc(25*var(--u));font:400 calc(11*var(--u)*var(--ts))/calc(24*var(--u)) var(--serif);color:var(--ink)}
.search{position:relative;z-index:2;margin:calc(4*var(--u)) 0 0 calc(22*var(--u));width:calc(396*var(--u));height:calc(36*var(--u));border-radius:calc(11*var(--u));background:var(--field);display:flex;align-items:center;transition:box-shadow .3s,background .3s}
.search input{width:100%;height:100%;border:0;outline:0;background:transparent;padding:0 calc(36*var(--u)) 0 calc(14*var(--u));font:500 calc(11*var(--u)*var(--ts))/1 var(--th);color:var(--ink)}
.search input::placeholder{color:var(--accent);opacity:1}
.search:focus-within{background:#ececee;box-shadow:0 0 0 calc(2*var(--u)) rgba(160,159,163,.18),0 calc(3*var(--u)) calc(10*var(--u)) rgba(0,0,0,.06)}
.search .ic{position:absolute;right:calc(13*var(--u));top:50%;width:calc(15*var(--u));height:calc(15*var(--u));transform:translateY(-50%);opacity:.55}
.chips{position:relative;z-index:2;display:flex;gap:calc(7*var(--u));overflow-x:auto;padding:calc(10*var(--u)) calc(21*var(--u)) calc(9*var(--u)) calc(21*var(--u));margin-top:0;scrollbar-width:none}
.chips::-webkit-scrollbar{display:none}
.chip{flex:none;min-width:calc(62*var(--u));height:calc(29*var(--u));padding:0 calc(15*var(--u));border-radius:calc(20*var(--u));background:#fff;border:.1px solid var(--line);box-shadow:0 calc(2*var(--u)) calc(4*var(--u)) rgba(0,0,0,.1);font:600 calc(10.5*var(--u)*var(--ts))/1 var(--th);color:var(--accent);white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;transition:background .35s var(--soft),color .35s,transform .3s var(--spring)}
.chip.on{background:var(--accent);color:#fff;border-color:var(--accent)}
.grid{position:relative;z-index:2;display:grid;grid-template-columns:calc(201*var(--u)) calc(201*var(--u));gap:calc(14*var(--u)) calc(8*var(--u));padding:calc(8*var(--u)) calc(15*var(--u)) calc(10*var(--u)) calc(15*var(--u))}
.pcard{position:relative;width:calc(201*var(--u));min-height:calc(144*var(--u));background:#fff;border-radius:calc(15*var(--u));box-shadow:0 calc(3*var(--u)) calc(4*var(--u)) rgba(0,0,0,.1);padding:calc(5*var(--u)) calc(5.5*var(--u)) calc(9*var(--u));text-align:center;color:inherit;transform-style:preserve-3d;transition:transform .45s var(--spring),box-shadow .35s}
.pcard .pi{position:relative;width:calc(190*var(--u));height:calc(107*var(--u));border-radius:calc(15*var(--u));background:#d9d9d9;overflow:hidden}
.pcard .pi img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--soft),opacity .5s}
.pcard .pi .hint{position:absolute;right:calc(11*var(--u));bottom:calc(3*var(--u));font:500 calc(6*var(--u)*var(--ts))/calc(10*var(--u)) var(--th);color:#fff;text-shadow:0 0 calc(3*var(--u)) rgba(0,0,0,.35);white-space:nowrap}
.pcard .pn{margin-top:calc(6*var(--u));font:500 calc(7*var(--u)*var(--ts))/calc(10*var(--u)) var(--th);color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 calc(4*var(--u))}
.pcard .pp{font:700 calc(7*var(--u)*var(--ts))/calc(10*var(--u)) var(--th);color:var(--ink)}
@media (hover:hover){.pcard:hover{box-shadow:0 calc(10*var(--u)) calc(22*var(--u)) rgba(0,0,0,.12)}.pcard:hover .pi img{transform:scale(1.06)}}
.pcard:active{transform:scale(.97)}
.grid .none{grid-column:1/-1;text-align:center;padding:calc(30*var(--u)) 0;font:500 calc(8*var(--u)*var(--ts))/1.5 var(--th);color:var(--accent)}
.skel{background:linear-gradient(100deg,#e2e2e4 30%,#f2f2f3 50%,#e2e2e4 70%) 0 0/300% 100%;animation:skel 1.4s linear infinite}
@keyframes skel{to{background-position:-150% 0}}
.pcard.out{opacity:0;transform:scale(.85) translateY(calc(8*var(--u)));pointer-events:none}
.tag{position:relative;z-index:2;margin:calc(4*var(--u)) auto 0;width:max-content;max-width:calc(400*var(--u));font:600 calc(7.5*var(--u)*var(--ts))/calc(11*var(--u)) var(--th);color:var(--ink)}
.tag div{white-space:nowrap}
.tag .r{text-align:right;margin-top:calc(-3.5*var(--u))}
.review .btn2{margin-top:calc(10*var(--u));position:relative;z-index:3}
.sum{position:relative;z-index:2;margin:calc(16*var(--u)) 0 0 calc(45.5*var(--u));width:calc(349*var(--u));min-height:calc(101*var(--u));border-radius:0 calc(20*var(--u)) 0 calc(20*var(--u));display:flex;align-items:center}
.sum::before{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:0 0 calc(4*var(--u)) rgba(0,0,0,.1)}
.sum::after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,rgba(255,255,255,.62) 0%,rgba(255,255,255,.62) 54.455%,rgba(255,255,255,.9) 98.3%)}
.sum>*{position:relative;z-index:1}
.sum .l{width:calc(118*var(--u));flex:none;display:flex;flex-direction:column;align-items:center;padding-top:0}
.sum .big{font:400 calc(24*var(--u)*var(--ts))/calc(24*var(--u)) var(--serif);color:var(--ink)}
.sum .l .wings{--ww:calc(13*var(--u));--wh:calc(8*var(--u));--wg:calc(2*var(--u));margin-top:calc(5*var(--u))}
.sum .stot{font:400 calc(9*var(--u)*var(--ts))/calc(24*var(--u)) var(--serif);color:var(--ink);margin-top:calc(-3*var(--u));white-space:nowrap}
.sum .bars{flex:1;padding:calc(8*var(--u)) calc(22*var(--u)) calc(8*var(--u)) 0;display:flex;flex-direction:column;gap:0}
.sum .bar{display:flex;align-items:center;height:calc(15*var(--u));font:400 calc(7*var(--u)*var(--ts))/1 var(--serif);color:#000}
.sum .bar b{font-weight:400;width:calc(11.2*var(--u))}
.sum .bar .tr{flex:none;width:calc(186.96*var(--u));height:calc(3.2*var(--u));border-radius:calc(3*var(--u));background:rgba(0,0,0,.1);position:relative;overflow:hidden}
.sum .bar .tr i{position:absolute;left:0;top:0;bottom:0;width:0;border-radius:calc(3*var(--u));background:linear-gradient(90deg,#777,#efefef);transition:width 1.4s var(--soft)}
.sum .bar .n{margin-left:auto;min-width:calc(12*var(--u));text-align:right}
.rlist{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:calc(10.69*var(--u));margin-top:calc(27*var(--u))}
.bcard{position:relative;width:calc(349*var(--u));min-height:calc(91.31*var(--u));background:#fff;border-radius:0 calc(10*var(--u)) 0 calc(10*var(--u));padding:calc(11*var(--u)) calc(12*var(--u)) calc(12*var(--u)) calc(17*var(--u));text-align:left;color:inherit;box-shadow:0 calc(2*var(--u)) calc(8*var(--u)) rgba(0,0,0,.06);transition:transform .35s var(--spring)}
.bcard .top{display:flex;align-items:center;gap:calc(12*var(--u));min-height:calc(26*var(--u))}
.bcard .av{width:calc(22.82*var(--u));height:calc(22.82*var(--u))}
.bcard .nm{font:600 calc(13*var(--u)*var(--ts))/1.2 var(--th);color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}
.bcard .rt{align-self:flex-start;display:flex;flex-direction:column;align-items:flex-end;gap:calc(2*var(--u));padding-top:0}
.bcard .wings{--ww:calc(10.7*var(--u));--wh:calc(6.58*var(--u));--wg:calc(1.65*var(--u));--wc:var(--wing2);filter:none}
.bcard .dt{font:400 calc(6*var(--u)*var(--ts))/1.4 var(--th);color:#c4c3c6}
.bcard .tx{margin-top:calc(5*var(--u));font:400 calc(8*var(--u)*var(--ts))/1.62 var(--th);color:#000;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word;white-space:pre-line}
.bcard.open .tx{-webkit-line-clamp:unset}
.bcard .pics{display:flex;gap:calc(4*var(--u));margin-top:calc(6*var(--u))}.bcard .pics span{width:calc(42*var(--u));height:calc(42*var(--u));border-radius:calc(8*var(--u));background:#eee center/cover;box-shadow:0 calc(1*var(--u)) calc(3*var(--u)) rgba(0,0,0,.1)}
.bcard .pin{position:absolute;left:calc(-1*var(--u));top:calc(-1*var(--u));font:600 calc(6*var(--u)*var(--ts))/1 var(--th);background:var(--accent);color:#fff;padding:calc(2*var(--u)) calc(6*var(--u));border-radius:0 0 calc(8*var(--u)) 0}
.more{margin:calc(16*var(--u)) auto 0;display:flex}
.rlist .empty{width:calc(349*var(--u));padding:calc(26*var(--u)) calc(10*var(--u));text-align:center;background:rgba(255,255,255,.75);border-radius:0 calc(10*var(--u)) 0 calc(10*var(--u));font:500 calc(8*var(--u)*var(--ts))/1.5 var(--th);color:var(--accent)}
.fab{position:fixed;z-index:20;right:max(calc(14*var(--u)),calc(50vw - calc(220*var(--u)) + calc(14*var(--u))));bottom:calc(calc(16*var(--u)) + env(safe-area-inset-bottom));min-height:calc(34*var(--u));padding:0 calc(15*var(--u)) 0 calc(11*var(--u));border-radius:calc(20*var(--u));background:rgba(255,255,255,.92);border:.1px solid var(--line);box-shadow:0 calc(4*var(--u)) calc(14*var(--u)) rgba(0,0,0,.12);display:flex;align-items:center;gap:calc(7*var(--u));font:600 calc(10.5*var(--u)*var(--ts))/1 var(--th);color:var(--ink);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.fab img{width:calc(19*var(--u));height:calc(12*var(--u));opacity:.85;transform-origin:50% 70%;animation:flapIcon 1.6s ease-in-out infinite}
.fab::after{content:"";position:absolute;inset:calc(-3*var(--u));border-radius:inherit;border:1px solid rgba(160,159,163,.45);animation:ring 2.8s ease-out infinite;pointer-events:none}
@keyframes ring{0%{opacity:.9;transform:scale(.96)}100%{opacity:0;transform:scale(1.25)}}
.ov{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:calc(calc(14*var(--u)) + env(safe-area-inset-top)) 0 calc(calc(14*var(--u)) + env(safe-area-inset-bottom));background:rgba(250,250,252,.38);backdrop-filter:blur(7px) saturate(1.05);-webkit-backdrop-filter:blur(7px) saturate(1.05);opacity:0;transition:opacity .35s var(--soft)}
.ov.in{opacity:1}
.ov.out{opacity:0;transition-duration:.28s}
.panel{position:relative;width:calc(376*var(--u));max-height:100%;display:flex;flex-direction:column;border-radius:calc(20*var(--u));background:rgba(255,255,255,.72);box-shadow:0 0 calc(4*var(--u)) rgba(0,0,0,.1),0 calc(20*var(--u)) calc(60*var(--u)) rgba(0,0,0,.08);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);transform-origin:50% 60%;opacity:0;transform:perspective(900px) translateY(calc(36*var(--u))) rotateX(18deg) scale(.86);filter:blur(6px);transition:transform .6s var(--spring),opacity .4s var(--soft),filter .45s var(--soft)}
.ov.in .panel{opacity:1;transform:none;filter:none}
.ov.out .panel{opacity:0;transform:perspective(900px) translateY(calc(24*var(--u))) rotateX(-10deg) scale(.92);filter:blur(4px);transition-duration:.3s}
.panel .scroll{overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;padding:calc(12*var(--u)) 0 calc(20*var(--u));flex:1;scrollbar-width:none}
.panel .scroll::-webkit-scrollbar{display:none}
.x{position:absolute;right:calc(4*var(--u));top:calc(5*var(--u));width:calc(29*var(--u));height:calc(29*var(--u));z-index:5;transition:transform .4s var(--spring)}
.x img{position:absolute;left:calc(-3*var(--u));top:calc(-3*var(--u));width:calc(35*var(--u));height:calc(35*var(--u))}
.x:hover{transform:rotate(90deg)}.x:active{transform:scale(.85) rotate(90deg)}
.bigbtn{min-height:calc(34*var(--u));padding:0 calc(14*var(--u));border-radius:calc(20*var(--u));font:600 calc(12*var(--u)*var(--ts))/1 var(--th);display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;transition:transform .25s var(--spring),box-shadow .25s,opacity .2s}
.bigbtn.solid{background:var(--accent);color:#fff;box-shadow:0 calc(2*var(--u)) calc(3*var(--u)) rgba(0,0,0,.1)}
.bigbtn.ghost{background:rgba(255,255,255,.8);color:var(--muted);border:.1px solid var(--line);box-shadow:0 calc(2*var(--u)) calc(3*var(--u)) rgba(0,0,0,.15)}
.bigbtn[disabled]{opacity:.55;pointer-events:none}
.bigbtn.busy{position:relative;color:transparent!important}
.bigbtn.busy::after{content:"";position:absolute;width:calc(12*var(--u));height:calc(12*var(--u));border-radius:50%;border:calc(1.6*var(--u)) solid rgba(255,255,255,.5);border-top-color:#fff;animation:spin .8s linear infinite}
.bigbtn.ghost.busy::after{border-color:rgba(0,0,0,.15);border-top-color:var(--accent)}
@keyframes spin{to{transform:rotate(360deg)}}
.acts{display:flex;justify-content:center;gap:calc(4*var(--u));padding:calc(6*var(--u)) 0 0}
.pm .scroll{padding:calc(12*var(--u)) 0 calc(21*var(--u))}
.gal{width:calc(353*var(--u));margin:0 auto}
.gal .main{position:relative;width:calc(353*var(--u));height:calc(222*var(--u));border-radius:calc(20*var(--u));background:#d3d3d3;overflow:hidden;touch-action:pan-y}
.gal .main img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .45s var(--soft),transform .6s var(--soft)}
.gal .main img.leave{opacity:0;transform:scale(1.04)}
.gal .dots{position:absolute;left:0;right:0;bottom:calc(8*var(--u));display:flex;justify-content:center;gap:calc(4*var(--u))}
.gal .dots i{width:calc(5*var(--u));height:calc(5*var(--u));border-radius:50%;background:rgba(255,255,255,.6);transition:width .3s,background .3s}
.gal .dots i.on{width:calc(14*var(--u));border-radius:calc(4*var(--u));background:#fff}
.gal .th{display:flex;gap:calc(4*var(--u));margin-top:calc(5*var(--u))}
.gal .th button{width:calc(115*var(--u));height:calc(74*var(--u));border-radius:calc(15*var(--u));background:#d3d3d3 center/cover;border:.7px solid #d3d3d3;transition:transform .3s var(--spring),box-shadow .3s,filter .3s}
.gal .th button.on{box-shadow:0 0 0 calc(1.5*var(--u)) #fff,0 0 0 calc(2.6*var(--u)) var(--accent)}
.gal .th button:active{transform:scale(.93)}
.pm .nm{margin-top:calc(11*var(--u));text-align:center;font:500 calc(11*var(--u)*var(--ts))/calc(24*var(--u)) var(--th);color:var(--ink)}
.pm .pr{text-align:center;font:600 calc(11*var(--u)*var(--ts))/calc(15*var(--u)) var(--th);color:var(--ink)}
.pm .ds{width:calc(319*var(--u));margin:calc(14*var(--u)) auto 0;font:500 calc(11*var(--u)*var(--ts))/calc(19*var(--u)) var(--th);color:var(--ink);white-space:pre-line;word-break:break-word}
.pm .acts{margin-top:calc(17*var(--u))}
.pm .acts .bigbtn{min-width:calc(116*var(--u))}
.steps{display:flex;justify-content:center;gap:calc(9*var(--u));padding:calc(8*var(--u)) 0 calc(2*var(--u));position:relative;z-index:2}
.steps span{min-width:calc(51*var(--u));height:calc(21*var(--u));padding:0 calc(9*var(--u));border-radius:calc(20*var(--u));background:rgba(255,255,255,.8);border:.1px solid var(--line);box-shadow:0 calc(2*var(--u)) calc(3*var(--u)) rgba(0,0,0,.1);display:flex;align-items:center;justify-content:center;font:600 calc(10*var(--u)*var(--ts))/1 var(--th);color:var(--muted);transition:background .45s var(--soft),color .45s,transform .45s var(--spring)}
.steps span.on{background:var(--accent);color:#fff;border-color:#d4d4d4;transform:scale(1.06)}
.steps span.done{background:#fff;color:var(--muted)}
.stage{position:relative;overflow:hidden}
.stage>.st{animation:stIn .55s var(--soft) both}
.stage>.st.back{animation-name:stBack}
@keyframes stIn{from{opacity:0;transform:translateX(calc(30*var(--u)));filter:blur(3px)}to{opacity:1;transform:none;filter:none}}
@keyframes stBack{from{opacity:0;transform:translateX(calc(-30*var(--u)));filter:blur(3px)}to{opacity:1;transform:none;filter:none}}
.pcard2{display:flex;gap:calc(15*var(--u));width:calc(331*var(--u));margin:calc(17*var(--u)) auto 0;padding:calc(10*var(--u)) calc(8*var(--u));border-radius:calc(15*var(--u));background:rgba(255,255,255,.9);box-shadow:0 calc(2*var(--u)) calc(3*var(--u)) rgba(0,0,0,.1)}
.pcard2 .im{width:calc(106*var(--u));height:calc(74*var(--u));border-radius:calc(13*var(--u));background:#d3d3d3 center/cover;flex:none}
.pcard2 .tx{min-width:0;padding-top:calc(2*var(--u))}
.pcard2 .a{font:500 calc(11*var(--u)*var(--ts))/calc(17*var(--u)) var(--th);color:var(--ink)}
.pcard2 .b{font:600 calc(11*var(--u)*var(--ts))/calc(17*var(--u)) var(--th);color:var(--ink)}
.pcard2 .c{margin-top:calc(5*var(--u));font:400 calc(8*var(--u)*var(--ts))/1.4 var(--th);color:var(--accent);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.frm{width:calc(302*var(--u));margin:0 auto}
.frm .lb{font:500 calc(10*var(--u)*var(--ts))/1.3 var(--th);color:var(--ink);margin:calc(16*var(--u)) 0 calc(6*var(--u))}
.frm .lb:first-child{margin-top:calc(20*var(--u))}
.ext{background:#f5f5f5;border-radius:calc(10*var(--u));padding:calc(4*var(--u)) calc(12*var(--u))}
.ext label{display:flex;align-items:center;gap:calc(8*var(--u));min-height:calc(22*var(--u));font:400 calc(9*var(--u)*var(--ts))/1.2 var(--th);color:var(--muted);cursor:pointer;position:relative}
.ext label+label{border-top:.5px solid rgba(0,0,0,.12)}
.ext input{position:absolute;opacity:0;pointer-events:none}
.ext .cb{width:calc(9*var(--u));height:calc(9*var(--u));border:.8px solid var(--muted);border-radius:calc(3*var(--u));flex:none;position:relative;transition:background .25s,border-color .25s}
.ext .cb::after{content:"";position:absolute;left:calc(2.6*var(--u));top:calc(.6*var(--u));width:calc(2.6*var(--u));height:calc(5*var(--u));border:solid #fff;border-width:0 calc(1.2*var(--u)) calc(1.2*var(--u)) 0;transform:rotate(45deg) scale(0);transition:transform .35s var(--spring)}
.ext input:checked+.cb{background:var(--accent);border-color:var(--accent);animation:pop .4s var(--spring)}
.ext input:checked+.cb::after{transform:rotate(45deg) scale(1)}
.ext .pz{margin-left:auto;font-weight:600}
@keyframes pop{50%{transform:scale(1.35)}}
.inp{width:100%;min-height:calc(28*var(--u));border:0;outline:0;border-radius:calc(8*var(--u));background:var(--field);padding:calc(6*var(--u)) calc(10*var(--u));font:500 calc(10*var(--u)*var(--ts))/1.4 var(--th);color:var(--ink);transition:box-shadow .3s,background .3s}
.inp::placeholder{color:rgba(0,0,0,.2);opacity:1}
.inp:focus{background:#ececee;box-shadow:0 0 0 calc(2*var(--u)) rgba(160,159,163,.22)}
textarea.inp{resize:none;min-height:calc(70*var(--u));display:block}
.sel{position:relative}
.sel select{appearance:none;-webkit-appearance:none;width:100%;height:calc(28*var(--u));border:0;outline:0;border-radius:calc(20*var(--u));background:#c4c3c6;color:#fff;padding:0 calc(26*var(--u)) 0 calc(12*var(--u));font:500 calc(10*var(--u)*var(--ts))/1 var(--th)}
.sel::after{content:"";position:absolute;right:calc(12*var(--u));top:50%;width:0;height:0;border-left:calc(4.2*var(--u)) solid transparent;border-right:calc(4.2*var(--u)) solid transparent;border-top:calc(6.5*var(--u)) solid #fff;transform:translateY(-35%);pointer-events:none}
.tot{margin-top:calc(6*var(--u));background:#fff;border-radius:calc(10*var(--u));box-shadow:0 calc(2*var(--u)) calc(3*var(--u)) rgba(0,0,0,.1);padding:calc(9*var(--u)) calc(12*var(--u)) calc(9*var(--u)) calc(10*var(--u))}
.tot .rw{display:flex;justify-content:space-between;font:400 calc(9*var(--u)*var(--ts))/1 var(--th);color:var(--muted);padding:calc(4*var(--u)) 0}
.tot .rw b{font-weight:600}
.tot hr{border:0;border-top:.6px solid rgba(0,0,0,.15);margin:calc(8*var(--u)) 0 calc(6*var(--u))}
.tot .rw.t{font:600 calc(10*var(--u)*var(--ts))/1 var(--th)}
.err{min-height:calc(14*var(--u));margin:calc(6*var(--u)) auto 0;width:calc(302*var(--u));text-align:center;font:500 calc(8.5*var(--u)*var(--ts))/1.4 var(--th);color:#c0566b}
.shake{animation:shake .45s}
@keyframes shake{20%,60%{transform:translateX(calc(-4*var(--u)))}40%,80%{transform:translateX(calc(4*var(--u)))}}
.pay{position:relative;width:calc(302*var(--u));margin:calc(20*var(--u)) auto 0}
.qcard{position:relative;z-index:1;border-radius:calc(15*var(--u));background:rgba(255,255,255,.9);box-shadow:0 calc(3*var(--u)) calc(4*var(--u)) rgba(0,0,0,.1);padding:calc(5*var(--u)) 0 calc(22*var(--u));text-align:center}
.qcard h4{margin:0;font:600 calc(10*var(--u)*var(--ts))/calc(15*var(--u)) var(--th);color:var(--ink)}
.qbox{position:relative;width:calc(180*var(--u));height:calc(180*var(--u));margin:calc(10*var(--u)) auto 0;border-radius:calc(15*var(--u));background:#d3d3d3;overflow:hidden}
.qbox svg,.qbox img{position:absolute;inset:calc(8*var(--u));width:calc(164*var(--u));height:calc(164*var(--u));border-radius:calc(6*var(--u))}
.qbox.ok{background:#fff;box-shadow:inset 0 0 0 1px rgba(0,0,0,.04)}
.qbox .scan{position:absolute;left:0;right:0;height:calc(26*var(--u));top:calc(-30*var(--u));background:linear-gradient(180deg,transparent,rgba(160,159,163,.28),transparent);animation:scan 2.6s ease-in-out infinite}
.qbox .qrin{position:absolute;inset:0;animation:qrin .9s var(--soft) both}
@keyframes qrin{from{clip-path:circle(0 at 50% 50%);opacity:.3}to{clip-path:circle(75% at 50% 50%);opacity:1}}
@keyframes scan{0%{top:calc(-30*var(--u))}60%,100%{top:calc(184*var(--u))}}
.qbox .nq{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:calc(16*var(--u));font:500 calc(8*var(--u)*var(--ts))/1.5 var(--th);color:#fff}
.qacc{margin-top:calc(16*var(--u));font:500 calc(9*var(--u)*var(--ts))/1.25 var(--th);color:var(--ink)}
.qamt{margin-top:calc(10*var(--u));font:600 calc(24*var(--u)*var(--ts))/1.2 var(--th);color:var(--ink)}
.qord{margin-top:calc(8*var(--u));font:500 calc(7*var(--u)*var(--ts))/1.3 var(--th);color:var(--accent)}
.qdl{margin-top:calc(8*var(--u));display:inline-flex;gap:calc(4*var(--u));font:600 calc(7.5*var(--u)*var(--ts))/1 var(--th);color:var(--accent);padding:calc(4*var(--u)) calc(9*var(--u));border-radius:calc(20*var(--u));background:#f4f4f5}
.pwing{position:absolute;z-index:2;width:calc(119.7*var(--u));height:calc(155*var(--u));top:calc(58*var(--u));pointer-events:none}
.pwing.l{left:calc(-37*var(--u))}.pwing.r{right:calc(-37*var(--u))}
.pwing img{width:100%;height:100%}
.scard{width:calc(302*var(--u));margin:calc(12*var(--u)) auto 0;border-radius:calc(15*var(--u));background:rgba(255,255,255,.9);box-shadow:0 calc(3*var(--u)) calc(4*var(--u)) rgba(0,0,0,.1);padding:calc(12*var(--u)) calc(11.5*var(--u)) calc(12*var(--u));text-align:center}
.scard h4{margin:0 0 calc(8*var(--u));font:600 calc(9*var(--u)*var(--ts))/calc(14*var(--u)) var(--th);color:var(--ink)}
.scard .note{margin-top:calc(9*var(--u));font:500 calc(7*var(--u)*var(--ts))/1.45 var(--th);color:var(--accent);padding:0 calc(4*var(--u))}
.slot{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:calc(15*var(--u));background:#d9d9d9;color:#fff;overflow:hidden;cursor:pointer;transition:transform .3s var(--spring),box-shadow .3s}
.slot .p{font:400 calc(18*var(--u)*var(--ts))/1 var(--th)}.slot .l{font:500 calc(7*var(--u)*var(--ts))/1.3 var(--th);margin-top:calc(2*var(--u))}
.slot img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;animation:popIn .5s var(--spring)}
.slot .rm{position:absolute;right:calc(4*var(--u));top:calc(4*var(--u));width:calc(16*var(--u));height:calc(16*var(--u));border-radius:50%;background:rgba(255,255,255,.9);color:var(--muted);font:600 calc(10*var(--u)*var(--ts))/calc(16*var(--u)) var(--th);text-align:center;z-index:2;box-shadow:0 calc(1*var(--u)) calc(3*var(--u)) rgba(0,0,0,.15)}
.slot::before{content:"";position:absolute;inset:calc(5*var(--u));border-radius:calc(11*var(--u));border:1px dashed rgba(255,255,255,.75);pointer-events:none;transition:inset .3s}
.slot:hover::before{inset:calc(7*var(--u))}
.slot:active{transform:scale(.96)}
.slot.has::before{display:none}
.slot input{display:none}
.slot.wide{width:calc(279*var(--u));height:calc(80*var(--u));margin:0 auto}
@keyframes popIn{from{opacity:0;transform:scale(.8)}to{opacity:1;transform:none}}
.bhead{width:calc(333*var(--u));margin:calc(20*var(--u)) auto 0;min-height:calc(46*var(--u));background:#fff;border-radius:calc(15*var(--u));box-shadow:0 calc(2*var(--u)) calc(4*var(--u)) rgba(0,0,0,.1);display:flex;align-items:center;padding:calc(6*var(--u)) calc(15*var(--u))}
.bhead .a{font:600 calc(9*var(--u)*var(--ts))/1.35 var(--th);color:var(--ink)}
.bhead .b{font:500 calc(7*var(--u)*var(--ts))/1.35 var(--th);color:var(--accent);margin-top:calc(2*var(--u))}
.bhead .chip2{margin-left:auto;flex:none;border-radius:calc(20*var(--u));background:var(--field);padding:calc(3*var(--u)) calc(10*var(--u));font:600 calc(7*var(--u)*var(--ts))/1.3 var(--th);color:var(--accent)}
.bhead .chip2.ok{background:#e7f1ea;color:#5d8a6a}
.bcardf{width:calc(333*var(--u));margin:calc(15*var(--u)) auto 0;border-radius:calc(15*var(--u));background:rgba(255,255,255,.9);box-shadow:0 calc(3*var(--u)) calc(4*var(--u)) rgba(0,0,0,.1);padding:calc(14*var(--u)) calc(14*var(--u)) calc(20*var(--u))}
.fld+.fld{margin-top:calc(10*var(--u))}
.fld .lb2{font:600 calc(9*var(--u)*var(--ts))/1.3 var(--th);color:var(--ink);margin-bottom:calc(6*var(--u))}
.fld .inp{border-radius:calc(6*var(--u));font:500 calc(8*var(--u)*var(--ts))/1.4 var(--th);min-height:calc(26*var(--u));padding:calc(7*var(--u)) calc(10*var(--u))}
.fld .inp::placeholder{color:var(--accent)}
.fld textarea.inp{min-height:calc(80*var(--u))}
.refs{display:grid;grid-template-columns:repeat(4,1fr);gap:calc(6*var(--u));margin-top:calc(6*var(--u))}
.refs .slot{height:calc(74*var(--u))}
.ok-wrap{padding:calc(26*var(--u)) calc(24*var(--u)) calc(6*var(--u));text-align:center}
.ok-ic{position:relative;width:calc(110*var(--u));height:calc(86*var(--u));margin:0 auto}
.ok-ic .h{position:absolute;left:calc(14.5*var(--u));top:calc(2*var(--u));width:calc(81*var(--u));height:calc(21*var(--u));animation:haloDrop 1s var(--spring) both}
.ok-ic svg{position:absolute;left:calc(31*var(--u));top:calc(22*var(--u));width:calc(48*var(--u));height:calc(48*var(--u))}
.ok-ic svg circle{fill:#fff;stroke:#c4c3c6;stroke-width:1.5}
.ok-ic svg path{fill:none;stroke:var(--accent);stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:40;stroke-dashoffset:40;animation:draw .7s .35s var(--soft) forwards}
@keyframes draw{to{stroke-dashoffset:0}}
@keyframes haloDrop{from{opacity:0;transform:translateY(calc(-30*var(--u))) scale(.6)}to{opacity:1;transform:none}}
.ok-t{margin-top:calc(6*var(--u));font:600 calc(13*var(--u)*var(--ts))/1.4 var(--th);color:var(--ink)}
.ok-code{margin:calc(12*var(--u)) auto 0;display:inline-flex;align-items:center;gap:calc(8*var(--u));padding:calc(7*var(--u)) calc(8*var(--u)) calc(7*var(--u)) calc(14*var(--u));border-radius:calc(20*var(--u));background:#fff;box-shadow:0 calc(2*var(--u)) calc(6*var(--u)) rgba(0,0,0,.08);font:600 calc(13*var(--u)*var(--ts))/1 var(--serif);color:var(--ink);letter-spacing:.04em}
.ok-code button{font:600 calc(8*var(--u)*var(--ts))/1 var(--th);color:#fff;background:var(--accent);padding:calc(5*var(--u)) calc(9*var(--u));border-radius:calc(20*var(--u))}
.ok-s{margin-top:calc(12*var(--u));font:500 calc(9*var(--u)*var(--ts))/1.6 var(--th);color:var(--muted)}
.rf h3,.mh{margin:calc(6*var(--u)) 0 0;text-align:center;font:400 calc(15*var(--u)*var(--ts))/1.4 var(--serif);color:var(--ink)}
.mh small{display:block;font:500 calc(8*var(--u)*var(--ts))/1.4 var(--th);color:var(--accent);margin-top:calc(2*var(--u))}
.rf .who{display:flex;gap:calc(10*var(--u));align-items:flex-end}
.rf .avup{width:calc(44*var(--u));height:calc(44*var(--u));border-radius:50%;flex:none;background:#e9e9eb center/cover;border:1px dashed #c4c3c6;display:flex;align-items:center;justify-content:center;font:400 calc(16*var(--u)*var(--ts))/1 var(--th);color:#fff;position:relative;overflow:hidden}
.rf .avup input{display:none}
.rf .avup.has{border-style:solid;border-color:#fff;box-shadow:0 calc(1*var(--u)) calc(4*var(--u)) rgba(0,0,0,.15)}
.rpick{display:flex;justify-content:center;gap:calc(7*var(--u));padding:calc(6*var(--u)) 0 calc(2*var(--u))}
.rpick button{width:calc(40*var(--u));height:calc(25*var(--u));-webkit-mask:url(/angel/a/wing-icon.png) center/contain no-repeat;mask:url(/angel/a/wing-icon.png) center/contain no-repeat;background:var(--wing0);transition:background .3s,transform .45s var(--spring)}
.rpick button.on{background:var(--wing);animation:flapOnce .55s var(--spring)}
.rpick button:active{transform:scale(.85)}
.rpick-l{text-align:center;font:500 calc(8*var(--u)*var(--ts))/1.3 var(--th);color:var(--accent);min-height:calc(11*var(--u))}
@keyframes flapOnce{0%{transform:scale(1)}35%{transform:scale(1.3,.8) translateY(calc(-3*var(--u)))}70%{transform:scale(.95,1.1)}100%{transform:none}}
.phs{display:grid;grid-template-columns:repeat(3,1fr);gap:calc(6*var(--u))}
.phs .slot{height:calc(74*var(--u))}
.allr .sum{margin:calc(14*var(--u)) auto 0;width:calc(349*var(--u))}
.allr .rlist{margin-top:calc(14*var(--u))}
.rd .who{display:flex;align-items:center;gap:calc(10*var(--u));padding:calc(18*var(--u)) calc(24*var(--u)) 0}
.rd .who .av{width:calc(36*var(--u));height:calc(36*var(--u))}
.rd .nm{font:600 calc(13*var(--u)*var(--ts))/1.3 var(--th);color:var(--ink)}
.rd .wings{--ww:calc(13*var(--u));--wh:calc(8*var(--u));--wc:var(--wing)}
.rd .dt{font:400 calc(7*var(--u)*var(--ts))/1.4 var(--th);color:#b5b4b8;margin-left:auto;align-self:flex-start;padding-top:calc(4*var(--u))}
.rd .tx{padding:calc(12*var(--u)) calc(24*var(--u)) 0;font:400 calc(10*var(--u)*var(--ts))/1.65 var(--th);color:#222;white-space:pre-line;word-break:break-word}
.rd .ph{display:flex;flex-direction:column;gap:calc(8*var(--u));padding:calc(14*var(--u)) calc(24*var(--u)) 0}
.rd .ph img{width:100%;height:auto;border-radius:calc(14*var(--u));box-shadow:0 calc(2*var(--u)) calc(8*var(--u)) rgba(0,0,0,.1)}
.ct{display:flex;flex-direction:column;gap:calc(9*var(--u));width:calc(302*var(--u));margin:calc(18*var(--u)) auto calc(4*var(--u))}
.ct a{display:flex;align-items:center;gap:calc(10*var(--u));min-height:calc(44*var(--u));padding:calc(8*var(--u)) calc(14*var(--u));border-radius:calc(16*var(--u));background:rgba(255,255,255,.92);box-shadow:0 calc(2*var(--u)) calc(6*var(--u)) rgba(0,0,0,.08);text-decoration:none;color:var(--ink);transition:transform .35s var(--spring),box-shadow .3s}
.ct a:active{transform:scale(.96)}
@media (hover:hover){.ct a:hover{transform:translateX(calc(3*var(--u)));box-shadow:0 calc(6*var(--u)) calc(16*var(--u)) rgba(0,0,0,.1)}}
.ct .ic{width:calc(28*var(--u));height:calc(28*var(--u));border-radius:50%;background:#f1f1f2;display:flex;align-items:center;justify-content:center;flex:none}
.ct .ic svg{width:calc(15*var(--u));height:calc(15*var(--u));fill:var(--accent)}
.ct .t1{font:600 calc(10*var(--u)*var(--ts))/1.3 var(--th)}.ct .t2{font:500 calc(8*var(--u)*var(--ts))/1.3 var(--th);color:var(--accent)}
.ct .go{margin-left:auto;font:600 calc(12*var(--u)*var(--ts))/1 var(--th);color:#c4c3c6}
.ct .none{text-align:center;font:500 calc(9*var(--u)*var(--ts))/1.6 var(--th);color:var(--accent);padding:calc(14*var(--u))}
.tl{width:calc(302*var(--u));margin:calc(18*var(--u)) auto 0;padding:calc(14*var(--u)) calc(16*var(--u));border-radius:calc(15*var(--u));background:rgba(255,255,255,.92);box-shadow:0 calc(3*var(--u)) calc(6*var(--u)) rgba(0,0,0,.08)}
.tl .h{display:flex;justify-content:space-between;align-items:center;font:600 calc(10*var(--u)*var(--ts))/1.3 var(--th);color:var(--ink)}
.tl .h span{font:600 calc(8*var(--u)*var(--ts))/1 var(--th);padding:calc(4*var(--u)) calc(9*var(--u));border-radius:calc(20*var(--u));background:var(--field);color:var(--accent)}
.tl .sub{font:500 calc(8*var(--u)*var(--ts))/1.5 var(--th);color:var(--accent);margin-top:calc(3*var(--u))}
.tl ol{list-style:none;margin:calc(12*var(--u)) 0 0;padding:0;position:relative}
.tl li{position:relative;padding:0 0 calc(12*var(--u)) calc(20*var(--u));font:500 calc(9*var(--u)*var(--ts))/1.35 var(--th);color:#b9b8bc}
.tl li::before{content:"";position:absolute;left:calc(3*var(--u));top:calc(3*var(--u));width:calc(9*var(--u));height:calc(9*var(--u));border-radius:50%;background:#e6e6e8;transition:background .4s}
.tl li::after{content:"";position:absolute;left:calc(7*var(--u));top:calc(13*var(--u));bottom:calc(1*var(--u));width:1px;background:#e6e6e8}
.tl li:last-child::after{display:none}
.tl li.on{color:var(--ink)}
.tl li.on::before{background:var(--accent);box-shadow:0 0 0 calc(3*var(--u)) rgba(160,159,163,.2)}
.tl li.now::before{animation:beat 1.6s ease-in-out infinite}
.tl li.x{color:#c0566b}.tl li.x::before{background:#e7a3b1}
@keyframes beat{50%{box-shadow:0 0 0 calc(6*var(--u)) rgba(160,159,163,.05)}}
.mine{width:calc(302*var(--u));margin:calc(14*var(--u)) auto 0}
.mine .h{font:600 calc(8.5*var(--u)*var(--ts))/1.3 var(--th);color:var(--accent);margin-bottom:calc(6*var(--u))}
.mine button{display:flex;width:100%;align-items:center;justify-content:space-between;gap:calc(8*var(--u));padding:calc(9*var(--u)) calc(12*var(--u));border-radius:calc(12*var(--u));background:rgba(255,255,255,.85);box-shadow:0 calc(1*var(--u)) calc(4*var(--u)) rgba(0,0,0,.06);font:500 calc(9*var(--u)*var(--ts))/1.3 var(--th);color:var(--ink);text-align:left}
.mine button+button{margin-top:calc(6*var(--u))}
.mine button b{font:600 calc(9*var(--u)*var(--ts))/1 var(--serif)}
.mine button span{font:600 calc(7.5*var(--u)*var(--ts))/1 var(--th);color:#fff;background:var(--accent);padding:calc(4*var(--u)) calc(8*var(--u));border-radius:calc(20*var(--u));white-space:nowrap}
#toast{position:fixed;left:50%;top:calc(14px + env(safe-area-inset-top));z-index:90;transform:translate(-50%,-220%);opacity:0;display:flex;align-items:center;gap:calc(7*var(--u));max-width:92vw;padding:calc(9*var(--u)) calc(14*var(--u));border-radius:calc(20*var(--u));background:rgba(255,255,255,.95);box-shadow:0 calc(8*var(--u)) calc(26*var(--u)) rgba(0,0,0,.12);font:600 calc(9*var(--u)*var(--ts))/1.35 var(--th);color:var(--ink);transition:transform .55s var(--spring),opacity .3s;pointer-events:none;backdrop-filter:blur(10px)}
#toast.show{transform:translate(-50%,0);opacity:1}
#toast img{width:calc(15*var(--u));height:calc(9.5*var(--u));flex:none}
#loader{position:fixed;inset:0;z-index:100;background:radial-gradient(ellipse at 50% 45%,#fff 0,#f4f4f6 70%);display:flex;flex-direction:column;align-items:center;justify-content:center;transition:opacity .9s var(--soft),visibility .9s}
#loader.done{opacity:0;visibility:hidden}
#loader .lstage{position:relative;width:260px;height:190px}
#loader .lwing{position:absolute;top:8px;width:150px;height:182px;filter:drop-shadow(0 6px 14px rgba(0,0,0,.12))}
#loader .lwing img{width:100%;height:100%}
#loader .lwing.l{left:-6px;transform-origin:88% 48%;animation:lflapL 1.15s ease-in-out infinite}
#loader .lwing.r{right:-6px;transform-origin:12% 48%;animation:lflapR 1.15s ease-in-out infinite}
#loader .lheart{position:absolute;left:84px;top:52px;width:92px;height:108px;-webkit-mask:url(/angel/a/heart-mask.png) center/100% 100% no-repeat;mask:url(/angel/a/heart-mask.png) center/100% 100% no-repeat;background:linear-gradient(160deg,#fff 10%,#e4e4e8 55%,#f7f7f9 90%);animation:lbeat 1.15s ease-in-out infinite}
#loader .lheart::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.95) 50%,transparent 65%) 0 0/250% 100%;animation:shine 1.8s linear infinite}
#loader .lhalo{position:absolute;left:96px;top:14px;width:68px;height:18px;animation:lhalo 2.2s ease-in-out infinite}
#loader .lhalo img{width:100%;height:100%}
#loader .lbar{width:120px;height:3px;border-radius:3px;background:#e7e7ea;overflow:hidden;margin-top:18px}
#loader .lbar i{display:block;height:100%;width:40%;border-radius:3px;background:linear-gradient(90deg,transparent,#a09fa3,transparent);animation:lbar 1.2s ease-in-out infinite}
#loader.done .lwing.l{animation:lflyL .9s var(--soft) forwards}#loader.done .lwing.r{animation:lflyR .9s var(--soft) forwards}
#loader.done .lheart{transform:scale(1.4);opacity:0;transition:.8s var(--soft)}
@keyframes lflapL{0%,100%{transform:rotate(6deg)}45%{transform:rotate(-22deg) scaleY(1.04)}}
@keyframes lflapR{0%,100%{transform:rotate(-6deg)}45%{transform:rotate(22deg) scaleY(1.04)}}
@keyframes lbeat{0%,100%{transform:translateY(2px) scale(1)}45%{transform:translateY(-6px) scale(1.04)}}
@keyframes lhalo{0%,100%{transform:translateY(0);opacity:.9}50%{transform:translateY(-5px);opacity:1}}
@keyframes lbar{from{transform:translateX(-110%)}to{transform:translateX(260%)}}
@keyframes lflyL{to{transform:translate(-80px,-120px) rotate(-40deg) scale(.6);opacity:0}}
@keyframes lflyR{to{transform:translate(80px,-120px) rotate(40deg) scale(.6);opacity:0}}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(calc(-3*var(--u)))}}
@keyframes bob{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(calc(-3.2*var(--u))) rotate(var(--rot,1deg))}}
@keyframes flapl{0%,100%{transform:rotate(0) scale(1)}30%{transform:rotate(-9deg) scale(1.04,.98)}55%{transform:rotate(2.5deg) scale(.98,1.02)}75%{transform:rotate(-3deg)}}
@keyframes flapr{0%,100%{transform:rotate(0) scale(1)}30%{transform:rotate(9deg) scale(1.04,.98)}55%{transform:rotate(-2.5deg) scale(.98,1.02)}75%{transform:rotate(3deg)}}
@keyframes unfoldL{from{opacity:0;transform:rotate(28deg) scale(.55)}to{opacity:1;transform:none}}
@keyframes unfoldR{from{opacity:0;transform:rotate(-28deg) scale(.55)}to{opacity:1;transform:none}}
@keyframes dropIn{0%{opacity:0;transform:translateY(calc(-40*var(--u))) scale(.7) rotate(var(--r0,-8deg))}60%{opacity:1;transform:translateY(calc(4*var(--u))) scale(1.04) rotate(0)}100%{opacity:1;transform:none}}
@keyframes haloIn{from{opacity:0;transform:translateY(calc(-26*var(--u))) scale(.5)}to{opacity:1;transform:none}}
@keyframes glow{0%,100%{filter:drop-shadow(0 0 0 rgba(255,255,255,0))}50%{filter:drop-shadow(0 0 calc(5*var(--u)) rgba(255,255,255,1)) drop-shadow(0 0 calc(2*var(--u)) rgba(0,0,0,.06))}}
@keyframes blurIn{from{opacity:0;filter:blur(10px);transform:scale(1.12)}to{opacity:1;filter:none;transform:none}}
@keyframes write{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes sway{0%,100%{transform:rotate(0)}50%{transform:rotate(1.6deg)}}
@keyframes swayB{0%,100%{transform:rotate(180deg)}50%{transform:rotate(181.6deg)}}
@keyframes twinkle{0%,100%{opacity:1;transform:scale(1) rotate(0)}45%{opacity:.25;transform:scale(.55) rotate(25deg)}}
@keyframes beatH{0%,100%{transform:scale(1)}15%{transform:scale(1.25)}30%{transform:scale(.95)}45%{transform:scale(1.12)}}
@keyframes flick{0%,100%{opacity:1;transform:translateY(0)}40%{opacity:.55;transform:translateY(calc(-2*var(--u)))}55%{opacity:.9}}
@keyframes shine{0%,55%{background-position:150% 0}100%{background-position:-60% 0}}
@keyframes kenburns{0%{transform:scale(1.04) translateX(-1%)}100%{transform:scale(1.1) translateX(1.2%)}}
@keyframes rv{from{opacity:0;transform:translateY(calc(16*var(--u)));filter:blur(4px)}to{opacity:1;transform:none;filter:none}}
@keyframes rvL{from{opacity:0;transform:translateX(calc(-26*var(--u))) rotate(-1deg)}to{opacity:1;transform:none}}
@keyframes rvR{from{opacity:0;transform:translateX(calc(26*var(--u))) rotate(1deg)}to{opacity:1;transform:none}}
@keyframes wingPop{0%{transform:scale(0) rotate(-30deg);opacity:0}70%{transform:scale(1.3) rotate(6deg);opacity:1}100%{transform:none;opacity:1}}
@keyframes feather{0%{transform:translate(0,0) rotate(0) scale(.4);opacity:0}15%{opacity:1}100%{transform:translate(var(--dx),var(--dy)) rotate(var(--dr)) scale(1);opacity:0}}
.anim .wing.l{animation:unfoldL 1.3s .25s var(--spring) both}
.anim .wing.r{animation:unfoldR 1.3s .25s var(--spring) both}
.anim .wing.l img{animation:flapl 3s 1.6s ease-in-out infinite;transform-origin:85% 45%}
.anim .wing.r img{animation:flapr 3s 1.6s ease-in-out infinite;transform-origin:15% 45%}
.anim .heart{animation:dropIn 1.05s var(--spring) both}
.anim .heart.h1{animation-delay:.45s;--r0:-14deg}.anim .heart.h2{animation-delay:.3s;--r0:0deg}.anim .heart.h3{animation-delay:.6s;--r0:14deg}
.anim .heart .hw{animation:bob 5.4s ease-in-out infinite}
.anim .heart.h1 .hw{animation-delay:1.6s;--rot:-1.4deg}.anim .heart.h2 .hw{animation-delay:2.4s;--rot:.8deg}.anim .heart.h3 .hw{animation-delay:2s;--rot:1.4deg}
.heart .shine,.banner .sweep{display:none}
.anim .halo{animation:haloIn 1.1s .9s var(--spring) both}
.anim .halo img{animation:float 3.6s 2s ease-in-out infinite,glow 3.6s 2s ease-in-out infinite}
.anim .logo{animation:blurIn 1.3s 1s var(--soft) both}
.anim .logo .gl{position:absolute;inset:0;-webkit-mask:var(--lm) center/contain no-repeat;mask:var(--lm) center/contain no-repeat;background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.9) 48%,transparent 60%);background-size:260% 100%;animation:shine 5s 2.4s ease-in-out infinite}
.anim .scr-about{animation:write 1.6s 1.2s var(--soft) both}
.anim .scr-love{animation:write 1.4s 2.2s var(--soft) both}
.anim .orn-top{animation:fadeIn 1.6s .2s both}
.anim .orn-top img{animation:sway 9s ease-in-out infinite;transform-origin:100% 0}
.anim .orn-bot{animation:fadeIn 1.6s .4s both,swayB 10s ease-in-out infinite;transform-origin:50% 50%}
.anim .side{animation:write 2s 1.8s var(--soft) both}
.anim .spark.st img{animation:twinkle 2.8s ease-in-out infinite}
.anim .spark.st2 img{animation:twinkle 3.4s 1.1s ease-in-out infinite}
.anim .spark.hs img{animation:beatH 2.4s ease-in-out infinite}
.anim .spark.hs2 img{animation:beatH 2.4s 1.2s ease-in-out infinite}
.anim .spark.dh img{animation:twinkle 2s .5s ease-in-out infinite}
.anim .spark{animation:fadeIn .8s 1.5s both}
.anim .qm{animation:fadeIn 1s 1.3s both}
.anim .qm img{animation:flick 3.2s ease-in-out infinite}
.anim .qm.b img{animation-delay:.6s}.anim .qm.c img{animation-delay:1.2s}
.anim .banner .bi{animation:kenburns 14s ease-in-out infinite alternate}
.anim .banner.pre .bi{animation:none}
.anim .banner .sweep{animation:shine 7s 2s ease-in-out infinite}
.anim [data-rv]{opacity:0}
.anim [data-rv].vis{animation:rv .8s var(--soft) both;animation-delay:var(--d,0s)}
.anim [data-rv="l"].vis{animation-name:rvL}
.anim [data-rv="r"].vis{animation-name:rvR}
.anim .wings.pop i{animation:wingPop .6s var(--spring) both}
.anim .wings.pop i:nth-child(2){animation-delay:.08s}.anim .wings.pop i:nth-child(3){animation-delay:.16s}.anim .wings.pop i:nth-child(4){animation-delay:.24s}.anim .wings.pop i:nth-child(5){animation-delay:.32s}
.anim .fab{animation:rv .8s 2.2s var(--soft) both}
.fx{position:fixed;z-index:95;pointer-events:none;width:calc(12*var(--u));height:calc(7.5*var(--u));-webkit-mask:url(/angel/a/wing-icon.png) center/contain no-repeat;mask:url(/angel/a/wing-icon.png) center/contain no-repeat;background:#cfced3;animation:feather 1s var(--soft) forwards}
.fx.dot{width:calc(4*var(--u));height:calc(4*var(--u));border-radius:50%;-webkit-mask:none;mask:none;background:#d9d9dc}
.lite .wing.l img,.lite .wing.r img,.lite .heart .hw,.lite .heart .shine,.lite .halo img,.lite .orn-top img,.lite .orn-bot,.lite .qm img,.lite .spark img,.lite .banner .bi,.lite .banner .sweep,.lite .logo .gl,.lite .sky .fog,.lite .sky .dots{animation:none!important}
.noanim *,.noanim *::before,.noanim *::after{animation:none!important;transition:none!important}
.noanim [data-rv]{opacity:1!important}
@media (prefers-reduced-motion:reduce){.sky .fog,.sky .dots,.wing img,.heart .hw,.heart .shine,.halo img,.qm img,.spark img,.banner .bi{animation:none!important}}
@keyframes flapIcon{0%,100%{transform:scale(1,1)}25%{transform:scale(.62,1.1) translateY(-1px)}50%{transform:scale(1.08,.95)}}
@keyframes powerL{0%{transform:rotate(0)}12%{transform:rotate(-16deg) scale(1.06,.96)}24%{transform:rotate(4deg)}36%{transform:rotate(-16deg) scale(1.06,.96)}48%{transform:rotate(4deg)}62%{transform:rotate(-12deg)}80%{transform:rotate(1deg)}100%{transform:rotate(0)}}
@keyframes powerR{0%{transform:rotate(0)}12%{transform:rotate(16deg) scale(1.06,.96)}24%{transform:rotate(-4deg)}36%{transform:rotate(16deg) scale(1.06,.96)}48%{transform:rotate(-4deg)}62%{transform:rotate(12deg)}80%{transform:rotate(-1deg)}100%{transform:rotate(0)}}
@keyframes lift{0%,100%{transform:translateY(0)}30%,55%{transform:translateY(calc(-7*var(--u)))}}
@keyframes haloPulse{0%,100%{transform:scale(1);filter:none}35%{transform:scale(1.22);filter:drop-shadow(0 0 calc(8*var(--u)) #fff) drop-shadow(0 0 calc(3*var(--u)) rgba(0,0,0,.08))}}
.anim .hero.power .wing.l img{animation:powerL 1.5s ease-in-out}
.anim .hero.power .wing.r img{animation:powerR 1.5s ease-in-out}
.anim .hero.power .heart .hw{animation:lift 1.5s ease-in-out}
.anim .hero.power .heart.h1 .hw{animation-delay:.08s}.anim .hero.power .heart.h3 .hw{animation-delay:.16s}
.anim .hero.power .halo img{animation:haloPulse 1.5s ease-in-out}
.anim .hero .logo img{animation:float 4.6s 2.6s ease-in-out infinite}
@keyframes wave{0%,70%,100%{transform:none}10%{transform:translateY(calc(-2*var(--u))) scale(.7,1.12)}20%{transform:scale(1.12,.92)}30%{transform:none}}
.anim .rate-row .wings i,.anim .sum .wings i,.anim .rd .wings i{animation:wave 3.6s ease-in-out infinite}
.anim .rate-row .wings i:nth-child(2),.anim .sum .wings i:nth-child(2){animation-delay:.12s}
.anim .rate-row .wings i:nth-child(3),.anim .sum .wings i:nth-child(3){animation-delay:.24s}
.anim .rate-row .wings i:nth-child(4),.anim .sum .wings i:nth-child(4){animation-delay:.36s}
.anim .rate-row .wings i:nth-child(5),.anim .sum .wings i:nth-child(5){animation-delay:.48s}
.anim .rcard.vis .wings i,.anim .bcard.vis .wings i{animation:wave 5s ease-in-out infinite;animation-delay:calc(var(--d,0s) + .6s)}
.pill::before,.pill::after,.bigbtn.solid::before,.bigbtn.solid::after{content:"";position:absolute;top:50%;width:calc(22*var(--u));height:calc(18*var(--u));margin-top:calc(-11*var(--u));-webkit-mask:url(/angel/a/wing-icon.png) no-repeat;mask:url(/angel/a/wing-icon.png) no-repeat;-webkit-mask-size:200% 100%;mask-size:200% 100%;background:#cfced4;opacity:0;pointer-events:none;transition:opacity .25s}
.pill::before,.bigbtn.solid::before{left:calc(-17*var(--u));-webkit-mask-position:0 0;mask-position:0 0;transform-origin:100% 60%}
.pill::after,.bigbtn.solid::after{right:calc(-17*var(--u));-webkit-mask-position:100% 0;mask-position:100% 0;transform-origin:0 60%}
@keyframes sproutL{0%{opacity:0;transform:scale(.2) rotate(30deg)}20%{opacity:1;transform:scale(1) rotate(-25deg)}40%{transform:rotate(10deg)}60%{transform:rotate(-25deg)}80%{opacity:1;transform:rotate(5deg)}100%{opacity:0;transform:scale(.6) rotate(0)}}
@keyframes sproutR{0%{opacity:0;transform:scale(.2) rotate(-30deg)}20%{opacity:1;transform:scale(1) rotate(25deg)}40%{transform:rotate(-10deg)}60%{transform:rotate(25deg)}80%{opacity:1;transform:rotate(-5deg)}100%{opacity:0;transform:scale(.6) rotate(0)}}
.anim .flutter::before{animation:sproutL 1.3s ease-in-out}
.anim .flutter::after{animation:sproutR 1.3s ease-in-out}
@media (hover:hover){.anim .pill:hover::before,.anim .bigbtn.solid:hover::before{animation:sproutL 1.3s ease-in-out infinite}.anim .pill:hover::after,.anim .bigbtn.solid:hover::after{animation:sproutR 1.3s ease-in-out infinite}}
.ov .mw{position:absolute;top:50%;width:min(62vw,300px);height:min(76vw,365px);margin-top:calc(min(76vw,365px)/-2 - 20px);pointer-events:none;opacity:0;filter:drop-shadow(0 8px 20px rgba(0,0,0,.08))}
.ov .mw img{width:100%;height:100%}
.ov .mw.l{right:50%;margin-right:calc(min(100vw,480px)*0.25);transform-origin:90% 50%}
.ov .mw.r{left:50%;margin-left:calc(min(100vw,480px)*0.25);transform-origin:10% 50%}
@keyframes mwInL{0%{opacity:0;transform:rotate(40deg) scale(.3)}35%{opacity:1;transform:rotate(-18deg) scale(1.05)}55%{transform:rotate(8deg)}75%{transform:rotate(-10deg)}100%{opacity:.55;transform:rotate(0) scale(1)}}
@keyframes mwInR{0%{opacity:0;transform:rotate(-40deg) scale(.3)}35%{opacity:1;transform:rotate(18deg) scale(1.05)}55%{transform:rotate(-8deg)}75%{transform:rotate(10deg)}100%{opacity:.55;transform:rotate(0) scale(1)}}
@keyframes mwIdleL{0%,100%{transform:rotate(0)}50%{transform:rotate(-7deg)}}
@keyframes mwIdleR{0%,100%{transform:rotate(0)}50%{transform:rotate(7deg)}}
@keyframes mwOutL{to{opacity:0;transform:translate(-40px,-90px) rotate(-35deg) scale(.5)}}
@keyframes mwOutR{to{opacity:0;transform:translate(40px,-90px) rotate(35deg) scale(.5)}}
.anim .ov.in .mw.l{animation:mwInL 1.1s var(--soft) forwards,mwIdleL 3.2s 1.1s ease-in-out infinite;opacity:.55}
.anim .ov.in .mw.r{animation:mwInR 1.1s var(--soft) forwards,mwIdleR 3.2s 1.1s ease-in-out infinite;opacity:.55}
.anim .ov.out .mw.l{opacity:.55;animation:mwOutL .5s var(--soft) forwards}
.anim .ov.out .mw.r{opacity:.55;animation:mwOutR .5s var(--soft) forwards}
.lite .ov .mw{display:none}
#fxc{position:fixed;inset:0;width:100%;height:100%;z-index:96;pointer-events:none}
.anim .pcard.vis{animation-name:cardIn}
@keyframes cardIn{from{opacity:0;transform:perspective(700px) rotateX(28deg) translateY(calc(24*var(--u))) scale(.92)}to{opacity:1;transform:none}}
.bigbtn{position:relative}
.bigbtn.solid.busy::before{display:none}
.bigbtn.solid.busy::after{content:"";position:absolute;left:50%;top:50%;right:auto;width:calc(12*var(--u));height:calc(12*var(--u));margin:calc(-6*var(--u)) 0 0 calc(-6*var(--u));border-radius:50%;-webkit-mask:none;mask:none;background:none;opacity:1;border:calc(1.6*var(--u)) solid rgba(255,255,255,.5);border-top-color:#fff;animation:spin .8s linear infinite}
.rate-row{margin-top:calc(20*var(--u));height:calc(28*var(--u));gap:calc(7*var(--u))}
.rate-row .rt{font-size:calc(14*var(--u)*var(--ts));line-height:calc(28*var(--u))}
.rate-row .wings{--ww:calc(16*var(--u));--wh:calc(10*var(--u));--wg:calc(3*var(--u))}
.rail{gap:calc(9*var(--u));padding-top:calc(4*var(--u))}
.rcard{width:calc(176*var(--u));min-height:calc(104*var(--u));padding:calc(11*var(--u)) calc(11*var(--u)) calc(11*var(--u)) calc(11*var(--u))}
.rcard .top{height:calc(17*var(--u));gap:calc(5*var(--u))}
.rcard .av{width:calc(16*var(--u));height:calc(16*var(--u))}
.rcard .nm{font-size:calc(12.5*var(--u)*var(--ts));max-width:calc(96*var(--u));line-height:1.25}
.rcard .dt{font-size:calc(7.5*var(--u)*var(--ts));padding-top:calc(3*var(--u))}
.rcard .wings{--ww:calc(9*var(--u));--wh:calc(5.6*var(--u));--wg:calc(1.6*var(--u));margin-top:calc(5*var(--u))}
.rcard .tx{width:auto;margin:calc(6*var(--u)) 0 0 0;font-size:calc(10*var(--u)*var(--ts));line-height:1.55}
.rcard .pics{margin-left:0;gap:calc(4*var(--u))}.rcard .pics span{width:calc(24*var(--u));height:calc(24*var(--u));border-radius:calc(6*var(--u))}
.rail .empty{font-size:calc(10*var(--u)*var(--ts))}
.grp-h{font-size:calc(15*var(--u)*var(--ts));line-height:calc(26*var(--u))}
.pcard{min-height:calc(160*var(--u));padding-bottom:calc(11*var(--u))}
.pcard .pi .hint{font-size:calc(8.5*var(--u)*var(--ts));line-height:calc(13*var(--u));bottom:calc(5*var(--u));right:calc(10*var(--u))}
.pcard .pn{margin-top:calc(8*var(--u));font-size:calc(11*var(--u)*var(--ts));line-height:calc(16*var(--u))}
.pcard .pp{font-size:calc(11*var(--u)*var(--ts));line-height:calc(16*var(--u))}
.grid .none{font-size:calc(11*var(--u)*var(--ts))}
.tag{font-size:calc(10.5*var(--u)*var(--ts));line-height:calc(16*var(--u))}
.tag .r{margin-top:calc(-2*var(--u))}
.sum{min-height:calc(118*var(--u))}
.sum .big{font-size:calc(30*var(--u)*var(--ts));line-height:calc(34*var(--u))}
.sum .l .wings{--ww:calc(15*var(--u));--wh:calc(9.5*var(--u));--wg:calc(2.5*var(--u))}
.sum .stot{font-size:calc(11*var(--u)*var(--ts));margin-top:0;line-height:calc(20*var(--u))}
.sum .bar{height:calc(18*var(--u));font-size:calc(10*var(--u)*var(--ts))}
.sum .bar b{width:calc(14*var(--u))}
.sum .bar .tr{width:calc(170*var(--u));height:calc(4*var(--u))}
.sum .bar .n{min-width:calc(18*var(--u))}
.bcard{padding:calc(13*var(--u)) calc(15*var(--u)) calc(14*var(--u)) calc(15*var(--u))}
.bcard .av{width:calc(28*var(--u));height:calc(28*var(--u))}
.bcard .top{gap:calc(10*var(--u));min-height:calc(30*var(--u))}
.bcard .nm{font-size:calc(15*var(--u)*var(--ts))}
.bcard .wings{--ww:calc(13*var(--u));--wh:calc(8*var(--u));--wg:calc(2*var(--u))}
.bcard .dt{font-size:calc(8.5*var(--u)*var(--ts))}
.bcard .tx{margin-top:calc(7*var(--u));font-size:calc(11*var(--u)*var(--ts));line-height:1.6}
.bcard .pin{font-size:calc(8.5*var(--u)*var(--ts));padding:calc(3*var(--u)) calc(8*var(--u))}
.rlist .empty{font-size:calc(11*var(--u)*var(--ts))}
.steps span{font-size:calc(11.5*var(--u)*var(--ts));height:calc(25*var(--u));min-width:calc(58*var(--u))}
.pcard2 .c{font-size:calc(9.5*var(--u)*var(--ts))}
.frm .lb{font-size:calc(11.5*var(--u)*var(--ts))}
.ext label{font-size:calc(10.5*var(--u)*var(--ts));min-height:calc(28*var(--u))}
.ext .cb{width:calc(11*var(--u));height:calc(11*var(--u))}
.inp{font-size:calc(11.5*var(--u)*var(--ts));min-height:calc(32*var(--u));padding:calc(7*var(--u)) calc(12*var(--u))}
.sel select{font-size:calc(11.5*var(--u)*var(--ts));height:calc(32*var(--u))}
.tot .rw{font-size:calc(10.5*var(--u)*var(--ts));padding:calc(5*var(--u)) 0}
.tot .rw.t{font-size:calc(12*var(--u)*var(--ts))}
.qcard h4{font-size:calc(12*var(--u)*var(--ts));line-height:calc(18*var(--u))}
.qacc{font-size:calc(10.5*var(--u)*var(--ts))}
.qord{font-size:calc(9*var(--u)*var(--ts))}
.qdl{font-size:calc(9.5*var(--u)*var(--ts));padding:calc(6*var(--u)) calc(12*var(--u))}
.scard h4{font-size:calc(11*var(--u)*var(--ts));line-height:calc(16*var(--u))}
.scard .note{font-size:calc(9*var(--u)*var(--ts))}
.slot .l{font-size:calc(9*var(--u)*var(--ts))}
.bhead .a{font-size:calc(11*var(--u)*var(--ts))}.bhead .b{font-size:calc(9*var(--u)*var(--ts))}.bhead .chip2{font-size:calc(9*var(--u)*var(--ts));padding:calc(4*var(--u)) calc(11*var(--u))}
.fld .lb2{font-size:calc(11*var(--u)*var(--ts))}
.fld .inp{font-size:calc(10.5*var(--u)*var(--ts));min-height:calc(32*var(--u))}
.err{font-size:calc(10*var(--u)*var(--ts))}
.mine .h{font-size:calc(10*var(--u)*var(--ts))}.mine button{font-size:calc(10.5*var(--u)*var(--ts))}.mine button b{font-size:calc(10.5*var(--u)*var(--ts))}.mine button span{font-size:calc(9*var(--u)*var(--ts))}
.tl .h{font-size:calc(12*var(--u)*var(--ts))}.tl .sub{font-size:calc(9.5*var(--u)*var(--ts))}.tl li{font-size:calc(10.5*var(--u)*var(--ts))}
.ct .t1{font-size:calc(12*var(--u)*var(--ts))}.ct .t2{font-size:calc(10*var(--u)*var(--ts))}
.rd .dt{font-size:calc(9*var(--u)*var(--ts))}
.rpick-l{font-size:calc(10*var(--u)*var(--ts))}
.pm .ds{font-size:calc(11.5*var(--u)*var(--ts));line-height:1.7}
.wing img,.heart .hw,.halo img,.qm img,.spark img,.logo img{will-change:transform;backface-visibility:hidden}
.panel{filter:none!important;transition:transform .55s cubic-bezier(.22,1,.36,1),opacity .35s ease}
.ov{transition:opacity .4s ease}
@keyframes flapl{0%,100%{transform:rotate(0)}50%{transform:rotate(-7deg) scale(1.025,.99)}}
@keyframes flapr{0%,100%{transform:rotate(0)}50%{transform:rotate(7deg) scale(1.025,.99)}}
.anim .wing.l img{animation:flapl 3.8s 1.6s cubic-bezier(.45,0,.55,1) infinite}
.anim .wing.r img{animation:flapr 3.8s 1.6s cubic-bezier(.45,0,.55,1) infinite}
@keyframes powerL{0%,100%{transform:rotate(0)}18%{transform:rotate(-13deg)}36%{transform:rotate(2deg)}54%{transform:rotate(-12deg)}72%{transform:rotate(1deg)}86%{transform:rotate(-5deg)}}
@keyframes powerR{0%,100%{transform:rotate(0)}18%{transform:rotate(13deg)}36%{transform:rotate(-2deg)}54%{transform:rotate(12deg)}72%{transform:rotate(-1deg)}86%{transform:rotate(5deg)}}
.anim .hero.power .wing.l img{animation:powerL 1.8s cubic-bezier(.45,0,.55,1)}
.anim .hero.power .wing.r img{animation:powerR 1.8s cubic-bezier(.45,0,.55,1)}
@keyframes lift{0%,100%{transform:translateY(0)}40%,60%{transform:translateY(calc(-6*var(--u)))}}
.anim .hero.power .heart .hw{animation:lift 1.8s cubic-bezier(.45,0,.55,1)}
@keyframes bob{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(calc(-3*var(--u))) rotate(var(--rot,1deg))}}
.anim .heart .hw{animation-timing-function:cubic-bezier(.45,0,.55,1)}
@keyframes wave{0%,72%,100%{transform:none}12%{transform:translateY(calc(-1.5*var(--u))) scale(.8,1.08)}24%{transform:scale(1.06,.96)}36%{transform:none}}
@keyframes dropIn{0%{opacity:0;transform:translateY(calc(-30*var(--u))) scale(.85) rotate(var(--r0,-8deg))}100%{opacity:1;transform:none}}
.anim .heart{animation-duration:1.2s;animation-timing-function:cubic-bezier(.22,1,.36,1)}
@keyframes unfoldL{from{opacity:0;transform:rotate(22deg) scale(.7)}to{opacity:1;transform:none}}
@keyframes unfoldR{from{opacity:0;transform:rotate(-22deg) scale(.7)}to{opacity:1;transform:none}}
.anim .wing.l,.anim .wing.r{animation-duration:1.6s;animation-timing-function:cubic-bezier(.22,1,.36,1)}
.anim [data-rv].vis{animation-duration:.9s;animation-timing-function:cubic-bezier(.22,1,.36,1)}
@keyframes rv{from{opacity:0;transform:translateY(calc(14*var(--u)))}to{opacity:1;transform:none}}
@keyframes cardIn{from{opacity:0;transform:translateY(calc(18*var(--u))) scale(.96)}to{opacity:1;transform:none}}
@keyframes mwInL{0%{opacity:0;transform:rotate(30deg) scale(.6)}60%{opacity:.7;transform:rotate(-8deg) scale(1.02)}100%{opacity:.55;transform:rotate(0) scale(1)}}
@keyframes mwInR{0%{opacity:0;transform:rotate(-30deg) scale(.6)}60%{opacity:.7;transform:rotate(8deg) scale(1.02)}100%{opacity:.55;transform:rotate(0) scale(1)}}
.anim .ov.in .mw.l{animation:mwInL 1.3s cubic-bezier(.22,1,.36,1) forwards,mwIdleL 4s 1.3s cubic-bezier(.45,0,.55,1) infinite}
.anim .ov.in .mw.r{animation:mwInR 1.3s cubic-bezier(.22,1,.36,1) forwards,mwIdleR 4s 1.3s cubic-bezier(.45,0,.55,1) infinite}
.pill,.bigbtn,.chip{transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s,background .3s,color .3s}
.rail{gap:0;overflow-x:auto}
.rail .track{display:flex;width:max-content;animation:marquee var(--dur,30s) linear infinite;will-change:transform}
.rail .track>.rcard{margin-right:calc(9*var(--u))}
.rail.hold .track,.rail.off .track{animation-play-state:paused}
@keyframes marquee{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
.hero.idle.off *,.hero.idle.off{animation-play-state:paused!important}
.heart .hw{filter:none}.heart{filter:drop-shadow(0 0 calc(3*var(--u)) rgba(0,0,0,.08))}
.anim .halo img{animation:float 3.6s 2s ease-in-out infinite}
.anim .hero.power .halo img{animation:float 3.6s ease-in-out infinite}
.rate-row .wings,.sum .l .wings{filter:none}
.anim .rcard.vis .wings i,.anim .bcard.vis .wings i{animation:none}
.fab{backdrop-filter:none;-webkit-backdrop-filter:none;background:rgba(255,255,255,.97)}
@media (pointer:coarse),(max-width:600px){
.sky .fog{animation:none;filter:blur(14px)}
.sky .dots{animation:none;opacity:.8}
.ov{backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
.panel{backdrop-filter:none;-webkit-backdrop-filter:none;background:rgba(255,255,255,.94)}
.fab::after{animation-duration:4s}
.anim .qm img{animation-duration:4.5s}
}
.rail{padding-bottom:calc(12*var(--u));margin-bottom:calc(-6*var(--u))}
.vf{display:inline-flex;align-items:center;margin-left:calc(4*var(--u));padding:calc(1.5*var(--u)) calc(6*var(--u));border-radius:calc(20*var(--u));background:#eef3ef;color:#5d8a6a;font:600 calc(7.5*var(--u)*var(--ts))/1.2 var(--th);white-space:nowrap;vertical-align:middle}
.rcard .vf{margin-left:calc(3*var(--u));padding:calc(1*var(--u)) calc(4*var(--u));font-size:calc(7*var(--u)*var(--ts))}
.rlist.vwin{display:block;height:calc(440*var(--u));overflow:hidden;margin-top:calc(24*var(--u));-webkit-mask:linear-gradient(transparent,#000 9%,#000 91%,transparent);mask:linear-gradient(transparent,#000 9%,#000 91%,transparent)}
.vtrack{display:flex;flex-direction:column;align-items:center;padding-top:calc(10*var(--u));animation:vmarq var(--dur,40s) linear infinite;will-change:transform}
.vtrack .bcard{margin-bottom:calc(12*var(--u));opacity:1}
.rlist.vwin.hold .vtrack,.rlist.vwin.off .vtrack{animation-play-state:paused}
@keyframes vmarq{from{transform:translate3d(0,0,0)}to{transform:translate3d(0,-50%,0)}}
.rlist.swin{display:block;overflow:hidden;width:calc(349*var(--u));margin:calc(24*var(--u)) auto 0;padding:calc(4*var(--u)) 0 calc(2*var(--u));touch-action:pan-y}
.strack{display:flex;transition:transform .8s cubic-bezier(.22,1,.36,1);will-change:transform}
.strack .bcard{flex:0 0 calc(349*var(--u));width:calc(349*var(--u));opacity:1}
.strack .bcard .tx{-webkit-line-clamp:5}
.sdots{display:flex;justify-content:center;gap:calc(5*var(--u));margin-top:calc(12*var(--u))}
.sdots i{width:calc(6*var(--u));height:calc(6*var(--u));border-radius:calc(6*var(--u));background:#dcdcdf;transition:width .4s cubic-bezier(.22,1,.36,1),background .4s}
.sdots i.on{width:calc(18*var(--u));background:var(--accent)}
.reply{margin-top:calc(8*var(--u));padding:calc(7*var(--u)) calc(10*var(--u));border-radius:0 calc(10*var(--u)) 0 calc(10*var(--u));background:#f6f6f8;border-left:calc(2*var(--u)) solid #d8d7dc;font:400 calc(10*var(--u)*var(--ts))/1.55 var(--th);color:#4d4c55;white-space:pre-line;word-break:break-word}
.reply b{display:block;font:600 calc(9*var(--u)*var(--ts))/1.4 var(--th);color:var(--accent);margin-bottom:calc(1*var(--u))}
.reply.sm{font-size:calc(8.5*var(--u)*var(--ts));padding:calc(5*var(--u)) calc(7*var(--u));display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.reply.sm b{display:inline;margin-right:calc(4*var(--u));font-size:calc(8*var(--u)*var(--ts))}
.pcard .soldout{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.62);font:600 calc(13*var(--u)*var(--ts))/1 var(--th);color:var(--ink);letter-spacing:.04em}
.pcard .soldout::before{content:"";position:absolute;width:calc(118*var(--u));height:calc(34*var(--u));border-radius:calc(20*var(--u));background:rgba(255,255,255,.95);box-shadow:0 calc(3*var(--u)) calc(10*var(--u)) rgba(0,0,0,.08);z-index:-1}
.pcard .left{position:absolute;left:calc(8*var(--u));top:calc(8*var(--u));padding:calc(3*var(--u)) calc(9*var(--u));border-radius:calc(20*var(--u));background:rgba(255,255,255,.92);font:600 calc(8.5*var(--u)*var(--ts))/1.3 var(--th);color:var(--ink);box-shadow:0 calc(2*var(--u)) calc(6*var(--u)) rgba(0,0,0,.08)}
.pcard.so .pi img{filter:grayscale(1) opacity(.7)}
.qexp{margin:calc(8*var(--u)) auto 0;display:inline-block;padding:calc(5*var(--u)) calc(12*var(--u));border-radius:calc(20*var(--u));background:#fbf1de;color:#a5782c;font:600 calc(9.5*var(--u)*var(--ts))/1.3 var(--th)}
.qexp.x{background:#fbe9ec;color:#b4475c}
