:root{--primary: #4CAF50;--on-primary: #003910;--primary-container: #1F5A2A;--on-primary-container: #A5D6A7;--primary-fixed: #A5D6A7;--primary-fixed-dim: #81C784;--on-primary-fixed: #003910;--on-primary-fixed-variant: #1F5A2A;--secondary: #9575CD;--on-secondary: #2A1A4A;--secondary-container: #4A3D6A;--on-secondary-container: #D1C4E9;--secondary-fixed: #D1C4E9;--secondary-fixed-dim: #B39DDB;--on-secondary-fixed: #2A1A4A;--on-secondary-fixed-variant: #4A3D6A;--tertiary: #E91E63;--on-tertiary: #5A0030;--tertiary-container: #8A2D54;--on-tertiary-container: #F8BBD0;--tertiary-fixed: #F8BBD0;--tertiary-fixed-dim: #F48FB1;--on-tertiary-fixed: #5A0030;--on-tertiary-fixed-variant: #8A2D54;--error: #F44336;--on-error: #5F1410;--error-container: #8C2D28;--on-error-container: #FFCDD2;--surface-dim: #1A1C1E;--surface: #212427;--surface-bright: #3A3D40;--surface-container-lowest: #0F1113;--surface-container-low: #1E2022;--surface-container: #25282A;--surface-container-high: #2F3235;--surface-container-highest: #3A3D40;--inverse-surface: #E3E2E6;--inverse-on-surface: #2F3135;--inverse-primary: #2E7D32;--on-surface: #E3E2E6;--on-surface-variant: #C7C5CA;--outline: #919094;--outline-variant: #444746;--scrim: rgba(0, 0, 0, .7);--shadow: rgba(0, 0, 0, .8);--filter-primary: brightness(0) saturate(100%) invert(48%) sepia(96%) saturate(506%) hue-rotate(76deg) brightness(104%) contrast(93%);--filter-on-primary: brightness(0) saturate(100%) invert(11%) sepia(28%) saturate(2964%) hue-rotate(103deg) brightness(95%) contrast(101%);--filter-primary-container: brightness(0) saturate(100%) invert(21%) sepia(26%) saturate(1392%) hue-rotate(83deg) brightness(94%) contrast(91%);--filter-on-primary-container: brightness(0) saturate(100%) invert(87%) sepia(8%) saturate(1273%) hue-rotate(68deg) brightness(92%) contrast(87%);--filter-primary-fixed: brightness(0) saturate(100%) invert(87%) sepia(8%) saturate(1273%) hue-rotate(68deg) brightness(92%) contrast(87%);--filter-primary-fixed-dim: brightness(0) saturate(100%) invert(72%) sepia(19%) saturate(471%) hue-rotate(73deg) brightness(91%) contrast(85%);--filter-on-primary-fixed: brightness(0) saturate(100%) invert(11%) sepia(28%) saturate(2964%) hue-rotate(103deg) brightness(95%) contrast(101%);--filter-on-primary-fixed-variant: brightness(0) saturate(100%) invert(21%) sepia(26%) saturate(1392%) hue-rotate(83deg) brightness(94%) contrast(91%);--filter-secondary: brightness(0) saturate(100%) invert(45%) sepia(48%) saturate(789%) hue-rotate(230deg) brightness(91%) contrast(87%);--filter-on-secondary: brightness(0) saturate(100%) invert(10%) sepia(30%) saturate(2845%) hue-rotate(232deg) brightness(91%) contrast(95%);--filter-secondary-container: brightness(0) saturate(100%) invert(25%) sepia(20%) saturate(1234%) hue-rotate(221deg) brightness(91%) contrast(84%);--filter-on-secondary-container: brightness(0) saturate(100%) invert(91%) sepia(8%) saturate(678%) hue-rotate(217deg) brightness(94%) contrast(88%);--filter-secondary-fixed: brightness(0) saturate(100%) invert(91%) sepia(8%) saturate(678%) hue-rotate(217deg) brightness(94%) contrast(88%);--filter-secondary-fixed-dim: brightness(0) saturate(100%) invert(72%) sepia(24%) saturate(543%) hue-rotate(220deg) brightness(93%) contrast(86%);--filter-on-secondary-fixed: brightness(0) saturate(100%) invert(10%) sepia(30%) saturate(2845%) hue-rotate(232deg) brightness(91%) contrast(95%);--filter-on-secondary-fixed-variant: brightness(0) saturate(100%) invert(25%) sepia(20%) saturate(1234%) hue-rotate(221deg) brightness(91%) contrast(84%);--filter-tertiary: brightness(0) saturate(100%) invert(26%) sepia(88%) saturate(3698%) hue-rotate(327deg) brightness(95%) contrast(87%);--filter-on-tertiary: brightness(0) saturate(100%) invert(9%) sepia(82%) saturate(4518%) hue-rotate(319deg) brightness(88%) contrast(108%);--filter-tertiary-container: brightness(0) saturate(100%) invert(23%) sepia(28%) saturate(1789%) hue-rotate(302deg) brightness(91%) contrast(88%);--filter-on-tertiary-container: brightness(0) saturate(100%) invert(90%) sepia(13%) saturate(543%) hue-rotate(298deg) brightness(102%) contrast(96%);--filter-tertiary-fixed: brightness(0) saturate(100%) invert(90%) sepia(13%) saturate(543%) hue-rotate(298deg) brightness(102%) contrast(96%);--filter-tertiary-fixed-dim: brightness(0) saturate(100%) invert(76%) sepia(16%) saturate(789%) hue-rotate(301deg) brightness(99%) contrast(94%);--filter-on-tertiary-fixed: brightness(0) saturate(100%) invert(9%) sepia(82%) saturate(4518%) hue-rotate(319deg) brightness(88%) contrast(108%);--filter-on-tertiary-fixed-variant: brightness(0) saturate(100%) invert(23%) sepia(28%) saturate(1789%) hue-rotate(302deg) brightness(91%) contrast(88%);--filter-error: brightness(0) saturate(100%) invert(41%) sepia(93%) saturate(3245%) hue-rotate(346deg) brightness(97%) contrast(93%);--filter-on-error: brightness(0) saturate(100%) invert(15%) sepia(44%) saturate(2234%) hue-rotate(348deg) brightness(90%) contrast(94%);--filter-error-container: brightness(0) saturate(100%) invert(26%) sepia(42%) saturate(1456%) hue-rotate(342deg) brightness(88%) contrast(89%);--filter-on-error-container: brightness(0) saturate(100%) invert(91%) sepia(16%) saturate(432%) hue-rotate(313deg) brightness(103%) contrast(100%);--filter-surface-dim: brightness(0) saturate(100%) invert(8%) sepia(6%) saturate(567%) hue-rotate(169deg) brightness(95%) contrast(93%);--filter-surface: brightness(0) saturate(100%) invert(13%) sepia(5%) saturate(543%) hue-rotate(169deg) brightness(94%) contrast(87%);--filter-surface-bright: brightness(0) saturate(100%) invert(22%) sepia(4%) saturate(234%) hue-rotate(169deg) brightness(93%) contrast(90%);--filter-surface-container-lowest: brightness(0) saturate(100%) invert(4%) sepia(8%) saturate(789%) hue-rotate(169deg) brightness(97%) contrast(96%);--filter-surface-container-low: brightness(0) saturate(100%) invert(11%) sepia(6%) saturate(456%) hue-rotate(169deg) brightness(95%) contrast(92%);--filter-surface-container: brightness(0) saturate(100%) invert(14%) sepia(5%) saturate(345%) hue-rotate(169deg) brightness(94%) contrast(88%);--filter-surface-container-high: brightness(0) saturate(100%) invert(18%) sepia(4%) saturate(289%) hue-rotate(169deg) brightness(93%) contrast(90%);--filter-surface-container-highest: brightness(0) saturate(100%) invert(22%) sepia(4%) saturate(234%) hue-rotate(169deg) brightness(93%) contrast(90%);--filter-inverse-surface: brightness(0) saturate(100%) invert(93%) sepia(2%) saturate(234%) hue-rotate(205deg) brightness(98%) contrast(90%);--filter-inverse-on-surface: brightness(0) saturate(100%) invert(18%) sepia(4%) saturate(234%) hue-rotate(187deg) brightness(92%) contrast(88%);--filter-inverse-primary: brightness(0) saturate(100%) invert(35%) sepia(46%) saturate(987%) hue-rotate(88deg) brightness(93%) contrast(88%);--filter-on-surface: brightness(0) saturate(100%) invert(93%) sepia(2%) saturate(234%) hue-rotate(205deg) brightness(98%) contrast(90%);--filter-on-surface-variant: brightness(0) saturate(100%) invert(83%) sepia(3%) saturate(234%) hue-rotate(205deg) brightness(96%) contrast(88%);--filter-outline: brightness(0) saturate(100%) invert(60%) sepia(2%) saturate(234%) hue-rotate(205deg) brightness(92%) contrast(86%);--filter-outline-variant: brightness(0) saturate(100%) invert(27%) sepia(4%) saturate(234%) hue-rotate(75deg) brightness(91%) contrast(87%);--filter-white: brightness(0) saturate(100%) invert(100%);--max-width: 680px}.hover-inset-primary{box-shadow:inset 0 0 0 2px transparent;transition:box-shadow .2s ease,background .2s ease}.hover-inset-primary:hover{box-shadow:inset 0 0 0 2px var(--primary);background:transparent}html,body{height:100%;width:100%;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:var(--surface);color:var(--on-surface);display:flex;align-items:center;justify-content:center;padding:0}.tv-container{display:flex;flex-direction:row;align-items:stretch;justify-content:center;width:100%;height:100%;max-width:none}.column{position:relative;display:flex;align-items:center;justify-content:center;padding:1.5rem}.column-left{width:30%;display:flex;flex-direction:column;align-items:stretch}.left-top{flex:0 0 30%}.left-bottom{flex:1 1 70%;position:relative;overflow:visible}.column-center{width:70%;flex-direction:column;gap:1rem}.column-right{width:0%}.header-text{font-size:2rem;font-weight:700;text-align:center;color:var(--on-surface);line-height:1.2;transition:opacity .3s ease-out}.column-center{position:relative}.qr-wrapper{width:min(75vh,90%);aspect-ratio:1 / 1;max-width:90%;max-height:90vh;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--surface-container-lowest) 88%,transparent);border-radius:24px;border:2px solid var(--surface-dim);padding:.5rem;margin-bottom:0;position:relative;z-index:3;transition:opacity .3s ease-out,transform .3s ease-out}.qr-wrapper.hidden{opacity:0;transform:scale(.95);pointer-events:none}.admin-avatar-wrapper{opacity:0;transform:translateY(8px);pointer-events:none;transition:opacity .25s ease-out,transform .25s ease-out}.admin-avatar-wrapper.show{opacity:1;transform:translateY(0)}#qr-code-container{width:100%;height:100%;display:flex;align-items:center;justify-content:center}#qr-code-container canvas{width:100%!important;height:100%!important;border-radius:16px}.hands-photo{position:absolute;bottom:-2%;left:0%;width:150%;height:auto;pointer-events:none;mix-blend-mode:screen;filter:blur(1px);opacity:1;z-index:1;transform:translate(0)}.loading-spinner{width:60px;height:60px;border:4px solid rgba(255,255,255,.06);border-top-color:var(--primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.footer-text{font-size:1.5rem;color:var(--on-surface-variant);text-align:center;font-weight:700;display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;padding-right:2rem}.footer-text .info-text{margin:0;color:var(--on-surface)}.qr-side{position:absolute;right:1rem;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:flex-start;gap:.75rem;max-width:30%;text-align:left}.qr-side .info-text{font-size:1.5rem;color:var(--on-surface)}#visit-web-version{padding:.5rem 1rem}.btn{padding:.75rem 1.5rem;border-radius:12px;font-weight:600;text-decoration:none;display:inline-block;border:none;cursor:pointer}.btn.btn-primary{background:var(--primary);color:var(--on-primary)}.error-message{display:none;background:color-mix(in srgb,var(--error) 10%,transparent);border:2px solid var(--error-container);color:var(--on-error-container);padding:1.5rem;border-radius:12px;text-align:center;margin-top:2rem}.error-message.show{display:block}@media(max-width:768px){.tv-container{flex-direction:column}.column{width:100%;padding:1rem}.column-center{order:1}.column-right{order:2}.column-left{order:3}.header-text{font-size:1.75rem}.footer-text{font-size:1.25rem;font-weight:700;justify-content:center}.qr-wrapper{width:80vw;aspect-ratio:1/1}.qr-side{position:static;transform:none;margin-top:1rem;align-items:center;text-align:center;max-width:100%}.hands-photo{width:60%;bottom:-4%;left:-4%}}
