:root{color-scheme:dark;--ivory:#f8ead3;--gold:#e8c48d}*{box-sizing:border-box}body{margin:0;background:#17110e;color:var(--ivory);font:16px/1.5 system-ui,-apple-system,sans-serif}button,input{font:inherit}button,a{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid #f4dab0;outline-offset:5px}main{max-width:1600px;margin:auto}.preview-note{text-align:center;font-size:12px;color:#c3b29c;padding:12px 16px;letter-spacing:.04em}.hall{width:100%;position:relative;aspect-ratio:16/9;overflow:hidden;background:#472711;isolation:isolate}.scene{position:absolute;width:1536px;height:864px;transform-origin:0 0}.room-clean,.room-original{position:absolute;inset:0;width:1536px;height:864px;pointer-events:none}.room-clean{filter:brightness(.77)}.room-original{mask:url('assets/room-preserve-mask.svg') 0 0/100% 100% no-repeat}header{position:absolute;top:28px;left:0;width:1536px;text-align:center;z-index:4}.church-name{width:350px;height:64px;margin:auto;background:linear-gradient(110deg,#fff0cf,#d2a05a,#fff4db);mask:url('assets/church-signature.png') center/contain no-repeat}h1{margin:0;font:38px/1.2 'Baskerville','Times New Roman',serif;letter-spacing:.12em;color:#fff1dc;text-shadow:0 2px 4px #1d0d08}.screen{position:absolute;left:253px;top:155px;width:1030px;height:592.5px;z-index:2;overflow:hidden;background:#080706}.screen button{position:absolute;inset:0;border:0;padding:0;width:100%;height:100%;background:#080706;color:#fff2d4}.screen button>img{width:100%;height:100%;object-fit:contain;filter:brightness(.83)}.play-disc{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:88px;height:88px;display:grid;place-items:center;border:1px solid #ffedc9c9;border-radius:50%;background:#281b1188;box-shadow:inset 0 1px 8px #f4d5a477,0 5px 30px #0006;font-size:50px;font-weight:200;backdrop-filter:blur(8px)}.watch-word{position:absolute;top:calc(50% + 58px);left:0;right:0;text-align:center;font-size:22px;text-shadow:0 2px 4px #000}.screen iframe{width:100%;height:100%;border:0;display:block}.frame{position:absolute;left:268px;top:170px;width:1536px;height:864px;max-width:none;transform-origin:0 0;mask:url('assets/frame-mask.svg?v=3') 0 0/100% 100% no-repeat;pointer-events:none;z-index:3;filter:drop-shadow(0 0 3px #e8bc7277)}.floor-line{position:absolute;top:808px;width:100%;text-align:center;letter-spacing:.3em;font:15px/1.5 system-ui;color:#f9dfb7;text-shadow:0 2px 3px #301b0e}.viewing{max-width:1360px;padding:18px 34px 28px;margin:auto}.now{display:flex;gap:20px;align-items:center;justify-content:space-between;padding-bottom:28px;border-bottom:1px solid #9a784c55}.eyebrow{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#c6a673;margin:0 0 5px}h2{font:25px/1.3 'Baskerville','Times New Roman',serif;margin:0}.view-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.view-actions>*{color:#e9cfaa;text-decoration:none;border:1px solid #aa815657;border-radius:18px 3px 18px 3px;padding:10px 15px;background:linear-gradient(120deg,#ad81532b,#57402d11);white-space:nowrap;font-size:13px;box-shadow:inset 0 1px 0 #e9d0aa44}.catalog-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:28px 0 20px}.catalog-heading span{font-size:13px;color:#bcab94}.catalog-tools{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;margin-bottom:24px}.tabs{display:flex;gap:12px;flex-wrap:wrap}.tabs button{padding:12px 20px;border:1px solid #c6a36a70;border-radius:24px 4px 24px 4px;background:linear-gradient(125deg,#d4ad6d22,#ffffff05);color:#ead5b7;box-shadow:inset 0 1px 0 #ffedca55;font-size:14px}.tabs button[aria-pressed=true]{color:#2d1a0c;background:linear-gradient(120deg,#f6dfb6,#c59456 55%,#ebc896)}input{color:#f6e7ce;max-width:100%;width:225px;border:1px solid #bc99665c;border-radius:24px 4px 24px 4px;background:#ffffff08;padding:11px 18px}input::placeholder{color:#b8a68e}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.card{position:relative;display:flex;flex-direction:column;padding:0;border:1px solid #bb976757;border-radius:12px 4px 12px 4px;overflow:hidden;background:linear-gradient(145deg,#d4ad6d14,#ffffff02);color:#f4e4c9;text-align:left;box-shadow:inset 0 1px 0 #ffffff21}.card[aria-pressed=true]{outline:1px solid #eed1a0;outline-offset:3px}.card img{width:100%;aspect-ratio:16/9;object-fit:contain;background:#090807}.card span{font-size:15px;line-height:1.5;padding:13px 14px}.card small{font-size:11px;color:#c7aa7f;display:block;margin-top:9px}footer{text-align:center;color:#8e7f6e;font-size:12px;margin-top:28px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.screen:fullscreen{background:#000;width:100vw;height:100vh;left:0;top:0}.screen:fullscreen iframe{width:100%;height:100%}@media(max-width:800px){.now,.catalog-heading{align-items:flex-start;flex-direction:column}.viewing{padding:20px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}h2{font-size:23px}.catalog-tools{display:block}.catalog-tools label{display:block;margin-top:18px}input{width:100%}.preview-note{font-size:10px}.hall{aspect-ratio:16/10}.scene{transform-origin:0 0}.tabs button{font-size:13px;padding:10px 14px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
.mini-player{max-width:1030px;margin:0 auto 24px}.mini-controls{display:flex;align-items:center;gap:14px}.mini-controls button{border:1px solid #ba976750;color:#ecdbbd;background:#d6b37c0f;border-radius:18px 3px;padding:7px 12px;font-size:12px;min-height:40px}.mini-controls #toggle-play{font-size:24px;width:44px;padding:0}.mini-controls #native-controls{margin-left:auto}.mini-controls span{font-size:12px;color:#c1b39a;font-variant-numeric:tabular-nums}.mini-timeline{height:48px;position:relative;margin-top:4px;--ratio:0}.mini-track{height:1px;position:absolute;left:19px;right:19px;top:24px;background:linear-gradient(90deg,#80d6d24d,#c2d3b224)}.mini-pearl{position:absolute;top:5px;left:calc((100% - 38px) * var(--ratio));width:38px;height:38px;border-radius:50%;display:grid;place-items:center;pointer-events:none;box-shadow:0 4px 6px -4px #003943}.mini-pearl canvas{position:absolute;inset:0;width:100%;height:100%;border-radius:50%}.mini-pearl span{position:relative;font:600 9px/1 system-ui;color:#edfffe;text-shadow:0 1px 2px #005468;font-variant-numeric:tabular-nums}.mini-end{position:absolute;right:14px;top:19px;width:10px;height:10px;border-radius:50%;background:radial-gradient(ellipse at 35% 25%,#b8fff1,#18bfc9 65%,#128eac);box-shadow:0 0 7px #68d2c844}.mini-timeline input{position:absolute;inset:0;width:100%;max-width:none;height:48px;opacity:0;margin:0;padding:0;cursor:pointer;touch-action:pan-y}.mini-timeline:has(input:focus-visible){outline:2px solid #d5f9ed;border-radius:28px}.player-status{margin:4px 0;font-size:12px;color:#cab698}.mini-controls button:disabled{opacity:.45}.screen iframe{position:absolute;inset:15px;width:calc(100% - 30px);height:calc(100% - 30px)}.screen:fullscreen iframe{inset:0;width:100%;height:100%}.mini-controls button[aria-pressed=true]{border-color:#b2dbcd;color:#d3fff2}@media(forced-colors:active){.mini-timeline input{opacity:1}.mini-pearl{display:none}}

@media(max-width:650px){.hall{height:440px!important;background:#452719 url('assets/walnut-room-clean-v2.png') center/cover}.scene{position:relative;width:100%;height:100%;transform:none!important}.room-clean,.room-original,.frame{display:none}header{width:100%;top:18px}header .church-name{width:250px;height:46px}header h1{font-size:28px}.screen{left:18px;top:110px;width:calc(100% - 36px);height:290px;border:3px solid #cba26a;border-radius:5px;box-shadow:0 0 0 1px #fff0c9,0 0 0 5px #5c351d,0 0 0 6px #eacb95,0 8px 22px #0008}.screen iframe{inset:3px;width:calc(100% - 6px);height:calc(100% - 6px)}.floor-line{top:417px;font-size:9px;letter-spacing:.18em}.play-disc{width:64px;height:64px;font-size:37px}.watch-word{font-size:16px;top:calc(50% + 43px)}.mini-controls{gap:8px}.mini-controls button{font-size:11px}.mini-controls #native-controls{font-size:10px;padding:7px}.screen:fullscreen{left:0;top:0;width:100vw;height:100vh;border:0}.screen:fullscreen iframe{inset:0;width:100%;height:100%}}
