:root{--gold:#d2a45b;--ink:#252724;--paper:#fff;--wash:#f5f4f0;--line:#e5e4dd;--sub:#656960;color-scheme:light;font-family:'Red Hat Display',Arial,sans-serif;color:var(--ink);background:var(--wash)}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a.primary,a.secondary{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #9b712f;outline-offset:4px}[hidden]{display:none!important}button:disabled{opacity:.6;cursor:wait}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(26px,3vw,38px);font-weight:500;letter-spacing:-1px;margin-bottom:12px}h2{font-size:20px;font-weight:600}h3{font-size:17px;font-weight:500}p{color:var(--sub);line-height:1.6}small{color:var(--sub)}input{display:block;width:100%;min-width:0;font-size:16px;padding:13px;border:1px solid var(--line);border-radius:7px;background:var(--paper);color:var(--ink);margin-top:7px}label{display:block;font-size:13px;font-weight:600;margin-bottom:18px}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;min-height:44px;border-radius:7px;font-size:14px;text-align:center}.primary{background:var(--gold);color:#252724;border:1px solid var(--gold);font-weight:600}.secondary{border:1px solid var(--line);background:var(--paper);color:var(--ink)}.eyebrow{font-size:11px;letter-spacing:2px;color:var(--sub)}.top{background:var(--paper);padding:17px max(22px,calc((100% - 1180px)/2));display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:15px}.brand img{width:52px}.brand strong,.brand small{display:block}.brand strong{font-size:18px;font-weight:600}.brand small{margin-top:4px;font-size:12px}.admin{max-width:1220px;margin:auto;padding:36px 22px 60px}.heading{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-bottom:20px}.heading h1{margin-top:9px}.admin-grid{display:grid;grid-template-columns:minmax(290px,.8fr) minmax(0,1.2fr);gap:24px;align-items:start}.panel{padding:27px;background:var(--paper);border:1px solid var(--line);border-radius:12px}.two{display:grid;grid-template-columns:1fr 1fr;gap:16px}.buttons{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.list-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.list-heading h2{margin:0}.filter{max-width:220px}.visit{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:17px 0;border-top:1px solid var(--line)}.visit-info{min-width:0}.visit strong{display:block;font-weight:600;overflow-wrap:anywhere}.visit small{display:block;margin-top:7px}.visit .buttons{margin:0;flex-shrink:0;gap:6px}.visit button{padding:9px 12px}.lower{margin-top:24px}.hint{font-size:13px;margin:20px 0 0}hr{border:0;border-top:1px solid var(--line);margin:24px 0}.lower h3{margin-top:10px}.empty{padding:24px 0;color:var(--sub)}#message:not(:empty){padding:15px 18px;border:1px solid #c9d7bd;border-radius:8px;background:#eff4e9;margin-bottom:24px}#message.error,.error{color:#932c28;background:#fff0ee!important;border-color:#e9bdb6!important}.auth{max-width:440px;margin:6vh auto;padding:36px 30px;background:var(--paper);border:1px solid var(--line);border-radius:12px}.auth>img{display:block;width:85px;margin:0 auto 28px}.auth>.eyebrow{display:block;text-align:center;margin-bottom:25px}.auth h1{font-size:28px}.auth button{width:100%;margin-top:22px}.auth .error{padding:12px;border-radius:6px;font-size:14px}.auth small{display:block}.screen{min-height:100dvh;max-width:1080px;margin:auto;padding:clamp(25px,5vw,64px);display:flex;flex-direction:column;background:#f9f7f2;text-align:center}.screen-logo{width:clamp(90px,14vw,160px);margin:0 auto}.welcome{margin:auto 0;padding:clamp(40px,7vh,90px) 0}.screen h1{font-size:clamp(26px,4.5vw,51px);letter-spacing:-1.2px;margin:22px 0 12px;line-height:1.2}.names{font-size:clamp(38px,7vw,80px);font-weight:600;line-height:1.15;letter-spacing:-1.8px;overflow-wrap:anywhere}.names.multi{font-size:clamp(27px,4.5vw,48px)}.names>div+div{margin-top:16px}.gold-line{width:48px;height:3px;background:var(--gold);margin:30px auto}.screen p{font-size:clamp(15px,2vw,21px);line-height:1.6;margin-bottom:0}.screen .eyebrow{font-size:clamp(10px,1.5vw,14px);letter-spacing:3px}.destinations{text-align:left;width:100%;max-width:670px;margin:0 auto}.destinations>.eyebrow{margin-bottom:16px}.destinations:has(a[hidden]+a[hidden]){display:none}.destination{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:clamp(20px,3.4vw,34px);border-radius:10px;background:var(--gold);border:1px solid var(--gold);margin-top:14px;min-height:96px}.destination small{display:block;color:#383a32;font-size:clamp(10px,1.5vw,14px);letter-spacing:1.5px;margin-bottom:7px}.destination strong{font-size:clamp(19px,3vw,30px);font-weight:600}.destination>span:last-child{font-size:28px}.destination.outline{background:transparent;border-color:#aaa99f}.screen-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #d9d8cd;padding-top:20px;margin-top:38px;gap:15px;font-size:13px;color:var(--sub)}.plain{border:0;background:transparent;color:var(--sub);font-size:24px;padding:8px}.connection{font-size:12px!important;min-height:18px;color:#777a70}.connect{font-size:12px;color:var(--sub);padding:12px}.screen-footer #clock{font-variant-numeric:tabular-nums}.screen .connection:empty{display:none}@media(min-width:1100px) and (max-height:950px){.screen{max-width:none;display:grid;grid-template-columns:1.2fr 1fr;gap:20px 50px;padding:32px 6vw}.screen-logo{grid-column:1/-1;width:100px}.welcome{padding:25px 0}.destinations{align-self:center}.screen-footer{grid-column:1/-1;margin-top:5px}.connection,.connect{grid-column:1/-1}.names{font-size:58px}.screen h1{font-size:35px}}@media(max-width:740px){.admin-grid{grid-template-columns:1fr}.top{padding:16px}.brand strong{font-size:15px}.brand img{width:40px}.top button{padding:8px;font-size:12px}.panel{padding:20px}.admin{padding:26px 16px}.visit{align-items:start;flex-direction:column}.auth{margin:20px 14px}.screen-footer{font-size:11px}}@media(prefers-reduced-motion:no-preference){button,a{transition:background-color .15s,opacity .15s}button:hover,a.destination:hover{filter:brightness(.97)}}
@media(min-width:1100px) and (max-height:950px){.screen:has(.destinations a[hidden]+a[hidden]) .welcome{grid-column:1/-1}}
