.site{position:relative;z-index:1;max-width:1080px;margin:0 auto;padding:0 var(--pad) 40px}
.hide-xs{display:none}@media(min-width:560px){.hide-xs{display:inline-flex}}
.hero{padding:clamp(56px,12vh,128px) 0 48px;text-align:center}
.wake-display{margin:18px 0 0;font:600 clamp(30px,10.5vw,112px)/1 var(--sans);letter-spacing:-.04em;
  background:linear-gradient(180deg,#fff 20%,#9fb3c2);-webkit-background-clip:text;background-clip:text;color:transparent;white-space:nowrap}
.wake-display.playing{background:linear-gradient(90deg,#fff,var(--acc),#fff);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;animation:sheen 2s linear infinite}
@keyframes sheen{to{background-position:-200% 0}}
.lede{max-width:46ch;margin:22px auto 0;font-size:clamp(17px,2.2vw,20px);color:var(--fg2);text-wrap:balance}.lede strong{color:var(--fg);font-weight:500}
.say-row{display:inline-flex;align-items:center;gap:18px;margin:40px auto 0;text-align:left}
.wake-orb{position:relative;width:88px;height:88px;border-radius:50%;border:0;cursor:pointer;color:var(--acc-ink);
  background:radial-gradient(circle at 35% 30%,#f3dc8a,var(--acc) 42%,#7a5f12 100%);box-shadow:0 0 0 1px rgba(201,162,39,.5),0 20px 60px -10px var(--acc-glow);display:grid;place-items:center}
.wake-orb .ic{width:32px;height:32px;stroke-width:1.8}
.wake-orb::before,.wake-orb::after{content:"";position:absolute;inset:-10px;border-radius:50%;border:1px solid rgba(201,162,39,.35);animation:ring 3s ease-out infinite}
.wake-orb::after{animation-delay:1.5s}
.wake-orb.reporting{filter:saturate(.6)}
.wake-label{display:flex;flex-direction:column;gap:6px;font:500 16px/1.2 var(--sans)}.wake-label small{color:var(--fg3);font-size:11px;letter-spacing:.04em}
.claim{display:grid;gap:24px;padding:clamp(20px,4vw,36px);margin:24px 0}
@media(min-width:800px){.claim{grid-template-columns:1fr 1fr;align-items:center}}
.claim h2{margin:10px 0 8px;font:600 clamp(24px,3.2vw,34px)/1.15 var(--sans);letter-spacing:-.02em}
.name-field{position:relative}.name-field .field-in{padding-right:92px}
.name-suffix{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:var(--fg3);font-size:14px}
.name-status{min-height:20px;margin:8px 0 12px;font-size:13px;color:var(--fg3)}.name-status.ok{color:var(--ok)}.name-status.no{color:var(--bad)}
.name-pick .btn{width:100%}@media(min-width:800px){.name-pick .btn{width:auto}}
.pillars{display:grid;gap:14px;margin:24px 0}@media(min-width:760px){.pillars{grid-template-columns:repeat(3,1fr)}}
.pillar{padding:22px}.pillar .ic{width:28px;height:28px;color:var(--acc)}.pillar h3{margin:14px 0 6px;font:600 18px/1.2 var(--sans)}.pillar p{margin:0;color:var(--fg2);font-size:15px}
.flow ol{list-style:none;margin:24px 0;padding:0;display:grid;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r2);overflow:hidden}
@media(min-width:760px){.flow ol{grid-template-columns:repeat(4,1fr)}}
.flow li{display:flex;flex-direction:column;gap:6px;padding:20px;background:var(--bg2)}.flow li .mono{color:var(--acc);font-size:12px}.flow li strong{font-weight:600}.flow li span:last-child{color:var(--fg2);font-size:14px}
.site-foot{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;max-width:1080px;margin:0 auto;padding:24px var(--pad) 40px;color:var(--fg3);font-size:13px;border-top:1px solid var(--line)}
.site-foot a{color:var(--fg2)}
/* auth pages */
.auth{position:relative;z-index:1;display:grid;place-items:center;min-height:calc(100dvh - 140px);padding:32px var(--pad)}
.auth-card{width:min(440px,100%);padding:clamp(22px,5vw,36px)}
.auth-card h1{margin:12px 0 6px;font:600 28px/1.15 var(--sans);letter-spacing:-.02em}
.auth-card .muted{color:var(--fg2);margin:0 0 22px}
.auth-card .stack{display:grid;gap:14px}
.gbtn{width:100%;min-height:48px;background:#fff;color:#111;border-color:#fff;font-weight:600}.gbtn:hover{background:#e9eef2}
.sep{display:flex;align-items:center;gap:12px;color:var(--fg3);font-size:12px}.sep::before,.sep::after{content:"";flex:1;height:1px;background:var(--line2)}
.wake-display{font-size:clamp(30px,10.5vw,112px)!important;max-width:100%}
@media(max-width:480px){.say-row{gap:14px;margin-top:32px}.wake-orb{width:72px;height:72px}.wake-label small{display:none}}
