/* Getting ready to try it: the pages before the instructions (people, screens, roles, names). */
body{background:#16292B;color:#fff;min-height:100vh;min-height:100dvh;margin:0}
a{color:inherit}
.top{position:sticky;top:0;z-index:20;background:rgba(22,41,43,.92);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}
.top .in{max-width:760px;margin:0 auto;padding:10px 16px;display:flex;align-items:center;gap:12px}
.top .nm{flex:1;font-size:13px;letter-spacing:.24em;text-transform:uppercase;opacity:.85;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.top .try{flex:none;text-decoration:none;font-size:14px;font-weight:700;background:#E8B96A;color:#16292B;border-radius:99px;padding:7px 14px}
.top .mode{flex:none;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;cursor:pointer;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);color:#fff;padding:0}
.top .mode svg{width:18px;height:18px} .top .mode .sun{display:none}

.page{max-width:760px;margin:0 auto;padding:26px 16px calc(env(safe-area-inset-bottom) + 50px)}
.brand-big{text-align:center;margin:8px 0 10px}
.brand-big .n{letter-spacing:.34em;text-transform:uppercase;font-size:14px;opacity:.85}
.steps{display:flex;justify-content:center;gap:8px;margin:0 0 18px;flex-wrap:wrap}
.steps span{font-size:13px;font-weight:700;letter-spacing:.06em;padding:6px 12px;border-radius:99px;background:rgba(255,255,255,.08);color:rgba(255,255,255,.65)}
.steps span.on{background:#E8B96A;color:#16292B}
.steps span.done{background:rgba(127,194,160,.18);color:#BFE3CF}
h1{font-family:"Libre Caslon Text",Georgia,serif;font-weight:400;font-size:clamp(34px,6vw,54px);line-height:1.08;text-align:center;margin:0 0 12px}
.lead{font-size:19px;line-height:1.55;text-align:center;opacity:.88;max-width:600px;margin:0 auto 24px}
h2.grp{font-size:13.5px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:rgba(255,255,255,.62);margin:26px 4px 10px}

.card{display:flex;gap:14px;align-items:flex-start;background:#fff;color:#1B2224;border-radius:16px;padding:16px;margin:0 0 10px;box-shadow:0 1px 3px rgba(0,0,0,.18)}
.card .ic{width:46px;height:46px;border-radius:13px;flex:none;display:grid;place-items:center;background:#E3EFE9;color:#1F7A4D;font-weight:700;font-size:20px}
.card .ic svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.card .ic.gold{background:#FDF1DD;color:#9A5B00}
.card b{display:block;font-size:18.5px;line-height:1.25}
.card p{margin:4px 0 0;font-size:15.5px;line-height:1.5;color:#4E5B5D}
.card .tag{display:inline-block;margin-top:8px;font-size:12.5px;font-weight:700;letter-spacing:.05em;padding:4px 9px;border-radius:99px;background:#FDF1DD;color:#6B4000}

.open-here{display:flex;gap:16px;align-items:center;background:rgba(255,255,255,.06);border:1px dashed rgba(255,255,255,.28);border-radius:16px;padding:14px;margin:0 0 10px}
.open-here .code{flex:none;width:112px;height:112px;background:#fff;padding:6px;border-radius:10px}
.open-here .code img,.open-here .code canvas{width:100px!important;height:100px!important}
.open-here b{display:block;font-size:18px}
.open-here span{display:block;font-size:15px;opacity:.8;margin-top:3px;line-height:1.45}
.open-here .addr{font-family:ui-monospace,Menlo,Consolas,monospace;font-weight:700;opacity:1;color:#E8B96A;word-break:break-all;margin-top:6px;font-size:16px}

.go-btn{display:flex;gap:14px;align-items:center;width:100%;border:0;cursor:pointer;font:inherit;text-align:left;text-decoration:none;
  background:#E8B96A;color:#16292B;border-radius:18px;padding:18px;margin:22px 0 0;box-shadow:0 12px 30px rgba(0,0,0,.3);touch-action:manipulation}
.go-btn .ic{width:48px;height:48px;border-radius:13px;flex:none;display:grid;place-items:center;background:#16292B;color:#E8B96A;font-size:28px;font-weight:700}
.go-btn b{display:block;font-size:20px;line-height:1.25}
.go-btn span.s{display:block;font-size:14.5px;opacity:.8;margin-top:3px}
.go-btn:hover{background:#F0C98A}
.go-btn:disabled{background:rgba(255,255,255,.12);color:rgba(255,255,255,.55);box-shadow:none;cursor:default}
.go-btn:disabled .ic{background:rgba(255,255,255,.1);color:rgba(255,255,255,.5)}

.roles{display:grid;gap:12px}
.role{display:flex;gap:14px;align-items:center;width:100%;text-align:left;cursor:pointer;font:inherit;text-decoration:none;
  background:#fff;color:#1B2224;border:3px solid transparent;border-radius:18px;padding:16px;box-shadow:0 1px 3px rgba(0,0,0,.18);touch-action:manipulation}
.role .ic{width:54px;height:54px;border-radius:15px;flex:none;display:grid;place-items:center;background:#E3EFE9;color:#1F7A4D}
.role .ic svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.role.reader .ic{background:#FDF1DD;color:#9A5B00}
.role b{display:block;font-size:20px}
.role span.s{display:block;font-size:15px;color:#4E5B5D;margin-top:3px;line-height:1.45}
.role .taken{display:block;font-size:13.5px;font-weight:700;color:#1F7A4D;margin-top:6px}
.role .go{margin-left:auto;color:#B4C0C1;font-size:28px;line-height:1}
.role:hover{border-color:#E8B96A}

.namebox{background:#fff;color:#1B2224;border-radius:18px;padding:20px;box-shadow:0 1px 3px rgba(0,0,0,.18)}
.namebox label{display:block;font-weight:700;font-size:16px;margin:0 0 8px}
.namebox input{width:100%;box-sizing:border-box;font:inherit;font-size:22px;padding:14px 16px;border:2px solid #C9D4D4;border-radius:12px;color:#16292B;background:#fff}
.namebox input:focus{outline:none;border-color:#E8B96A;box-shadow:0 0 0 4px rgba(232,185,106,.25)}
.namebox p{margin:10px 0 0;font-size:15px;color:#4E5B5D;line-height:1.5}
.err{color:#FFB4A9;font-weight:700;text-align:center;margin:12px 0 0;min-height:1.4em}

.team{display:grid;gap:8px;margin:18px 0 0}
.team .who{display:flex;gap:12px;align-items:center;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:12px 14px}
.team .dot{width:12px;height:12px;border-radius:50%;flex:none;background:rgba(255,255,255,.25)}
.team .who.in .dot{background:#7FC2A0;box-shadow:0 0 0 4px rgba(127,194,160,.2)}
.team .who b{font-size:16.5px} .team .who span{display:block;font-size:14px;opacity:.7}
.team .who.me{border-color:#E8B96A}

.wait{display:flex;gap:14px;align-items:center;background:rgba(255,255,255,.06);border-radius:16px;padding:16px;margin:18px 0 0;font-size:17px;line-height:1.45}
.spin{width:26px;height:26px;flex:none;border-radius:50%;border:3px solid rgba(255,255,255,.2);border-top-color:#E8B96A;animation:sp 1s linear infinite}
@keyframes sp{to{transform:rotate(360deg)}}
.small{display:block;text-align:center;margin:18px 0 0;font-size:15px;opacity:.75}
.small a,.small button{color:inherit;background:none;border:0;font:inherit;text-decoration:underline;cursor:pointer;padding:0}

html[data-theme="light"] body{background:#EEF2F1;color:#16292B}
html[data-theme="light"] .top{background:rgba(238,242,241,.92);border-bottom-color:#C9D4D4}
html[data-theme="light"] .top .try{background:#16292B;color:#fff}
html[data-theme="light"] .top .mode{background:#fff;border-color:#C9D4D4;color:#16292B}
html[data-theme="light"] .top .mode .sun{display:block} html[data-theme="light"] .top .mode .moon{display:none}
html[data-theme="light"] .crest{filter:brightness(0);opacity:.82}
html[data-theme="light"] h2.grp{color:rgba(22,41,43,.6)}
html[data-theme="light"] .steps span{background:#DCE5E5;color:#4E5B5D}
html[data-theme="light"] .steps span.on{background:#16292B;color:#fff}
html[data-theme="light"] .steps span.done{background:#D5ECDF;color:#1F7A4D}
html[data-theme="light"] .open-here{background:#fff;border-color:#C9D4D4}
html[data-theme="light"] .open-here .addr{color:#8A5200}
html[data-theme="light"] .team .who,html[data-theme="light"] .wait{background:#fff;border-color:#C9D4D4}
html[data-theme="light"] .team .dot{background:#C9D4D4}
html[data-theme="light"] .go-btn:disabled{background:#DCE5E5;color:#6B7A7C}
html[data-theme="light"] .err{color:#B3261E}
@media (max-width:480px){ .open-here{flex-direction:column;text-align:center} }
[hidden]{display:none!important}
.namebox label{text-transform:none;letter-spacing:0;color:#1B2224;font-size:16px}
.page{color:inherit}
.team .who{margin-left:0;flex-wrap:nowrap;width:100%}
