@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-cyrillic-ext-wght-normal-D4X5GqEv.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-cyrillic-wght-normal-CY6AOgYE.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-vietnamese-wght-normal-U01xdrZh.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-latin-ext-wght-normal-CXYtwYOx.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-latin-wght-normal-BzFMHfZw.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font:"Nunito Variable", "Nunito", ui-rounded, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--child-sun:#f2a900;--child-sky:#2f8fe0;--child-leaf:#2f9e58;--child-berry:#e0457b;--child-plum:#7d5bd6;--child-coral:#ee6c3a;--frame-1:#ffe08a;--frame-2:#a9d8ff;--frame-3:#ffc9a3;--frame-4:#d6c4ff;--frame-5:#ffc2dc;--frame-6:#c3ecb2;--card:#fff;--card-ink:#25235f;--card-ink-soft:#5d5b8f;--ok:#1f9d4d;--ok-strong:#15803d;--ok-soft:#dcf5e0;--warn:#9a5200;--warn-soft:#ffedcc;--danger:#c0283d;--danger-soft:#ffe1e5;--radius-s:10px;--radius-m:16px;--radius-l:24px;--shadow-card:0 2px 0 #25235f0f, 0 8px 20px #25235f1a;--focus:0 0 0 3px #fff, 0 0 0 6px #5b4bdb;--ease:cubic-bezier(.2, .8, .2, 1)}:root,[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg-top:#bfe4ff;--bg-bottom:#e4f4dc;--bg-flat:#eef6ff;--ink:#25235f;--ink-soft:#55538a;--surface:#fff;--surface-2:#f3f1fb;--border:#dcd8f0;--panel:#ffffff80;--panel-border:#fffffff2;--pill:#ffffffd1;--pill-border:#fff;--nav:#ffffffc7;--nav-border:#fff;--nav-ink:#25235f;--nav-active:#ffd95a;--nav-active-ink:#25235f;--accent:#5b4bdb;--accent-ink:#fff;--accent-soft:#e8e4ff}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-top:#121a44;--bg-bottom:#1f285e;--bg-flat:#161d4a;--ink:#fff;--ink-soft:#c9cff5;--surface:#232c66;--surface-2:#2c3676;--border:#4a57a8;--panel:#5c6ac442;--panel-border:#6f7dd6;--pill:#2e3a7ce6;--pill-border:#5c6ac4;--nav:#222b66;--nav-border:#4b59ad;--nav-ink:#fff;--nav-active:#cfbdf8;--nav-active-ink:#1e1b4b;--accent:#b9a6ff;--accent-ink:#1e1b4b;--accent-soft:#343f86;--card:#f3eefc;--ok-soft:#d9f2d6;--focus:0 0 0 3px #1f285e, 0 0 0 6px #ffe08a;--shadow-card:0 2px 0 #0000002e, 0 8px 22px #00000047}*,:before,:after{box-sizing:border-box}html,body{height:100%;margin:0}body{font-family:var(--font);color:var(--ink);background:var(--bg-flat);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;-webkit-tap-highlight-color:transparent}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{box-shadow:var(--focus);outline:none}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.ft-card{--s:var(--card-size,180px);width:var(--s);height:var(--s);flex:0 0 var(--s);padding:calc(var(--s) * .06) calc(var(--s) * .05) calc(var(--s) * .07);border:calc(var(--s) * .028) solid var(--frame,var(--frame-2));border-radius:calc(var(--s) * .14);background:var(--card);color:var(--card-ink);box-shadow:var(--shadow-card);text-align:center;-webkit-user-select:none;user-select:none;transition:background-color .18s var(--ease), border-color .18s var(--ease), transform .12s var(--ease);grid-template-rows:1fr auto;justify-items:center;display:grid;position:relative;overflow:hidden}button.ft-card{appearance:none;cursor:pointer;touch-action:manipulation}button.ft-card:active{transform:scale(.97)}.ft-card[data-frame="1"]{--frame:var(--frame-1)}.ft-card[data-frame="2"]{--frame:var(--frame-2)}.ft-card[data-frame="3"]{--frame:var(--frame-3)}.ft-card[data-frame="4"]{--frame:var(--frame-4)}.ft-card[data-frame="5"]{--frame:var(--frame-5)}.ft-card[data-frame="6"]{--frame:var(--frame-6)}.ft-card__symbol{width:calc(var(--s) * .56);height:calc(var(--s) * .56);align-self:center;place-items:center;min-height:0;display:grid}.ft-card__title{width:100%;font-weight:800;font-size:calc(var(--s) * .108);letter-spacing:-.01em;-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto;-webkit-box-orient:vertical;line-height:1.12;display:-webkit-box;overflow:hidden}.ft-card__time{top:calc(var(--s) * .045);left:calc(var(--s) * .045);padding:calc(var(--s) * .012) calc(var(--s) * .04);color:var(--card-ink);font-weight:800;font-size:calc(var(--s) * .078);font-variant-numeric:tabular-nums;background:#25235f14;border-radius:999px;line-height:1.3;position:absolute}.ft-card__check{top:calc(var(--s) * .045);right:calc(var(--s) * .045);width:calc(var(--s) * .2);height:calc(var(--s) * .2);border-radius:calc(var(--s) * .05);border:calc(var(--s) * .018) solid #8b83c9;color:#0000;transition:background-color .16s var(--ease), border-color .16s var(--ease);background:#fff;place-items:center;display:grid;position:absolute}.ft-card__check svg{width:78%;height:78%}.ft-card[data-status=done]{background:var(--ok-soft);--frame:#8fd69b}.ft-card[data-status=done] .ft-card__check{background:var(--ok);border-color:var(--ok-strong);color:#fff;animation:ft-pop .26s var(--ease)}.ft-card[data-status=done] .ft-card__symbol{opacity:.82}.ft-card[data-pending=true] .ft-card__check{border-style:dashed}@keyframes ft-pop{0%{transform:scale(.6)}60%{transform:scale(1.18)}to{transform:scale(1)}}.ft-card__children{top:calc(var(--s) * .045);left:calc(var(--s) * .045);gap:calc(var(--s) * .015);display:flex;position:absolute}.ft-card[data-type=event] .ft-card__children{left:auto;right:calc(var(--s) * .045)}.ft-child{--c:var(--child-sky);background:var(--c);color:#fff;text-transform:uppercase;border-radius:50%;flex:none;place-items:center;width:1.7em;height:1.7em;font-size:.8em;font-weight:900;line-height:1;display:inline-grid;box-shadow:0 0 0 2px #fff}.ft-card .ft-child{font-size:calc(var(--s) * .07)}.ft-child[data-color=sun]{--c:var(--child-sun);color:#3b2a00}.ft-child[data-color=sky]{--c:var(--child-sky)}.ft-child[data-color=leaf]{--c:var(--child-leaf)}.ft-child[data-color=berry]{--c:var(--child-berry)}.ft-child[data-color=plum]{--c:var(--child-plum)}.ft-child[data-color=coral]{--c:var(--child-coral)}.ft-symbol{object-fit:contain;-webkit-user-drag:none;pointer-events:none;width:100%;height:100%;display:block}.ft-symbol--fallback{color:#4a4690;text-transform:uppercase;background:repeating-linear-gradient(135deg,#ece9fb 0 10px,#e2def7 10px 20px);border:2px dashed #a79fe0;border-radius:28%;place-items:center;font-size:2.4em;font-weight:900;line-height:1;display:grid;container-type:size}.ft-symbol--fallback span{font-size:46cqmin}.ft-icon{vertical-align:-.2em;flex:none;width:1.25em;height:1.25em;display:inline-block}.splash{background:linear-gradient(180deg, var(--bg-top), var(--bg-bottom));place-items:center;display:grid;position:fixed;inset:0}.splash img{animation:1.4s ease-in-out infinite alternate splash}@keyframes splash{0%{opacity:.7;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.notices{left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 84px);z-index:200;flex-direction:column;gap:8px;width:min(92vw,480px);display:flex;position:fixed;transform:translate(-50%)}.notice{border-radius:var(--radius-m);color:#fff;text-align:left;width:100%;box-shadow:var(--shadow-card);background:#25235f;border:2px solid #0000;padding:12px 16px;font-weight:700}.notice[data-kind=error]{background:var(--danger-soft);color:#7a0f1f;border-color:var(--danger)}.auth{background:linear-gradient(180deg, var(--bg-top), var(--bg-bottom));place-items:center;min-height:100dvh;padding:24px 16px;display:grid}.auth-box{border-radius:var(--radius-l);background:var(--surface);border:1px solid var(--border);width:min(100%,400px);box-shadow:var(--shadow-card);text-align:center;flex-direction:column;gap:12px;padding:28px 24px;display:flex}.auth-logo{margin:0 auto}.auth-box h1{margin:0;font-size:28px;font-weight:900}.auth-lead,.auth-note{color:var(--ink-soft);margin:0;font-weight:600}.auth-note{font-size:13px}.form{text-align:left;flex-direction:column;gap:12px;display:flex}.field{flex-direction:column;gap:4px;font-size:14px;font-weight:800;display:flex}.field>span small{color:var(--ink-soft);font-weight:600}.field input,.field select,.field textarea,.input{border-radius:var(--radius-s);border:2px solid var(--border);background:var(--surface);width:100%;min-height:48px;color:var(--ink);padding:10px 12px;font-size:16px;font-weight:600}.field textarea{resize:vertical;min-height:84px}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible,.input:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 30%, transparent)}.form-error{border-radius:var(--radius-s);background:var(--danger-soft);color:#7a0f1f;border-left:4px solid var(--danger);text-align:left;margin:0;padding:10px 12px;font-weight:700}.form-info{border-radius:var(--radius-s);background:var(--ok-soft);color:#0f5a2a;border-left:4px solid var(--ok);text-align:left;margin:0;padding:10px 12px;font-weight:700}.btn{border:2px solid var(--border);background:var(--surface);min-height:48px;color:var(--ink);touch-action:manipulation;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:16px;font-weight:800;text-decoration:none;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn--ok{background:var(--ok);border-color:var(--ok-strong);color:#fff}.btn--danger{background:var(--surface);border-color:var(--danger);color:var(--danger)}[data-theme=dark] .btn--danger{color:#ff9aa8;border-color:#ff9aa8}.btn--text{color:var(--accent);background:0 0;border-color:#0000}.btn--block{width:100%}.btn--small{min-height:44px;padding:0 14px;font-size:14px}.btn--icon{flex:none;width:48px;padding:0}.hall{--pad:clamp(6px, 1.7vh, 14px);--gap:clamp(8px, 1.1vw, 16px);--header-h:clamp(50px, 11.5vh, 88px);--nav-h:clamp(46px, 10vh, 74px);--panel-pad:clamp(6px, 1.5vh, 12px);--panel-head:clamp(24px, 5.2vh, 40px);grid-template-rows:var(--header-h) minmax(0, 1fr) var(--nav-h);color:var(--ink);background:linear-gradient(180deg, var(--bg-top), var(--bg-bottom));touch-action:manipulation;-webkit-user-select:none;user-select:none;display:grid;position:fixed;inset:0;overflow:hidden}.hall--message{text-align:center;place-items:center;padding:24px;font-size:clamp(18px,4vh,30px);font-weight:800;display:grid}.hall-sky{pointer-events:none;background:radial-gradient(circle at 92% 6%,#ffe278e6 0 6vh,#ffe27840 6vh 15vh,#0000 15vh),radial-gradient(60% 22% at 18% 104%,#8ccd788c 0 99%,#0000 100%),radial-gradient(70% 20% at 82% 106%,#78c38280 0 99%,#0000 100%);position:absolute;inset:0}[data-theme=dark] .hall-sky{background:radial-gradient(circle at 12% 18%,#fff 0 1.5px,#0000 2px),radial-gradient(circle at 31% 9%,#ffe9a8 0 1.5px,#0000 2px),radial-gradient(circle at 47% 22%,#fff 0 1px,#0000 1.5px),radial-gradient(circle at 68% 7%,#fff 0 1.5px,#0000 2px),radial-gradient(circle at 83% 19%,#ffe9a8 0 1px,#0000 1.5px),radial-gradient(circle at 94% 11%,#fff 0 1.5px,#0000 2px),radial-gradient(circle at 6% 52%,#fff 0 1px,#0000 1.5px),radial-gradient(circle at 97% 58%,#fff 0 1px,#0000 1.5px),radial-gradient(60% 20% at 15% 106%,#0d1234cc 0 99%,#0000 100%),radial-gradient(70% 18% at 85% 107%,#0d1234b3 0 99%,#0000 100%)}.hall-header{align-items:center;gap:var(--gap);padding:0 calc(var(--pad) * 1.8);grid-template-columns:1fr auto 1fr;display:grid;position:relative}.hall-clock{flex-direction:column;line-height:1.05;display:flex}.hall-clock__time{font-size:calc(var(--header-h) * .5);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-weight:900}.hall-clock__date{font-size:calc(var(--header-h) * .23);color:var(--ink-soft);font-weight:700}.hall-title{align-items:center;gap:calc(var(--header-h) * .16);padding:calc(var(--header-h) * .08) calc(var(--header-h) * .36) calc(var(--header-h) * .08) calc(var(--header-h) * .2);background:var(--pill);border:2px solid var(--pill-border);border-radius:999px;display:flex}.hall-title__icon{width:calc(var(--header-h) * .62);height:calc(var(--header-h) * .62);color:#7a4b00;font-size:calc(var(--header-h) * .34);background:#ffd95a;border-radius:50%;flex:none;place-items:center;display:grid}[data-mode=evening] .hall-title__icon{color:#ffe08a;background:#3a4699}.hall-title h1{font-size:calc(var(--header-h) * .36);margin:0;font-weight:900;line-height:1.05}.hall-title p{font-size:calc(var(--header-h) * .2);color:var(--ink-soft);white-space:nowrap;margin:0;font-weight:700}.hall-status{justify-content:flex-end;align-items:center;gap:calc(var(--gap) * .6);min-width:0;display:flex}.hall-chip{min-height:calc(var(--header-h) * .54);border:2px solid var(--pill-border);background:var(--pill);color:var(--ink);font-size:calc(var(--header-h) * .22);white-space:nowrap;border-radius:999px;align-items:center;gap:.4em;padding:0 .9em;font-weight:800;display:inline-flex}.hall-chip small{color:var(--ink-soft);font-size:.8em;font-weight:700}.hall-chip--offline{border-style:dashed}.hall-main{min-height:0;padding:var(--pad);position:relative;container-type:size}.hall-groups{--card-size:min(calc((100cqw - 2 * var(--pad) - 2 * var(--panel-pad) - 3 * var(--gap) - 8px) / 4), calc((100cqh - 3 * var(--pad) - 2 * var(--panel-head) - 4 * var(--panel-pad) - 12px) / 2));--row-w:calc(4 * var(--card-size) + 3 * var(--gap));justify-content:center;align-items:center;gap:var(--pad);flex-direction:column;height:100%;display:flex;position:relative}.hall-panel{width:calc(var(--row-w) + 2 * var(--panel-pad) + 4px);padding:var(--panel-pad);border-radius:calc(var(--card-size) * .16);background:var(--panel);border:2px solid var(--panel-border)}.hall-panel__head{height:var(--panel-head);padding:0 .2em calc(var(--panel-pad) * .5);font-size:calc(var(--panel-head) * .62);align-items:center;gap:.5em;display:flex}.hall-panel__head h2{margin:0;font-size:1em;font-weight:900;line-height:1}.hall-panel__icon{background:var(--card);color:#5b4bdb;border-radius:.4em;place-items:center;width:1.5em;height:1.5em;font-size:.9em;display:grid}.hall-panel[data-nature=todo] .hall-panel__icon{color:var(--ok-strong)}.hall-panel__count{background:var(--pill);border:2px solid var(--pill-border);font-variant-numeric:tabular-nums;border-radius:999px;align-items:center;gap:.25em;margin-left:.3em;padding:.1em .6em;font-size:.72em;font-weight:800;display:inline-flex}.hall-dots{align-items:center;gap:.1em;margin-left:auto;display:flex}.hall-dot{width:max(44px, calc(var(--panel-head) * 1.1));height:var(--panel-head);background:0 0;border:0;place-items:center;padding:0;display:grid}.hall-dot:before{content:"";width:calc(var(--panel-head) * .34);height:calc(var(--panel-head) * .34);border:2px solid var(--ink);opacity:.55;border-radius:50%}.hall-dot[aria-current=true]:before{background:var(--ink);opacity:1;width:calc(var(--panel-head) * .9);border-radius:999px}.hall-pages{width:var(--row-w);height:var(--card-size);scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;touch-action:pan-x;display:flex;overflow:auto hidden}.hall-pages::-webkit-scrollbar{display:none}.hall-page{flex:0 0 var(--row-w);grid-template-columns:repeat(4, var(--card-size));gap:var(--gap);scroll-snap-align:start;scroll-snap-stop:always;display:grid}.hall-empty{width:var(--row-w);height:var(--card-size);border-radius:calc(var(--card-size) * .14);border:2px dashed var(--panel-border);color:var(--ink-soft);font-size:calc(var(--card-size) * .12);justify-content:center;align-items:center;gap:.5em;font-weight:800;display:flex}.hall-daytabs{gap:var(--gap);width:calc((100cqw - var(--row-w) - 2 * var(--panel-pad) - 2 * var(--pad)) / 2 - var(--gap));flex-direction:column;min-width:0;max-width:150px;display:flex;position:absolute;top:50%;left:0;transform:translateY(-50%)}.hall-daytab{aspect-ratio:1.15;border:2px solid var(--pill-border);background:var(--pill);min-height:64px;color:var(--ink);border-radius:28%;flex-direction:column;justify-content:center;align-items:center;gap:.2em;font-size:clamp(12px,2.6vh,20px);font-weight:900;display:flex}.hall-daytab .ft-icon{font-size:1.5em}.hall-daytab[aria-selected=true]{background:var(--nav-active);color:var(--nav-active-ink);box-shadow:var(--shadow-card);border-color:#0000}@container (aspect-ratio<=1.95){.hall-daytabs{left:auto;right:calc(var(--pad) + 4px);top:calc(var(--pad) * .5);z-index:2;flex-direction:row;width:auto;max-width:none;position:absolute;transform:none}.hall-daytab{aspect-ratio:auto;min-height:max(44px, var(--panel-head));font-size:calc(var(--panel-head) * .5);border-radius:999px;flex-direction:row;padding:0 .9em}.hall-daytab .ft-icon{font-size:1.1em}}.hall-week{--card-size:min(calc((100cqw - 2 * var(--pad) - 6 * var(--gap) * .6 - 14 * 6px) / 7), calc((100cqh - 2 * var(--pad) - 48px) / 2.2));gap:calc(var(--gap) * .6);grid-template-columns:repeat(7,minmax(0,1fr));height:100%;display:grid}.hall-weekday{background:var(--panel);border:2px solid var(--panel-border);border-radius:18px;flex-direction:column;align-items:center;min-height:0;padding:4px;display:flex}.hall-weekday[data-today=true]{border-color:var(--nav-active);background:color-mix(in srgb, var(--nav-active) 22%, var(--panel));border-width:3px}.hall-weekday header{text-transform:capitalize;align-items:baseline;gap:.35em;padding:4px 0 6px;font-size:clamp(13px,3vh,21px);font-weight:900;display:flex}.hall-weekday__date{color:var(--ink-soft);font-size:.85em}.hall-weekday__cards{scrollbar-width:none;touch-action:pan-y;flex-direction:column;flex:1;align-items:center;gap:6px;width:100%;min-height:0;padding-bottom:4px;display:flex;overflow-y:auto}.hall-weekday__cards::-webkit-scrollbar{display:none}.hall-weekday__empty{color:var(--ink-soft);margin-top:1em;font-weight:800}.hall-family{flex-direction:column;justify-content:center;align-items:center;gap:clamp(10px,3vh,24px);height:100%;display:flex}.hall-family h2{margin:0;font-size:clamp(20px,5vh,36px);font-weight:900}.hall-family__grid{justify-content:center;gap:var(--gap);flex-wrap:wrap;display:flex}.hall-person{--size:clamp(110px, 30cqh, 190px);width:var(--size);height:var(--size);border:calc(var(--size) * .028) solid var(--frame-4);background:var(--card);color:var(--card-ink);font-weight:900;font-size:calc(var(--size) * .13);box-shadow:var(--shadow-card);border-radius:16%;flex-direction:column;justify-content:center;align-items:center;gap:.4em;display:flex}.hall-person[aria-pressed=true]{border-color:var(--ok);background:var(--ok-soft)}.hall-person__avatar{--c:var(--child-sky);aspect-ratio:1;background:var(--c);color:#fff;text-transform:uppercase;border-radius:50%;place-items:center;width:52%;font-size:1.9em;line-height:1;display:grid;overflow:hidden}.hall-person__avatar img{object-fit:contain;width:76%;height:76%}.hall-person__avatar--all{background:var(--accent-soft);color:var(--accent)}[data-theme=dark] .hall-person__avatar--all{color:#5b4bdb;background:#e8e4ff}.hall-person__avatar[data-color=sun]{--c:var(--child-sun)}.hall-person__avatar[data-color=sky]{--c:var(--child-sky)}.hall-person__avatar[data-color=leaf]{--c:var(--child-leaf)}.hall-person__avatar[data-color=berry]{--c:var(--child-berry)}.hall-person__avatar[data-color=plum]{--c:var(--child-plum)}.hall-person__avatar[data-color=coral]{--c:var(--child-coral)}.hall-nav{justify-content:center;align-items:center;gap:calc(var(--gap) * 1.5);padding:0 var(--pad) calc(var(--pad) * .8);display:flex;position:relative}.hall-nav__item{height:calc(var(--nav-h) - var(--pad) * 1.2);border:2px solid var(--nav-border);background:var(--nav);min-height:44px;color:var(--nav-ink);font-size:calc(var(--nav-h) * .3);border-radius:999px;flex:0 clamp(120px,19vw,250px);justify-content:center;align-items:center;gap:.5em;font-weight:800;display:flex}.hall-nav__item[aria-current=page]{background:var(--nav-active);color:var(--nav-active-ink);border-color:#0000;box-shadow:inset 0 -4px #0000002e}.hall-nav__item .ft-icon{font-size:1.25em}.hall-night{z-index:100;cursor:none;background:#000;border:0;position:fixed;inset:0}.hall-night:focus-visible{box-shadow:none}.pairing{color:var(--ink);background:linear-gradient(180deg, var(--bg-top), var(--bg-bottom));grid-template-columns:1fr 1fr;align-items:center;gap:4vw;padding:4vh 5vw;display:grid;position:fixed;inset:0;overflow:auto}.pairing-info h1{margin:.2em 0;font-size:clamp(22px,5.5vh,40px);font-weight:900}.pairing-info ol{margin:0;padding-left:1.3em;font-size:clamp(14px,3.2vh,22px);font-weight:700;line-height:1.5}.pairing-pad{flex-direction:column;align-items:center;gap:2.5vh;display:flex}.pairing-code{font-variant-numeric:tabular-nums;gap:.35em;font-size:clamp(20px,6vh,40px);font-weight:900;display:flex}.pairing-code span{border:2px solid var(--border);width:1.15em;height:1.5em;color:var(--card-ink);background:#fff;border-radius:.25em;place-items:center;display:grid}.pairing-code span[data-gap=true]{margin-left:.5em}.pairing-code span[data-filled=true]{border-color:var(--accent)}.pairing-keys{grid-template-columns:repeat(3,1fr);gap:1.5vh;display:grid}.pairing-key{border:2px solid var(--border);width:clamp(56px,15vh,104px);height:clamp(48px,12.5vh,86px);color:var(--card-ink);box-shadow:var(--shadow-card);background:#fff;border-radius:22%;font-size:clamp(20px,5vh,34px);font-weight:900}.pairing-key[data-kind=ok]{background:var(--ok);border-color:var(--ok-strong);color:#fff}.pairing-key:disabled{opacity:.45}@media (max-aspect-ratio:1){.pairing{grid-template-columns:1fr;align-content:start}}
