:root{--bg:#0d1017;--ivory:#efe8d8;--muted:#a9a394;--gold:#d9bb74;--glass:#10131c94;--glass-edge:#ffffff24;--ui:-apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Pretendard", "Noto Sans KR", sans-serif;--serif:"Apple Myungjo", "Nanum Myeongjo", "Noto Serif KR", Georgia, serif;--ease:cubic-bezier(.22, 1, .36, 1);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--ivory);font-family:var(--ui);-webkit-font-smoothing:antialiased;overscroll-behavior:none;margin:0}body{overflow:hidden}.app{position:fixed;inset:0}#stage{touch-action:none;cursor:grab;outline:none;width:100%;height:100%;display:block;position:absolute;inset:0}#stage.is-dragging{cursor:grabbing}[hidden]{display:none!important}.boot{background:var(--bg);text-align:center;z-index:20;transition:opacity .9s var(--ease);flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:24px;display:flex;position:fixed;inset:0}.boot.is-leaving{opacity:0;pointer-events:none}.boot-mark{color:var(--gold);margin-bottom:4px;display:flex}.boot-mark svg{width:34px;height:34px}.boot h1{font-family:var(--serif);letter-spacing:8px;color:var(--ivory);margin:0;padding-left:8px;font-size:28px;font-weight:500}.boot p{color:var(--muted);margin:0;font-size:12px;line-height:1.7}.enter{min-height:46px;color:var(--ivory);font:inherit;letter-spacing:1px;cursor:pointer;background:#d9bb741f;border:1px solid #d9bb748c;border-radius:999px;margin-top:22px;padding:0 26px;font-size:14px;transition:background .2s,transform .2s}.enter:hover{background:#d9bb743d}.enter:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.boot-fine{color:var(--muted);margin:0;font-size:11px}.boot-dot{background:var(--gold);border-radius:50%;width:4px;height:4px;margin-top:18px;animation:1.8s ease-in-out infinite breathe}@keyframes breathe{50%{opacity:.2}}.hud{z-index:10;pointer-events:none;position:fixed}.hud-top{top:max(14px, env(safe-area-inset-top));justify-content:space-between;align-items:flex-start;gap:10px;display:flex;left:14px;right:14px}.pill{pointer-events:auto;background:var(--glass);border:1px solid var(--glass-edge);-webkit-backdrop-filter:blur(18px)saturate(140%);min-height:42px;color:var(--ivory);border-radius:999px;align-items:center;gap:8px;padding:0 14px;display:inline-flex;box-shadow:0 8px 30px #00000059}.pill-brand{cursor:pointer;font:inherit;text-align:left}.pill-brand:hover{background:#1c202cb3}.pill-brand .ic-chev{width:16px;height:16px;color:var(--muted);margin-left:-2px}.pill-brand strong{font-family:var(--serif);letter-spacing:2px;font-size:15px;font-weight:600}.pill-brand .sub{color:var(--muted);border-left:1px solid var(--glass-edge);white-space:nowrap;margin-left:2px;padding-left:10px;font-size:11px}.pill-brand .ic{color:var(--gold)}.pill-tools{gap:2px;padding:0 6px}.ic{flex:none;width:20px;height:20px}.tool{min-width:36px;height:36px;color:var(--ivory);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:999px;align-items:center;gap:6px;padding:0 8px;display:inline-flex}.tool:hover{background:#ffffff14}.tool:focus-visible,.act:focus-visible,.close:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.tool .count{font-variant-numeric:tabular-nums;font-size:13px}.tool .ic-on{display:none}.tool[aria-pressed=true] .ic-on{display:block}.tool[aria-pressed=true] .ic-off{display:none}.tool[aria-pressed=true]{color:var(--gold)}.hint{z-index:9;top:calc(max(14px, env(safe-area-inset-top)) + 54px);text-align:center;color:#efe8d8c7;text-shadow:0 1px 8px #000c;pointer-events:none;transition:opacity 1s var(--ease);margin:0;font-size:12px;position:fixed;left:0;right:0}.hint.is-faded{opacity:0}.dock{z-index:10;left:50%;bottom:max(16px, env(safe-area-inset-bottom));background:var(--glass);border:1px solid var(--glass-edge);-webkit-backdrop-filter:blur(18px)saturate(140%);border-radius:999px;gap:2px;padding:6px;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 10px 40px #00000073}.act{width:76px;height:56px;color:var(--ivory);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:11.5px;transition:background .2s,color .2s;display:flex}.act:hover{background:#ffffff14}.act[aria-pressed=true],.act.is-busy{color:var(--gold)}.act:disabled{opacity:.45;cursor:default}.toast{z-index:11;inset:auto auto auto 50%;bottom:calc(max(16px, env(safe-area-inset-bottom)) + 84px);color:#1c1f28;text-align:center;opacity:0;pointer-events:none;transition:opacity .35s var(--ease), transform .35s var(--ease);white-space:normal;word-break:keep-all;background:#efe8d8eb;border:0;border-radius:16px;width:max-content;max-width:calc(100vw - 32px);margin:0;padding:8px 14px;font-size:12.5px;line-height:1.45;position:fixed;overflow:visible;transform:translate(-50%,8px)}.toast.is-on{opacity:1;transform:translate(-50%)}.sheet{border:1px solid var(--glass-edge);color:var(--ivory);-webkit-backdrop-filter:blur(24px);background:#141822eb;border-radius:18px;width:min(360px,100vw - 32px);padding:0;box-shadow:0 30px 80px #0009}.sheet::backdrop{background:#00000073}.sheet form{flex-direction:column;gap:12px;padding:20px 20px 16px;display:flex}.sheet h2{font-family:var(--serif);letter-spacing:2px;margin:0 0 4px;font-size:17px;font-weight:500}.sheet h2:focus,dialog.sheet:focus{outline:none}.row{justify-content:space-between;align-items:center;gap:12px;font-size:13px;display:flex}.row input[type=range]{width:150px;accent-color:var(--gold)}.row select{font:inherit;color:var(--ivory);border:1px solid var(--glass-edge);background:#ffffff0f;border-radius:8px;padding:4px 8px;font-size:13px}.row input[type=checkbox]{accent-color:var(--gold);width:18px;height:18px}.fine{color:var(--muted);margin:2px 0 0;font-size:11.5px;line-height:1.6}.close{border:1px solid var(--glass-edge);color:var(--ivory);font:inherit;cursor:pointer;background:0 0;border-radius:999px;align-self:flex-end;margin-top:6px;padding:7px 16px;font-size:13px}.close:hover{background:#ffffff14}.sheet-bible{width:min(420px,100vw - 32px)}.eyebrow{letter-spacing:2px;color:var(--gold);margin:0;font-size:11px}.sheet-bible h2{font-size:20px}.verse{font-family:var(--serif);color:var(--ivory);word-break:keep-all;margin:4px 0 2px;font-size:16.5px;line-height:1.9}.btn-row{justify-content:flex-end;gap:6px;margin-top:8px;display:flex}.btn-row .mini{padding:7px 14px}.btn-row .close{margin-top:0}@media (max-width:560px){.pill-brand .sub{display:none}.act{width:58px;height:54px;font-size:10.5px}.act .ic{width:18px;height:18px}.dock{padding:5px}.pill-tools .tool{min-width:32px;padding:0 6px}}@media (prefers-reduced-motion:reduce){.boot-dot{animation:none}}.rooms{flex-direction:column;gap:4px;max-height:42vh;margin:0;padding:0;list-style:none;display:flex;overflow:auto}.rooms li{justify-content:space-between;align-items:center;gap:10px;display:flex}.rooms button,.rooms .row-static{color:var(--ivory);font:inherit;text-align:left;cursor:pointer;background:#ffffff0a;border:1px solid #0000;border-radius:10px;flex:1;justify-content:space-between;align-items:center;gap:10px;padding:9px 12px;font-size:13px;display:flex}.rooms button:hover{background:#ffffff17}.rooms button.is-current{border-color:var(--gold);color:var(--gold);cursor:default}.rooms button:disabled:not(.is-current){opacity:.4;cursor:default}.rooms .cnt{font-variant-numeric:tabular-nums;color:var(--muted);font-size:12px}.rooms button.is-current .cnt{color:inherit}.rooms .dot{border-radius:50%;flex:none;width:10px;height:10px;margin-right:8px;display:inline-block}.h3{letter-spacing:1px;color:var(--muted);margin:6px 0 0;font-size:12px;font-weight:500}.invite{gap:6px;display:flex}.invite input{min-width:0;font:inherit;border:1px solid var(--glass-edge);color:var(--ivory);background:#ffffff0d;border-radius:10px;flex:1;padding:8px 10px;font-size:12.5px}.mini{border:1px solid var(--glass-edge);color:var(--ivory);font:inherit;cursor:pointer;background:#ffffff0f;border-radius:10px;padding:0 14px;font-size:12.5px}.mini:hover{background:#ffffff1f}.tool[data-online="0"] .count{color:var(--muted)}.rooms .hymn{flex-direction:column;align-items:flex-start;gap:2px}.rooms .hymn .mood{color:var(--gold);letter-spacing:1px;font-size:11px}.rooms .hymn .desc{color:var(--muted);font-size:11.5px}.rooms .hymn.is-current .desc,.rooms .hymn.is-current .mood{color:inherit;opacity:.8}.rooms .hymn .top{justify-content:space-between;gap:8px;width:100%;display:flex}#toast:popover-open{display:block}#toast::backdrop{display:none}.pill,.act span,.pill-brand strong{white-space:nowrap}@media (max-width:560px),(pointer:coarse){.pill,.dock{-webkit-backdrop-filter:none;background:#0e1119d6}.sheet{-webkit-backdrop-filter:none;background:#141822f7}}@media (max-width:400px){.act{width:52px;font-size:10px}.dock{gap:0;padding:4px}}.fade{z-index:8;opacity:0;pointer-events:none;transition:opacity .38s var(--ease);background:#07080c;position:fixed;inset:0}.fade.is-on{opacity:1}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--glass-edge);color:var(--ivory);font:inherit;cursor:pointer;word-break:keep-all;background:#ffffff0d;border-radius:999px;padding:7px 12px;font-size:12.5px}.chip:hover{background:#d9bb7429;border-color:#d9bb7480}.chip:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.rooms-compact{max-height:26vh}.rooms-compact .row-static{cursor:default;font-size:12.5px}.worship-bar{z-index:10;top:calc(max(14px, env(safe-area-inset-top)) + 54px);white-space:nowrap;background:#0e1119db;border:1px solid #d9bb7473;border-radius:999px;align-items:center;gap:6px;max-width:calc(100vw - 24px);padding:5px 6px 5px 14px;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 8px 30px #0006}.wb-step{color:var(--muted);margin-right:4px;font-size:12.5px}.wb-step strong{color:var(--gold);font-weight:600;font-family:var(--serif);letter-spacing:1px;margin-left:4px;font-size:14px}.wb-btn{border:1px solid var(--glass-edge);color:var(--ivory);font:inherit;cursor:pointer;background:#ffffff0f;border-radius:999px;padding:6px 12px;font-size:12px}.wb-btn:hover{background:#ffffff1f}.wb-primary{background:#d9bb742e;border-color:#d9bb7499}.subtitle{z-index:9;left:50%;bottom:calc(max(16px, env(safe-area-inset-bottom)) + 84px);text-align:center;pointer-events:none;width:min(680px,100vw - 32px);transition:opacity .5s var(--ease);background:#080a10b8;border-radius:14px;padding:12px 18px 14px;position:fixed;transform:translate(-50%)}.subtitle.is-fading{opacity:0}.sub-k{letter-spacing:1.5px;color:var(--gold);margin:0 0 6px;font-size:11.5px}.sub-t{font-family:var(--serif);color:var(--ivory);word-break:keep-all;text-shadow:0 1px 6px #0009;margin:0;font-size:16px;line-height:1.75}.subtitle.is-big .sub-t{font-size:18px}body.is-worship .toast,body.has-sub .toast{bottom:calc(max(16px, env(safe-area-inset-bottom)) + 84px + var(--sub-h,120px) + 10px)}:is(body:has(dialog[open]) .toast,body:has(#pray-menu:not([hidden])) .toast){bottom:auto;top:calc(max(12px, env(safe-area-inset-top)) + 62px)}.subtitle{max-height:calc(100vh - (max(14px, env(safe-area-inset-top)) + 110px) - (max(16px, env(safe-area-inset-bottom)) + 84px));overflow:hidden}@media (max-height:500px){.sub-t,.subtitle.is-big .sub-t{font-size:14px;line-height:1.55}.subtitle{padding:8px 14px 10px}.sub-k{margin-bottom:3px}}@media (max-width:560px){.sub-t{font-size:14.5px}.subtitle.is-big .sub-t{font-size:15.5px}.worship-bar{top:calc(max(14px, env(safe-area-inset-top)) + 52px)}}.sheet-bulletin{background:#1b1d24;width:min(820px,100vw - 20px);max-height:calc(100vh - 28px)}.sheet-bulletin form{gap:10px;max-height:calc(100vh - 30px);padding:14px}.bulletin{color:#2a2520;grid-template-columns:1fr 1fr;gap:10px;display:grid;overflow:auto}.bul-page{background:#f4efe2;border-radius:6px;padding:22px 22px 18px;font-size:12.5px;line-height:1.65;box-shadow:inset 0 0 0 1px #7864462e,0 2px 10px #00000059}.bul-cover{text-align:center;background:linear-gradient(#f6f1e5,#efe8d6);flex-direction:column;align-items:center;gap:8px;display:flex}.bul-eyebrow{letter-spacing:3px;color:#8c1a2a;margin:0;font-size:10px}.bul-title{font-family:var(--serif);letter-spacing:3px;color:#2a2520;margin:0;font-size:22px;font-weight:600}.bul-title span{color:#8c1a2a}.bul-issue{color:#6b604f;margin:0;font-size:11.5px}.bul-rose{border-radius:50%;width:132px;height:132px;margin:6px 0;box-shadow:0 0 0 5px #2a2520,0 0 0 7px #b8954e}.bul-motto{font-family:var(--serif);color:#3a3228;margin:2px 0;font-size:14.5px}.bul-box{text-align:left;border-top:1px solid #8c1a2a59;border-bottom:1px solid #8c1a2a59;width:100%;padding:8px 2px}.bul-page h3{letter-spacing:2px;color:#8c1a2a;margin:0 0 4px;font-size:11.5px;font-weight:700}.bul-verse{font-family:var(--serif);word-break:keep-all;margin:0;font-size:13.5px;line-height:1.8}.bul-ref{text-align:right;color:#6b604f;margin:4px 0 0;font-size:11px}.bul-times{text-align:left;width:100%}.bul-times dl{grid-template-columns:auto 1fr;gap:2px 12px;margin:0;font-size:12px;display:grid}.bul-times dt{color:#6b604f}.bul-times dd{margin:0}.bul-h{border-bottom:1px solid #8c1a2a4d;justify-content:space-between;align-items:baseline;padding-bottom:3px;display:flex;margin:10px 0 6px!important}.bul-h:first-child{margin-top:0!important}.bul-h small{letter-spacing:0;color:#6b604f;font-size:11px;font-weight:400}.bul-order{counter-reset:o;flex-direction:column;gap:3px;margin:0;padding:0;list-style:none;display:flex}.bul-order li{align-items:baseline;gap:6px;font-size:12.5px;display:flex}.bul-order li:before{counter-increment:o;content:counter(o);color:#8c1a2a;width:12px;font-size:10px}.bul-order .nm{font-family:var(--serif);letter-spacing:3px;white-space:nowrap;font-weight:600}.bul-order .dots{border-bottom:1px dotted #2a252073;flex:1;min-width:12px;transform:translateY(-3px)}.bul-order .who{color:#3a3228;text-align:right;max-width:62%}.bul-order li.is-now .nm,.bul-order li.is-now .who{color:#8c1a2a}.bul-news{flex-direction:column;gap:3px;margin:0;padding-left:18px;display:flex}.bul-notes,.bul-serve{margin:0}.bul-notes b{color:#8c1a2a;font-size:11px;font-weight:700}.bul-foot{color:#6b604f;margin:10px 0 0;font-size:11px}.mini-primary{background:#d9bb7433;border-color:#d9bb7499;padding:8px 14px}@media (max-width:720px){.bulletin{grid-template-columns:1fr}.bul-page{padding:18px 16px}}@media (max-width:400px){.pill-tools .tool{min-width:30px;padding:0 5px}.pill-brand{padding:0 10px}#btn-capture{display:none}}.tool.is-new{color:var(--gold);position:relative}.tool.is-new:after{content:"";background:#e0574a;border-radius:50%;width:7px;height:7px;animation:1.6s ease-in-out infinite breathe;position:absolute;top:6px;right:6px;box-shadow:0 0 0 2px #0e1119e6}@media (prefers-reduced-motion:reduce){.tool.is-new:after{animation:none}}@supports (height:100dvh){.sheet-bulletin{max-height:calc(100dvh - 28px)}.sheet-bulletin form{max-height:calc(100dvh - 30px)}.subtitle{max-height:calc(100dvh - (max(14px, env(safe-area-inset-top)) + 110px) - (max(16px, env(safe-area-inset-bottom)) + 84px))}}@media (pointer:coarse){.row select,.invite input{font-size:16px}}@media (max-width:359px){.pill-brand strong{display:none}.act{width:50px}.dock{padding:4px}}.menu{z-index:12;border:1px solid var(--glass-edge);background:#10131cf0;border-radius:16px;flex-direction:column;gap:2px;min-width:220px;max-width:calc(100vw - 24px);padding:6px;display:flex;position:fixed;box-shadow:0 14px 40px #00000080}.menu button{color:var(--ivory);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:11px;flex-direction:column;align-items:flex-start;gap:1px;padding:9px 12px;display:flex}.menu button:hover,.menu button:focus-visible{background:#ffffff14;outline:none}.menu button strong{font-size:13.5px;font-weight:600}.menu button small{color:var(--muted);font-size:11.5px}.menu-dock{left:50%;bottom:calc(max(16px, env(safe-area-inset-bottom)) + 76px);transform:translate(-50%)}.menu-top{top:calc(max(14px, env(safe-area-inset-top)) + 50px);min-width:180px;right:14px}.menu-top button{flex-direction:row;justify-content:space-between;align-items:center;font-size:13.5px}.bubbles{z-index:7;pointer-events:none;position:fixed;inset:0;overflow:hidden}.bubble{color:#1c1f28;white-space:nowrap;opacity:0;transition:opacity .3s var(--ease);will-change:transform;background:#faf6ecf2;border-radius:14px;padding:6px 11px;font-size:13px;font-weight:600;position:absolute;top:0;left:0;box-shadow:0 4px 14px #00000059}.bubble:after{content:"";border:6px solid #0000;border-top-color:#faf6ecf2;border-bottom:0;position:absolute;bottom:-6px;left:50%;transform:translate(-50%)}.bubble.is-on{opacity:1}.shout{z-index:9;transform:translate(-50%, -50%) scale(var(--s,1));font-family:var(--serif);letter-spacing:6px;color:#fff3d6;text-shadow:0 0 28px #ffc878bf,0 2px 10px #000000b3;opacity:0;pointer-events:none;font-size:clamp(42px,9vw,96px);font-weight:700;position:fixed;top:38%;left:50%}.shout.is-on{animation:shout 1.05s var(--ease) forwards}@keyframes shout{0%{opacity:0;transform:translate(-50%, -40%) scale(calc(var(--s,1) * .85))}18%{opacity:1;transform:translate(-50%, -50%) scale(var(--s,1))}70%{opacity:1}to{opacity:0;transform:translate(-50%, -58%) scale(calc(var(--s,1) * 1.05))}}@media (prefers-reduced-motion:reduce){.shout.is-on{opacity:1;animation:none}}.sheet-card{width:min(440px,100vw - 20px)}.card-img{object-fit:contain;background:#0f1218;border-radius:8px;width:100%;max-height:min(64vh,560px);display:block}.card-img-wide{max-height:40vh}.rooms .note-row{background:#ffffff0a;border-radius:10px;flex:1;justify-content:space-between;align-items:center;gap:8px;min-width:0;padding:7px 10px;font-size:12.5px;display:flex}.rooms .note-row.is-mine{border:1px solid #d9bb7466}.rooms .note-row.is-hl{background:#d9bb742e}.note-row .nt{flex-direction:column;gap:1px;min-width:0;display:flex}.note-row .nt small{color:var(--muted);font-size:11px}.note-row .amen{border:1px solid var(--glass-edge);color:var(--ivory);font:inherit;cursor:pointer;white-space:nowrap;background:#ffffff0f;border-radius:999px;flex:none;padding:5px 10px;font-size:12px}.note-row .amen:disabled{opacity:.55;cursor:default}.note-row .amen.is-done{color:var(--gold);border-color:#d9bb7499}.chip.is-on{background:#d9bb7438;border-color:#d9bb7499}.sheet-places{scroll-padding:8px}.sheet-places form{gap:0;padding:20px 18px 16px}.sheet-places h2{margin:0}.sheet-places .fine{margin:4px 0 14px}.place-grid{grid-template-columns:1fr 1fr;gap:8px;margin:0;padding:0;list-style:none;display:grid}.place-grid li{min-width:0;display:flex}.place-grid li:last-child:nth-child(odd){grid-column:1/-1}.place{text-align:left;cursor:pointer;min-width:0;min-height:110px;color:var(--ivory);font:inherit;word-break:keep-all;transition:background .2s, border-color .2s, transform .12s var(--ease), box-shadow .12s;-webkit-tap-highlight-color:transparent;background:linear-gradient(160deg,#ffffff16,#ffffff05 70%);border:1px solid #ffffff14;border-radius:14px;flex-direction:column;flex:1;align-items:flex-start;gap:2px;padding:12px 12px 11px;display:flex;position:relative;box-shadow:inset 0 1px #ffffff12,0 2px 8px #00000038}.place:hover{background:linear-gradient(160deg,#ffffff1f,#ffffff09 70%);border-color:#d9bb7452}.place:active{background:#ffffff08;transform:scale(.97);box-shadow:inset 0 2px 8px #0006}.place:focus{outline:none}.place:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.place-ic{width:40px;height:40px;color:var(--gold);background:radial-gradient(circle at 32% 28%,#d9bb743d,#d9bb740d 70%);border:1px solid #d9bb7442;border-radius:50%;flex:none;place-items:center;margin-bottom:auto;display:grid}.place-ic svg{width:22px;height:22px}.place-name{letter-spacing:.2px;margin-top:10px;font-size:14px;font-weight:600;line-height:1.3}.place-sub{color:var(--muted);font-size:11.5px;line-height:1.4}.place-tag{white-space:nowrap;color:var(--muted);background:#ffffff0e;border-radius:999px;align-items:center;gap:2px;padding:3px 7px 3px 5px;font-size:10.5px;line-height:1.2;display:inline-flex;position:absolute;top:12px;right:10px}.place-tag svg{width:11px;height:11px}.place-tag.is-here{color:#1c1f28;background:var(--gold);padding:3px 8px;font-weight:600}.place.is-current{background:linear-gradient(160deg,#d9bb7433,#d9bb740d 75%);border-color:#d9bb74b3}.place.is-current .place-name{color:var(--gold)}.place.is-current .place-sub{color:#efe8d8b8}.sheet-places .close{margin-top:14px;position:relative}.sheet-places .close:after{content:"";position:absolute;inset:-6px -4px}@media (max-width:359px){.sheet-places form{padding:18px 14px 14px}.place{padding:10px}.place-ic{width:34px;height:34px}.place-ic svg{width:19px;height:19px}.place-tag{padding:2px 6px 2px 4px;font-size:10px;top:10px;right:8px}}@media (prefers-reduced-motion:reduce){.place{transition:none}.place:active{transform:none}}.vh{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.compose{flex-direction:column;gap:8px;margin:8px 0 4px;display:flex}.field{color:var(--muted);letter-spacing:.5px;flex-direction:column;gap:4px;font-size:11.5px;display:flex}.field input,.field textarea{font:inherit;letter-spacing:0;color:var(--ivory);border:1px solid var(--glass-edge);resize:none;background:#ffffff0d;border-radius:10px;padding:9px 11px;font-size:14px;line-height:1.5}.field input:focus-visible,.field textarea:focus-visible{outline:2px solid var(--gold);outline-offset:1px}.field-nick input{max-width:220px}.compose-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.compose-row .count{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.note-acts{flex:none;align-items:center;gap:4px;display:flex}.note-sub{color:var(--muted);font:inherit;cursor:pointer;text-underline-offset:2px;background:0 0;border:0;padding:5px 4px;font-size:11px;text-decoration:underline}.note-sub:disabled{opacity:.5;cursor:default}.note-row .nt>span{overflow-wrap:anywhere;word-break:keep-all}.rooms-board{max-height:52vh}.sheet-board .btn-row{margin:6px 0 10px}.sheet-look{width:min(380px,100vw - 32px);max-height:min(86vh,760px);margin:auto 24px auto auto;overflow:auto}.sheet-look::backdrop{background:0 0}.look-slots{flex-direction:column;gap:10px;display:flex}.look-slot{flex-direction:column;gap:6px;display:flex}.swatches{flex-wrap:wrap;gap:7px;display:flex}.swatch{cursor:pointer;border:2px solid #ffffff2e;border-radius:50%;width:28px;height:28px;padding:0;box-shadow:inset 0 0 0 1px #00000059}.swatch.is-on{border-color:var(--gold);box-shadow:0 0 0 2px #d9bb7459,inset 0 0 0 1px #00000059}.swatch.is-none{background:repeating-linear-gradient(135deg,#ffffff1a 0 4px,#0000 4px 8px)}.swatch.is-base{outline-offset:2px;outline:1px dashed #fff6}.swatch:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.chip.chip-preset{border-color:#d9bb7473}@media (max-width:560px),(max-aspect-ratio:1){.sheet-look{border-radius:18px 18px 0 0;width:100vw;max-width:100vw;max-height:50vh;margin:auto 0 0}}.svc-pill{z-index:9;top:calc(max(14px, env(safe-area-inset-top)) + 54px);color:var(--ivory);white-space:nowrap;background:#0e1119db;border:1px solid #d9bb7459;border-radius:999px;align-items:center;gap:8px;max-width:calc(100vw - 24px);padding:5px 6px 5px 12px;font-size:12.5px;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 8px 30px #0006}.svc-pill[hidden]{display:none}.orn-mode{bottom:calc(max(16px, env(safe-area-inset-bottom)) + 84px);top:auto!important}.svc-dot{background:var(--gold);width:7px;height:7px;box-shadow:0 0 8px var(--gold);border-radius:50%;animation:1.6s ease-in-out infinite svcPulse}@keyframes svcPulse{50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.svc-dot{animation:none}}body.is-worship .svc-pill{display:none}@media (max-width:560px){.svc-pill{top:calc(max(14px, env(safe-area-inset-top)) + 52px)}}@media (max-width:480px){.hud-top{gap:6px;left:8px;right:8px}.pill-tools{gap:0;padding:0 3px}.tool{min-width:31px;height:34px;padding:0 5px}.tool .ic{width:19px;height:19px}.pill-brand .sub{display:none}}@media (max-width:370px){#btn-capture{display:none}}.gallery{z-index:9;pointer-events:none;position:fixed;inset:0}.gallery[hidden]{display:none}.gal-panel{pointer-events:auto;border:1px solid var(--glass-edge);width:min(370px,100vw - 36px);max-height:calc(100vh - 36px);color:var(--ivory);-webkit-backdrop-filter:blur(18px);background:#0e1119db;border-radius:18px;flex-direction:column;gap:7px;padding:16px 16px 14px;display:flex;position:absolute;bottom:18px;left:18px;overflow:auto;box-shadow:0 20px 60px #00000080}.gal-panel h2{font-family:var(--serif);letter-spacing:2px;margin:0;font-size:21px;font-weight:500}.gal-panel h2:focus{outline:none}.gal-ref{color:var(--gold);font-family:var(--serif);margin:0;font-size:13.5px}.gal-desc{word-break:keep-all;margin:2px 0 0;font-size:13.5px;line-height:1.75}.gal-where{color:var(--muted);margin:0;font-size:11.5px}.gal-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.gal-nav select{flex:1;min-width:0}.gal-panel select{font:inherit;color:var(--ivory);border:1px solid var(--glass-edge);background:#ffffff0f;border-radius:10px;padding:6px 8px;font-size:12.5px}.gal-btn{border:1px solid var(--glass-edge);color:var(--ivory);font:inherit;cursor:pointer;background:#ffffff0f;border-radius:999px;min-height:32px;padding:6px 12px;font-size:12.5px}.gal-btn:hover{background:#ffffff1f}.gal-btn[aria-pressed=true],.gal-btn[aria-expanded=true]{color:var(--gold);background:#d9bb7433;border-color:#d9bb74a6}.gal-btn.gal-primary{border-color:#d9bb7499}.gal-btn.is-busy{opacity:.5}.gal-btn:focus-visible,.gal-show:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.gal-nav .gal-btn{padding:4px 12px;font-size:18px;line-height:1}.gal-lightbox{background:#ffffff0a;border-radius:12px;flex-direction:column;gap:8px;padding:10px;display:flex}.gal-lightbox[hidden]{display:none}.gal-range{color:var(--muted);flex-direction:column;gap:4px;font-size:12px;display:flex}.gal-range b{color:var(--ivory);margin-left:4px;font-weight:500}.gal-range input{accent-color:var(--gold)}.gallery.is-bare .gal-panel{display:none}.gal-show{pointer-events:auto;border:1px solid var(--glass-edge);color:var(--ivory);font:inherit;cursor:pointer;background:#0e1119cc;border-radius:999px;padding:8px 14px;font-size:12.5px;position:absolute;bottom:18px;left:18px}.gal-show[hidden]{display:none}body.is-gallery .hud,body.is-gallery .dock,body.is-gallery .hint,body.is-gallery .svc-pill,body.is-gallery .worship-bar,body.is-gallery .bubbles{display:none!important}@media (max-width:560px),(max-aspect-ratio:1){.gal-panel{left:8px;right:8px;bottom:max(8px, env(safe-area-inset-bottom));-webkit-backdrop-filter:none;background:#0e1119f0;gap:6px;width:auto;max-height:46vh;padding:12px 12px 10px}.gal-panel h2{font-size:18px}.gal-desc{font-size:13px;line-height:1.65}.gal-show{left:50%;bottom:max(12px, env(safe-area-inset-bottom));transform:translate(-50%)}}
/*$vite$:1*/