.gifts-panel{display:grid;gap:18px}.eyebrow{margin:0;font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2)}.money{padding:16px 18px 14px}.money__head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}.money__budget{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border:0;border-radius:999px;background:#f4efe3;color:var(--ink);font:inherit;font-size:.9rem;cursor:pointer}.money__budget strong{font-weight:700}.money__budget svg{color:var(--ink-2)}.money__budget:hover{background:#ece5d4}.money__budget--empty{background:transparent;border:1.5px dashed rgba(20,26,35,.28);color:var(--ink-2)}.money__budget--empty span{font-size:.8rem}.money__grid{display:grid;grid-template-columns:1fr 1fr 1.1fr;gap:8px;margin:0 0 12px}.money__cell{margin:0;padding:8px 10px 9px;border-radius:12px;background:#fff;border:1px solid rgba(20,26,35,.07)}.money__cell dt{display:flex;align-items:center;gap:6px;font-size:.8rem;color:var(--ink-2);line-height:1.25}.money__cell dt i{width:9px;height:9px;border-radius:3px;flex:none}.money__cell dd{margin:2px 0 0;font-size:1.35rem;font-weight:700;line-height:1.15}.money__cell dd small{display:block;font-size:.72rem;font-weight:500;color:var(--ink-2);margin-top:1px}.money__cell--total{background:color-mix(in srgb,var(--red) 9%,#fff);border-color:color-mix(in srgb,var(--red) 25%,transparent)}.money__cell--total dt{color:#8f1512;font-weight:600}.money-bar{position:relative;display:flex;height:14px;border-radius:999px;background:#ece5d6;box-shadow:inset 0 1px 2px #00000014}.money-bar span{display:block;height:100%;transition:width .4s var(--ease)}.money-bar span:first-child{border-radius:999px 0 0 999px}.s-spent{background:var(--red)}.s-future{background:repeating-linear-gradient(-45deg,#f6a7a5 0,#f6a7a5 5px,#fbd0cf 5px,#fbd0cf 10px)}.money-bar__limit{position:absolute;top:-5px;bottom:-5px;width:3px;margin-left:-1.5px;border-radius:2px;background:var(--ink)}.money-bar__limit:after{content:"";position:absolute;top:-4px;left:-3px;border:4.5px solid transparent;border-top-color:var(--ink)}.money__reserve{display:flex;align-items:center;gap:6px;margin:10px 0 0;font-weight:600;color:#0b6e4d}.money__reserve.is-over{color:#b4100d}.money__reserve--muted{font-weight:500;color:var(--ink-2);font-size:.92rem}.money__hint{display:flex;gap:6px;align-items:flex-start;margin:8px 0 0;font-size:.85rem;color:var(--ink-2)}.money__hint svg{flex:none;margin-top:2px}.tree-note{display:flex;align-items:center;gap:8px;margin:12px 0 0;padding-top:10px;border-top:1px dashed rgba(20,26,35,.14);font-size:1.05rem}.add-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}.people{list-style:none;margin:0;padding:0;display:grid;gap:16px}.person{padding:14px 14px 12px}.person:after{content:"";position:absolute;top:14px;right:-7px;width:14px;height:14px;border-radius:50%;background:var(--panel-bg, #fffdf7);box-shadow:inset 0 1px 2px #0000002e}.person__head{display:flex;align-items:center;gap:10px;padding:0 2px 10px}.person__avatar{width:40px;height:40px;flex:none;display:grid;place-items:center;border-radius:12px 14px 11px 13px;background:color-mix(in srgb,var(--red) 16%,#fff);color:#a3120f;font-weight:700;font-size:1.15rem;transform:rotate(-3deg)}.person__name{flex:1;min-width:0}.person__name h3{margin:0;font-size:1.15rem;line-height:1.2}.person__name p{margin:0;font-size:.88rem;color:var(--ink-2)}.gift-list{list-style:none;margin:0 0 10px;padding:0;display:grid;gap:8px}.gift{--status: #7cc4f6;position:relative;padding:10px 10px 8px 16px;border-radius:14px;background:#fff;border:1px solid rgba(20,26,35,.08)}.gift:before{content:"";position:absolute;left:6px;top:10px;bottom:10px;width:4px;border-radius:4px;background:var(--status)}.gift[data-status=bought]{--status: var(--orange)}.gift[data-status=wrapped]{--status: var(--green)}.gift__main{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.gift__title{font-weight:600;padding-top:1px}.price{display:grid;justify-items:end;line-height:1.15;white-space:nowrap}.price__main{font-weight:700}.price__sub{font-size:.75rem;color:var(--ink-2)}.gift__meta{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 0}.chip{display:inline-flex;align-items:center;gap:5px;max-width:100%;padding:2px 9px 2px 7px;border-radius:999px;border:0;background:#f4efe3;color:var(--ink-2);font:inherit;font-size:.8rem;line-height:1.6;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chip svg{flex:none}.chip--link{color:#035f9c;background:#e3f1fc;text-decoration:none}.chip--link:hover{text-decoration:underline}.chip--soon{background:#fff1c9;color:#7a5300}.chip--late{background:#fde0de;color:#a3120f;font-weight:600}.chip--done{background:#e2f5ec;color:#0b6e4d}.chip--ask{background:transparent;border:1.5px dashed rgba(253,125,33,.7);color:#a24a06;cursor:pointer;font-weight:600}.gift__tools{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px;flex-wrap:wrap}.gift__actions{display:inline-flex}.gift--editing{padding:12px 12px 12px 16px;background:#fffbea;border-color:#fd7d2159;--status: var(--orange)}.gift-edit{display:grid;grid-template-columns:1fr 1fr;gap:10px}.gift-edit label{display:grid}.gift-edit__wide{grid-column:1 / -1}.field-label em{font-style:normal;font-weight:500;color:var(--ink-2);font-size:.78rem;margin-left:4px}.gift-edit__actions{grid-column:1 / -1;display:flex;justify-content:flex-end;gap:10px}.add-gift{width:100%;justify-content:center}@media (max-width: 760px){.add-row{grid-template-columns:1fr}.add-row .p-btn{justify-self:start}.gift__tools .seg button span{display:none}.gift__tools .seg button[aria-checked=true] span{display:inline}.money__grid{grid-template-columns:1fr 1fr}.money__cell--total{grid-column:1 / -1;display:flex;justify-content:space-between;align-items:baseline}.money__cell dd{font-size:1.2rem}}.money__controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.seg--currency button{min-height:32px;padding:2px 10px;font-size:.85rem}.seg--currency button span{display:inline!important}.money__hint--warn{color:#7a5300}.money__hint--warn svg{color:#c88a00}.budget-edit{display:grid;grid-template-columns:1fr auto;gap:4px 10px;align-items:end;margin:0 0 12px;padding:12px;border-radius:14px;background:#fffbea;border:1px solid rgba(253,125,33,.35)}.budget-edit__hint{grid-column:1;margin:0;font-size:.8rem;color:var(--ink-2)}.budget-edit__actions{grid-column:2;grid-row:1;display:flex;gap:8px}.add-row{align-items:start}.empty-card{display:flex;gap:12px;align-items:flex-start;padding:16px 18px;color:var(--ink-2)}.empty-card svg{flex:none;color:var(--red)}.empty-card p{margin:0;line-height:1.45}.empty-card strong{color:var(--ink)}.rename{flex:1;display:flex;align-items:flex-start;gap:4px;min-width:0}.rename .field{flex:1;min-width:0}.rename .icon-btn{margin-top:4px}.add-gift-form{display:grid;grid-template-columns:1fr 170px;gap:10px;align-items:start;padding:12px;border-radius:14px;background:#fff;border:2px dashed color-mix(in srgb,var(--red) 45%,transparent)}.add-gift-form__actions{grid-column:1 / -1;display:flex;justify-content:flex-end;gap:10px}.price--none .price__sub{font-style:italic}@media (max-width: 760px){.money__head{flex-wrap:wrap}.money__controls{justify-content:flex-start}.budget-edit{grid-template-columns:1fr}.budget-edit__actions{grid-column:1;grid-row:auto;justify-content:flex-end}.add-gift-form,.gift-edit{grid-template-columns:1fr}}.bakery-teaser{display:flex;gap:14px;align-items:center;margin-bottom:18px;padding:14px 16px;border-radius:16px;background:#fbe6d6 var(--paper-grain);border:1.5px dashed #d8a27c;transform:rotate(-.4deg)}.bakery-teaser__lock{display:grid;place-items:center;width:48px;height:48px;flex:none;border-radius:50%;background:#fff;color:#b0581f;box-shadow:0 4px 10px -4px #78320a66}.bakery-teaser__kicker{margin:0;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#a4470a}.bakery-teaser__title{margin:0;font-size:1.15rem}.bakery-teaser__text{margin:2px 0 0;font-size:.92rem;color:#5b3a22}.bakery{display:grid;gap:16px}.bakery__back{justify-self:start}.bakery__back svg{transform:scaleX(-1)}.bakery__head{display:flex;gap:12px;align-items:center}.bakery__key{width:46px;height:auto;transform:rotate(-12deg);filter:drop-shadow(0 4px 5px rgba(90,60,0,.3))}.bakery__title{margin:0;font-size:1.3rem}.bakery__sub{margin:0}.bakery__tabs{width:100%}.bakery__tabs button{flex:1;font-size:.88rem}.recipe{display:grid;gap:8px;padding:16px;border-radius:18px;background:#fff var(--paper-grain);border-top:6px solid var(--rc);box-shadow:0 16px 30px -18px rgba(var(--shadow-paper),.7)}.recipe__draft{display:flex;gap:6px;align-items:center;margin:0;padding:6px 10px;border-radius:10px;background:#fff1c9;color:#7a5300;font-size:.85rem;font-weight:600}.recipe__art{display:grid;place-items:center;height:150px;border-radius:14px;background:radial-gradient(circle at 50% 60%,#fff 0,var(--rs) 70%)}.recipe__art img{height:128px;width:auto;filter:drop-shadow(0 8px 10px rgba(var(--shadow-paper),.3))}.recipe__tag{margin:4px 0 0;font-size:.8rem;font-weight:700;color:var(--rc)}.recipe__title{margin:0;font-size:1.35rem}.recipe__meta{display:flex;gap:24px;margin:0}.recipe__meta div{display:grid}.recipe__meta dt{font-size:.75rem;color:var(--ink-2);text-transform:uppercase;letter-spacing:.06em}.recipe__meta dd{margin:0;font-weight:600}.recipe__safety{display:flex;gap:8px;margin:4px 0;padding:10px 12px;border-radius:12px;background:#e8f3fd;color:#0b4f80;font-size:.9rem}.recipe__safety svg{flex:none;margin-top:2px}.recipe .list-title{margin:8px 0 2px}.recipe__ing{list-style:none;margin:0;padding:0;display:grid;gap:4px}.recipe__ing li{display:flex;gap:10px;padding:4px 0;border-bottom:1px dashed var(--line)}.recipe__amount{min-width:56px;text-align:right;font-variant-numeric:tabular-nums}.recipe__steps{margin:0;padding-left:1.3em}.recipe__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}.shop{display:grid;gap:8px;justify-items:start}.shop__list{list-style:none;margin:0;padding:0;display:grid;gap:8px;width:100%}.shop__item{display:flex;padding:6px 12px}.shop__item.is-done .task__title{text-decoration:line-through;color:var(--ink-2)}.shop__from{font-size:.78rem;color:var(--ink-2)}.bakery-teaser__body{flex:1;min-width:0}.bakery-teaser__key{width:46px;flex:none;transform:rotate(-12deg);filter:drop-shadow(0 4px 5px rgba(90,60,0,.3))}.bakery-teaser:not(.is-locked){background:#fff1c9 var(--paper-grain);border-style:solid;border-color:#e7c66a}.p-btn.bakery-teaser__btn{--accent: #c4632a;flex:none}.recipe__amount{min-width:92px}.recipe__note{color:var(--ink-2);font-size:.9rem}.recipe__source{margin:6px 0 0;font-size:.85rem;color:var(--ink-2)}.recipe__source a,.recipe__safety a{color:inherit;overflow-wrap:anywhere}.recipe__steps li{margin-bottom:6px;line-height:1.5}.shop__empty{margin:0;color:var(--ink-2)}.shop__amount{font-weight:500;color:var(--ink-2)}.shop__item{align-items:center;gap:6px}.shop__item .task__label{flex:1;min-width:0}.shop__add{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:start;width:100%}.recipe__tips{list-style:none;margin:0;padding:0;display:grid;gap:8px}.recipe__tip{display:grid;grid-template-columns:30px 1fr;gap:6px 10px;align-items:start;padding:10px 12px;border-radius:12px;background:var(--rs) var(--paper-grain)}.recipe__tip-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#fff;color:var(--rc)}.recipe__tip-body{min-width:0}.recipe__tip-title{margin:0;font-weight:700}.recipe__tip-text{margin:2px 0 0;font-size:.92rem}.recipe__tip-btn{grid-column:2;justify-self:start;font-size:.85rem}@media (max-width: 760px){.bakery__tabs button span{white-space:normal;line-height:1.15}.shop__add{grid-template-columns:1fr}.shop__add .p-btn-ghost{justify-self:start}.bakery-teaser{flex-wrap:wrap}.bakery-teaser__btn{width:100%;justify-content:center}}@media print{body.print-recipe .app>:not(.panel),body.print-recipe .panel__head,body.print-recipe .bakery>:not(.recipe),body.print-recipe .recipe__actions,body.print-recipe .recipe__art,body.print-recipe .recipe__tip-btn{display:none!important}body.print-recipe .panel{position:static;inset:auto;width:auto;max-width:none;height:auto;max-height:none;box-shadow:none;border-radius:0;overflow:visible}body.print-recipe .panel::backdrop{display:none}body.print-recipe .panel__body{overflow:visible;padding:0}body.print-recipe .recipe{box-shadow:none;border:0}}.xmas__form{display:grid;gap:14px}.xmas__q{margin:0;padding:0;border:0;min-width:0;display:grid;gap:6px}.xmas__legend{padding:0;font-weight:700}.xmas__hint{margin:-2px 0 0;font-size:.85rem;color:var(--ink-2)}.xmas__opts{display:flex;flex-wrap:wrap;gap:8px}.xmas__opt{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:6px 12px;border:1.5px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);font:inherit;font-size:.92rem;cursor:pointer;transition:background .15s var(--ease),border-color .15s var(--ease)}.xmas__opt:hover{border-color:#0b7f5a}.xmas__opt[aria-pressed=true]{background:#d8f4e5;border-color:#0b7f5a;color:#075a40;font-weight:600}.xmas__opt:focus-visible{outline:3px solid #0b7f5a;outline-offset:2px}.xmas__fact{display:flex;gap:6px;margin:2px 0 0;font-size:.84rem;color:var(--ink-2)}.xmas__fact svg{flex:none;margin-top:2px}.xmas__fact a{color:inherit}.prep-panel{display:grid;gap:18px}.garland-card{position:relative;padding:16px 20px;border-radius:22px;background:#1d2430;background-image:radial-gradient(ellipse at 50% 0%,rgba(255,214,0,.12),transparent 70%);color:var(--ink-light);box-shadow:0 10px 24px -12px #00000080}.garland{display:block;width:100%;height:auto;margin-bottom:8px;overflow:visible}.bulb__glass{fill:#3b4350;stroke:#ffffff1f;transition:fill .4s var(--ease)}.bulb__glow{fill:#ffd600;opacity:0;transition:opacity .5s var(--ease)}.bulb.is-on .bulb__glass{fill:#ffd84a}.bulb.is-on .bulb__glow{opacity:.28;filter:blur(3px)}.garland-card__text{display:flex;justify-content:space-between;align-items:baseline}.garland-card__big{margin:0;font-size:1.7rem;font-weight:700}.garland-card__big span{font-size:1rem;font-weight:500;color:#f2eee6bf}.garland-card__pct{margin:0;font-size:1.1rem;font-weight:700;color:var(--gold)}.garland-card .garland-card__note{margin:4px 0 0;color:#ffe69a;font-size:1.02rem}.list-title{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-size:1rem}.list-title span{min-width:26px;padding:1px 8px;border-radius:999px;background:#141a2312;font-size:.85rem;text-align:center}.tasks{list-style:none;margin:0;padding:0;display:grid;gap:8px}.task{display:flex;align-items:center;gap:4px;padding:6px 6px 6px 12px;border-radius:16px}.task__label{flex:1;display:flex;align-items:center;gap:12px;min-height:44px;cursor:pointer}.task__text{display:grid;gap:3px;justify-items:start}.task__title{line-height:1.3}.due{display:inline-flex;align-items:center;gap:4px;padding:0 8px 0 6px;border-radius:999px;font-size:.78rem;line-height:1.6;background:#f1ece0;color:var(--ink-2)}.due--soon{background:#fff1c9;color:#7a5300}.due--late{background:#fde0de;color:#a3120f;font-weight:600}.due--done{background:transparent;padding-left:0}.add-task{display:grid;grid-template-columns:1fr auto auto;gap:8px 10px;align-items:center}.add-task__date{position:relative;display:flex;align-items:center}.add-task__date svg{position:absolute;left:12px;color:var(--ink-2);pointer-events:none}.add-task__date .p-input{width:178px;padding-left:38px;color:var(--ink-2)}.add-task__hint{grid-column:1 / -1;margin-top:-2px;font-size:.8rem;color:var(--ink-2)}.view-switch{justify-self:start}.cal{display:grid;gap:14px}.cal__head{display:flex;align-items:center;justify-content:space-between}.cal__month{margin:0;font-size:1.15rem}.cal__month:first-letter{text-transform:uppercase}.cal__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;padding:12px;border-radius:20px;background:#fff;box-shadow:0 1px #141a230d,0 10px 22px -16px rgba(var(--shadow-paper),.6)}.cal__dow{text-align:center;font-size:.75rem;font-weight:600;color:var(--ink-2);text-transform:uppercase;padding-bottom:2px}.cal__day{position:relative;display:grid;align-content:start;justify-items:center;gap:3px;min-height:52px;padding:6px 2px 4px;border:0;border-radius:12px;background:#faf6ec;color:var(--ink);font:inherit;cursor:pointer;transition:background .15s var(--ease),transform .15s var(--ease)}.cal__day:hover{background:#f1eadb}.cal__day:focus-visible{outline:3px solid var(--orange);outline-offset:2px}.cal__num{font-weight:600;font-size:.95rem}.cal__dots{display:flex;gap:3px}.cal__dots i{width:7px;height:7px;border-radius:50%;background:#9aa6b4}.cal__dots i.is-soon{background:var(--orange)}.cal__dots i.is-late{background:var(--red)}.cal__dots i.is-done{background:transparent;box-shadow:inset 0 0 0 1.5px var(--green)}.cal__day.has-tasks{background:#fff4d6}.cal__day.is-today{box-shadow:inset 0 0 0 2px var(--ink)}.cal__day.is-eve{background:#fff1a8}.cal__day.is-eve:after{content:"★";position:absolute;top:2px;right:5px;font-size:.7rem;color:#c99700}.cal__day.is-selected{background:var(--green);color:#fff;transform:rotate(-2deg);box-shadow:0 6px 12px -6px #14a876cc}.cal__day.is-selected .cal__dots i{background:#fff;box-shadow:none}.cal__pad{min-height:52px}.cal__day-list{display:grid}.cal__empty{margin:0;color:#1b3a6b}.task.is-done{background:#f7f3e8;box-shadow:none}.task.is-done .task__title{color:var(--ink-2);text-decoration:line-through;text-decoration-color:#14a876b3;text-decoration-thickness:2px}.task__actions{display:inline-flex}.task--editing{padding:10px;background:#fffbea;border-color:#14a87666}.task-edit{flex:1;display:grid;grid-template-columns:1fr 178px;gap:8px;align-items:center}.task-edit .p-btn-ghost{justify-self:end}.reset-tasks{justify-self:center;font-size:.9rem;border-color:#141a2326;color:var(--ink-2)}@media (hover: hover) and (min-width: 761px){.task__actions{opacity:0;transition:opacity .16s var(--ease)}.task:hover .task__actions,.task:focus-within .task__actions{opacity:1}}@media (max-width: 760px){.task-edit{grid-template-columns:1fr 1fr}.task-edit>.p-input,.task-edit__date{grid-column:1 / -1}.task-edit__date .p-input{width:100%}.add-task{grid-template-columns:1fr auto}.add-task>.p-input{grid-column:1 / -1}.add-task__date .p-input{width:100%}.cal__grid{padding:8px;gap:4px}.cal__day{min-height:44px;border-radius:10px}}@media (max-width: 760px){.view-switch button span{display:inline}}.add-task{align-items:start}.add-task__date{min-height:48px}.tasks-empty{margin:0;color:#1b3a6b}.task-edit{align-items:start}.xmas{display:grid;gap:12px;padding:16px;border-radius:20px;background:#fff var(--paper-grain);border-top:6px solid #0b7f5a;box-shadow:0 16px 30px -18px rgba(var(--shadow-paper),.7)}.xmas__head{display:flex;gap:12px;align-items:center}.xmas__icon{display:grid;place-items:center;width:44px;height:44px;flex:none;border-radius:50%;background:#d8f4e5;font-size:1.4rem}.xmas__heading{flex:1;min-width:0}.xmas__kicker{margin:0;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#0b7f5a}.xmas__title{margin:0;font-size:1.15rem}.xmas__toggle{flex:none;--accent: #0b7f5a}.xmas__intro{margin:0;color:var(--ink-2)}.xmas__sum{display:grid;gap:6px;margin:0}.xmas__sum div{display:grid;gap:1px}.xmas__sum dt{font-size:.75rem;color:var(--ink-2);text-transform:uppercase;letter-spacing:.06em}.xmas__sum dd{margin:0;font-weight:600}.xmas__suggest{display:grid;gap:8px;justify-items:start;padding:12px;border-radius:14px;background:#fff8e1 var(--paper-grain)}.xmas__suggest-title{margin:0;font-size:.95rem}.xmas__list{list-style:none;margin:0;padding:0;display:grid;gap:6px;width:100%}.xmas__list li{display:flex;gap:8px;align-items:center;justify-content:space-between;padding:2px 0;border-bottom:1px dashed var(--line)}.xmas__add{flex:none;font-size:.85rem;--accent: #0b7f5a}.xmas__all{--accent: #0b7f5a}.xmas__poll{justify-self:start;--accent: #0b7f5a}.xmas__note{margin:0;font-size:.8rem;color:var(--ink-2)}.post-panel{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1fr);grid-template-areas:"motifs motifs" "preview form" "preview actions";gap:18px 20px;align-items:start}.motifs{grid-area:motifs}.preview-wrap{grid-area:preview}.post-form{grid-area:form}.post-actions{grid-area:actions;display:grid;gap:10px}.motifs{border:0;margin:0;padding:0;min-width:0}.motifs legend{padding:0}.motifs__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.motif{position:relative;display:grid;gap:6px;cursor:pointer;text-align:center;font-size:.82rem;font-weight:600;line-height:1.2}.motif input{position:absolute;opacity:0;pointer-events:none}.motif__img{aspect-ratio:4 / 5;border-radius:12px;background:center / cover no-repeat;box-shadow:0 6px 14px -8px rgba(var(--shadow-paper),.5);border:3px solid #fff;transition:transform .2s var(--ease),box-shadow .2s var(--ease)}.motif:hover .motif__img{transform:translateY(-2px) rotate(-1deg)}.motif.is-on .motif__img{border-color:var(--house);box-shadow:0 0 0 2px var(--house),0 10px 18px -10px rgba(var(--shadow-paper),.6);transform:rotate(-1.5deg)}.motif:has(input:focus-visible) .motif__img{outline:3px solid var(--orange);outline-offset:3px}.post-form{display:grid;gap:12px}.post-form label{display:grid;position:relative}.p-textarea{resize:vertical;min-height:110px;line-height:1.45}.counter{justify-self:end;margin-top:4px;font-size:.8rem;color:var(--ink-2)}.download{justify-self:start}.mailbox-note{display:flex;gap:8px;align-items:flex-start;margin:0;font-size:.88rem;color:var(--ink-2)}.mailbox-note svg{flex:none;margin-top:2px;color:var(--red)}.preview-wrap{position:sticky;top:0}.postcard{container-type:inline-size;position:relative;aspect-ratio:4 / 5;border-radius:10px;overflow:hidden;background:#fffdf7;box-shadow:0 18px 34px -16px rgba(var(--shadow-paper),.55),0 0 0 1px #141a230f;transform:rotate(-1deg)}.postcard__img{position:absolute;top:0;right:0;bottom:0;left:0;background:center / cover no-repeat}.postcard__note{position:absolute;left:7%;right:7%;bottom:5.5%;padding:6cqw 6.5cqw 3.5cqw;border-radius:2.5cqw;background:#fffdf7 var(--paper-grain);box-shadow:0 2cqw 4cqw -1cqw #00000059;transform:rotate(-1.2deg);color:#1b3a6b;font-family:Kalam,cursive;font-weight:700}.postcard__tape{position:absolute;top:-2.6cqw;left:50%;width:26cqw;height:6cqw;background:#ffd600c7;transform:translate(-50%) rotate(2deg);box-shadow:0 .4cqw .8cqw #0000001f}.postcard__to{margin:0 0 .8cqw;font-size:5.4cqw;line-height:1.15}.postcard__text{margin:0;font-size:4.4cqw;line-height:1.28;overflow-wrap:anywhere}.postcard__from{margin:1.5cqw 0 0;font-size:4.8cqw;text-align:right}.postcard__brand{margin:2.5cqw 0 0;font-family:Fredoka SK,sans-serif;font-weight:600;font-size:2.6cqw;letter-spacing:.06em;text-transform:uppercase;color:#8a8f99;text-align:right}@media (max-width: 760px){.post-panel{grid-template-columns:minmax(0,1fr) 76px;grid-template-areas:"preview motifs" "form form" "actions actions";gap:14px 12px}.motifs legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.motifs__grid{grid-template-columns:1fr;gap:8px}.motif__name{display:none}.motif__img{border-width:2px;border-radius:10px}.preview-wrap{position:static;max-width:240px;width:100%;justify-self:center}.post-form{grid-template-columns:1fr 1fr;gap:10px}.post-form .list-title,.post-form__text{grid-column:1 / -1}.post-form__to{grid-row:2;grid-column:1}.post-form__from{grid-row:2;grid-column:2}.p-textarea{min-height:88px}.post-actions{position:sticky;bottom:calc(-24px - env(safe-area-inset-bottom));z-index:2;margin:0 -14px calc(-24px - env(safe-area-inset-bottom));padding:12px 14px calc(14px + env(safe-area-inset-bottom));background:#fffdf7;border-top:1px dashed rgba(20,26,35,.14);box-shadow:0 -10px 20px -14px #00000059;gap:6px}.download{justify-self:stretch;justify-content:center}.mailbox-note{font-size:.8rem}}.post-form .list-title{margin:0;font-weight:700}.postcard__text{white-space:pre-line}.postcard .is-sample{opacity:.42}.field--textarea textarea{resize:vertical;min-height:110px;line-height:1.45}.post-form__text{display:grid}.download[disabled]{opacity:.7;cursor:progress}.post-status:empty{display:none}.post-status p{display:flex;gap:6px;align-items:flex-start;margin:0;font-size:.9rem;font-weight:600}.post-status svg{flex:none;margin-top:1px}.post-status__ok{color:#0b6e4d}.post-status__err{color:#b4100d}@media (max-width: 760px){.field--textarea textarea{min-height:88px}}.advent-panel{display:grid;gap:18px}.advent-intro{margin:0;color:#1b3a6b;font-size:1.08rem}.advent-banner{display:flex;gap:10px;align-items:flex-start;margin:0;padding:12px 14px;border-radius:16px;background:#efe6fb;color:#3d1673}.advent-banner svg{flex:none;margin-top:3px}.advent-grid{list-style:none;margin:0;padding:16px;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;border-radius:22px;background:radial-gradient(circle at 12% 18%,rgba(255,214,0,.5) 0 1.2px,transparent 2px),radial-gradient(circle at 78% 9%,rgba(255,255,255,.5) 0 1px,transparent 1.6px),radial-gradient(circle at 92% 64%,rgba(255,214,0,.4) 0 1.2px,transparent 2px),radial-gradient(circle at 36% 92%,rgba(255,255,255,.4) 0 1px,transparent 1.6px),#1d2a44 var(--paper-grain);box-shadow:inset 0 0 0 1px #ffffff0d,0 14px 28px -16px #0009}.window{position:relative;aspect-ratio:1;perspective:500px}.window button{position:absolute;top:0;right:0;bottom:0;left:0;padding:0;border:0;background:none;cursor:pointer;border-radius:12px}.window button:disabled{cursor:default}.window button:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.window__inside{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;border-radius:12px;background:color-mix(in srgb,var(--type) 22%,#fffdf7);color:var(--type);box-shadow:inset 0 3px 8px #0000002e}.window__door{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;border-radius:12px;background:var(--paper) var(--paper-grain);color:#1d2430;transform:rotate(var(--tilt));transform-origin:0 50%;box-shadow:0 1px #ffffff80 inset,0 6px 10px -6px #0000008c;transition:transform .6s cubic-bezier(.3,1.3,.5,1),box-shadow .3s var(--ease);backface-visibility:hidden}.window__door:after{content:"";position:absolute;right:0;bottom:0;border-style:solid;border-width:0 0 14px 14px;border-color:transparent transparent rgba(0,0,0,.12) transparent;border-radius:0 0 12px}.window__num{font-weight:700;font-size:clamp(1.1rem,2.6vw,1.6rem);line-height:1}.window__lock{position:absolute;top:6px;right:6px;opacity:.55}.window__star{position:absolute;top:6px;right:6px;color:#8a6500}.window__today{position:absolute;bottom:5px;left:50%;transform:translate(-50%);padding:0 6px;border-radius:999px;background:var(--ink);color:var(--gold);font-size:.66rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;line-height:1.6}.window.is-locked .window__door{background:#ffffff0d;color:#f2eee68c;box-shadow:none;outline:1.5px dashed rgba(242,238,230,.32);outline-offset:-1.5px}.window.is-locked .window__door:after{display:none}.window.is-locked.is-eve .window__door{background:#ffd6001a;color:#ffd600bf;outline-color:#ffd60099}.window.is-locked .window__star{color:#ffd600bf}.window.is-today .window__door{box-shadow:0 0 0 3px var(--gold),0 0 22px 4px #ffd6008c;animation:nudge 2.6s ease-in-out infinite}@keyframes nudge{0%,82%,to{transform:rotate(var(--tilt))}88%{transform:rotate(calc(var(--tilt) - 4deg))}94%{transform:rotate(calc(var(--tilt) + 3deg))}}.window.is-open .window__door{transform:rotateY(-62deg) rotate(0);box-shadow:-4px 0 10px -4px #00000073}.window.is-open .window__num{opacity:.5}.window.is-open .window__inside svg{width:26px;height:26px}.window.is-eve:not(.is-locked) .window__door{background:linear-gradient(135deg,#ffe873,#ffd600 60%,#f2bf00)}.window.is-selected .window__inside{box-shadow:inset 0 0 0 3px var(--type),inset 0 3px 8px #0000002e}.window.is-selected:after{content:"";position:absolute;left:50%;bottom:-9px;transform:translate(-50%);border:6px solid transparent;border-top-color:var(--gold)}.letter{position:relative;padding:22px 20px 18px;border-radius:18px;background:#fffdf7 var(--paper-grain);box-shadow:0 1px #141a230d,0 16px 30px -18px rgba(var(--shadow-paper),.7);border-top:6px solid var(--type);transform:rotate(-.4deg)}.letter__tape{position:absolute;top:-14px;left:50%;width:92px;height:22px;background:#ffd600c7;transform:translate(-50%) rotate(-2deg);box-shadow:0 2px 4px #0000001a}.letter__head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.letter__badge{display:inline-flex;align-items:center;gap:6px;padding:3px 10px 3px 8px;border-radius:999px;background:var(--soft);color:color-mix(in srgb,var(--type) 70%,#000);font-size:.85rem;font-weight:600}.letter__day{font-size:.9rem;color:var(--ink-2);font-weight:600}.letter__title{margin:10px 0 6px;font-size:1.35rem;line-height:1.2}.letter__body{margin:0;line-height:1.55}.prompt{margin-top:14px;padding:12px 14px 14px;border-radius:14px;background:color-mix(in srgb,var(--type) 8%,#fff);border:1.5px dashed color-mix(in srgb,var(--type) 45%,transparent)}.prompt__label{margin:0 0 4px;font-size:.78rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2)}.prompt__text{margin:0 0 12px;font-size:.98rem;line-height:1.5}.prompt__copy{--btn: var(--type)}.letter .letter__tip{margin:12px 0 0;color:#1b3a6b;font-size:1.02rem}.advent-types ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.advent-types li{display:inline-flex;align-items:center;gap:6px;padding:4px 11px 4px 9px;border-radius:999px;background:var(--soft);color:color-mix(in srgb,var(--type) 70%,#000);font-size:.86rem;font-weight:600}@media (max-width: 760px){.advent-grid{grid-template-columns:repeat(4,minmax(0,1fr));padding:12px;gap:8px}.letter{padding:20px 16px 16px}}@media (prefers-reduced-motion: reduce){.window.is-today .window__door{animation:none}.window__door{transition:none}}.window.is-locked .window__inside{display:none}.letter:focus{outline:none}.letter:focus-visible{outline:3px solid var(--orange);outline-offset:3px}.letter__steps{margin:12px 0 0;padding-left:1.4em;display:grid;gap:6px;line-height:1.5}.letter__steps li::marker{font-weight:700;color:var(--type)}.prompt__status{display:block;margin-top:8px;font-size:.85rem;color:var(--ink-2)}.prompt__status:empty{display:none}.letter__gift{margin:14px 0 0;display:grid;justify-items:start;gap:6px}.letter__gift a.p-btn{text-decoration:none}.letter__gift-hint{margin:0;font-size:.85rem;color:var(--ink-2)}.letter__gift-err{margin:0;color:#b4100d;font-weight:600;font-size:.9rem}.letter__gift-err:empty{display:none}.window.is-open .window__inside .orn-thumb{filter:drop-shadow(0 1px 1px rgba(0,0,0,.3))}.day-letter{display:grid;gap:0}.day-art{width:min(100%,320px);justify-self:center;margin:12px auto 4px;border-radius:14px;overflow:hidden;background:#1d2a44;aspect-ratio:1;box-shadow:0 10px 22px -14px #141e3cb3}.day-art img{display:block;width:100%;height:100%;object-fit:cover}.surprise{margin-top:16px;padding:14px;border-radius:14px;background:#fff;border:1.5px dashed color-mix(in srgb,var(--type) 40%,transparent)}.surprise__kicker{display:inline-flex;align-items:center;gap:6px;margin:0;font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--type)}.surprise__q{margin:6px 0 10px;font-size:1.05rem}.quiz{display:flex;flex-wrap:wrap;gap:8px}.quiz__a{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:6px 18px;border-radius:12px;border:1.5px solid var(--line);background:var(--paper);color:var(--ink);font-weight:600;cursor:pointer}.quiz__a.is-right{border-color:var(--green);background:#e3f6ec;color:#0b6e4d}.quiz__fb{margin:10px 0 0}.gift-orn{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;align-items:center;margin-top:16px;padding:14px;border-radius:16px;background:var(--paper-grain),linear-gradient(135deg,#1d2a44,#2a2050);color:#fff}.gift-orn__img{grid-row:span 2;display:grid;place-items:center;width:84px;height:84px;border-radius:50%;background:radial-gradient(circle,rgba(255,214,0,.35),transparent 70%)}.gift-orn__img img{height:64px;filter:drop-shadow(0 4px 6px rgba(0,0,0,.4))}.gift-orn__kicker{margin:0;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--gold)}.gift-orn__name{margin:0;font-size:1.2rem}.gift-orn__zaio{display:flex;align-items:center;gap:8px;margin:4px 0 0}.gift-orn__zaio .handnote{color:#ffe69a;font-size:.98rem;line-height:1.25}.zaio-avatar{width:34px;height:auto;flex:none}.gift-orn__btn{grid-column:2;justify-self:start}.p-btn.gift-orn__btn{--accent: var(--gold)}.gift-orn__hint{margin:8px 2px 0;font-size:.85rem;color:var(--ink-2)}.window.is-open .window__inside .orn-thumb{height:64%;width:auto;max-width:80%;object-fit:contain}.window.is-open .window__inside .orn-thumb.is-waiting{opacity:.55;filter:grayscale(.4)}.day-zaio{display:flex;align-items:center;gap:10px;margin:2px 0 10px}.day-zaio .handnote{color:#1b3a6b;font-size:1.05rem;line-height:1.3}.day-zaio .zaio-avatar{width:40px}.day-sec{display:grid;gap:8px;margin-top:12px}.day-sec__title{display:flex;align-items:center;gap:6px;margin:0;font-size:.8rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:color-mix(in srgb,var(--type) 75%,#000)}.day-sec__opt{font-weight:500;text-transform:none;letter-spacing:0;color:var(--ink-2)}.day-skill{margin:14px 0 0;padding:10px 12px;border-radius:12px;background:var(--soft);line-height:1.5}.day-skill__label{display:inline-flex;align-items:center;gap:5px;font-weight:700;color:color-mix(in srgb,var(--type) 75%,#000)}.day-box{display:flex;gap:8px;margin:12px 0 0;padding:10px 12px;border-radius:12px;line-height:1.5}.day-box svg{flex:none;margin-top:3px}.day-box--remember{display:block;background:#e3f6ec;color:#0b4f37}.day-box--warn{background:#fff4d6;color:#6b4a00}.act{margin:0}.act+.act,.prompt+.act,.act+.prompt{margin-top:4px}.act--note,.act--gift,.act--link{padding:12px 14px;border-radius:14px;background:#fff;border:1.5px solid var(--line)}.act--link{display:grid;gap:6px;justify-items:start}.act__kicker{margin:0 0 4px;font-size:.8rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2)}.act__text{margin:0;line-height:1.5}.act__text--small{font-size:.9rem;color:var(--ink-2)}.prompt__intro{margin:0 0 8px}.gen-form{display:grid;gap:10px;margin-top:10px;justify-items:start}.gen-form .field{width:100%}.quiz__a.is-wrong{border-color:#d0302c;background:#fdeceb;color:#9c1310}.quiz__then{margin-top:10px}.match{list-style:none;margin:0 0 10px;padding:0;display:grid;gap:8px}.match__row{display:grid;grid-template-columns:minmax(90px,.6fr) 1fr auto;align-items:center;gap:8px}.match__label{font-weight:600}.match__select{min-height:44px}.match__row.is-right .match__select{border-color:var(--green)}.match__row.is-wrong .match__select{border-color:#d0302c}.match__mark{font-size:.85rem;font-weight:600;color:#9c1310}.match__row.is-right .match__mark{color:#0b6e4d}.hunt__img{position:relative;border-radius:12px;overflow:hidden;cursor:crosshair;touch-action:manipulation}.hunt__img img{display:block;width:100%;height:auto}.hunt__ring{position:absolute;aspect-ratio:1;border:3px solid #ffe873;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 2px #00000059,0 0 16px #ffe873cc;pointer-events:none}.hunt__ring.is-shown{border-style:dashed}.hunt__miss{position:absolute;width:22px;height:22px;border-radius:50%;border:2px solid rgba(255,255,255,.85);transform:translate(-50%,-50%);animation:miss .6s ease-out both;pointer-events:none}@keyframes miss{0%{opacity:1;transform:translate(-50%,-50%) scale(.5)}to{opacity:0;transform:translate(-50%,-50%) scale(1.6)}}.hunt__list{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px}.hunt__list li{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:999px;background:var(--paper-2);font-size:.88rem}.hunt__list li.is-found{background:#e3f6ec;color:#0b6e4d;font-weight:600}.hunt__dot{width:8px;height:8px;border-radius:50%;border:1.5px solid currentColor;opacity:.6}.favorite{border:1.5px dashed color-mix(in srgb,var(--type) 40%,transparent)}.favorite legend{padding:0 4px}.favorite__list{display:grid;gap:6px;margin-top:8px;max-height:320px;overflow:auto}.favorite__item{display:flex;align-items:center;gap:10px;min-height:44px;padding:4px 10px;border-radius:10px;border:1.5px solid var(--line);background:var(--paper);cursor:pointer}.favorite__item img{height:28px;width:28px;object-fit:contain}.favorite__item.is-chosen{border-color:var(--gold);background:#fff8d6}.favorite__item input{accent-color:#b88a00}.gift-orn__done{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:4px 0 0;color:#bff0d8;font-weight:600}.gift-orn .gift-orn__again{--accent: var(--gold);color:#fff;border-color:#fff6}.day-sources{margin-top:14px;font-size:.85rem;color:var(--ink-2)}.day-sources summary{cursor:pointer;font-weight:600;min-height:32px;display:flex;align-items:center}.day-sources ul{margin:4px 0 0;padding-left:1.2em;display:grid;gap:4px}.day-sources a{color:#0b5fa5;overflow-wrap:anywhere}@media (max-width: 760px){.gift-orn__btn{grid-column:1 / -1;justify-self:stretch}.match__row{grid-template-columns:1fr;gap:4px}}@media (prefers-reduced-motion: reduce){.hunt__miss{animation:none;opacity:0}}.collection{display:grid;gap:16px}.collection__count{display:flex;align-items:baseline;gap:10px}.collection__big{margin:0;font-size:1.4rem;font-weight:600}.collection__big strong{font-size:2.4rem}.collection__count .handnote{margin:0;font-size:1.15rem}.orn-grid{list-style:none;margin:0;padding:14px;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;border-radius:22px;background:#1d2a44 var(--paper-grain)}.orn-slot{display:grid;justify-items:center;align-content:center;gap:4px;aspect-ratio:.82;padding:6px 4px;border-radius:12px;color:#f2eee68c;text-align:center}.orn-slot.is-hung{background:#ffffff14;color:#fff}.orn-slot.is-waiting{outline:1.5px dashed var(--gold);outline-offset:-1.5px;color:var(--gold)}.orn-slot.is-future{outline:1.5px dashed rgba(242,238,230,.22);outline-offset:-1.5px}.orn-slot.is-eve.is-future{outline-color:#ffd60080;color:#ffd600bf}.orn-slot__num{font-size:1.3rem;font-weight:700}.orn-slot__label{font-size:.7rem;line-height:1.15}.orn-slot__label:empty{display:none}.collection__note{display:flex;gap:8px;margin:0;color:var(--ink-2);font-size:.92rem}.collection__note svg{flex:none;margin-top:3px}.orn-slot__btn{all:unset;display:contents;cursor:pointer}.orn-slot img{height:44px;width:44px;object-fit:contain;filter:drop-shadow(0 2px 3px rgba(0,0,0,.4))}.orn-slot.is-waiting{cursor:pointer}.orn-slot.is-waiting:hover{background:#ffd6001a}.orn-slot button.orn-slot__open{all:unset;position:absolute;top:0;right:0;bottom:0;left:0;border-radius:12px;cursor:pointer}.orn-slot{position:relative}.orn-slot button.orn-slot__open:focus-visible{outline:3px solid var(--gold);outline-offset:2px}@media (max-width: 760px){.orn-grid{grid-template-columns:repeat(4,minmax(0,1fr));padding:10px;gap:8px}}.poll{display:grid;gap:16px}.poll__intro{margin:0;color:var(--ink-2)}.poll__total{margin:0;font-weight:700}.poll__loading{margin:0;color:var(--ink-2)}.poll__q{display:grid;gap:6px;padding:14px 16px;border-radius:18px;background:#fff var(--paper-grain);box-shadow:0 12px 24px -18px rgba(var(--shadow-paper),.7)}.poll__title{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin:0 0 2px;font-size:1rem}.poll__n{font-size:.8rem;font-weight:500;color:var(--ink-2)}.poll__rows{list-style:none;margin:0;padding:0;display:grid;gap:6px}.poll__row{display:grid;grid-template-columns:minmax(0,1fr) 46px;grid-template-areas:"label pct" "bar bar";gap:3px 8px;align-items:center}.poll__label{grid-area:label;font-size:.92rem}.poll__pct{grid-area:pct;text-align:right;font-weight:700;font-size:.9rem}.poll__bar{grid-area:bar;position:relative;height:8px;border-radius:999px;background:#141a2312;overflow:hidden}.poll__bar:after{content:"";position:absolute;inset:0 auto 0 0;width:var(--p);border-radius:inherit;background:#0b7f5a;transition:width .5s var(--ease)}.poll__row.is-mine .poll__label{font-weight:700}.poll__row.is-mine .poll__bar:after{background:#ffb400}.poll__vote{display:grid;gap:10px;justify-items:start;padding:14px 16px;border-radius:18px;background:#fff8e1 var(--paper-grain)}.poll__vote p{margin:0}.poll__vote-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;width:100%}.poll__edit{--accent: #0b7f5a;min-height:40px;padding:6px 12px;font-size:.9rem}.poll__vote .xmas__form{justify-self:stretch}.poll__vote .p-btn{--accent: #0b7f5a}.poll__results-title{margin:6px 0 -6px;font-size:1.05rem}.poll__mine{margin:0;padding-left:1.1em;font-size:.92rem}.poll__mine span{color:var(--ink-2)}.poll__ok{display:flex;gap:6px;align-items:center;color:#0b7f5a;font-weight:700}.poll__msg{font-weight:600}.poll__privacy{font-size:.8rem;color:var(--ink-2)}@media (prefers-reduced-motion: reduce){.poll__bar:after{transition:none}}.orn image{filter:drop-shadow(0 1.5px 1.5px rgba(10,20,30,.45))}.orn{transform-box:fill-box;transform-origin:50% 0;animation:orn-sway 5s ease-in-out infinite alternate;animation-delay:calc(var(--i) * -.7s)}@keyframes orn-sway{0%{transform:rotate(-3deg)}to{transform:rotate(3deg)}}.orn--landed{animation:orn-land .9s cubic-bezier(.3,1.4,.5,1) both}@keyframes orn-land{0%{transform:translateY(-14px) scale(.6);opacity:0}to{transform:none;opacity:1}}.orn-sparkle{fill:none;stroke:#ffe873;stroke-width:2;opacity:0;animation:sparkle 1.2s .5s ease-out both;transform-box:fill-box;transform-origin:center}@keyframes sparkle{0%{opacity:.9;transform:scale(.4)}to{opacity:0;transform:scale(1.4)}}.orn-trail{fill:none;stroke:#ffe873d9;stroke-width:2.4;stroke-dasharray:2 9;stroke-linecap:round}.bulbs circle{filter:drop-shadow(0 0 5px currentColor) drop-shadow(0 0 7px rgba(255,255,255,.7));animation:bulb-twinkle 1.1s ease-in-out infinite alternate}.bulbs.is-still circle{animation:none}@keyframes bulb-twinkle{0%{opacity:1}to{opacity:.6}}.orn-layer.is-festive .orn image{filter:drop-shadow(0 0 6px rgba(255,220,120,.85)) drop-shadow(0 1.5px 1.5px rgba(10,20,30,.45))}.zaio{cursor:pointer;outline:none}.zaio__shadow{fill:#3a4658;opacity:.35}.zaio__body{transform-box:fill-box;transform-origin:50% 100%;animation:zaio-idle 4.2s ease-in-out infinite}@keyframes zaio-idle{0%,to{transform:none}50%{transform:translateY(-2px) rotate(-1.5deg)}}.zaio__hit{fill:transparent;stroke:transparent;stroke-width:3;stroke-dasharray:6 6}.zaio:hover .zaio__hit,.zaio:focus-visible .zaio__hit{stroke:var(--gold);fill:#ffd60014}.zaio-note{position:absolute;z-index:3;width:min(250px,62vw);padding:10px 34px 12px 14px;border-radius:14px 14px 14px 4px;background:var(--paper) var(--paper-grain);color:var(--ink);transform:translateY(-18%) rotate(-1deg);box-shadow:0 12px 26px -10px #0000008c;animation:note-in .42s var(--ease) both}.zaio-note:after{content:"";position:absolute;left:-9px;top:22px;border-style:solid;border-width:10px 10px 0 0;border-color:transparent var(--paper) transparent transparent}@keyframes note-in{0%{opacity:0;transform:translate(-6px,-18%) rotate(-1deg) scale(.96)}}.zaio-note--docked{position:relative;margin:-6px auto 10px;width:min(380px,calc(100% - 24px));padding-left:62px;border-radius:14px;transform:rotate(-.6deg);animation-name:note-dock-in}.zaio-note--docked:after{display:none}@keyframes note-dock-in{0%{opacity:0;transform:translateY(8px)}}.zaio-note__avatar{position:absolute;left:10px;top:50%;width:44px;transform:translateY(-50%)}.zaio-note__who{margin:0;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#0b7f5a}.zaio-note__text{margin:2px 0 8px;font-family:Kalam,cursive;font-weight:700;color:#1b3a6b;line-height:1.3;font-size:1.02rem}.zaio-note .zaio-note__btn{--accent: var(--purple);min-height:36px;padding:4px 12px;font-size:.9rem}.zaio-note__close{position:absolute;top:4px;right:4px;width:30px;height:30px}.advent-card__orn{display:inline-flex;align-items:center;gap:6px;margin-top:3px;font-size:.8rem;color:#ffffffd9}.orn-dot{width:9px;height:9px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#ff8a7a,#d42a20);box-shadow:0 0 0 1.5px #ffd600cc}.finale-card{--house: var(--purple);position:absolute;z-index:4;left:50%;bottom:6%;width:min(420px,calc(100% - 32px));padding:22px 20px 16px;border-radius:18px;background:var(--paper) var(--paper-grain);color:var(--ink);text-align:center;transform:translate(-50%) rotate(-1deg);box-shadow:0 24px 50px -16px #000000b3;animation:finale-in .7s .3s cubic-bezier(.3,1.3,.5,1) both}@keyframes finale-in{0%{opacity:0;transform:translate(-50%) translateY(30px) rotate(-4deg) scale(.92)}}.finale-card__kicker{margin:0;font-size:1.1rem}.finale-card__title{margin:2px 0 6px;font-size:1.6rem;line-height:1.15}.finale-card__text{margin:0 0 12px}.finale-card__actions{display:flex;justify-content:center;flex-wrap:wrap;gap:10px}@media (max-width: 760px){.finale-card{position:static;transform:rotate(-1deg);margin:8px auto 0;animation:none}}@media (prefers-reduced-motion: reduce){.orn,.orn--landed,.orn-sparkle,.zaio__body,.zaio-note,.finale-card{animation:none}.orn-sparkle{display:none}}.install{--house: var(--green);width:min(480px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:0;border:0;border-radius:24px;background:var(--paper) var(--paper-grain);color:var(--ink);color-scheme:light;box-shadow:0 30px 60px -20px #0009}.install::backdrop{background:#070a0f73}.install[open]{animation:confirm-in .26s var(--ease)}.install__inner{position:relative;display:grid;gap:12px;padding:22px 20px 18px}.install__close{position:absolute;top:10px;right:10px}.install__zaio{justify-self:center;height:92px;margin-top:-4px}.install__title{margin:0;text-align:center;font-size:1.4rem;line-height:1.2}.install__lead{margin:0;text-align:center;color:var(--ink-2)}.install__os{width:100%}.install__os button{flex:1}.install__how{display:grid;gap:10px}.install__native{justify-self:center}.install__or{margin:0;font-size:.88rem;color:var(--ink-2)}.install__steps{margin:0;padding-left:1.4em;display:grid;gap:6px}.install__steps li::marker{font-weight:700;color:var(--green)}.install__warn{background:#fff4d6;border-color:#f0d48a;color:#6b4a00;font-size:.9rem}.install__backup{display:flex;gap:8px;flex-wrap:wrap}.install__data{display:flex;gap:8px;margin:2px 0 0;padding:10px 12px;border-radius:12px;background:var(--paper-2);color:var(--ink-2);font-size:.86rem}.install__data svg{flex:none;margin-top:3px}.install__later{justify-self:center}.install__data-sec{display:grid;gap:8px;margin-top:4px;padding-top:12px;border-top:1.5px dashed var(--line);scroll-margin-top:12px}.install__h{margin:0;font-size:1.1rem}.install__facts{margin:0;padding-left:1.2em;display:grid;gap:6px;font-size:.92rem;color:var(--ink-2)}.install__backup-wrap{display:grid;gap:6px}.install__msg{margin:0;font-size:.88rem;color:#0b6e4d}.install__msg:empty{display:none}.install__msg.is-err{color:#b4100d;font-weight:600}.install-offer{position:relative;z-index:5;display:flex;gap:12px;align-items:flex-start;width:min(560px,calc(100% - 24px));margin:0 auto 10px;padding:12px 40px 12px 12px;border-radius:16px;background:var(--paper) var(--paper-grain);color:var(--ink);box-shadow:0 14px 30px -14px #0009;transform:rotate(-.4deg);--house: var(--green)}.install-offer__zaio{width:54px;flex:none}.install-offer__body{min-width:0}.install-offer__title{margin:0;font-size:1.1rem;line-height:1.2}.install-offer__text{margin:4px 0 8px;font-size:.92rem;color:var(--ink-2)}.install-offer__actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.install-offer__link{min-height:44px;padding:0 4px;border:0;background:none;color:#0b5fa5;font:inherit;font-size:.9rem;text-decoration:underline;cursor:pointer}.install-offer__close{position:absolute;top:6px;right:6px}.install-offer .p-btn{--accent: var(--green)}.update-note{display:flex;gap:10px;align-items:center}@media (max-width: 760px){.install-offer__zaio{width:42px}.install-offer__actions .p-btn,.install-offer__actions .p-btn-ghost{flex:1 1 auto;justify-content:center}}@media (prefers-reduced-motion: reduce){.install[open]{animation:none}}.install__os button{justify-content:center}.poll-board{--house: #0b7f5a;position:relative;display:grid;gap:10px;width:min(100%,360px);padding:18px 16px 14px;border-radius:6px 14px 8px 12px;background:#fff8e1 var(--paper-grain);color:var(--ink);transform:rotate(-.8deg);box-shadow:0 14px 26px -10px #0000008c,inset 0 0 0 1px #2923190f}.poll-board__pin{position:absolute;top:-6px;left:50%;width:13px;height:13px;margin-left:-6px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fff2a8,var(--gold) 45%,#c79a00);box-shadow:0 2px 3px #0006}.poll-board__head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:2px 10px}.poll-board__kicker{margin:0;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#0b6e4d}.poll-board__total{margin:0;font-family:Kalam,cursive;font-weight:700;font-size:.95rem;color:#7a5300}.poll-board__state{margin:0;color:var(--ink-2);font-size:.9rem}.poll-board__q{display:grid;gap:8px}.poll-board__nav{display:grid;grid-template-columns:36px minmax(0,1fr) 36px;align-items:center;gap:6px}.poll-board__question{margin:0;text-align:center;font-weight:700;line-height:1.2}.poll-board__arrow{display:grid;place-items:center;width:36px;height:36px;border:1.5px solid var(--line);border-radius:50%;background:#fff;color:var(--ink);cursor:pointer}.poll-board__arrow.is-prev svg{transform:scaleX(-1)}.poll-board__arrow:hover{border-color:#0b7f5a}.poll-board__arrow:focus-visible{outline:3px solid #0b7f5a;outline-offset:2px}.poll-board__rows{list-style:none;margin:0;padding:0;display:grid;gap:6px}.poll-board__row{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label pct" "bar bar";gap:2px 8px;align-items:center}.poll-board__label{grid-area:label;font-size:.9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.poll-board__pct{grid-area:pct;font-weight:700;font-size:.88rem}.poll-board__bar{grid-area:bar;position:relative;height:7px;border-radius:999px;background:#141a2314;overflow:hidden}.poll-board__bar:after{content:"";position:absolute;inset:0 auto 0 0;width:var(--p);border-radius:inherit;background:#0b7f5a;transition:width .5s var(--ease)}.poll-board__dots{display:flex;justify-content:center;gap:5px;margin:0}.poll-board__dots i{width:6px;height:6px;border-radius:50%;background:#141a232e}.poll-board__dots i.is-on{background:#0b7f5a}.poll-board__vote{justify-self:center}@media (max-width: 760px){.poll-board{width:auto;transform:none;border-radius:18px}}@media (prefers-reduced-motion: reduce){.poll-board__bar:after{transition:none}}@font-face{font-family:Fredoka SK;src:url(/assets/FredokaSK-Regular-BNtUrudX.woff2) format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Fredoka SK;src:url(/assets/FredokaSK-SemiBold-Csayy_YS.woff2) format("woff2");font-weight:600;font-display:swap}@font-face{font-family:Fredoka SK;src:url(/assets/FredokaSK-Bold-BDO5LZRg.woff2) format("woff2");font-weight:700;font-display:swap}@font-face{font-family:Kalam;src:url(/assets/kalam-latin-700-normal-D2H-9ISU.woff2) format("woff2");font-weight:700;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Kalam;src:url(/assets/kalam-latin-ext-700-normal-CwgfRD_T.woff2) format("woff2");font-weight:700;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{--orange: #fd7d21;--blue: #0392f1;--green: #14a876;--purple: #8435e0;--red: #f02c28;--gold: #ffd600;--paper: #fffdf7;--paper-2: #f7f3ea;--ink: #141a23;--ink-2: #526071;--ink-light: #f2eee6;--night: #0e1725;--night-paper: #1d201f;--line: rgba(20, 26, 35, .1);--ease: cubic-bezier(.2, .8, .2, 1);color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;height:100%}body{background:var(--night);color:var(--ink-light);font:400 16px/1.55 Fredoka SK,system-ui,sans-serif;-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit}.app{height:100dvh;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;padding:env(safe-area-inset-top) env(safe-area-inset-right) 0 env(safe-area-inset-left)}.top{position:relative;z-index:2;display:grid;grid-template-columns:1fr auto 1fr;align-items:start;gap:16px;padding:18px clamp(16px,3vw,40px) 0}.top__left{display:flex;flex-direction:column;align-items:flex-start;gap:18px}.top__right{display:flex;flex-direction:column;align-items:flex-end;gap:16px}.wordmark{height:30px;width:auto;display:block;margin-top:6px}.top__brand{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.lang-switch{display:inline-flex;gap:2px;margin-top:6px;padding:2px;border-radius:999px;background:#f2eee614}.lang-switch__item{min-width:34px;padding:4px 8px;border-radius:999px;color:#f2eee6b8;font-size:.75rem;font-weight:600;letter-spacing:.04em;text-align:center;text-decoration:none}.lang-switch__item:hover{color:#fff;background:#f2eee61f}.lang-switch__item:focus-visible{outline:2px solid var(--orange);outline-offset:2px}.lang-switch__item.is-current{color:var(--ink);background:#f2eee6eb}.next-note{position:relative;display:grid;justify-items:start;gap:2px;width:214px;padding:14px 16px 12px;border:0;border-radius:6px 14px 10px 12px;background:var(--paper) var(--paper-grain);color:var(--ink);text-align:left;cursor:pointer;transform:rotate(-2.2deg);box-shadow:0 10px 22px -8px #0000008c;transition:transform .22s var(--ease)}.next-note:hover{transform:rotate(-1deg) translateY(-2px)}.next-note:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.next-note__pin{position:absolute;top:-6px;left:50%;width:13px;height:13px;margin-left:-6px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fff2a8,var(--gold) 45%,#c79a00);box-shadow:0 2px 3px #0006}.next-note__label{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#0b6e4d}.next-note__title{font-weight:600;line-height:1.25}.next-note__due{display:inline-flex;align-items:center;gap:4px;margin-top:4px;padding:0 8px 0 6px;border-radius:999px;background:#fff1c9;color:#7a5300;font-size:.78rem;line-height:1.6}.advent-card{display:flex;align-items:center;gap:12px;padding:10px 16px 10px 12px;border:0;border-radius:14px 8px 14px 10px;background:var(--purple) var(--paper-grain);color:#fff;text-align:left;cursor:pointer;transform:rotate(1.8deg);box-shadow:0 10px 22px -8px #0000008c,inset 0 0 0 1px #ffffff14;transition:transform .22s var(--ease)}.advent-card:hover{transform:rotate(.6deg) translateY(-2px)}.advent-card:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.advent-card__mini{display:grid;grid-template-columns:repeat(6,7px);gap:3px;padding:6px;border-radius:8px;background:#140a2859}.advent-card__mini i{width:7px;height:7px;border-radius:2px;background:#ffffff38}.advent-card__mini i.is-ready{background:#ffffffb3}.advent-card__mini i.is-open{background:var(--gold)}.advent-card__mini i.is-today{background:#fff;box-shadow:0 0 0 1.5px var(--gold),0 0 6px 1px var(--gold);animation:today-blink 1.6s ease-in-out infinite alternate}@keyframes today-blink{0%{opacity:.55}to{opacity:1}}.advent-card__text{display:grid;line-height:1.2}.advent-card__title{font-weight:700}.advent-card__sub{font-family:Kalam,cursive;font-weight:700;color:#ffe69a;font-size:.98rem}.advent-card--status{display:none}.hero{text-align:center}.hero h1{margin:0;font-weight:700;font-size:clamp(1.6rem,3vw,2.5rem);line-height:1.05;letter-spacing:-.01em}.hero .hero__sub{margin:2px 0 0;color:#ffe69a;font-size:clamp(1rem,1.5vw,1.25rem);transform:rotate(-1.5deg)}.countdown{justify-self:end;display:inline-flex;align-items:center;gap:8px;margin:4px 0 0;padding:8px 18px 8px 14px;background:#ffd600f0;color:var(--ink);font-weight:600;font-size:.95rem;white-space:nowrap;transform:rotate(1.5deg);filter:drop-shadow(0 6px 10px rgba(0,0,0,.35));clip-path:polygon(0 8%,3% 0,50% 5%,97% 0,100% 8%,98.5% 50%,100% 92%,96% 100%,50% 95%,4% 100%,0 92%,1.5% 50%)}.countdown strong{font-size:1.2rem}.main{container-type:size;min-height:0;display:grid;place-items:center;padding:0 clamp(8px,2vw,24px);margin-top:-3vh;transition:padding .36s var(--ease)}.stage{position:relative;aspect-ratio:var(--ratio);width:min(100cqw,calc(100cqh * var(--ratio)))}.scene{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;-webkit-mask-image:radial-gradient(ellipse 76% 72% at 50% 50%,#000 68%,transparent 100%);mask-image:radial-gradient(ellipse 76% 72% at 50% 50%,#000 68%,transparent 100%)}.hotspot{cursor:pointer;outline:none}.hotspot polygon{fill:#ffd60000;stroke:#ffd60000;stroke-width:2.5;stroke-linejoin:round;stroke-dasharray:9 7;vector-effect:non-scaling-stroke;transition:fill .22s var(--ease),stroke .22s var(--ease)}.hotspot.is-hot polygon{fill:#ffd6001a;stroke:#ffd600e6}.hotspot:focus-visible polygon{fill:#ffd6001f;stroke:var(--gold);stroke-width:3.5}.is-debug .hotspot polygon{fill:#fd7d2140;stroke:var(--orange);stroke-dasharray:none}.labels{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.label{position:absolute;transform:translate(-50%,-100%);display:inline-flex;align-items:center;gap:.45em;padding:.42em .85em;border-radius:999px;background:var(--paper);color:var(--ink);font-weight:600;font-size:clamp(.72rem,1.05cqw,.95rem);white-space:nowrap;box-shadow:0 8px 22px #00000059;opacity:.92;transition:transform .26s var(--ease),opacity .26s var(--ease),box-shadow .26s var(--ease)}.label:after{content:"";position:absolute;left:50%;bottom:-4px;width:9px;height:9px;background:inherit;transform:translate(-50%) rotate(45deg);border-radius:2px}.label i{width:.7em;height:.7em;border-radius:3px;display:block}.label.is-hot{opacity:1;transform:translate(-50%,calc(-100% - 4px));box-shadow:0 0 0 3px var(--gold),0 12px 26px #0006}.label--below{transform:translate(-50%)}.label--below:after{bottom:auto;top:-4px}.label--below.is-hot{transform:translate(-50%,4px)}.star-glow{transform-box:fill-box;transform-origin:center;animation:glow 3.6s ease-in-out infinite alternate;pointer-events:none}@keyframes glow{0%{opacity:.55;transform:scale(.94)}to{opacity:1;transform:scale(1.08)}}.scene-bulb{opacity:0;transition:opacity .5s var(--ease);transition-delay:calc(var(--i) * 70ms)}.scene-bulb.is-on{opacity:1}.scene-gift{opacity:0;transform:translateY(6px);transform-box:fill-box;transform-origin:50% 100%;transition:opacity .42s var(--ease),transform .52s cubic-bezier(.34,1.56,.64,1);transition-delay:calc(var(--i) * 90ms)}.scene-gift--extra{transform:translateY(8px) scale(.6)}.scene-gift.is-on{opacity:1;transform:none}.mail{opacity:0;transition:opacity .4s var(--ease)}.mail.is-on{opacity:1}.mail__glow{transform-box:fill-box;transform-origin:center;animation:glow 2.8s ease-in-out infinite alternate}.mail__letter{animation:letter-bob 3.2s ease-in-out infinite;transform-box:fill-box}@keyframes letter-bob{50%{translate:0 -2px}}.is-celebrating .star-glow{animation-duration:1.2s}.confetti{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.confetti span{position:absolute;top:8%;border-radius:1px;opacity:0;animation:confetti linear forwards}@keyframes confetti{0%{opacity:0;transform:translate(0) rotate(0)}8%{opacity:1}85%{opacity:1}to{opacity:0;transform:translate(var(--drift),70vh) rotate(var(--spin))}}.snow{position:absolute;top:-4%;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.snow span{position:absolute;top:-12px;background:var(--paper);border-radius:1.5px;box-shadow:0 1px 2px #00000040;animation:fall linear infinite;will-change:transform}@keyframes fall{0%{transform:translateZ(0) rotate(var(--spin))}to{transform:translate3d(var(--drift),110cqh,0) rotate(calc(var(--spin) + 260deg))}}.status{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;padding:2px 16px 6px}.status__item{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:6px 14px 6px 12px;border-radius:999px;border:1px solid rgba(242,238,230,.14);background:#1d201f99;color:var(--ink-light);font-size:.9rem;cursor:pointer;transition:background .18s var(--ease),transform .18s var(--ease)}.status__item:hover{background:#1d201ff2;transform:translateY(-1px)}.status__item:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.status__item i{width:10px;height:10px;border-radius:3px;display:block;flex:none}.status__title{font-weight:600}.status__short{display:none}.status__value{color:#f2eee6b3}.status__next{display:none}.storage-note{display:flex;justify-content:center;align-items:center;gap:6px;margin:0;padding:2px 16px calc(12px + env(safe-area-inset-bottom));color:#f2eee680;font-size:.78rem}.panel{--panel-bg: #fffdf7;padding:0;border:0;color:var(--ink);background:var(--panel-bg) var(--paper-grain);border-radius:26px;box-shadow:-20px 0 60px #00000059;width:min(620px,calc(100vw - 24px));height:calc(100dvh - 24px);max-width:none;max-height:none;margin:12px 12px 12px auto;overflow:hidden;color-scheme:light}.panel[data-house=posta]{width:min(720px,calc(100vw - 24px))}.panel::backdrop{background:#070a0f4d}.panel[open]{animation:panel-in .36s var(--ease)}@keyframes panel-in{0%{opacity:0;transform:translate(32px)}}.panel__inner{height:100%;display:grid;grid-template-rows:auto minmax(0,1fr)}.panel__head{position:relative;z-index:1;display:flex;align-items:flex-start;gap:12px;padding:22px 22px 20px 26px;background:var(--house) var(--paper-grain);color:var(--ink);box-shadow:0 6px 14px -8px #00000059}.panel[data-house=posta] .panel__head{background:#f6edda var(--paper-grain);padding-top:30px}.panel[data-house=posta] .panel__head:before{content:"";position:absolute;left:0;right:0;top:0;height:10px;background:repeating-linear-gradient(-45deg,var(--red) 0 14px,#fffdf7 14px 22px,var(--blue) 22px 36px,#fffdf7 36px 44px)}.panel__fold{position:absolute;right:0;bottom:-18px;border-style:solid;border-width:18px 18px 0 0;border-color:color-mix(in srgb,var(--house) 62%,#000) transparent transparent transparent;opacity:.5}.panel[data-house=posta] .panel__fold{border-top-color:#cbbd9c}.panel__titles{flex:1;min-width:0}.panel__head .panel__note{margin:0;font-size:1.1rem;color:inherit;opacity:.85;transform:rotate(-1deg);transform-origin:left}.panel__head h2{margin:0;font-size:clamp(1.6rem,3vw,2rem);font-weight:700;line-height:1.1}.panel__close{flex:none;display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:14px;background:#fffdf7e0;color:var(--ink);cursor:pointer;box-shadow:0 3px 8px #00000026}.panel__close:hover{background:#fff}.panel__close:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.panel__body{overflow-y:auto;overscroll-behavior:contain;padding:24px 24px 28px}.panel[data-house=advent] .panel__head{color:#fff}.panel[data-house=advent] .panel__close{color:var(--ink)}@media (min-width: 1100px){.app.has-panel .main,.app.has-panel .top,.app.has-panel .status,.app.has-panel .storage-note{padding-right:min(650px,46vw)}.app.has-panel .top__right{display:none}.app.has-panel .hero h1{white-space:nowrap;font-size:clamp(1.5rem,2.4vw,2.2rem)}.app.has-panel .status,.app.has-panel .storage-note{display:none}.app.has-panel .main{margin-top:0;padding-bottom:16px}}@media (prefers-reduced-motion: reduce){.star-glow{animation:none;opacity:.8}.scene-bulb,.scene-gift,.mail{transition:none}.advent-card__mini i.is-today,.mail__glow,.mail__letter{animation:none}.label,.hotspot polygon,.main{transition:none}.panel[open]{animation:none}}.town-board{justify-self:center;margin:4px 16px 10px}@media (min-width: 1100px) and (min-aspect-ratio: 1/1){.town-board{grid-row:2;grid-column:1;align-self:end;justify-self:start;z-index:3;width:clamp(260px,22vw,330px);margin:0 0 18px clamp(16px,2.5vw,40px)}.app.has-panel .town-board{display:none}.main{grid-row:2;grid-column:1}}@media (max-width: 760px){.top__brand{gap:10px}.lang-switch{margin-top:2px}.lang-switch__item{min-width:30px;padding:3px 6px;font-size:.7rem}.app{height:auto;min-height:100dvh;grid-template-rows:auto auto auto auto;align-content:safe center}.top{grid-template-columns:auto 1fr;grid-template-areas:"logo count" "hero hero";gap:10px;padding-top:14px}.top__left{grid-area:logo}.top__right{grid-area:count}.next-note,.top .advent-card{display:none}.wordmark{height:24px;margin-top:4px}.countdown{margin:0;padding:6px 14px 6px 10px;font-size:.82rem}.countdown strong{font-size:1.05rem}.hero{grid-area:hero;margin-top:2px}.main{container-type:inline-size;margin-top:0;padding:0 4px}.stage{width:100cqw}.label{font-size:clamp(.68rem,2.9cqw,.85rem)}.status{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;padding:4px 12px 8px;align-content:start}.status__next{display:block;max-width:100%;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;color:#ffe69a}.advent-card--status{display:flex;transform:none;min-height:76px;border-radius:18px;padding:10px 12px;gap:10px}.advent-card--status:hover{transform:none}.advent-card--status .advent-card__mini{grid-template-columns:repeat(6,5px);gap:2px;padding:5px}.advent-card--status .advent-card__mini i{width:5px;height:5px}.advent-card--status .advent-card__title{font-size:.95rem}.advent-card--status .advent-card__sub{font-size:.85rem}.status__item{flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;min-height:76px;padding:10px 12px;border-radius:18px;text-align:left;background:#1d201fd9}.status__item i{width:22px;height:6px;border-radius:3px;margin-bottom:4px}.status__item{min-width:0}.status__long{display:none}.status__short{display:inline;font-size:1rem}.status__value{font-size:.78rem;line-height:1.25}.storage-note{align-items:center;padding-top:6px}.panel,.panel[data-house=posta]{width:100%;height:94dvh;margin:auto 0 0;border-radius:26px 26px 0 0}.panel[open]{animation-name:sheet-in}.panel__head{padding:20px 16px 16px 18px}.panel[data-house=posta] .panel__head{padding-top:26px}.panel__body{padding:18px 14px 24px}.panel__body{padding-bottom:calc(24px + env(safe-area-inset-bottom))}}@keyframes sheet-in{0%{opacity:0;transform:translateY(40px)}}.main{position:relative}.notice--home{position:absolute;top:8px;left:50%;z-index:5;width:min(560px,calc(100% - 32px));transform:translate(-50%);box-shadow:0 10px 24px -12px #00000080}.storage-note__erase{margin-left:6px;padding:4px 6px;border:0;border-radius:6px;background:transparent;color:#f2eee6b8;font:inherit;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.storage-note__erase:hover{color:#fff}.storage-note__erase:focus-visible{outline:3px solid var(--gold);outline-offset:1px}.storage-note{flex-wrap:wrap;row-gap:4px;text-align:center}.storage-note--anon,.storage-note--checking{color:#f2eee6c7}.storage-note__login{margin-left:6px;padding:5px 12px;border:0;border-radius:999px;background:var(--gold);color:#1d201f;font:inherit;font-weight:600;cursor:pointer}.storage-note__login:hover{filter:brightness(1.08)}.storage-note__login:focus-visible{outline:3px solid #fff;outline-offset:2px}a.storage-note__erase{display:inline-block}:root{--paper-grain: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .32 0 0 0 0 .27 0 0 0 0 .2 0 0 0 .09 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");--shadow-paper: 41, 35, 25;--sheet-back: #f4eee1}.p-btn{--accent: var(--house, var(--red));position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:10px 22px;border:0;background:transparent;color:var(--ink);font-family:Kalam,cursive;font-weight:700;font-size:1.12rem;line-height:1.1;white-space:nowrap;cursor:pointer;transform:rotate(-.4deg);transition:transform .18s var(--ease);-webkit-tap-highlight-color:transparent}.p-btn:before,.p-btn:after{content:"";position:absolute;z-index:-1;pointer-events:none}.p-btn:before{top:3px;right:2px;bottom:4px;left:3px;border-radius:6px 12px 5px 9px;background:color-mix(in srgb,var(--accent) 72%,var(--paper));box-shadow:0 5px 12px rgba(var(--shadow-paper),.16);transform:skew(-3deg) rotate(-.8deg)}.p-btn:after{top:6px;right:6px;bottom:2px;left:6px;border-radius:9px 5px 11px 6px;background:color-mix(in srgb,var(--accent) 40%,var(--paper));transform:rotate(1.2deg)}.p-btn:hover{transform:translateY(-1px) rotate(-.4deg)}.p-btn:hover:before{background:var(--accent)}.p-btn:active{transform:translateY(1px) scale(.98)}.p-btn--on-dark{color:var(--ink)}.p-btn-ghost{--accent: var(--house, var(--red));display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 16px;border:2px dashed color-mix(in srgb,var(--accent) 55%,transparent);border-radius:14px;background:transparent;color:var(--ink);font-weight:600;cursor:pointer;transition:background .18s var(--ease),border-color .18s var(--ease)}.p-btn-ghost:hover{background:color-mix(in srgb,var(--accent) 8%,transparent);border-color:var(--accent)}.icon-btn{display:inline-grid;place-items:center;width:40px;height:40px;border:0;border-radius:12px;background:transparent;color:var(--ink-2);cursor:pointer;transition:background .16s var(--ease),color .16s var(--ease)}.icon-btn:hover{background:#141a230f;color:var(--ink)}.icon-btn--danger:hover{background:#fde3e2;color:#b4100d}.p-btn:focus-visible,.p-btn-ghost:focus-visible,.icon-btn:focus-visible,.p-input:focus-visible,.seg button:focus-visible,.paper-check:has(input:focus-visible){outline:3px solid var(--orange);outline-offset:2px}.p-input{width:100%;min-height:48px;padding:10px 14px;border:1.5px solid rgba(20,26,35,.16);border-radius:14px;background:#fff;color:var(--ink);font:inherit;box-shadow:inset 0 2px #141a230a}.p-input::placeholder{color:#8a94a3}.p-input--num{font-variant-numeric:tabular-nums;text-align:right}.field-label{display:block;font-weight:600;font-size:.9rem;margin-bottom:6px}.sheet{position:relative;border-radius:20px;background:#fffefa var(--paper-grain);box-shadow:0 1px #fffc inset,0 8px 20px -10px rgba(var(--shadow-paper),.35);border:1px solid rgba(20,26,35,.07)}.sheet--stacked:before{content:"";position:absolute;top:6px;right:-4px;bottom:-6px;left:4px;z-index:-1;border-radius:20px;background:var(--sheet-back);transform:rotate(1deg);box-shadow:0 6px 14px -8px rgba(var(--shadow-paper),.3)}.handnote{font-family:Kalam,cursive;font-weight:700;color:#1b3a6b}.num{font-variant-numeric:tabular-nums}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.seg{display:inline-flex;padding:3px;gap:2px;border-radius:12px;background:#141a230f}.seg button{display:inline-flex;align-items:center;gap:5px;min-height:36px;padding:4px 10px;border:0;border-radius:9px;background:transparent;color:var(--ink-2);font-size:.82rem;font-weight:600;cursor:pointer}.seg button[aria-checked=true]{background:#fff;color:var(--ink);box-shadow:0 2px 6px rgba(var(--shadow-paper),.16)}.seg button[aria-checked=true][data-status=planned]{color:#075c9a}.seg button[aria-checked=true][data-status=bought]{color:#a4470a}.seg button[aria-checked=true][data-status=wrapped]{color:#0b6e4d}.paper-check{position:relative;display:inline-grid;place-items:center;width:30px;height:30px;flex:none;cursor:pointer}.paper-check input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;margin:0;cursor:pointer}.paper-check__box{width:26px;height:26px;border-radius:7px 9px 6px 8px;border:2px solid rgba(20,26,35,.35);background:#fff;display:grid;place-items:center;color:#fff;transition:background .2s var(--ease),border-color .2s var(--ease),transform .2s var(--ease)}.paper-check__box svg{opacity:0;transform:scale(.6);transition:opacity .2s var(--ease),transform .26s var(--ease)}.paper-check input:checked+.paper-check__box{background:var(--green);border-color:var(--green);transform:rotate(-4deg)}.paper-check input:checked+.paper-check__box svg{opacity:1;transform:scale(1)}.field{display:grid;align-content:start}.p-input.is-invalid{border-color:#d0302c;box-shadow:0 0 0 3px #d0302c1f}.field-error{display:flex;gap:5px;margin-top:5px;color:#b4100d;font-size:.85rem;font-weight:600;line-height:1.3}.p-btn--danger{--accent: #e0322e}.confirm{color:var(--ink);width:min(420px,calc(100vw - 32px));padding:0;border:0;background:transparent;overflow:visible}.confirm::backdrop{background:#0e16286b}.confirm[open]{animation:confirm-in .22s var(--ease)}@keyframes confirm-in{0%{opacity:0;transform:translateY(8px) scale(.98)}}.confirm__inner{padding:20px 20px 16px}.confirm__title{color:var(--ink);font-family:Fredoka SK,sans-serif;display:flex;align-items:center;gap:8px;margin:0 0 6px;font-size:1.2rem;line-height:1.25}.confirm__title svg{color:#c4201c;flex:none}.confirm__body{margin:0 0 16px;color:var(--ink-2);line-height:1.45;white-space:pre-line}.confirm__actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.toast{position:fixed;left:50%;bottom:max(18px,env(safe-area-inset-bottom));z-index:50;display:flex;align-items:center;gap:6px;max-width:calc(100vw - 32px);padding:6px 6px 6px 16px;border-radius:14px;background:#1d2433;color:#fff;box-shadow:0 12px 28px -10px #00000073;transform:translate(-50%);animation:toast-in .24s var(--ease)}.toast--panel{position:absolute}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,10px)}}.toast>span{font-weight:600}.toast__undo,.toast__close{display:inline-flex;align-items:center;gap:5px;min-height:40px;padding:0 12px;border:0;border-radius:10px;background:transparent;color:#ffd36b;font:inherit;font-weight:700;cursor:pointer}.toast__close{padding:0 10px;color:#c9d1de}.toast__undo:hover,.toast__close:hover{background:#ffffff1a}.toast__undo:focus-visible,.toast__close:focus-visible{outline:3px solid var(--orange);outline-offset:1px}.notice{display:flex;align-items:flex-start;gap:10px;padding:10px 10px 10px 14px;border-radius:14px;background:#fff6dc;border:1px solid #f1d27a;color:#5e4300;font-size:.92rem;line-height:1.4}.notice svg{flex:none;margin-top:2px}.notice--error{background:#fde8e6;border-color:#f2b3ae;color:#8f1512}.notice p{margin:0;flex:1}.notice .icon-btn{width:32px;height:32px;margin:-4px -2px -4px 0;color:inherit}@media (prefers-reduced-motion: reduce){.confirm[open],.toast{animation:none}}
