:root{--font-display:var(--font-baloo),"Baloo 2",system-ui,sans-serif;--font-body:var(--font-nunito),"Nunito",system-ui,sans-serif;--coral:#ff7a4d;--coral-dark:#cc3400;--coral-solid:#dd3800;--sky:#63c2e6;--grass:#5cbf7f;--grass-dark:#3fa262;--sun:#ffcb4f;--berry:#ef6b93;--plum:#8a6bd6;--cream:#fff6e9;--cream2:#ffedd3;--card:#fffdf8;--ink:#2b303b;--ink-soft:#566072;--ink-mute:#656e7a;--line:#e9e1d1;--line-soft:#f2ece1;--chunk:#ece5d6;--chunk-strong:#dcd4c3;--grass-ink:#2e7a49;--shadow-tint:40,44,56;--bg:var(--cream);--brand:var(--coral);--brand-ink:var(--coral-dark);--r-sm:12px;--r-md:18px;--r-lg:24px;--r-xl:30px;--maxw:1180px;--elev-card:0 2px 0 var(--chunk),0 16px 30px -20px rgba(var(--shadow-tint),0.38);--elev-card-hi:0 4px 0 var(--chunk),0 24px 44px -22px rgba(var(--shadow-tint),0.46);--elev-hero:0 3px 0 var(--chunk),0 34px 60px -32px rgba(var(--shadow-tint),0.5);color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--cream:#1b1730;--cream2:#262143;--card:#2d2851;--ink:#fbf2e8;--ink-soft:#cabfe2;--ink-mute:#a99cce;--line:#4c4478;--line-soft:#3b3460;--chunk:#130f22;--chunk-strong:#0d0a18;--coral:#ff8a63;--coral-dark:#ff6d3f;--grass-ink:#86e0a6;--shadow-tint:14,8,30;color-scheme:dark}}:root[data-theme=dark]{--cream:#1b1730;--cream2:#262143;--card:#2d2851;--ink:#fbf2e8;--ink-soft:#cabfe2;--ink-mute:#a99cce;--line:#4c4478;--line-soft:#3b3460;--chunk:#130f22;--chunk-strong:#0d0a18;--coral:#ff8a63;--coral-dark:#ff6d3f;--grass-ink:#86e0a6;--shadow-tint:14,8,30;color-scheme:dark}*,:after,:before{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:16px;line-height:1.5;font-weight:500;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;min-height:100dvh;overflow-x:hidden}img,svg{display:block;max-width:100%}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}h1,h2,h3,h4{font-family:var(--font-display);font-weight:800;line-height:1.05;letter-spacing:-.01em}body:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.6;background:radial-gradient(62% 42% at 86% -4%,color-mix(in srgb,var(--sun) 32%,transparent),transparent 60%),radial-gradient(72% 52% at 6% 110%,color-mix(in srgb,var(--coral) 13%,transparent),transparent 64%)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) body:before{opacity:.22}}:root[data-theme=dark] body:before{opacity:.22}body:after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) body:after{opacity:.07;mix-blend-mode:screen}}:root[data-theme=dark] body:after{mix-blend-mode:screen}.wrap{position:relative;z-index:1;width:100%;max-width:var(--maxw);margin:0 auto;padding:0 clamp(16px,4vw,30px)}.section{margin-top:clamp(30px,5vw,52px)}.tab-panel{padding-bottom:clamp(40px,8vw,80px);animation:rise .42s cubic-bezier(.22,1,.36,1) both}.sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:18px}.sec-eyebrow{display:inline-flex;align-items:center;gap:7px;font-family:var(--font-display);font-weight:800;font-size:.78rem;letter-spacing:.05em;text-transform:uppercase;color:var(--grass-ink);background:color-mix(in srgb,var(--grass) 13%,var(--card));border:1.5px solid color-mix(in srgb,var(--grass) 30%,var(--line));border-radius:999px;padding:4px 12px}.sec-title{font-size:clamp(1.7rem,4.4vw,2.45rem);margin-top:8px;letter-spacing:-.02em}.sec-sub{color:var(--ink-soft);font-size:.96rem;margin-top:4px;max-width:52ch}.count-note{font-size:.86rem;color:var(--ink-mute)}.btn,.count-note{font-weight:700;font-family:var(--font-display)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:999px;padding:12px 20px;font-size:.95rem;white-space:nowrap;transition:transform .14s ease,box-shadow .16s ease,background .16s}.btn.coral{background:var(--coral-solid);color:#fff;box-shadow:0 5px 0 var(--coral-dark),inset 0 2px 0 rgba(255,255,255,.25)}.btn.coral:hover{transform:translateY(-2px);box-shadow:0 7px 0 var(--coral-dark)}.btn.coral:active{transform:translateY(2px);box-shadow:0 3px 0 var(--coral-dark)}.btn.grass{background:var(--grass);color:#fff;box-shadow:0 5px 0 var(--grass-dark)}.btn.grass:hover{transform:translateY(-2px);box-shadow:0 7px 0 var(--grass-dark)}.btn.grass:active{transform:translateY(2px);box-shadow:0 3px 0 var(--grass-dark)}.btn.soft{background:var(--card);color:var(--ink);border:2px solid var(--line);box-shadow:0 4px 0 var(--chunk)}.btn.soft:hover{transform:translateY(-2px);border-color:var(--coral);color:var(--coral-dark);box-shadow:0 6px 0 var(--chunk)}.btn.soft:active{transform:translateY(1px);box-shadow:0 3px 0 var(--chunk)}.btn.sm{padding:9px 15px;font-size:.86rem}.btn:disabled{cursor:not-allowed;transform:none!important}.btn.coral:disabled{background:color-mix(in srgb,var(--coral-solid) 52%,var(--cream2));color:#fff;box-shadow:0 5px 0 color-mix(in srgb,var(--coral-dark) 42%,var(--chunk)),inset 0 2px 0 rgba(255,255,255,.18)}.btn.grass:disabled,.btn.soft:disabled{opacity:.55}.icon-btn{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;border:2px solid var(--line);background:var(--card);color:var(--ink-soft);box-shadow:0 3px 0 var(--chunk);transition:transform .14s,color .16s,border-color .16s;flex:0 0 auto}.icon-btn:hover{transform:translateY(-2px);color:var(--coral-dark);border-color:var(--coral)}.icon-btn:active{transform:translateY(1px)}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:70;background:color-mix(in srgb,var(--cream) 62%,transparent);-webkit-backdrop-filter:saturate(1.35) blur(12px);backdrop-filter:saturate(1.35) blur(12px);border-bottom:0;box-shadow:0 1px 0 color-mix(in srgb,var(--line-soft) 55%,transparent)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .tabbar,:root:not([data-theme=light]) .topbar{background:color-mix(in srgb,var(--cream) 74%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}}:root[data-theme=dark] .tabbar,:root[data-theme=dark] .topbar{background:color-mix(in srgb,var(--cream) 74%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.topbar-in{gap:12px;height:66px}.brand,.topbar-in{display:flex;align-items:center}.brand{gap:9px;font-family:var(--font-display);font-weight:800;font-size:1.5rem;letter-spacing:-.01em;color:var(--ink)}.brand-logo{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:linear-gradient(150deg,var(--coral),var(--sun));box-shadow:0 4px 0 var(--coral-dark);overflow:hidden}.brand-logo svg{transform:translateY(3px)}.brand em{color:var(--coral-dark);font-style:normal}.top-spacer{margin-left:auto}.top-actions{display:flex}.loc-chip,.top-actions{align-items:center;gap:8px}.loc-chip{display:inline-flex;padding:7px 14px;border-radius:999px;border:2px solid var(--line);background:var(--card);box-shadow:0 3px 0 var(--chunk);font-family:var(--font-display);font-weight:700;font-size:.9rem;color:var(--ink);max-width:240px;transition:transform .14s,border-color .16s}.loc-chip:hover{transform:translateY(-1px);border-color:var(--coral)}.loc-chip .lname{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.loc-chip .lw{display:inline-flex;align-items:center;gap:3px;color:var(--ink-soft);font-weight:700;padding-left:8px;border-left:2px solid var(--line)}@media (max-width:560px){.loc-chip{max-width:150px}.brand{font-size:1.3rem}}.loc-pop-wrap{position:relative}.loc-pop{position:absolute;top:calc(100% + 10px);right:0;width:min(340px,88vw);background:var(--card);border:2px solid var(--line);border-radius:var(--r-lg);box-shadow:0 12px 0 var(--chunk),0 26px 44px -22px rgba(var(--shadow-tint),.42);padding:16px;z-index:80;animation:rise .22s ease both}.loc-pop h4{font-size:1rem;margin-bottom:10px}.tabbar{position:-webkit-sticky;position:sticky;top:66px;z-index:60;background:color-mix(in srgb,var(--cream) 55%,transparent);-webkit-backdrop-filter:saturate(1.35) blur(12px);backdrop-filter:saturate(1.35) blur(12px);border-bottom:0;box-shadow:0 10px 26px -22px rgba(var(--shadow-tint),.4)}.tabbar:after,.tabbar:before{content:"";position:absolute;top:0;bottom:0;width:40px;z-index:2;pointer-events:none;opacity:0;transition:opacity .2s ease}.tabbar:before{left:0;background:linear-gradient(90deg,var(--cream),transparent)}.tabbar:after{right:0;background:linear-gradient(270deg,var(--cream),transparent)}.tabbar.has-left:before,.tabbar.has-right:after{opacity:1}.tabbar-in{display:flex;gap:6px;overflow-x:auto;padding:10px 0;scrollbar-width:none;scroll-behavior:smooth;scroll-padding-inline:44px;-webkit-overflow-scrolling:touch}.tabbar-in::-webkit-scrollbar{display:none}@media (prefers-reduced-motion:reduce){.tabbar-in{scroll-behavior:auto}}.tab{display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;padding:9px 15px;border-radius:999px;border:2px solid transparent;background:transparent;color:var(--ink-soft);font-family:var(--font-display);font-weight:700;font-size:.92rem;transition:transform .14s,background .16s,color .16s,border-color .16s}.tab .emo{display:grid;place-items:center;line-height:0}.tab:not(.active) .emo{color:color-mix(in srgb,var(--coral-dark) 55%,var(--ink-soft))}.tab:hover{color:var(--ink);background:var(--cream2)}.tab.active{color:#fff;background:var(--coral-solid);border-color:var(--coral-dark);box-shadow:0 4px 0 var(--coral-dark)}.tab .badge{background:rgba(255,255,255,.28);color:inherit;border-radius:999px;padding:0 7px;font-size:.78rem;font-weight:800}.tab:not(.active) .badge{background:var(--cream2);color:var(--ink-soft)}.card{background:var(--card);border:2px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--elev-card)}.hero{position:relative;overflow:hidden;width:100vw;margin-inline:calc(50% - 50vw);margin-top:0;min-height:min(calc(100dvh - 148px),860px);display:flex;flex-direction:column;justify-content:flex-start;border:0;border-radius:0;box-shadow:none;background:linear-gradient(180deg,color-mix(in srgb,var(--sky-1) 62%,transparent) 0,color-mix(in srgb,var(--sky-2) 46%,transparent) 36%,transparent 66%);transition:background .9s ease}@media (min-width:721px){.hero{margin-top:-122px;padding-top:122px;min-height:min(calc(100dvh - 10px),920px)}}.hero-scene{position:absolute;inset:auto 0 0 0;height:54%;width:100%;z-index:0;opacity:1}.hero-ghost{right:-40px;bottom:-30px;filter:blur(3px);opacity:.16}.hero-blob,.hero-ghost{position:absolute;z-index:0;pointer-events:none}.hero-blob{border-radius:50%;filter:blur(2px)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .hero-blob{opacity:.4}}:root[data-theme=dark] .hero-blob{opacity:.4}.hero-in{position:relative;z-index:2;width:100%;max-width:var(--maxw);margin-inline:auto;padding:clamp(30px,6vh,84px) clamp(16px,4vw,30px) clamp(170px,24vh,230px)}@media (max-width:560px){.hero-in{padding-top:22px;padding-bottom:104px}.hero-sub{margin-top:10px}.hero-search{margin-top:18px}.hero-family{transform-origin:50% 100%;scale:.68;bottom:0}}.hero-in>*{max-width:660px}.hero-in:before{content:"";position:absolute;top:clamp(40px,7vh,100px);bottom:clamp(140px,20vh,200px);left:clamp(2px,3vw,16px);width:min(700px,96%);z-index:-1;border-radius:var(--r-xl);background:radial-gradient(130% 120% at 22% 38%,color-mix(in srgb,var(--card) 92%,transparent) 0,color-mix(in srgb,var(--card) 84%,transparent) 46%,color-mix(in srgb,var(--card) 36%,transparent) 74%,transparent 100%);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);pointer-events:none}.hero-eyebrow{display:inline-flex;align-items:center;gap:7px;padding:7px 15px;border-radius:999px;border:2px dashed var(--grass);color:var(--grass-ink);font-family:var(--font-display);font-weight:800;font-size:.85rem;background:color-mix(in srgb,var(--grass) 12%,var(--card))}.hero-title{font-size:clamp(2.6rem,7vw,4.4rem);line-height:.98;margin-top:18px;letter-spacing:-.025em;max-width:15ch}.hero-title .pop{position:relative;color:var(--coral-dark)}.hero-title .pop:after{content:"";position:absolute;left:0;right:0;bottom:.03em;height:.15em;border-radius:999px;background:var(--sun);z-index:-1;transform-origin:left center;animation:swash-in .55s cubic-bezier(.22,1,.36,1) .75s both}.hero-sub{margin-top:16px;font-size:clamp(1.05rem,2.4vw,1.3rem);color:var(--ink-soft);font-weight:600;max-width:42ch}.hero-search{display:flex;gap:10px;margin-top:26px;max-width:540px}.hero-chips,.hero-eyebrow,.hero-search,.hero-sub,.hero-title{animation:hero-rise .65s cubic-bezier(.22,1,.36,1) both}.hero-eyebrow{animation-delay:.06s}.hero-title{animation-delay:.16s}.hero-sub{animation-delay:.28s}.hero-search{animation-delay:.4s}.hero-chips{animation-delay:.52s}@keyframes hero-rise{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}@keyframes swash-in{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media (prefers-reduced-motion:reduce){.hero-chips,.hero-eyebrow,.hero-family,.hero-search,.hero-sub,.hero-title,.hero-title .pop:after{animation:none}}.place-search{position:relative;width:100%}.ps-row{display:flex;gap:10px;align-items:stretch}.ps-row .searchbox{flex:1 1 auto;min-width:0}.ps-row>.btn{flex:0 0 auto}.ps-actions{display:flex;gap:8px;align-items:center;margin-top:12px}.place-search.ps-compact .ps-row,.ps-actions{flex-wrap:wrap}.place-search.ps-compact .ps-row .searchbox{flex:1 1 100%}.place-search.ps-compact .ps-row>.btn{flex:1 1 auto}.hero-chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.hero-family{position:absolute;left:0;right:0;bottom:clamp(10px,3vh,34px);z-index:2;display:flex;justify-content:center;margin:0;padding:0 20px;animation:troupe-pop .7s cubic-bezier(.34,1.56,.64,1) .5s both}@keyframes troupe-pop{0%{opacity:0;transform:translateY(30px) scale(.92)}to{opacity:1;transform:none}}.speech{position:absolute;z-index:3;background:var(--card);border:2px solid var(--ink);border-radius:16px 16px 16px 4px;padding:8px 14px;font-family:var(--font-display);font-weight:800;font-size:.9rem;box-shadow:0 4px 0 var(--chunk-strong)}@media (max-width:1024px){.speech{display:none}}@media (max-width:720px){.hero-ghost{opacity:.14}}.searchbox{position:relative;flex:1 1 auto;display:flex;align-items:center;gap:10px;padding:0 16px;background:var(--card);border:2px solid var(--line);border-radius:999px;box-shadow:0 4px 0 var(--chunk);transition:border-color .16s,box-shadow .16s}.searchbox:focus-within{border-color:var(--coral)}.searchbox .lead{color:var(--ink-mute);display:grid;place-items:center}.searchbox input{flex:1 1;min-width:0;border:0;background:transparent;outline:none;padding:13px 0;font-weight:600}.ac-menu{position:absolute;top:calc(100% + 8px);left:0;right:0;z-index:1400;margin:0;padding:6px;background:var(--card);border:2px solid var(--line);border-radius:18px;box-shadow:0 14px 34px rgba(var(--shadow-tint),.18);max-height:320px;overflow-y:auto}.ac-menu,.ac-menu li{list-style:none}.ac-item{display:flex;flex-direction:column;align-items:flex-start;gap:1px;width:100%;text-align:left;padding:9px 12px;border:0;background:transparent;border-radius:12px;cursor:pointer;transition:background .12s}.ac-item.active,.ac-item:hover{background:color-mix(in srgb,var(--coral) 13%,var(--card))}.ac-name{font-family:var(--font-display);font-weight:800;font-size:.96rem;color:var(--ink)}.ac-ctx{font-size:.8rem;color:var(--ink-mute);font-weight:600}.chips{display:flex;gap:8px;flex-wrap:wrap}.chips.scroll{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}.chip{display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;padding:8px 14px;border-radius:999px;border:2px solid var(--line);background:var(--card);color:var(--ink-soft);font-family:var(--font-display);font-weight:700;font-size:.88rem;box-shadow:0 3px 0 var(--chunk);transition:transform .14s,border-color .16s,color .16s,background .16s}.chip:hover{transform:translateY(-2px);border-color:var(--cat,var(--coral));color:var(--ink)}.chip.active{border-color:var(--cat,var(--coral-dark));background:color-mix(in srgb,var(--cat,var(--coral)) 16%,var(--card));color:var(--ink)}.chip .dot{width:10px;height:10px;border-radius:999px;background:var(--cat,var(--coral))}.chip .n{color:var(--ink-mute);font-weight:700}.seg{display:inline-flex;gap:4px;padding:4px;border-radius:999px;border:2px solid var(--line);background:var(--cream2)}.seg button{border:0;background:transparent;border-radius:999px;padding:7px 13px;font-family:var(--font-display);font-weight:700;font-size:.84rem;color:var(--ink-soft);transition:background .16s,color .16s}.seg button.on{background:var(--card);color:var(--ink);box-shadow:0 2px 5px rgba(var(--shadow-tint),.14)}.toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:18px}.filter-label{font-family:var(--font-display);font-weight:700;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-mute);align-self:center}.coach{display:grid;grid-template-columns:minmax(0,340px) 1fr;grid-gap:clamp(14px,2.5vw,24px);gap:clamp(14px,2.5vw,24px);align-items:start}@media (max-width:900px){.coach{grid-template-columns:1fr}}.coach-card{position:relative;overflow:hidden;border-radius:var(--r-lg);padding:22px;color:#fff;box-shadow:0 8px 0 rgba(0,0,0,.14);background:linear-gradient(155deg,#1a7fa5,#135d79)}.coach-card.mode-outdoor{background:linear-gradient(155deg,#348551,#26603b)}.coach-card.mode-indoor{background:linear-gradient(155deg,#7f69be,#4a3d7e)}.coach-card.mode-water{background:linear-gradient(155deg,#1c8198,#145c6d)}.coach-tag{font-family:var(--font-display);font-weight:800;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;opacity:.9}.coach-top{display:flex;align-items:center;gap:14px;margin-top:10px}.coach-emoji{font-size:3rem;line-height:1;filter:drop-shadow(0 4px 6px rgba(0,0,0,.2))}.coach-temp{font-size:2.6rem;line-height:1}.coach-temp,.coach-wlabel{font-family:var(--font-display);font-weight:800}.coach-wlabel{opacity:.95}.coach-reason{margin-top:14px;font-size:.92rem;font-weight:600;opacity:.95;border-top:2px solid rgba(255,255,255,.25);padding-top:12px}.coach-forecast{display:flex;gap:6px;margin-top:14px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.coach-forecast::-webkit-scrollbar{display:none}.fday{flex:0 0 auto;text-align:center;background:rgba(255,255,255,.18);border-radius:14px;padding:9px 8px;min-width:52px}.fday .d{font-family:var(--font-display);font-size:.68rem;text-transform:uppercase;opacity:.85;font-weight:800}.fday .e{font-size:1.15rem;margin:3px 0}.fday .t{font-family:var(--font-display);font-size:.8rem;font-weight:800}.fday .t small{opacity:.7;font-weight:700}.coach-body{min-width:0}.coach-intro{font-family:var(--font-display);font-weight:700;font-size:clamp(1.15rem,2.6vw,1.45rem);line-height:1.3;margin-bottom:14px}.coach-picks{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:14px;gap:14px}.coach-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.today{--tc:var(--grass);position:relative;overflow:hidden;border-radius:var(--r-lg);border:2px solid var(--line);background:linear-gradient(150deg,color-mix(in srgb,var(--tc) 20%,var(--card)),var(--card) 66%);box-shadow:var(--elev-card);padding:clamp(16px,3vw,24px)}.today.mode-water{--tc:var(--sky)}.today.mode-indoor{--tc:var(--plum)}.today.is-hot{--tc:var(--coral)}.today:before{content:"";position:absolute;top:-80px;right:-60px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--tc) 42%,transparent),transparent 70%);pointer-events:none}.today-head{position:relative;justify-content:space-between;gap:clamp(14px,3vw,28px);flex-wrap:wrap}.today-head,.today-now{display:flex;align-items:center}.today-now{gap:15px;min-width:0}.today-emoji{font-size:clamp(2.6rem,7vw,3.7rem);line-height:1;filter:drop-shadow(0 4px 9px rgba(var(--shadow-tint),.4))}.today-temp{font-weight:800;font-size:clamp(2.4rem,7vw,3.2rem);line-height:1;color:var(--ink)}.today-cond,.today-temp{font-family:var(--font-display)}.today-cond{font-weight:700;font-size:1.02rem;color:var(--ink-soft);margin-top:3px}.today-stats{display:flex;gap:10px;flex-wrap:nowrap}.tstat{flex:1 1 72px;display:flex;flex-direction:column;gap:1px;padding:10px;border-radius:16px;background:var(--cream2);border:2px solid var(--line)}.tstat .tstat-ico{font-size:1.15rem;line-height:1;margin-bottom:2px}.tstat .tstat-num{font-family:var(--font-display);font-weight:800;font-size:1.18rem;line-height:1;color:var(--ink)}.tstat .tstat-lab{font-size:.68rem;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-mute)}.today-tip,.tstat .tstat-lab{font-family:var(--font-display);font-weight:700}.today-tip{position:relative;display:flex;align-items:center;gap:11px;margin-top:16px;padding:12px 16px;border-radius:var(--r-md);background:color-mix(in srgb,var(--tc) 16%,var(--card));border:2px dashed color-mix(in srgb,var(--tc) 48%,var(--line));font-size:.95rem;color:var(--ink)}.today-tip-ico{font-size:1.45rem;line-height:1;flex:0 0 auto}@media (max-width:560px){.today-now,.today-stats{flex:1 1 100%}}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(258px,1fr));grid-gap:16px;gap:16px}.acard{position:relative;display:flex;flex-direction:column;background:var(--card);border:2px solid var(--line);border-radius:var(--r-lg);padding:18px;box-shadow:var(--elev-card);transition:transform .18s ease,box-shadow .18s ease,border-color .18s;overflow:hidden;background:linear-gradient(180deg,color-mix(in srgb,var(--cat,var(--coral)) 8%,var(--card)),var(--card) 110px)}.acard:hover{transform:translateY(-5px) rotate(-.35deg);box-shadow:var(--elev-card-hi);border-color:color-mix(in srgb,var(--cat,var(--coral)) 45%,var(--line))}.acard-top{display:flex;align-items:flex-start;gap:12px;margin-top:4px}.acard-emoji{display:grid;place-items:center;width:50px;height:50px;border-radius:16px;font-size:1.6rem;flex:0 0 auto;background:color-mix(in srgb,var(--cat,var(--coral)) 18%,var(--card));border:2px solid color-mix(in srgb,var(--cat,var(--coral)) 30%,var(--line));transform:rotate(-5deg);box-shadow:0 0 0 3px var(--card),0 5px 12px -6px rgba(var(--shadow-tint),.5);transition:transform .22s cubic-bezier(.34,1.56,.64,1)}.acard:hover .acard-emoji{transform:rotate(3deg) scale(1.07)}.acard-title{font-size:1.1rem;font-weight:800;line-height:1.15;padding-right:34px}.acard-cat{font-family:var(--font-display);font-size:.78rem;font-weight:700;color:color-mix(in srgb,var(--cat,var(--coral-dark)) 72%,var(--ink));text-transform:uppercase;letter-spacing:.03em;margin-top:2px}.acard-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.tag{display:inline-flex;align-items:center;gap:4px;font-weight:700;font-size:.78rem;padding:4px 10px;border-radius:999px;background:var(--cream2);color:var(--ink-soft)}.tag.free{background:color-mix(in srgb,var(--grass) 20%,var(--card));color:var(--grass-dark)}.tag.indoor{background:color-mix(in srgb,var(--plum) 16%,var(--card));color:var(--plum)}.acard-actions{display:flex;gap:8px;margin-top:auto;padding-top:16px}.pill-btn{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-display);font-weight:700;font-size:.85rem;padding:9px 13px;border-radius:999px;border:2px solid var(--line);color:var(--ink-soft);background:var(--card);transition:transform .14s,border-color .16s,color .16s,background .16s}.pill-btn:hover{transform:translateY(-1px);border-color:var(--coral);color:var(--coral-dark)}.pill-btn.route{background:color-mix(in srgb,var(--coral) 10%,var(--card));color:var(--coral-dark);border-color:color-mix(in srgb,var(--coral) 45%,var(--line));box-shadow:none;font-weight:800}.pill-btn.route:hover{background:color-mix(in srgb,var(--coral) 20%,var(--card));color:var(--coral-dark);border-color:var(--coral);transform:translateY(-2px)}.pill-btn.done.on{background:color-mix(in srgb,var(--grass) 22%,var(--card));border-color:var(--grass);color:var(--grass-dark)}.corner{position:absolute;top:14px;right:12px;display:flex;flex-direction:column;gap:6px;z-index:2}.round-btn{width:36px;height:36px;border-radius:999px;border:2px solid var(--line);background:var(--card);display:grid;place-items:center;font-size:1.05rem;line-height:1;color:var(--ink-soft);transition:transform .14s,background .16s,border-color .16s}.round-btn:hover{transform:scale(1.12);border-color:var(--coral)}.round-btn.on{background:color-mix(in srgb,var(--berry) 18%,var(--card));border-color:var(--berry)}.round-btn.done.on{background:color-mix(in srgb,var(--grass) 20%,var(--card));border-color:var(--grass);color:var(--grass-dark)}.round-btn.pop{animation:pop .34s ease}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:14px;gap:14px}.stat{display:flex;align-items:center;gap:14px;text-align:left;padding:18px;border-radius:var(--r-lg);border:2px solid var(--line);background:var(--card);box-shadow:var(--elev-card);transition:transform .16s,box-shadow .16s,border-color .16s}.stat:hover{transform:translateY(-3px);box-shadow:var(--elev-card-hi);border-color:color-mix(in srgb,var(--sc,var(--coral)) 50%,var(--line))}.stat .emo{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;font-size:1.7rem;flex:0 0 auto;background:color-mix(in srgb,var(--sc,var(--coral)) 16%,var(--card));border:2px solid color-mix(in srgb,var(--sc,var(--coral)) 30%,var(--line));transform:rotate(-5deg);box-shadow:0 0 0 3px var(--card),0 5px 12px -6px rgba(var(--shadow-tint),.5);transition:transform .22s cubic-bezier(.34,1.56,.64,1)}.stat:hover .emo{transform:rotate(3deg) scale(1.07)}.stat-txt{display:flex;flex-direction:column;min-width:0}.stat-num{font-family:var(--font-display);font-weight:800;font-size:1.5rem;line-height:1;color:var(--ink)}.stat-label{color:var(--ink-soft);font-size:.86rem;font-weight:600;margin-top:3px}.weekend{display:flex;gap:18px;align-items:center;padding:18px 20px;border-radius:var(--r-lg);border:2px solid var(--line);background:linear-gradient(120deg,color-mix(in srgb,var(--sun) 20%,var(--card)),var(--card));box-shadow:var(--elev-card)}.weekend-date{flex:0 0 auto;width:74px;text-align:center;border-radius:16px;padding:10px 6px;background:var(--coral-solid);color:#fff;box-shadow:0 4px 0 var(--coral-dark)}.weekend-date .dow{font-family:var(--font-display);font-weight:700;font-size:.72rem;text-transform:uppercase;opacity:.92}.weekend-date .d{font-family:var(--font-display);font-weight:800;font-size:1.9rem;line-height:1}.weekend-date .m{font-family:var(--font-display);font-weight:700;font-size:.72rem;text-transform:uppercase}.weekend-body{min-width:0;flex:1 1}.weekend-type{font-family:var(--font-display);font-weight:700;font-size:.78rem;text-transform:uppercase;letter-spacing:.03em;color:color-mix(in srgb,var(--cat,var(--coral-dark)) 72%,var(--ink))}.weekend-title{font-size:1.2rem;margin:3px 0 5px}.weekend-desc{color:var(--ink-soft);font-size:.9rem;font-weight:500;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.weekend-foot{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:8px;font-size:.85rem;color:var(--ink-mute);font-weight:600}@media (max-width:560px){.weekend{flex-direction:column;align-items:flex-start}}.evt-list{display:flex;flex-direction:column;gap:12px}.evt{display:flex;gap:16px;background:var(--card);border:2px solid var(--line);border-radius:var(--r-lg);padding:16px 18px;box-shadow:var(--elev-card);transition:transform .16s,box-shadow .16s,border-color .16s}.evt:hover{transform:translateY(-3px);box-shadow:var(--elev-card-hi);border-color:color-mix(in srgb,var(--cat,var(--coral)) 45%,var(--line))}.evt-date{flex:0 0 auto;width:64px;text-align:center;border-radius:14px;padding:8px 4px;background:color-mix(in srgb,var(--cat,var(--coral)) 16%,var(--card));align-self:flex-start}.evt-date .day{font-size:1.7rem;font-weight:800;line-height:1;color:var(--cat,var(--coral-dark))}.evt-date .day,.evt-date .mon{font-family:var(--font-display)}.evt-date .mon{font-size:.7rem;font-weight:700;text-transform:uppercase;color:var(--ink-mute);margin-top:3px}.evt-body{min-width:0;flex:1 1}.evt-type{font-family:var(--font-display);font-weight:700;font-size:.76rem;text-transform:uppercase;letter-spacing:.03em;color:color-mix(in srgb,var(--cat,var(--coral-dark)) 72%,var(--ink))}.evt-title{font-size:1.12rem;margin:3px 0;line-height:1.2;padding-right:40px}.evt-desc{color:var(--ink-soft);font-size:.9rem;font-weight:500;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.evt-foot{align-items:center;margin-top:10px;font-size:.85rem;color:var(--ink-mute);font-weight:600}.cine-theaters,.evt-foot{display:flex;gap:10px;flex-wrap:wrap}.cine-theaters{margin-bottom:8px}.theater{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:999px;border:2px solid var(--line);background:var(--card);box-shadow:0 3px 0 var(--chunk);font-weight:700;font-size:.88rem}.theater .km{color:var(--ink-mute);font-weight:700;font-size:.82rem}.theater.near{border-color:var(--plum);background:color-mix(in srgb,var(--plum) 12%,var(--card))}.movies{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));grid-gap:16px;gap:16px}.movie{display:flex;flex-direction:column;background:var(--card);border:2px solid var(--line);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--elev-card);transition:transform .18s,box-shadow .18s}.movie:hover{transform:translateY(-4px);box-shadow:var(--elev-card-hi)}.movie-poster{position:relative;aspect-ratio:2/3;background:var(--cream2);overflow:hidden}.movie-poster img{width:100%;height:100%;object-fit:cover}.movie-poster .noimg{display:grid;place-items:center;height:100%;font-size:2.6rem;opacity:.5}.movie-badges{position:absolute;top:8px;left:8px;right:8px;display:flex;align-items:flex-start;justify-content:space-between;gap:6px;pointer-events:none}.movie-badge{align-self:flex-start;flex:0 0 auto;height:auto;font-family:var(--font-display);font-weight:800;font-size:.72rem;line-height:1.1;padding:4px 9px;border-radius:999px;color:#fff;background:rgba(24,28,38,.72);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.movie-badge.age{background:var(--grass-dark)}.movie-badge.upcoming{background:var(--plum)}.movie-body{padding:12px 14px 14px;display:flex;flex-direction:column;gap:6px;flex:1 1}.movie-title{font-size:1rem;font-weight:800;line-height:1.15}.movie-genre{font-size:.78rem;color:var(--ink-mute);font-weight:600;text-transform:capitalize}.showtimes{display:flex;flex-wrap:wrap;gap:5px;margin-top:2px}.time{font-family:var(--font-display);font-weight:700;font-size:.78rem;padding:3px 8px;border-radius:8px;background:color-mix(in srgb,var(--grass) 16%,var(--card));color:var(--grass-dark)}.evt-pin{top:12px;right:12px;z-index:2}.evt-pin,.movie-pin{position:absolute;width:34px;height:34px;font-size:1rem}.movie-pin{right:8px;bottom:8px;z-index:3}.tv-day{margin-top:clamp(22px,4vw,34px)}.tv-day:first-of-type{margin-top:6px}.tv-day-head{display:flex;align-items:baseline;gap:10px;margin-bottom:12px}.tv-day-head h3{font-size:1.25rem;text-transform:capitalize}.tvgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:14px;gap:14px}.tvcard{position:relative;display:flex;gap:14px;background:var(--card);border:2px solid var(--line);border-radius:var(--r-lg);padding:14px;box-shadow:var(--elev-card);transition:transform .16s,box-shadow .16s,border-color .16s;overflow:hidden}.tvcard:hover{transform:translateY(-3px);box-shadow:var(--elev-card-hi);border-color:color-mix(in srgb,var(--sky) 45%,var(--line))}.tv-thumb{position:relative;flex:0 0 auto;width:92px;height:92px;border-radius:16px;overflow:hidden;background:var(--cream2);display:grid;place-items:center}.tv-thumb img{width:100%;height:100%;object-fit:cover}.tv-thumb .noimg{font-size:2rem;opacity:.6}.tv-time{position:absolute;left:6px;bottom:6px;font-family:var(--font-display);font-weight:800;font-size:.74rem;color:#fff;background:rgba(24,28,38,.72);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);padding:2px 7px;border-radius:999px}.tv-body{min-width:0;flex:1 1;display:flex;flex-direction:column}.tv-chan{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-display);font-weight:700;font-size:.76rem;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-mute)}.tv-chan img{width:18px;height:18px;border-radius:5px;object-fit:contain;background:#fff}.tv-title{font-size:1.05rem;margin:3px 0 2px;line-height:1.15;padding-right:30px}.tv-when{display:inline-flex;align-items:center;gap:6px;margin-top:3px;font-family:var(--font-display);font-weight:700;font-size:.9rem;color:var(--coral,#ff7a4d)}.tv-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.tag.age{background:color-mix(in srgb,var(--grass) 18%,var(--card));color:var(--grass-dark)}.tag.genre{background:color-mix(in srgb,var(--sky) 18%,var(--card));color:color-mix(in srgb,var(--sky) 45%,var(--ink))}.tv-actions{margin-top:auto;padding-top:10px}.tv-pin{position:absolute;top:10px;right:10px;z-index:2;width:34px;height:34px;font-size:1rem}.soon{text-align:center;padding:clamp(28px,5vw,48px) 20px;border:2px dashed var(--line);border-radius:var(--r-xl);background:linear-gradient(180deg,var(--cream2),var(--card))}.soon-art{display:flex;justify-content:center;align-items:flex-end;gap:4px;margin-bottom:6px}.soon h3{font-size:1.5rem;margin:6px 0}.soon p{font-weight:600;max-width:44ch;margin:0 auto 14px}.soon p,.state{color:var(--ink-soft)}.state{text-align:center;padding:clamp(28px,5vw,48px) 20px;border:2px dashed var(--line);border-radius:var(--r-xl);background:var(--card)}.state .emoji{font-size:2.4rem}.state h3{margin:8px 0 6px;font-size:1.35rem;color:var(--ink)}.state p{max-width:44ch;margin:0 auto 14px;font-weight:600}.state.err{border-color:color-mix(in srgb,var(--coral) 45%,var(--line));border-style:solid;background:color-mix(in srgb,var(--coral) 8%,var(--card));color:var(--coral-dark)}.skel{background:linear-gradient(100deg,var(--cream2) 30%,color-mix(in srgb,var(--cream2) 55%,var(--card)) 50%,var(--cream2) 70%);background-size:220% 100%;animation:shimmer 1.3s linear infinite;border-radius:var(--r-lg)}@keyframes shimmer{to{background-position:-220% 0}}.map-wrap{position:relative;height:clamp(340px,60vh,560px);border-radius:var(--r-lg);overflow:hidden;border:2px solid var(--line);box-shadow:var(--elev-card);z-index:0}.map-wrap.tall{height:min(80vh,760px);min-height:460px}.amap{position:relative;height:100%;width:100%}.amap-placeholder{height:100%;width:100%;background:var(--cream2)}.map-fs-btn{position:absolute;top:12px;right:12px;z-index:1200;display:inline-flex;align-items:center;gap:6px;padding:8px 12px;font-family:var(--font-display);font-weight:800;font-size:.82rem;color:var(--ink);background:var(--card);border:2px solid var(--line);border-radius:999px;box-shadow:0 3px 0 var(--chunk);cursor:pointer;transition:transform .12s ease,box-shadow .12s ease}.map-fs-btn:hover{transform:translateY(-1px);box-shadow:0 5px 0 var(--chunk)}.map-fs-overlay{position:fixed;inset:0;z-index:3000;background:var(--cream2)}.map-fs-overlay .leaflet-container{height:100%;width:100%}.map-fs-close{position:absolute;top:16px;right:16px;z-index:3010;display:inline-flex;align-items:center;gap:6px;padding:10px 16px;font-family:var(--font-display);font-weight:800;font-size:.9rem;color:#fff;background:var(--ink);border:2px solid var(--ink);border-radius:999px;box-shadow:0 4px 14px rgba(0,0,0,.3);cursor:pointer}.map-fs-close:hover{transform:translateY(-1px)}.leaflet-container{height:100%;width:100%;background:var(--cream2);font-family:var(--font-body)}.map-pin{width:28px;height:28px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);border:3px solid #fff;box-shadow:0 3px 8px rgba(0,0,0,.35);display:grid;place-items:center}.map-pin span{transform:rotate(45deg);font-size:.74rem}.leaflet-popup-content-wrapper{border-radius:16px}.leaflet-popup-content{font-family:var(--font-body);margin:12px 14px}.pop-title{font-family:var(--font-display);font-weight:800;font-size:1rem}.pop-sub{color:var(--ink-soft);font-size:.82rem;margin-top:2px}.tips-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));grid-gap:12px;gap:12px}.tip-card{display:flex;gap:13px;align-items:flex-start;padding:15px 17px;background:var(--cream2);border:2px solid var(--line);border-radius:var(--r-lg)}.tip-ico{font-size:1.7rem;line-height:1;flex:0 0 auto}.tip-body{min-width:0}.tip-title{margin:0 0 3px;font-family:var(--font-display);font-weight:800;font-size:.98rem;color:var(--ink)}.tip-desc{margin:0;color:var(--ink-soft);font-size:.85rem;line-height:1.42}.backdrop{position:fixed;inset:0;z-index:100;background:rgba(22,25,34,.52);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:grid;place-items:start center;padding:clamp(16px,5vh,60px) 16px;overflow-y:auto;animation:fade .18s ease both}.modal{width:min(560px,100%);background:var(--card);border:2px solid var(--line);border-radius:var(--r-xl);box-shadow:0 14px 0 var(--chunk-strong),0 30px 60px -20px rgba(0,0,0,.5);padding:clamp(20px,4vw,30px);animation:rise .24s cubic-bezier(.22,1,.36,1) both}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.modal-head h2{font-size:1.6rem}.fgroup{margin-bottom:20px}.fgroup>label{display:block;font-family:var(--font-display);font-weight:700;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-mute);margin-bottom:10px}.input{width:100%;padding:12px 15px;border-radius:var(--r-md);border:2px solid var(--line);background:var(--cream);outline:none;font-weight:600;transition:border-color .16s}.input:focus{border-color:var(--coral)}.kid-row{display:flex;gap:8px;align-items:center;margin-bottom:8px}.kid-row .input.name{flex:1 1}.kid-row .input.age{width:84px}.kid-del{width:40px;height:40px;border-radius:12px;border:2px solid var(--line);background:var(--card);color:var(--ink-soft);display:grid;place-items:center;transition:color .16s,border-color .16s;flex:0 0 auto}.kid-del:hover{color:var(--coral-dark);border-color:var(--coral)}.range{display:flex;align-items:center;gap:14px}.range input[type=range]{flex:1 1;accent-color:var(--coral)}.range-val{font-family:var(--font-display);font-weight:800;min-width:64px;text-align:right}.field-err,.range-val{color:var(--coral-dark)}.field-err{font-weight:700;font-size:.86rem}.field-note{font-size:.86rem}.field-note,.foot{color:var(--ink-mute);font-weight:600}.foot{margin-top:clamp(40px,7vw,72px);border-top:2px solid var(--line-soft);padding:28px 0 40px;font-size:.88rem}.foot .wrap{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:center}.foot strong{color:var(--ink)}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes pop{0%{transform:scale(1)}40%{transform:scale(1.32)}to{transform:scale(1)}}.rise{animation:rise .5s cubic-bezier(.22,1,.36,1) both}.muted{color:var(--ink-mute)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}@property --sky-1{syntax:"<color>";inherits:true;initial-value:#a9dcf7}@property --sky-2{syntax:"<color>";inherits:true;initial-value:#cfe9f0}:root{--sky-1:#a9dcf7;--sky-2:#cfe9f0;--cloud:#ffffff;--cloud-shade:#7cb4d8;--rain:#8098ac;transition:--sky-1 .9s ease,--sky-2 .9s ease}:root[data-theme=dark]{--cloud-shade:#0b0818}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--cloud-shade:#0b0818}}.sky{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;contain:layout paint style}:root[data-theme=light] .sky{opacity:1}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .sky{opacity:.5}}:root[data-theme=dark] .sky{opacity:.5}.sky-dome{position:absolute;inset:0;background:linear-gradient(180deg,var(--sky-1) 0,var(--sky-2) 7%,transparent 14%)}.sky-sun{position:absolute;top:-96px;right:-70px;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--sun) 82%,#fff) 0,color-mix(in srgb,var(--sun) 55%,transparent) 34%,color-mix(in srgb,var(--sun) 20%,transparent) 56%,transparent 72%);filter:blur(3px);opacity:1;transition:opacity .8s ease;will-change:transform,opacity;animation:sun-breathe 8s ease-in-out infinite}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .sky-sun{opacity:.5}}:root[data-theme=dark] .sky-sun{opacity:.5}.sky-moon{top:-30px;right:-18px;width:210px;height:210px;border-radius:50%;background:radial-gradient(circle at 40% 40%,#fdf7e6 0,#f6eccf 40%,color-mix(in srgb,#f6eccf 45%,transparent) 58%,transparent 74%);will-change:transform,opacity}.sky-moon,.sky-stars{position:absolute;opacity:0;transition:opacity .9s ease}.sky-stars{inset:0}.sky-stars .star{position:absolute;border-radius:50%;background:#fff;box-shadow:0 0 6px 1px rgba(255,255,255,.6);will-change:transform,opacity;animation:twinkle 3s ease-in-out infinite;animation-play-state:paused}.sky-cloud{position:absolute;left:0;width:clamp(150px,20vw,290px);color:var(--cloud);opacity:.72;filter:drop-shadow(0 2px 0 color-mix(in srgb,var(--cloud-shade) 55%,transparent)) drop-shadow(0 14px 20px color-mix(in srgb,var(--cloud-shade) 38%,transparent));transition:color .8s ease,opacity .8s ease;animation:drift 56s linear infinite}.sky-cloud,.sky-cloud-i{display:block;will-change:transform}.sky-cloud-i{width:100%;height:auto;animation:bob 11s ease-in-out infinite}.sky-cloud.c1{top:7%;width:clamp(160px,20vw,280px);opacity:.85;animation-duration:47s;animation-delay:-6s}.sky-cloud.c1 .sky-cloud-i{animation-duration:9s;animation-delay:-2s}.sky-cloud.c2{top:21%;width:clamp(110px,13vw,190px);opacity:.72;animation-duration:61s;animation-delay:-34s}.sky-cloud.c2 .sky-cloud-i{animation-duration:13s;animation-delay:-7s}.sky-cloud.c3{top:46%;width:clamp(180px,24vw,320px);opacity:.58;animation-duration:53s;animation-delay:-48s}.sky-cloud.c3 .sky-cloud-i{animation-duration:16s;animation-delay:-11s}.sky-cloud.c4{top:70%;width:clamp(120px,16vw,210px);opacity:.62;animation-duration:71s;animation-delay:-18s}.sky-cloud.c4 .sky-cloud-i{animation-duration:12s;animation-delay:-5s}.sky-cloud.c5{top:33%;width:clamp(88px,10vw,148px);opacity:.55;animation-duration:37s;animation-delay:-21s}.sky-cloud.c5 .sky-cloud-i{animation-duration:7s;animation-delay:-4s}.sky-cloud.c6{top:58%;width:clamp(150px,19vw,250px);opacity:.45;animation-duration:97s;animation-delay:-66s}.sky-cloud.c6 .sky-cloud-i{animation-duration:19s;animation-delay:-9s}.sky-bird{position:absolute;left:0;width:26px;color:color-mix(in srgb,var(--ink-soft) 78%,var(--sky-1));opacity:0;will-change:transform,opacity}.sky-bird svg{width:100%;height:auto;transform-origin:50% 40%;animation:flap .55s ease-in-out infinite}.sky-bird.b1{top:13%;width:26px;animation:fly 27s linear infinite;animation-delay:5s}.sky-bird.b2{top:19%;width:18px;animation:fly 36s linear infinite;animation-delay:18s}.sky-rain{position:absolute;inset:0;opacity:0;transition:opacity .7s ease}.sky-rain .drop{position:absolute;top:-12%;width:2px;border-radius:2px;background:linear-gradient(transparent,var(--rain));opacity:.6;will-change:transform;animation:rain-fall 1s linear infinite;animation-play-state:paused}.sky-snow{position:absolute;inset:0;opacity:0;transition:opacity .7s ease}.sky-snow .flake{position:absolute;top:-6%;border-radius:50%;background:#fff;box-shadow:0 0 5px rgba(255,255,255,.7);opacity:.9;will-change:transform;animation:snow-fall 8s linear infinite;animation-play-state:paused}.sky-flash{position:absolute;inset:0;background:radial-gradient(78% 52% at 62% 12%,rgba(255,255,255,.6),transparent 60%);opacity:0;will-change:opacity;animation:storm-flash 9s step-end infinite;animation-play-state:paused}:root[data-sky=clear-day]{--sky-1:#a9dcf7;--sky-2:#cfe9f0;--cloud:#ffffff}:root[data-sky=partly-day]{--sky-1:#b4e0f5;--sky-2:#d6ebec;--cloud:#ffffff}:root[data-sky=overcast]{--sky-1:#cbd8e2;--sky-2:#dde4e6;--cloud:#e6ebf1}:root[data-sky=rain]{--sky-1:#aec3d1;--sky-2:#c6d1d4;--cloud:#cbd5de;--rain:#7f93a6}:root[data-sky=snow]{--sky-1:#d3e0e9;--sky-2:#e2e9ed;--cloud:#eff4f8}:root[data-sky=storm]{--sky-1:#8695a8;--sky-2:#aab3bf;--cloud:#8f9cac;--rain:#9aa7b6}:root[data-sky=night]{--sky-1:#232d5c;--sky-2:#3a4370;--cloud:#b9c0dd}:root[data-sky=night] .sky-bird,:root[data-sky=night] .sky-sun,:root[data-sky=overcast] .sky-bird,:root[data-sky=overcast] .sky-sun,:root[data-sky=rain] .sky-bird,:root[data-sky=rain] .sky-sun,:root[data-sky=snow] .sky-bird,:root[data-sky=snow] .sky-sun,:root[data-sky=storm] .sky-bird,:root[data-sky=storm] .sky-sun{opacity:0;animation:none}:root[data-sky=partly-day] .sky-sun{opacity:.9}:root[data-sky=overcast] .sky-cloud.c3,:root[data-sky=partly-day] .sky-cloud.c3,:root[data-sky=rain] .sky-cloud.c3,:root[data-sky=snow] .sky-cloud.c3,:root[data-sky=storm] .sky-cloud.c3{opacity:.62}:root[data-sky=overcast] .sky-cloud.c2,:root[data-sky=rain] .sky-cloud.c2,:root[data-sky=storm] .sky-cloud.c2{opacity:.8}:root[data-sky=night] .sky-cloud{opacity:.16}:root[data-sky=night] .sky-moon{opacity:1;animation:sun-breathe 10s ease-in-out infinite}:root[data-sky=night] .sky-stars{opacity:1}:root[data-sky=night] .sky-stars .star{animation-play-state:running}:root[data-sky=rain] .sky-rain,:root[data-sky=storm] .sky-rain{opacity:1}:root[data-sky=rain] .sky-rain .drop,:root[data-sky=storm] .sky-rain .drop{animation-play-state:running}:root[data-sky=storm] .sky-rain .drop{opacity:.4}:root[data-sky=snow] .sky-snow{opacity:1}:root[data-sky=snow] .sky-snow .flake,:root[data-sky=storm] .sky-flash{animation-play-state:running}@keyframes drift{0%{transform:translate3d(-26vw,0,0)}to{transform:translate3d(126vw,0,0)}}@keyframes bob{0%,to{transform:translateZ(0) scale(1)}50%{transform:translate3d(0,-13px,0) scale(1.03)}}@keyframes fly{0%{transform:translate3d(-12vw,8vh,0) scale(.9);opacity:0}10%{opacity:.34}50%{transform:translate3d(52vw,1vh,0) scale(1);opacity:.34}90%{opacity:.28}to{transform:translate3d(122vw,-7vh,0) scale(1);opacity:0}}@keyframes flap{0%,to{transform:scaleY(1)}50%{transform:scaleY(.55)}}@keyframes sun-breathe{0%,to{transform:scale(1);opacity:.9}50%{transform:scale(1.06);opacity:1}}@keyframes rain-fall{0%{transform:translate3d(0,-10vh,0)}to{transform:translate3d(0,112vh,0)}}@keyframes snow-fall{0%{transform:translate3d(0,-8vh,0);opacity:0}10%{opacity:.9}90%{opacity:.9}to{transform:translate3d(var(--drift,0),108vh,0);opacity:0}}@keyframes twinkle{0%,to{opacity:.25;transform:scale(.8)}50%{opacity:1;transform:scale(1.15)}}@keyframes storm-flash{0%,6%,to{opacity:0}2%{opacity:.55}3%{opacity:.15}4%{opacity:.5}5%{opacity:0}}@media (prefers-reduced-motion:reduce){.sky-bird,.sky-bird svg,.sky-cloud,.sky-moon,.sky-rain .drop,.sky-snow .flake,.sky-stars .star,.sky-sun{animation:none!important;transform:none!important}.sky-flash{animation:none!important;opacity:0!important}.sky-cloud.c1{left:5%}.sky-cloud.c2{left:58%}.sky-cloud.c3{left:26%}.sky-cloud.c4{left:72%}.sky-bird{opacity:0!important}.sky-rain .drop{top:20%}.sky-snow .flake{top:34%}.sky-stars .star{opacity:.85}}.hero-weather{z-index:0;overflow:hidden;pointer-events:none;border-radius:inherit;--hw-tint:color-mix(in srgb,var(--sky) 46%,#ffffff)}.hero-weather,.hw-scrim{position:absolute;inset:0}.hw-scrim{background:radial-gradient(128% 104% at 100% -6%,var(--hw-tint) 0,color-mix(in srgb,var(--hw-tint) 46%,transparent) 40%,transparent 68%);transition:background .9s ease}.hw-celestial{position:absolute;top:clamp(4px,1.4vw,24px);right:clamp(22px,5vw,74px);width:clamp(122px,15vw,166px);height:clamp(122px,15vw,166px)}.hw-sun{inset:19%;background:radial-gradient(circle at 38% 34%,#fff4c6 0,var(--sun) 44%,#ffb62e 82%,#ff9d12 100%);box-shadow:0 0 34px 7px color-mix(in srgb,var(--sun) 62%,transparent),0 0 0 5px color-mix(in srgb,var(--sun) 22%,transparent);opacity:1;transition:opacity .7s ease,filter .7s ease;animation:hw-breathe 7s ease-in-out infinite}.hw-rays,.hw-sun{position:absolute;border-radius:50%;will-change:transform}.hw-rays{inset:-34%;background:repeating-conic-gradient(from 0deg,color-mix(in srgb,var(--sun) 82%,#fff) 0deg 5deg,transparent 5deg 20deg);-webkit-mask:radial-gradient(closest-side,transparent 39%,#000 45%,#000 60%,transparent 76%);mask:radial-gradient(closest-side,transparent 39%,#000 45%,#000 60%,transparent 76%);opacity:.9;transition:opacity .7s ease;animation:hw-spin 46s linear infinite}.hw-moon{inset:15%;background:radial-gradient(circle at 38% 34%,#fffaf0 0,#f3ead0 62%,#ddd2ac 100%);box-shadow:0 0 40px 10px color-mix(in srgb,#fdf7e6 52%,transparent),inset -15px -10px 0 -2px color-mix(in srgb,var(--hw-tint) 72%,transparent);opacity:0;transition:opacity .8s ease;will-change:transform;animation:hw-breathe 9s ease-in-out infinite}.hw-crater,.hw-moon{position:absolute;border-radius:50%}.hw-crater{background:color-mix(in srgb,#d9cfa8 68%,var(--hw-tint));opacity:.5}.hw-crater.a{width:22%;height:22%;top:26%;left:30%}.hw-crater.b{width:14%;height:14%;top:54%;left:54%}.hw-crater.c{width:10%;height:10%;top:34%;left:62%}.hw-cover{position:absolute;color:var(--cloud);opacity:0;transition:opacity .7s ease,color .7s ease;filter:drop-shadow(0 6px 8px color-mix(in srgb,var(--ink) 16%,transparent))}.hw-cover.k1{top:34%;left:-40%;width:168%}.hw-cover.k2{top:4%;left:12%;width:122%}.hw-cloud{position:absolute;left:0;color:var(--cloud);filter:drop-shadow(0 8px 10px color-mix(in srgb,var(--ink) 12%,transparent));transition:color .7s ease,opacity .7s ease;will-change:transform;animation:hw-drift 52s linear infinite}.hw-cloud.h1{top:13%;width:clamp(110px,16vw,188px);opacity:.95;animation-duration:52s;animation-delay:-5s}.hw-cloud.h2{top:32%;width:clamp(80px,12vw,138px);opacity:.66;animation-duration:76s;animation-delay:-32s}.hw-cloud.h3{top:3%;width:clamp(120px,18vw,206px);opacity:0;animation-duration:66s;animation-delay:-46s}.hw-bird{position:absolute;left:0;width:26px;color:color-mix(in srgb,var(--ink-soft) 90%,var(--sky));opacity:0;will-change:transform,opacity}.hw-bird svg{width:100%;height:auto;transform-origin:50% 40%;animation:hw-flap .5s ease-in-out infinite}.hw-bird.w1{top:21%;width:24px;animation:hw-fly 24s linear infinite;animation-delay:3s}.hw-bird.w2{top:28%;width:17px;animation:hw-fly 33s linear infinite;animation-delay:15s}.hw-rain{position:absolute;inset:0;opacity:0;transition:opacity .6s ease}.hw-drop{position:absolute;top:0;width:3px;border-radius:3px;background:linear-gradient(color-mix(in srgb,var(--rain) 12%,transparent),var(--rain));opacity:.85;will-change:transform;animation:hw-rainfall 1s linear infinite;animation-play-state:paused}.hw-snow{position:absolute;inset:0;opacity:0;transition:opacity .6s ease}.hw-flake{position:absolute;top:0;border-radius:50%;background:#ffffff;box-shadow:0 0 0 1px rgba(120,140,162,.28),0 0 6px rgba(255,255,255,.85);opacity:.95;will-change:transform;animation:hw-snowfall 8s linear infinite;animation-play-state:paused}.hw-stars{position:absolute;inset:0;opacity:0;transition:opacity .8s ease}.hw-star{position:absolute;border-radius:50%;background:#fff;box-shadow:0 0 6px 1px rgba(255,255,255,.7);will-change:transform,opacity;animation:hw-twinkle 3s ease-in-out infinite;animation-play-state:paused}.hw-flash{position:absolute;inset:0;background:radial-gradient(80% 60% at 74% 4%,rgba(255,255,255,.72),transparent 62%);opacity:0;will-change:opacity;animation:hw-stormflash 8s step-end infinite;animation-play-state:paused}:root[data-sky=clear-day] .hero-weather{--hw-tint:color-mix(in srgb,var(--sky) 46%,#ffffff)}:root[data-sky=partly-day] .hero-weather{--hw-tint:color-mix(in srgb,var(--sky) 34%,#ffffff)}:root[data-sky=partly-day] .hw-rays{opacity:.6}:root[data-sky=partly-day] .hw-cover.k2{opacity:.92}:root[data-sky=partly-day] .hw-cloud.h3{opacity:.85}:root[data-sky=overcast] .hero-weather{--hw-tint:#cdd7e0}:root[data-sky=overcast] .hw-rays,:root[data-sky=overcast] .hw-sun{opacity:0;animation:none}:root[data-sky=overcast] .hw-cover.k1,:root[data-sky=overcast] .hw-cover.k2{opacity:1}:root[data-sky=overcast] .hw-cloud.h3{opacity:.95}:root[data-sky=overcast] .hw-bird{opacity:0;animation:none}:root[data-sky=rain] .hero-weather{--hw-tint:#adbecd}:root[data-sky=rain] .hw-rays,:root[data-sky=rain] .hw-sun{opacity:0;animation:none}:root[data-sky=rain] .hw-cover.k1,:root[data-sky=rain] .hw-cover.k2{opacity:1}:root[data-sky=rain] .hw-cloud.h3{opacity:.95}:root[data-sky=rain] .hw-bird{opacity:0;animation:none}:root[data-sky=rain] .hw-rain{opacity:1}:root[data-sky=rain] .hw-drop{animation-play-state:running}:root[data-sky=snow] .hero-weather{--hw-tint:#d7e3ec}:root[data-sky=snow] .hw-sun{opacity:.5;filter:saturate(.55) brightness(1.08)}:root[data-sky=snow] .hw-rays{opacity:.26}:root[data-sky=snow] .hw-cloud.h3{opacity:.8}:root[data-sky=snow] .hw-bird{opacity:0;animation:none}:root[data-sky=snow] .hw-snow{opacity:1}:root[data-sky=snow] .hw-flake{animation-play-state:running}:root[data-sky=storm] .hero-weather{--hw-tint:#6f7987}:root[data-sky=storm] .hw-rays,:root[data-sky=storm] .hw-sun{opacity:0;animation:none}:root[data-sky=storm] .hw-cloud.h3,:root[data-sky=storm] .hw-cover.k1,:root[data-sky=storm] .hw-cover.k2{opacity:1}:root[data-sky=storm] .hw-bird{opacity:0;animation:none}:root[data-sky=storm] .hw-rain{opacity:1}:root[data-sky=storm] .hw-drop{animation-play-state:running;opacity:.5}:root[data-sky=storm] .hw-flash{animation-play-state:running}:root[data-sky=night] .hero-weather{--hw-tint:#26315f}:root[data-sky=night] .hw-rays,:root[data-sky=night] .hw-sun{opacity:0;animation:none}:root[data-sky=night] .hw-moon,:root[data-sky=night] .hw-stars{opacity:1}:root[data-sky=night] .hw-star{animation-play-state:running}:root[data-sky=night] .hw-cloud{opacity:.22;color:#b9c0dd}:root[data-sky=night] .hw-bird{opacity:0;animation:none}@keyframes hw-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes hw-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes hw-drift{0%{transform:translate3d(-30vw,0,0)}to{transform:translate3d(120vw,0,0)}}@keyframes hw-fly{0%{transform:translate3d(-14vw,6vh,0) scale(.9);opacity:0}12%{opacity:.62}50%{transform:translate3d(54vw,0,0) scale(1);opacity:.62}88%{opacity:.5}to{transform:translate3d(122vw,-6vh,0) scale(1);opacity:0}}@keyframes hw-flap{0%,to{transform:scaleY(1)}50%{transform:scaleY(.55)}}@keyframes hw-rainfall{0%{transform:translate3d(0,-40px,0)}to{transform:translate3d(0,560px,0)}}@keyframes hw-snowfall{0%{transform:translate3d(0,-30px,0);opacity:0}12%{opacity:.95}88%{opacity:.95}to{transform:translate3d(var(--drift,0),540px,0);opacity:0}}@keyframes hw-twinkle{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.18)}}@keyframes hw-stormflash{0%,6%,to{opacity:0}2%{opacity:.6}3%{opacity:.18}4%{opacity:.55}5%{opacity:0}}@media (prefers-reduced-motion:reduce){.hw-bird,.hw-bird svg,.hw-cloud,.hw-drop,.hw-flake,.hw-moon,.hw-rays,.hw-star,.hw-sun{animation:none!important}.hw-moon,.hw-rays,.hw-sun{transform:none!important}.hw-cloud.h1{transform:translate3d(46vw,0,0)!important}.hw-cloud.h2{transform:translate3d(8vw,0,0)!important}.hw-cloud.h3{transform:translate3d(70vw,0,0)!important}.hw-bird{opacity:0!important}.hw-drop{transform:translate3d(0,210px,0)!important}.hw-flake{transform:translate3d(var(--drift,0),240px,0)!important}.hw-flash{animation:none!important;opacity:0!important}.hw-star{opacity:.9!important}}.calcard{margin-bottom:34px}.cal-layout{display:grid;grid-template-columns:minmax(0,300px) 1fr;grid-gap:clamp(16px,3vw,26px);gap:clamp(16px,3vw,26px);align-items:start}@media (max-width:760px){.cal-layout{grid-template-columns:1fr}}.cal-month{background:var(--card);border:2px solid var(--line);border-radius:var(--r-lg);box-shadow:0 8px 0 var(--chunk);padding:16px}.cal-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.cal-month-label{font-family:var(--font-display);font-weight:800;font-size:1.02rem;text-transform:capitalize;color:var(--ink)}.cal-arrow{width:34px;height:34px;border-radius:12px;border:2px solid var(--line);background:var(--cream2);font-size:1.3rem;font-weight:800;color:var(--ink-soft);line-height:1;display:grid;place-items:center;transition:transform .14s,border-color .16s,color .16s}.cal-arrow:hover{border-color:var(--coral);color:var(--coral-dark);transform:translateY(-1px)}.cal-dows{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:2px;gap:2px;margin-bottom:6px}.cal-dows span{text-align:center;font-family:var(--font-display);font-weight:700;font-size:.68rem;text-transform:uppercase;letter-spacing:.02em;color:var(--ink-mute)}.cal-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:3px;gap:3px}.cal-day{position:relative;aspect-ratio:1/1;min-width:0;border:2px solid transparent;border-radius:12px;background:transparent;color:var(--ink-soft);font-family:var(--font-display);font-weight:700;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;transition:background .14s,border-color .16s,color .16s,transform .12s}.cal-day.empty{visibility:hidden}.cal-day:disabled{cursor:default;color:var(--ink-mute)}.cal-day.has{cursor:pointer;color:var(--ink);background:var(--cream2)}.cal-day.has:hover{border-color:var(--coral);transform:translateY(-1px)}.cal-day.is-today{border-color:var(--coral);color:var(--coral-dark)}.cal-day.sel{background:var(--coral-solid);border-color:var(--coral-dark);color:#fff}.cal-num{font-size:.9rem;line-height:1}.cal-dots{display:flex;gap:2px;height:6px;align-items:center}.cal-dot{width:6px;height:6px;border-radius:50%;box-shadow:0 0 0 1px rgba(255,255,255,.35)}.cal-day.sel .cal-dot{box-shadow:0 0 0 1px rgba(0,0,0,.18)}.cal-clear{margin-top:12px;width:100%;font-family:var(--font-display);font-weight:700;font-size:.82rem;color:var(--ink-soft);background:var(--cream2);border:2px solid var(--line);border-radius:999px;padding:8px;transition:border-color .16s,color .16s}.cal-clear:hover{border-color:var(--coral);color:var(--coral-dark)}.cal-agenda{min-width:0}.cal-h3{font-size:1.15rem;margin:0 0 12px;text-transform:capitalize}.cal-empty{display:flex;align-items:center;gap:12px;padding:18px;border:2px dashed var(--line);border-radius:var(--r-lg);color:var(--ink-soft);background:var(--card)}.cal-empty-emo{font-size:1.7rem;flex:0 0 auto}.cal-empty p{font-weight:600;font-size:.92rem}.rem-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.rem{display:flex;gap:14px;align-items:center;background:var(--card);border:2px solid var(--line);border-left:6px solid var(--cat,var(--coral));border-radius:var(--r-md);padding:12px 14px;box-shadow:0 5px 0 var(--chunk);transition:transform .16s,box-shadow .16s}.rem:hover{transform:translateY(-2px);box-shadow:0 8px 0 var(--chunk)}.rem-date{flex:0 0 auto;width:54px;text-align:center;border-radius:12px;padding:6px 4px;background:color-mix(in srgb,var(--cat,var(--coral)) 16%,var(--card));line-height:1.05}.rem-date .dow{font-weight:700;font-size:.64rem;text-transform:uppercase;color:var(--ink-mute)}.rem-date .d,.rem-date .dow{display:block;font-family:var(--font-display)}.rem-date .d{font-weight:800;font-size:1.5rem;color:color-mix(in srgb,var(--cat,var(--coral-dark)) 76%,var(--ink))}.rem-date .m{display:block;font-family:var(--font-display);font-weight:700;font-size:.62rem;text-transform:uppercase;color:var(--ink-mute)}.rem-body{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:2px}.rem-type{font-weight:700;font-size:.74rem;text-transform:uppercase;letter-spacing:.02em;color:color-mix(in srgb,var(--cat,var(--coral-dark)) 70%,var(--ink))}.rem-title,.rem-type{font-family:var(--font-display)}.rem-title{font-weight:800;font-size:1.02rem;color:var(--ink);line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rem-foot{display:flex;flex-wrap:wrap;gap:7px;align-items:center;font-size:.8rem;font-weight:600;color:var(--ink-mute);margin-top:2px}.rem-when{font-weight:800;color:var(--ink-soft)}.rem-when.is-soon{color:var(--coral-dark)}.rem-tag{font-family:var(--font-display);font-weight:700;font-size:.68rem;text-transform:uppercase;padding:2px 8px;border-radius:999px;background:color-mix(in srgb,var(--grass) 18%,var(--card));color:var(--grass-dark)}.rem-actions{flex:0 0 auto;display:flex;align-items:center;gap:6px}.rem-link,.rem-remove,.rem-reschedule{width:34px;height:34px;border-radius:10px;border:2px solid var(--line);background:var(--card);color:var(--ink-soft);display:grid;place-items:center;font-size:1rem;font-weight:800;cursor:pointer;transition:border-color .16s,color .16s,transform .12s}.rem-link:hover,.rem-remove:hover,.rem-reschedule:hover{border-color:var(--coral);color:var(--coral-dark);transform:translateY(-1px)}.rem-reschedule{position:relative;overflow:hidden}.rem-reschedule input{position:absolute;inset:0;opacity:0;cursor:pointer}.cal-toplan{margin-top:22px}.plan-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.plan-item{display:flex;align-items:center;gap:12px;background:var(--cream2);border:2px solid var(--line);border-radius:var(--r-md);padding:10px 12px}.plan-emo{flex:0 0 auto;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;font-size:1.3rem;background:color-mix(in srgb,var(--cat,var(--coral)) 16%,var(--card));border:2px solid color-mix(in srgb,var(--cat,var(--coral)) 30%,var(--line))}.plan-body{flex:1 1;min-width:0;display:flex;flex-direction:column}.plan-title{font-family:var(--font-display);font-weight:800;font-size:.96rem;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-town{font-size:.78rem;font-weight:600;color:var(--ink-mute)}.plan-date{position:relative;flex:0 0 auto;overflow:hidden;display:inline-flex;align-items:center;gap:6px;font-family:var(--font-display);font-weight:700;font-size:.82rem;color:#fff;background:var(--coral-solid);border:2px solid var(--coral-dark);border-radius:999px;padding:8px 14px;cursor:pointer;box-shadow:0 3px 0 var(--coral-dark);transition:transform .12s}.plan-date:hover{transform:translateY(-1px)}.plan-date input{position:absolute;inset:0;opacity:0;cursor:pointer}@media (max-width:560px){.plan-title,.rem-title{white-space:normal}.cal-day{border-radius:10px}}@media (max-width:640px){.topbar-in{gap:8px}.top-actions{gap:6px;min-width:0}.loc-chip,.loc-pop-wrap{min-width:0}.loc-chip{max-width:100%;padding:8px 12px}.loc-chip .lname{min-width:0}.place-search .ps-row{flex-wrap:wrap}.place-search .ps-row .searchbox,.place-search .ps-row>.btn{flex:1 1 100%}.tab{padding:11px 16px}.chip,.tab{min-height:44px}.chip{padding:10px 15px}.icon-btn{width:44px;height:44px}.pill-btn{padding:10px 14px;min-height:44px}.btn.sm{padding:11px 16px}.theater{padding:11px 15px;min-height:44px}.kid-del{width:44px;height:44px}.kid-row .input{min-width:0}.seg button{padding:9px 13px;min-height:40px}.map-fs-btn{padding:10px 14px;min-height:44px}.map-fs-close{padding:12px 18px;min-height:48px}.round-btn{width:44px;height:44px;font-size:1.15rem}.corner{top:12px;right:10px}.acard-title{padding-right:44px}.evt-title{padding-right:48px}.tv-title{padding-right:46px}.seg{max-width:100%;flex-wrap:wrap}.today-stats{gap:8px}}.avatar{position:relative;display:inline-block;border-radius:50%;overflow:hidden;background:var(--cream2);border:2px solid var(--line);flex:0 0 auto;vertical-align:middle}.avatar svg{position:absolute;left:50%;top:12%;width:150%;height:auto;transform:translateX(-50%)}.stars{display:inline-flex;align-items:center;gap:1px;line-height:1;color:#f5b301}.stars .star{background:none;border:none;padding:0 1px;cursor:pointer;color:#d8d2c4;line-height:1;transition:transform .1s}.stars .star.on{color:#f5b301}.stars:not(.ro) .star:hover{transform:scale(1.18)}.stars.ro .star{cursor:default}.comments{margin-top:12px;border-top:1.5px dashed var(--line);padding-top:10px}.comments-toggle{display:flex;align-items:center;gap:8px;width:100%;background:none;border:none;cursor:pointer;font-family:var(--font-display);font-weight:700;font-size:.9rem;color:var(--ink);padding:2px 0}.comments-toggle .c-avg{font-size:.82rem;color:var(--grass-dark);background:color-mix(in srgb,var(--grass) 16%,var(--card));padding:1px 8px;border-radius:999px}.comments-toggle .c-none{font-size:.8rem;color:var(--ink-mute);font-weight:600}.comments-toggle .chev{margin-left:auto;font-size:.7rem;color:var(--ink-mute)}.comments-panel{margin-top:10px;display:flex;flex-direction:column;gap:12px}.c-empty,.c-err,.c-load{font-size:.86rem;color:var(--ink-mute)}.c-err{color:var(--berry)}.c-summary{align-items:center;font-size:.95rem}.c-form,.c-summary{display:flex;gap:8px}.c-form{flex-direction:column;background:var(--cream2);border-radius:14px;padding:12px}.c-form-row{display:flex;align-items:center;gap:10px}.c-textarea{resize:vertical;min-height:44px;font-family:inherit}.c-form-actions{display:flex;justify-content:flex-end}.c-login{background:var(--cream2);border:1.5px dashed var(--line);border-radius:12px;padding:10px 14px;cursor:pointer;font-weight:700;font-size:.88rem;color:var(--coral-dark);text-align:left}.c-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.c-item{display:flex;gap:10px}.c-item-body{min-width:0;flex:1 1}.c-item-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:.85rem}.c-date{font-size:.78rem}.c-date,.c-del{color:var(--ink-mute)}.c-del{margin-left:auto;background:none;border:none;cursor:pointer;font-size:.8rem;padding:2px 4px}.c-del:hover{color:var(--berry)}.c-text{margin:2px 0 0;font-size:.92rem;line-height:1.4;white-space:pre-wrap;overflow-wrap:anywhere}.acct-btn{display:inline-flex;align-items:center;gap:7px;background:var(--card);border:2px solid var(--line);border-radius:999px;padding:3px 12px 3px 4px;cursor:pointer;font-family:var(--font-display);font-weight:700;font-size:.85rem;color:var(--ink);max-width:170px}.acct-btn:hover{border-color:color-mix(in srgb,var(--sky) 45%,var(--line))}.acct-name{overflow:hidden;text-overflow:ellipsis}.acct-login,.acct-name{white-space:nowrap}.auth-modal{max-width:440px}.auth-seg{width:100%;margin-bottom:14px}.auth-err{background:color-mix(in srgb,var(--berry) 12%,var(--card));color:var(--berry)}.auth-err,.auth-notice{border-radius:10px;padding:8px 12px;font-size:.86rem;font-weight:600;margin-bottom:8px}.auth-notice{background:color-mix(in srgb,var(--grass) 13%,var(--card));color:var(--grass-ink)}.avatar-pick{display:flex;gap:10px;flex-wrap:wrap}.avatar-opt{background:none;border:3px solid transparent;border-radius:50%;padding:2px;cursor:pointer;line-height:0;transition:transform .12s}.avatar-opt:hover{transform:translateY(-2px)}.avatar-opt.on{border-color:var(--coral)}.auth-foot{margin-top:10px;text-align:center}.auth-sent{text-align:center;padding:10px 4px}.auth-sent-emoji{font-size:3rem}.auth-sent h3{margin:6px 0}.auth-sent p{color:var(--ink-mute);font-size:.92rem;margin-bottom:10px}.link-btn{background:none;border:none;cursor:pointer;color:var(--coral-dark);font-weight:700;font-size:.86rem;text-decoration:underline;padding:4px 0}.link-btn.danger{color:var(--berry)}.logout-btn{display:block;margin:16px auto 0}.profile-hero{display:flex;align-items:center;gap:14px;margin-bottom:16px}.profile-name{display:block;font-size:1.1rem}.profile-email{display:block;color:var(--ink-mute);font-size:.84rem}.profile-reviews{margin-top:18px}.profile-reviews h3{font-size:1rem;margin-bottom:8px}.profile-reviews ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.profile-reviews li{display:flex;gap:8px;font-size:.88rem}.pr-type{flex:0 0 auto}.pr-target{font-weight:700;display:block}.pr-body{margin:2px 0 0;color:var(--ink-mute)}.pr-stars{color:#f5b301}.verify-toast{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);z-index:1200;display:flex;align-items:center;gap:12px;max-width:min(92vw,460px);padding:12px 16px;border-radius:14px;font-weight:600;font-size:.9rem;box-shadow:0 10px 30px rgba(0,0,0,.18)}.verify-toast.success{background:var(--grass);color:#fff}.verify-toast.error{background:var(--berry);color:#fff}.verify-toast button{background:rgba(255,255,255,.25);border:none;color:#fff;border-radius:8px;cursor:pointer;padding:2px 8px}.tribu-seg{margin-bottom:20px}.tribus-view{display:flex;flex-direction:column;gap:28px}.btn.ghost{background:var(--card);color:var(--ink-mute);border:2px solid var(--line);box-shadow:none}.btn.ghost:hover{border-color:var(--ink-mute)}.feed .sm,.friends .sm,.tribus-view .sm{font-size:.84rem}.fr-results{display:flex;flex-direction:column;gap:8px;margin:4px 0 14px}.fr-section{margin-top:18px}.fr-section h4{font-size:.95rem;margin:0 0 10px}.fr-row{display:flex;align-items:center;gap:10px;padding:6px 0}.fr-name{flex:1 1;min-width:0;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fr-actions{display:flex;gap:6px;flex:0 0 auto}.fr-empty{margin-top:10px}.feed-composer{background:var(--cream2);border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:10px}.feed-composer h4{margin:0 0 2px;font-size:1.05rem}.feed-composer-row{display:flex;gap:10px;align-items:center}.feed-composer-row .input{flex:1 1;min-width:0}.feed-list{display:flex;flex-direction:column;gap:14px;margin-top:16px}.feed-item{background:var(--card);border:2px solid var(--line);border-radius:16px;padding:14px 16px;box-shadow:0 6px 0 var(--chunk)}.feed-head{display:flex;align-items:center;gap:10px}.feed-head-txt{display:flex;flex-direction:column;min-width:0;flex:1 1}.feed-title{font-size:1.15rem;margin:10px 0 2px}.feed-note{margin:4px 0 0;color:var(--ink-mute);white-space:pre-wrap;overflow-wrap:anywhere}.feed-foot{justify-content:space-between;gap:10px;margin-top:14px}.feed-foot,.feed-joiners{display:flex;align-items:center;flex-wrap:wrap}.feed-joiners{gap:6px}.feed-joiners>span{display:inline-flex}.feed-empty{margin-top:16px}.troupe{position:relative;display:flex;align-items:flex-end;justify-content:center;gap:2px}.mascot,.mascot-in{display:block;line-height:0;transform-box:fill-box}.mascot-in{transform-origin:50% 100%;animation:m-alive var(--live,13s) ease-in-out infinite;animation-delay:var(--d,0s)}@keyframes m-alive{0%,to{transform:translateY(0) scaleY(1)}9%{transform:translateY(0) scaleY(1.022)}18%{transform:translateY(0) scaleY(1)}40%{transform:translateY(0) scaleY(1.022)}49%{transform:translateY(0) scaleY(1)}73%{transform:translateY(-9px) scaleY(.98)}77%{transform:translateY(0) scaleY(1.03)}81%{transform:translateY(0) scaleY(1)}}.mascot .m-eyes{transform-box:fill-box;transform-origin:50% 50%;animation:m-blink var(--live,13s) ease-in-out infinite;animation-delay:var(--d,0s)}.mascot[data-idle=sway]{transform-origin:50% 100%;animation:m-sway var(--gd,4.4s) ease-in-out infinite;animation-delay:var(--d,0s)}.mascot[data-idle=sway] .m-head{transform-box:fill-box;transform-origin:50% 100%;animation:m-sway-head var(--gd,4.4s) ease-in-out infinite;animation-delay:calc(var(--d, 0s) + var(--gd, 4.4s) * .08)}.mascot[data-idle=bounce]{transform-origin:50% 100%;animation:m-bounce var(--gd,2.6s) linear infinite;animation-delay:var(--d,0s)}.mascot[data-idle=tilt] .m-head{transform-box:fill-box;transform-origin:50% 100%;animation:m-tilt var(--gd,5.2s) linear infinite;animation-delay:var(--d,0s)}.mascot[data-idle=tilt]{transform-origin:50% 100%;animation:m-weight calc(var(--gd, 5.2s) * 2) ease-in-out infinite;animation-delay:var(--d,0s)}.mascot[data-idle=wave] .m-arm-r{transform-box:fill-box;transform-origin:0 0;animation:m-wave var(--gd,2.9s) linear infinite;animation-delay:var(--d,0s)}.mascot[data-idle=wave] .m-arm-solo{transform-box:fill-box;transform-origin:100% 0;animation:m-wave-l var(--gd,2.9s) linear infinite;animation-delay:var(--d,0s)}.mascot[data-idle=wave] .m-head{transform-box:fill-box;transform-origin:50% 100%;animation:m-wave-head var(--gd,2.9s) ease-in-out infinite;animation-delay:calc(var(--d, 0s) + var(--gd, 2.9s) * .05)}.mascot .m-tail{transform-box:fill-box;transform-origin:0 100%;animation:m-wag var(--live,13s) ease-in-out infinite;animation-delay:var(--d,0s)}@keyframes m-blink{0%,33%,to{transform:scaleY(1)}34.5%{transform:scaleY(.08)}36%{transform:scaleY(1)}37.5%{transform:scaleY(.08)}39%,87%{transform:scaleY(1)}88.5%{transform:scaleY(.08)}90%{transform:scaleY(1)}}@keyframes m-sway{0%,to{transform:rotate(-7deg) translateY(0)}50%{transform:rotate(7deg) translateY(-4px)}}@keyframes m-sway-head{0%,to{transform:rotate(-3.5deg)}50%{transform:rotate(3.5deg)}}@keyframes m-bounce{0%{transform:translateY(0) scale(1);animation-timing-function:cubic-bezier(.5,0,.7,.3)}12%{transform:translateY(0) scale(1.06,.88);animation-timing-function:cubic-bezier(.2,.6,.35,1)}20%{transform:translateY(-10px) scale(.96,1.08);animation-timing-function:cubic-bezier(.25,.46,.45,.94)}38%{transform:translateY(-28px) scale(1);animation-timing-function:cubic-bezier(.55,.085,.68,.53)}54%{transform:translateY(-6px) scale(.97,1.06);animation-timing-function:cubic-bezier(.55,0,.8,.4)}58%{transform:translateY(0) scale(1.1,.87);animation-timing-function:cubic-bezier(.2,.7,.4,1)}66%{transform:translateY(0) scale(.98,1.03);animation-timing-function:ease-in-out}76%,to{transform:translateY(0) scale(1)}}@keyframes m-tilt{0%{transform:rotate(0deg);animation-timing-function:cubic-bezier(.5,0,.7,.3)}9%{transform:rotate(-4deg);animation-timing-function:cubic-bezier(.3,.9,.4,1)}26%{transform:rotate(18deg);animation-timing-function:ease-in-out}34%{transform:rotate(15deg);animation-timing-function:cubic-bezier(.55,0,.3,1)}56%{transform:rotate(-13deg);animation-timing-function:cubic-bezier(.3,.9,.45,1)}64%{transform:rotate(-10deg);animation-timing-function:ease-in-out}84%{transform:rotate(3deg);animation-timing-function:ease-in-out}to{transform:rotate(0deg)}}@keyframes m-weight{0%,to{transform:rotate(-1.5deg)}54%{transform:rotate(1.8deg)}}@keyframes m-wave{0%{transform:rotate(-4deg);animation-timing-function:cubic-bezier(.55,0,.7,.3)}7%{transform:rotate(8deg);animation-timing-function:cubic-bezier(.2,.85,.3,1)}18%{transform:rotate(-68deg);animation-timing-function:ease-in-out}25%{transform:rotate(-56deg);animation-timing-function:ease-in-out}37%{transform:rotate(-26deg);animation-timing-function:ease-in-out}48%{transform:rotate(-62deg);animation-timing-function:ease-in-out}58%{transform:rotate(-28deg);animation-timing-function:ease-in-out}68%{transform:rotate(-58deg);animation-timing-function:cubic-bezier(.4,0,.2,1)}to{transform:rotate(-4deg)}}@keyframes m-wave-l{0%{transform:rotate(4deg);animation-timing-function:cubic-bezier(.55,0,.7,.3)}7%{transform:rotate(-8deg);animation-timing-function:cubic-bezier(.2,.85,.3,1)}18%{transform:rotate(68deg);animation-timing-function:ease-in-out}25%{transform:rotate(56deg);animation-timing-function:ease-in-out}37%{transform:rotate(26deg);animation-timing-function:ease-in-out}48%{transform:rotate(62deg);animation-timing-function:ease-in-out}58%{transform:rotate(28deg);animation-timing-function:ease-in-out}68%{transform:rotate(58deg);animation-timing-function:cubic-bezier(.4,0,.2,1)}to{transform:rotate(4deg)}}@keyframes m-wave-head{0%,to{transform:rotate(0deg)}20%{transform:rotate(3deg)}60%{transform:rotate(2deg)}85%{transform:rotate(0deg)}}@keyframes m-wag{0%,24%,62%,to{transform:rotate(-4deg)}28%,36%,44%,52%{transform:rotate(-20deg)}32%,40%,48%,56%{transform:rotate(20deg)}}.mascot[data-idle=hop]{transform-origin:50% 100%;animation:m-hop calc(var(--gd, 2.6s) * 2.6) linear infinite;animation-delay:var(--d,0s)}@keyframes m-hop{0%,56%{transform:translateY(0) scale(1) rotate(0deg);animation-timing-function:cubic-bezier(.5,0,.6,1)}63%{transform:translateY(0) scale(1.07,.86) rotate(0deg);animation-timing-function:cubic-bezier(.2,.6,.35,1)}70%{transform:translateY(-36px) scale(.95,1.08) rotate(-6deg);animation-timing-function:ease-in-out}76%{transform:translateY(-34px) scale(1) rotate(5deg);animation-timing-function:cubic-bezier(.55,0,.8,.4)}83%{transform:translateY(0) scale(1.1,.88) rotate(0deg);animation-timing-function:cubic-bezier(.2,.7,.4,1)}89%{transform:translateY(0) scale(.97,1.04) rotate(0deg);animation-timing-function:ease-in-out}95%,to{transform:translateY(0) scale(1) rotate(0deg)}}.mascot[data-idle=march]{transform-origin:50% 100%;animation:m-march var(--gd,2.2s) linear infinite;animation-delay:var(--d,0s)}.mascot[data-idle=march] .m-legs{transform-box:fill-box;transform-origin:50% 0;animation:m-legs-swing var(--gd,2.2s) ease-in-out infinite;animation-delay:var(--d,0s)}@keyframes m-march{0%{transform:translateY(0) rotate(-1.2deg);animation-timing-function:cubic-bezier(.3,.6,.4,1)}25%{transform:translateY(-8px) rotate(0deg);animation-timing-function:cubic-bezier(.6,0,.8,.4)}50%{transform:translateY(0) rotate(1.2deg);animation-timing-function:cubic-bezier(.3,.6,.4,1)}75%{transform:translateY(-8px) rotate(0deg);animation-timing-function:cubic-bezier(.6,0,.8,.4)}to{transform:translateY(0) rotate(-1.2deg)}}@keyframes m-legs-swing{0%,to{transform:rotate(-11deg)}50%{transform:rotate(11deg)}}.troupe .mascot:nth-last-of-type(2){transform-origin:50% 100%;animation:m-chase calc(var(--gd, 2.3s) * 1.15) linear infinite;animation-delay:var(--d,0s)}@keyframes m-chase{0%{transform:translate(0) rotate(0deg);animation-timing-function:cubic-bezier(.5,0,.7,.3)}9%{transform:translate(7px) rotate(4deg);animation-timing-function:cubic-bezier(.2,.7,.3,1)}30%{transform:translate(-30px,-7px) rotate(-7deg);animation-timing-function:ease-in-out}52%{transform:translate(-36px) rotate(-2deg);animation-timing-function:ease-in-out}80%{transform:translate(-10px,-4px) rotate(3deg);animation-timing-function:ease-in-out}to{transform:translate(0) rotate(0deg)}}:root[data-sky=rain] .troupe .mascot:nth-last-of-type(2),:root[data-sky=storm] .troupe .mascot:nth-last-of-type(2){animation:none}.acc{opacity:0;transition:opacity .8s ease}:root[data-sky=rain] .acc-rain,:root[data-sky=storm] .acc-rain,:root[data-temp=chaud] .acc-hot,:root[data-temp=frais] .acc-cold,:root[data-temp=froid] .acc-cold{opacity:1}:root[data-sky=rain] .acc-cold,:root[data-sky=rain] .acc-hot,:root[data-sky=storm] .acc-cold,:root[data-sky=storm] .acc-hot{opacity:0}:root[data-temp=frais] .m-scarf-tail,:root[data-temp=froid] .m-scarf-tail{transform-box:fill-box;transform-origin:0 0;animation:m-scarf 3.4s ease-in-out infinite}@keyframes m-scarf{0%,to{transform:rotate(-7deg)}50%{transform:rotate(9deg)}}.troupe-prop{position:absolute;bottom:6%;pointer-events:none}.prop-ball{width:clamp(22px,3vw,34px);left:34%;animation:p-ball-x calc(var(--pd, 2.3s) * 2) linear infinite}.ball-y{display:block;line-height:0;animation:p-ball-y calc(var(--pd, 2.3s) * 2) linear infinite}.ball-body{display:block;width:100%;transform-origin:50% 100%;animation:p-ball-squash calc(var(--pd, 2.3s) * 2) linear infinite}.ball-spin{transform-box:fill-box;transform-origin:50% 50%;animation:p-ball-spin calc(var(--pd, 2.3s) * 2) linear infinite}.prop-kite{width:clamp(34px,5vw,56px);right:4%;bottom:52%;transform-origin:50% 30%;animation:p-kite var(--pd,7.5s) linear infinite}:root[data-sky=rain] .troupe-prop,:root[data-sky=storm] .troupe-prop{display:none}@keyframes p-ball-x{0%,to{transform:translateX(0)}50%{transform:translateX(178px)}}@keyframes p-ball-y{0%{transform:translateY(0);animation-timing-function:cubic-bezier(.25,.46,.45,.94)}16%{transform:translateY(-92px);animation-timing-function:cubic-bezier(.55,.085,.68,.53)}30%{transform:translateY(0);animation-timing-function:cubic-bezier(.25,.46,.45,.94)}38%{transform:translateY(-26px);animation-timing-function:cubic-bezier(.55,.085,.68,.53)}46%,50%{transform:translateY(0);animation-timing-function:cubic-bezier(.25,.46,.45,.94)}66%{transform:translateY(-92px);animation-timing-function:cubic-bezier(.55,.085,.68,.53)}80%{transform:translateY(0);animation-timing-function:cubic-bezier(.25,.46,.45,.94)}88%{transform:translateY(-26px);animation-timing-function:cubic-bezier(.55,.085,.68,.53)}96%,to{transform:translateY(0)}}@keyframes p-ball-squash{0%{transform:scale(1.16,.82)}4%{transform:scale(.94,1.1)}10%{transform:scale(1)}27%{transform:scale(.95,1.08)}30%{transform:scale(1.12,.86)}34%{transform:scale(.97,1.05)}40%,46%{transform:scale(1)}50%{transform:scale(1.16,.82)}54%{transform:scale(.94,1.1)}60%{transform:scale(1)}77%{transform:scale(.95,1.08)}80%{transform:scale(1.12,.86)}84%{transform:scale(.97,1.05)}90%,96%{transform:scale(1)}to{transform:scale(1.16,.82)}}@keyframes p-ball-spin{0%{transform:rotate(0deg)}50%{transform:rotate(340deg)}to{transform:rotate(0deg)}}@keyframes p-kite{0%{transform:translate(0) rotate(-14deg);animation-timing-function:ease-in-out}16%{transform:translate(-30px,-24px) rotate(4deg);animation-timing-function:cubic-bezier(.6,0,.8,.4)}21%{transform:translate(-18px,-10px) rotate(20deg);animation-timing-function:cubic-bezier(.2,.7,.3,1)}29%{transform:translate(-56px,-34px) rotate(-6deg);animation-timing-function:ease-in-out}44%{transform:translate(-62px,-28px) rotate(-12deg);animation-timing-function:cubic-bezier(.55,-.2,.8,.5)}52%{transform:translate(-44px,18px) rotate(-42deg);animation-timing-function:cubic-bezier(.1,.7,.2,1)}58%{transform:translate(-70px,-12px) rotate(8deg);animation-timing-function:ease-in-out}72%{transform:translate(-50px,-26px) rotate(10deg);animation-timing-function:cubic-bezier(.6,0,.7,.5)}77%{transform:translate(-56px,-18px) rotate(-2deg);animation-timing-function:cubic-bezier(.2,.7,.3,1)}to{transform:translate(0) rotate(-14deg)}}.troupe-puddle{position:absolute;bottom:0;left:50%;width:clamp(70px,11vw,120px);transform:translateX(-50%);opacity:0;transition:opacity .8s ease;pointer-events:none}:root[data-sky=rain] .troupe-puddle,:root[data-sky=storm] .troupe-puddle{opacity:1}:root[data-sky=rain] .troupe-puddle .splash,:root[data-sky=storm] .troupe-puddle .splash{transform-box:fill-box;transform-origin:50% 100%;animation:p-splash 3.6s ease-out infinite}@keyframes p-splash{0%,62%,to{opacity:0;transform:translateY(6px) scale(.7)}70%{opacity:.95;transform:translateY(0) scale(1)}86%{opacity:0;transform:translateY(-4px) scale(1.15)}}:root[data-sky=rain] .troupe .mascot:nth-child(3),:root[data-sky=storm] .troupe .mascot:nth-child(3){animation:m-splash-jump 3.6s ease-in-out infinite}@keyframes m-splash-jump{0%,60%,to{transform:translateY(0)}70%{transform:translateY(-16px)}80%{transform:translateY(0)}}.pop-photo{display:block;width:100%;max-width:220px;height:110px;object-fit:cover;border-radius:10px;margin-bottom:7px;background:var(--line-soft)}.pop-links{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:5px;font-weight:700;font-size:.82rem}:root[data-sky=rain] .m-hat,:root[data-sky=snow] .m-hat,:root[data-sky=storm] .m-hat,:root[data-temp=chaud] .m-hat,:root[data-temp=frais] .m-hat,:root[data-temp=froid] .m-hat{opacity:0;transition:opacity .8s ease}.acard-photo{display:block;width:calc(100% + 2px);margin:-1px -1px 10px;height:132px;object-fit:cover;border-radius:var(--r-md) var(--r-md) 0 0;background:var(--line-soft)}.msg-badge{display:inline-block;min-width:20px;padding:1px 7px;margin-left:6px;border-radius:999px;background:var(--coral-solid);color:#fff;font-size:.72rem;font-weight:800;vertical-align:middle}.conv-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:8px;gap:8px}.conv{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;border:2px solid var(--line);border-radius:var(--r-md);background:var(--card);cursor:pointer;text-align:left}.conv:hover{border-color:var(--coral)}.conv-txt{flex:1 1;min-width:0;display:grid}.conv-name{font-weight:800;color:var(--ink)}.conv-last{color:var(--ink-mute);font-size:.88rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conv-when{color:var(--ink-mute);font-size:.78rem;flex:0 0 auto}.thread{border:2px solid var(--line);border-radius:var(--r-md);background:var(--card)}.thread-head{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:2px solid var(--line-soft);flex-wrap:wrap}.thread-head .spacer{flex:1 1}.thread-body{display:grid;grid-gap:8px;gap:8px;padding:14px 12px;max-height:46vh;overflow-y:auto}.bulle{max-width:78%;padding:8px 12px;border-radius:16px;display:grid;grid-gap:2px;gap:2px}.bulle em{font-size:.7rem;opacity:.75;font-style:normal}.bulle.moi{justify-self:end;background:var(--coral-solid);color:#fff}.bulle.lui{justify-self:start;background:var(--cream2);color:var(--ink)}.thread-form{display:flex;gap:8px;padding:10px 12px;border-top:2px solid var(--line-soft)}.thread-form .inp{flex:1 1}.annonce{padding:14px 16px;border:2px solid var(--line);border-radius:var(--r-md);background:var(--card);cursor:pointer}.annonce.neuve{border-color:var(--coral);box-shadow:0 4px 0 var(--chunk)}.teinte-pick{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.teinte{width:30px;height:30px;border-radius:50%;border:3px solid var(--line);cursor:pointer;padding:0}.teinte.on{border-color:var(--ink);transform:scale(1.12)}.t-none{background:linear-gradient(135deg,#fff 46%,var(--line) 54%)}.t-coral{background:#ff7a4d}.t-sky{background:#63c2e6}.t-grass{background:#5cbf7f}.t-sun{background:#ffcb4f}.t-berry{background:#ef6b93}.t-plum{background:#8a6bd6}.t-mint{background:#7fd3c3}.t-sand{background:#d9b382}.admin-panel{border:2px dashed var(--plum);border-radius:var(--r-lg);padding:16px 18px;background:color-mix(in srgb,var(--plum) 5%,var(--card))}.admin-form{display:grid;grid-gap:10px;gap:10px;margin-top:10px}.admin-form textarea.inp{resize:vertical;font-family:inherit;line-height:1.5}.admin-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-past{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-gap:6px;gap:6px}.admin-past li{display:flex;justify-content:space-between;gap:12px;padding:7px 10px;border-radius:10px;background:var(--cream2);font-size:.88rem}.admin-past span{color:var(--ink-mute);flex:0 0 auto}.form-ok{margin-top:10px;padding:9px 12px;border-radius:10px;background:color-mix(in srgb,var(--grass) 16%,var(--card));color:var(--grass-ink);font-weight:700;font-size:.9rem}.admin-reports{margin-top:18px}.admin-reports>ul{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-gap:12px;gap:12px}.admin-reports>ul>li{border:1px solid rgba(120,80,150,.28);border-left:4px solid #d4674f;border-radius:12px;padding:12px 14px;background:rgba(255,255,255,.55)}.rep-reason{margin:6px 0;font-style:italic;color:#4a3d59}.rep-excerpt{margin:8px 0;padding:10px;border-radius:8px;max-height:220px;overflow:auto;white-space:pre-wrap;word-break:break-word;background:#3a2f4a;color:#f2ecf7;font:12px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace}.rep-noexcerpt{margin:8px 0;font-size:13px;color:#6b5c7a}body:after{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.05;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='240'%20height='240'%3E%3Cfilter%20id='n'%3E%3CfeTurbulence%20type='fractalNoise'%20baseFrequency='0.9'%20numOctaves='2'%20stitchTiles='stitch'/%3E%3CfeColorMatrix%20type='saturate'%20values='0'/%3E%3C/filter%3E%3Crect%20width='100%25'%20height='100%25'%20filter='url(%23n)'/%3E%3C/svg%3E")}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) body:after{mix-blend-mode:overlay;opacity:.07}}:root[data-theme=dark] body:after{mix-blend-mode:overlay;opacity:.07}:focus-visible{outline:3px solid color-mix(in srgb,var(--sky) 70%,transparent);outline-offset:2px}.hero-title .pop:after{height:.13em;bottom:.16em;border-radius:0;background:none;background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20120%2012'%20preserveAspectRatio='none'%3E%3Cpath%20d='M3%208%20C%2022%203%2C%2044%2010%2C%2062%205%20S%2098%206%2C%20117%204'%20stroke='%23ffcb4f'%20stroke-width='5'%20fill='none'%20stroke-linecap='round'/%3E%3C/svg%3E");background-size:100% 100%;background-repeat:no-repeat}.cat-shelf{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px;min-width:0}@media (min-width:880px){.cat-shelf{grid-template-columns:repeat(8,minmax(0,1fr))}}.cat-tile{display:flex;flex-direction:column;align-items:center;gap:7px;padding:16px 8px 12px;border-radius:20px;border:2px solid color-mix(in srgb,var(--cat,var(--coral)) 24%,var(--line));background:color-mix(in srgb,var(--cat,var(--coral)) 11%,var(--card));box-shadow:0 2px 0 var(--chunk);font-family:var(--font-display);min-width:0;transition:transform .16s ease,box-shadow .16s ease,border-color .16s}.cat-tile:hover{transform:translateY(-4px) rotate(-.6deg);border-color:var(--cat,var(--coral));box-shadow:var(--elev-card)}.cat-tile:active{transform:translateY(0) scale(.97)}.ct-emo{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;font-size:1.65rem;line-height:1;background:var(--card);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--cat,var(--coral)) 32%,var(--line)),0 4px 10px -5px rgba(var(--shadow-tint),.45);transform:rotate(-5deg);transition:transform .22s cubic-bezier(.34,1.56,.64,1)}.cat-tile:hover .ct-emo{transform:rotate(3deg) scale(1.08)}.ct-label{font-weight:800;font-size:.85rem;line-height:1.15;text-align:center;color:var(--ink);overflow-wrap:anywhere}.ct-n{font-weight:700;font-size:.72rem;color:var(--ink-mute);background:var(--card);border-radius:999px;padding:1px 9px}@media (max-width:640px){.cat-shelf{grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:118px;overflow-x:auto;padding:4px 2px 12px;scroll-snap-type:x proximity;scrollbar-width:none}.cat-shelf::-webkit-scrollbar{display:none}.cat-tile{scroll-snap-align:start}}.cat-more{display:inline-flex;align-items:center;gap:8px;margin-top:14px;padding:10px 18px;border-radius:999px;border:2px dashed var(--line);background:transparent;color:var(--ink-soft);font-family:var(--font-display);font-weight:700;font-size:.9rem;transition:border-color .16s,color .16s,transform .14s}.cat-more:hover{border-color:var(--coral);color:var(--coral-dark);transform:translateY(-1px)}.cat-more .chev{font-size:.75rem;transition:transform .2s ease}.cat-more .chev.up{transform:rotate(180deg)}.chips.cat-rest{margin-top:14px;animation:rise .32s ease both}.foot-scene{position:relative;z-index:1;margin-top:clamp(48px,8vw,90px)}.fs-hill{height:clamp(38px,6vw,84px);color:var(--grass);margin-bottom:-2px}.fs-hill svg{width:100%;height:100%;display:block}.fs-ground{position:relative;overflow:hidden;background:linear-gradient(180deg,var(--grass),var(--grass-dark) 88%);padding:0 0 26px}.fs-in{display:flex;align-items:center;gap:clamp(16px,3vw,28px);flex-wrap:wrap}.fs-dog{position:relative;flex:0 0 auto;margin-top:-26px;transform-origin:50% 92%;animation:dog-doze 5.2s ease-in-out infinite}@keyframes dog-doze{0%,to{transform:none}50%{transform:scale(1.035) rotate(-1deg)}}.fs-zzz{position:absolute;top:2px;right:-38px;font-family:var(--font-display);font-weight:800;font-size:1rem;text-shadow:0 1px 3px rgba(0,0,0,.35);letter-spacing:3px;color:rgba(255,255,255,.9);transform:rotate(-14deg);animation:zzz-float 4.4s ease-in-out infinite}@keyframes zzz-float{0%,to{opacity:.35;transform:rotate(-14deg) translateY(0)}50%{opacity:1;transform:rotate(-8deg) translateY(-5px)}}.fs-copy{display:flex;flex-direction:column;gap:3px;padding:16px 0;color:rgba(255,255,255,.94);font-size:.92rem;font-weight:600;min-width:0}.fs-brand strong{font-family:var(--font-display);font-size:1.06rem}.fs-src{color:rgba(255,255,255,.72);font-size:.8rem}.fs-fireflies{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .9s ease}.fs-fireflies i{position:absolute;width:5px;height:5px;border-radius:50%;background:#ffe38a;box-shadow:0 0 9px 2px rgba(255,227,138,.75);animation:firefly 7.5s ease-in-out infinite}.fs-fireflies i:first-child{left:16%;top:42%}.fs-fireflies i:nth-child(2){left:56%;top:30%;animation-duration:9.5s;animation-delay:-2.6s}.fs-fireflies i:nth-child(3){left:82%;top:56%;animation-duration:8.2s;animation-delay:-5.1s}@keyframes firefly{0%,to{transform:translate(0);opacity:.12}30%{opacity:1}50%{transform:translate(16px,-12px);opacity:.55}70%{opacity:1}}:root[data-sky=night] .fs-hill,:root[data-theme=dark] .fs-hill{color:#24463a}:root[data-sky=night] .fs-ground,:root[data-theme=dark] .fs-ground{background:linear-gradient(180deg,#24463a,#182f27 88%)}:root[data-sky=night] .fs-fireflies,:root[data-theme=dark] .fs-fireflies{opacity:1}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .fs-hill{color:#24463a}:root:not([data-theme=light]) .fs-ground{background:linear-gradient(180deg,#24463a,#182f27 88%)}:root:not([data-theme=light]) .fs-fireflies{opacity:1}}@media (max-width:640px){.topbar{position:static}.tabbar{top:0}.topbar-in{flex-wrap:wrap;height:auto;padding:10px 0;row-gap:10px}.top-actions{display:contents}.loc-pop-wrap{order:10;flex:1 1 100%}.loc-chip{width:100%;max-width:none;justify-content:center;min-height:44px}.loc-chip .lname{max-width:60vw}.toolbar{gap:8px}.seg{flex-wrap:nowrap;max-width:100%;overflow-x:auto;scrollbar-width:none}.seg::-webkit-scrollbar{display:none}}.cat-shelf>*,.coach-picks>*,.evt-list>*,.grid>*,.movies>*,.stats>*,.tips-grid>*,.tvgrid>*{animation:rise .45s cubic-bezier(.22,1,.36,1) both;animation-delay:.34s}.cat-shelf>:first-child,.coach-picks>:first-child,.evt-list>:first-child,.grid>:first-child,.movies>:first-child,.stats>:first-child,.tips-grid>:first-child,.tvgrid>:first-child{animation-delay:.02s}.cat-shelf>:nth-child(2),.coach-picks>:nth-child(2),.evt-list>:nth-child(2),.grid>:nth-child(2),.movies>:nth-child(2),.stats>:nth-child(2),.tips-grid>:nth-child(2),.tvgrid>:nth-child(2){animation-delay:.07s}.cat-shelf>:nth-child(3),.coach-picks>:nth-child(3),.evt-list>:nth-child(3),.grid>:nth-child(3),.movies>:nth-child(3),.stats>:nth-child(3),.tips-grid>:nth-child(3),.tvgrid>:nth-child(3){animation-delay:.12s}.cat-shelf>:nth-child(4),.coach-picks>:nth-child(4),.evt-list>:nth-child(4),.grid>:nth-child(4),.movies>:nth-child(4),.stats>:nth-child(4),.tips-grid>:nth-child(4),.tvgrid>:nth-child(4){animation-delay:.17s}.cat-shelf>:nth-child(5),.evt-list>:nth-child(5),.grid>:nth-child(5),.movies>:nth-child(5),.tvgrid>:nth-child(5){animation-delay:.22s}.cat-shelf>:nth-child(6),.evt-list>:nth-child(6),.grid>:nth-child(6),.movies>:nth-child(6),.tvgrid>:nth-child(6){animation-delay:.26s}.cat-shelf>:nth-child(7),.evt-list>:nth-child(7),.grid>:nth-child(7),.movies>:nth-child(7),.tvgrid>:nth-child(7){animation-delay:.3s}.count-note{background:var(--cream2);border:1.5px solid var(--line);border-radius:999px;padding:5px 12px}.tabbar{box-shadow:0 10px 24px -18px rgba(var(--shadow-tint),.5)}.chip:active,.pill-btn:active,.stat:active,.tab:active{transform:translateY(1px) scale(.98)}.hero-balloon{position:absolute;top:13%;right:22%;width:clamp(96px,11vw,148px);z-index:1;pointer-events:none;animation:hb-drift 46s ease-in-out infinite alternate}.hb-y{animation:hb-bob 7.5s ease-in-out infinite}.hb-sway{position:relative;transform-origin:50% 18%;animation:hb-sway 9s ease-in-out infinite}.hb-env{display:block;width:100%;height:auto;filter:drop-shadow(0 10px 16px rgba(var(--shadow-tint),.25))}.hb-tibou{bottom:16px;line-height:0}.hb-basket,.hb-tibou{position:absolute;left:50%;transform:translateX(-50%)}.hb-basket{bottom:-4px;width:56px}@keyframes hb-drift{0%{transform:translateX(0)}to{transform:translateX(-90px)}}@keyframes hb-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-14px)}}@keyframes hb-sway{0%,to{transform:rotate(-2.4deg)}50%{transform:rotate(2.4deg)}}:root[data-sky=rain] .hero-balloon,:root[data-sky=snow] .hero-balloon,:root[data-sky=storm] .hero-balloon{display:none}@media (max-width:720px){.hero-balloon{display:none}}.cat-tile{background:color-mix(in srgb,var(--cat,var(--coral)) 16%,var(--card));border-color:color-mix(in srgb,var(--cat,var(--coral)) 32%,var(--line))}.ct-label{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.3em;align-content:center}.ct-n{color:color-mix(in srgb,var(--cat,var(--coral-dark)) 60%,var(--ink));font-family:var(--font-display)}.today{padding:clamp(14px,2.4vw,20px);background:linear-gradient(150deg,color-mix(in srgb,var(--tc) 16%,var(--card)),var(--card) 58%)}.today-temp{font-size:clamp(2.1rem,6vw,2.7rem)}.today-emoji{font-size:clamp(2.3rem,6vw,3.1rem)}.tstat{background:var(--card);flex-direction:row;gap:7px;padding:9px 13px;border-radius:999px;align-items:center}.tstat .tstat-ico{display:grid;place-items:center;margin-bottom:0}.tstat.t-max .tstat-ico{color:var(--coral-dark)}.tstat.t-min .tstat-ico{color:color-mix(in srgb,var(--sky) 60%,var(--ink))}.tstat.t-rain .tstat-ico{color:color-mix(in srgb,var(--sky) 75%,var(--ink))}.tstat .tstat-num{font-size:1.05rem}.tstat .tstat-lab{font-size:.66rem}.hero-chips .chip .dot{display:none}