.studio .attendance-console{margin:30px 0;background:#f6f5eb;color:#192f3c;border:4px solid #102630;box-shadow:7px 7px 0 #091a22;border-radius:5px;overflow:hidden}
.studio .attendance-strip{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:14px 25px;background:#ffcf67;color:#192f3c;border-bottom:3px solid #102630;font:700 14px/1.5 Consolas,monospace}
.studio .attendance-content{padding:28px;max-width:950px}.studio .attendance-content .eyebrow{color:#355965}.studio .attendance-content h3{font:750 28px/1.3 'Segoe UI',Arial,sans-serif;text-transform:none;letter-spacing:normal;color:#192f3c;margin:12px 0 20px}
.studio .attendance-content p,.studio .attendance-content strong{color:#192f3c;font-size:18px;line-height:1.65}.studio .attendance-content .checkin-example{border-left:4px solid #5c7a65;padding:12px 18px;background:#e1eadc;font-size:17px}
.studio .checkin-form label{display:block;font:650 17px/1.6 'Segoe UI',Arial,sans-serif;color:#192f3c;margin:20px 0}
.studio .checkin-form input,.studio .checkin-form textarea{box-sizing:border-box;width:100%;display:block;min-height:48px;padding:12px;margin-top:8px;font:400 18px/1.6 'Segoe UI',Arial,sans-serif;color:#192f3c;background:white;border:2px solid #536c75;border-radius:3px}.studio .checkin-form textarea{resize:vertical}.studio .checkin-form ::placeholder{color:#5b6770;opacity:1}
.studio .attendance-content .checkin-privacy,.studio .attendance-content .checkin-session,.studio .attendance-content .checkin-hint{font-size:15px;color:#405563;line-height:1.6}
.studio .attendance-console :focus-visible{outline:3px solid #174f80;outline-offset:4px}.studio .checkin-buttons{display:flex;gap:16px;flex-wrap:wrap}.studio .checkin-buttons [data-edit-pass]{background:#e4ece8;color:#192f3c;box-shadow:none}
.studio .lab-pass{padding:24px;margin:24px 0;border:3px solid #173542;background:#d9e8d1;border-top:12px solid #775699;color:#192f3c;overflow-wrap:anywhere}.studio .lab-pass .pass-label{font:700 14px/1.5 Consolas,monospace}.studio .lab-pass .pass-name{font:750 30px/1.3 'Segoe UI',Arial,sans-serif;margin:16px 0;color:#192f3c}.studio .lab-pass .pass-status{font:700 14px/1.5 Consolas,monospace;border-top:1px solid #687c71;padding-top:15px}.studio .pass-idea{white-space:pre-wrap}

/* Arrival worlds: one palette per lab. --w-deep carries the private-thought screen, --w-accent the signal colour. */
.studio .arrival-world[data-checkin="1"]{--w-bg:#fff3ea;--w-soft:#ffe0d1;--w-accent:#ff7a59;--w-deep:#3a1d27;--w-ink:#2a1510}
.studio .arrival-world[data-checkin="2"]{--w-bg:#f1f9e3;--w-soft:#dcefc0;--w-accent:#c6f15b;--w-deep:#12343b;--w-ink:#10272c}
.studio .arrival-world[data-checkin="3"]{--w-bg:#eef1ff;--w-soft:#d8defc;--w-accent:#ffd23f;--w-deep:#1b2a8f;--w-ink:#141c55}
.studio .arrival-world[data-checkin="4"]{--w-bg:#fbf2df;--w-soft:#f0dfbb;--w-accent:#e0a33a;--w-deep:#4e1a26;--w-ink:#33121a}
.studio .arrival-world[data-checkin="5"]{--w-bg:#fdeef5;--w-soft:#f7d5e6;--w-accent:#f29bcd;--w-deep:#2c1633;--w-ink:#24112a}
.studio .arrival-world{background:var(--w-bg);border-color:var(--w-deep);box-shadow:7px 7px 0 var(--w-deep)}
.studio .arrival-world .attendance-strip{background:var(--w-deep);color:var(--w-accent);border-bottom:3px solid var(--w-deep);letter-spacing:.06em}
.studio .arrival-world .arrival-rec{display:inline-flex;align-items:center;gap:9px}
.studio .arrival-world .rec-dot{width:10px;height:10px;border-radius:50%;background:var(--w-accent)}
.studio .arrival-world .attendance-content{max-width:none}
.studio .arrival-world .attendance-content :is(p,strong,label,legend){color:var(--w-ink)}
.studio .arrival-world .arrival-screen{display:grid;grid-template-columns:minmax(0,1fr) minmax(200px,270px);gap:26px;align-items:start;margin:-28px -28px 26px;padding:30px 28px;background:var(--w-deep)}
.studio .arrival-world .arrival-screen .eyebrow{color:var(--w-accent);font:700 13px/1.5 Consolas,monospace;letter-spacing:.1em}
.studio .arrival-world .arrival-screen h3{color:#fff;font:400 clamp(26px,3.4vw,38px)/1.2 Georgia,'Times New Roman',serif;margin:12px 0 16px;max-width:22ch}
.studio .arrival-world .arrival-screen .arrival-prompt{color:#f4eef0;font-size:18px;max-width:58ch;margin:0}
.studio .arrival-feed{list-style:none;margin:6px 0 0;padding:14px 0 0 16px;border-left:2px solid var(--w-accent);font:600 13px/1.5 Consolas,monospace;color:var(--w-accent)}
.studio .arrival-feed li{padding:6px 0;opacity:.9}.studio .arrival-feed li:nth-child(2n){opacity:.65}
.studio .arrival-world .checkin-example{border-left:4px solid var(--w-accent);background:var(--w-soft)}
.studio .arrival-world .checkin-form input:not([type=color]),.studio .arrival-world .checkin-form textarea{border-color:var(--w-deep);color:var(--w-ink)}
.studio .arrival-world .checkin-form label small{font-weight:400;font-size:15px}
.studio .arrival-world :focus-visible{outline:3px solid var(--w-deep);outline-offset:4px}

.studio .thought-starters{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:4px 0 -6px}
.studio .thought-starters .starter-label{font:650 15px/1.5 'Segoe UI',Arial,sans-serif;color:var(--w-ink);margin-right:4px}
.studio .arrival-world .thought-starter{min-height:44px;padding:8px 14px;border:2px solid var(--w-deep);border-radius:3px;background:#fff;color:var(--w-ink);box-shadow:3px 3px 0 var(--w-deep);font:600 15px/1.35 'Segoe UI',Arial,sans-serif;text-align:left;cursor:pointer}
.studio .arrival-world .thought-starter:hover{background:var(--w-accent);color:var(--w-ink)}
.studio .arrival-world .thought-starter:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--w-deep)}

.studio .colour-deck{margin:24px 0;padding:18px 20px 20px;border:2px solid var(--w-deep);border-radius:3px;background:#fff;min-width:0}
.studio .colour-deck legend{padding:0 8px;font:700 13px/1.5 Consolas,monospace;letter-spacing:.1em;text-transform:uppercase}
.studio .arrival-world .colour-deck .colour-note{font-size:16px;margin:0 0 14px}
.studio .swatches{display:flex;flex-wrap:wrap;gap:12px}
.studio .arrival-world .swatch{display:grid;justify-items:center;gap:6px;min-height:0;padding:6px;border:2px solid transparent;border-radius:3px;background:none;box-shadow:none;color:var(--w-ink);cursor:pointer}
.studio .arrival-world .swatch-chip{display:block;width:46px;height:46px;border:2px solid var(--w-deep);border-radius:3px}
.studio .arrival-world .swatch-hex{font:600 12px/1 Consolas,monospace}
.studio .arrival-world .swatch:hover .swatch-chip{transform:translateY(-3px)}
.studio .arrival-world .swatch[aria-pressed=true]{border-color:var(--w-deep);background:var(--w-soft)}
.studio .colour-custom{display:flex;flex-wrap:wrap;gap:18px;margin-top:14px}
.studio .arrival-world .colour-custom label{margin:0;font-size:15px}
.studio .arrival-world .colour-custom input[type=color]{width:72px;height:48px;padding:3px;border:2px solid var(--w-deep);border-radius:3px;background:#fff;cursor:pointer}
.studio .arrival-world .colour-custom input[data-hex]{width:9.5em;font-family:Consolas,monospace;text-transform:uppercase}
.studio .arrival-world .hex-link{margin:16px 0 0;font-size:16px}.studio .arrival-world .hex-link a{color:var(--w-deep);font-weight:700;text-underline-offset:3px}.studio .arrival-world .hex-link span{font-size:14px}

.studio .arrival-world .private-label{padding:16px 18px;border:2px dashed var(--w-deep);border-radius:3px;background:var(--w-soft);margin-bottom:8px}
.studio .arrival-world .private-label .lock{color:var(--w-deep)}
.studio .arrival-world .private-label textarea{border-style:dashed;background:#fffdfb}
.studio .arrival-world .private-note{font-size:15px;line-height:1.6;margin:0 0 18px}

.studio .arrival-world .lab-pass{background:#fff;border:3px solid var(--w-deep);padding:0 0 22px;box-shadow:6px 6px 0 var(--w-deep)}
.studio .arrival-world .lab-pass>*:not(.pass-band){margin-left:24px;margin-right:24px}
.studio .arrival-world .pass-band{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:center;padding:16px 24px;background:var(--pass-colour);border-bottom:3px solid var(--w-deep)}
.studio .arrival-world .pass-band .pass-label,.studio .arrival-world .pass-hex{margin:0;padding:3px 8px;background:#fff;color:#161616;font:700 13px/1.5 Consolas,monospace}
.studio .arrival-world .lab-pass .pass-name{color:var(--w-ink);font-family:Georgia,'Times New Roman',serif;font-weight:400}
.studio .arrival-world .pass-redacted{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:14px}
.studio .arrival-world .pass-redacted[hidden]{display:none}
.studio .arrival-world .redaction{font:16px/1 Consolas,monospace;letter-spacing:-.05em;color:#161616;overflow-wrap:anywhere}
.studio .arrival-world .redaction-note{font:700 12px/1.5 Consolas,monospace;letter-spacing:.08em;text-transform:uppercase}
.studio .arrival-world .lab-pass .pass-status{border-top:1px dashed var(--w-deep)}

@media(prefers-reduced-motion:no-preference){
.studio .arrival-world .rec-dot{animation:arrival-rec 1.6s steps(2,end) infinite}
.studio .arrival-feed li{animation:arrival-flicker 6s ease-in-out infinite}.studio .arrival-feed li:nth-child(2){animation-delay:1.5s}.studio .arrival-feed li:nth-child(3){animation-delay:3s}.studio .arrival-feed li:nth-child(4){animation-delay:4.5s}
.studio .arrival-world .swatch-chip{transition:transform .15s}
.studio .arrival-world .lab-pass.is-new{animation:pass-print .55s cubic-bezier(.2,.8,.2,1)}
}
@keyframes arrival-rec{50%{opacity:.15}}
@keyframes arrival-flicker{0%,100%{opacity:.9}10%{opacity:.2}14%{opacity:1}}
@keyframes pass-print{from{transform:translateY(-14px) rotate(-1.2deg);opacity:0}to{transform:none;opacity:1}}

.access-calm .studio .arrival-world{box-shadow:none}.access-calm .studio .arrival-feed{display:none}.access-calm .studio .arrival-world .arrival-screen{grid-template-columns:minmax(0,1fr)}
.access-contrast .studio .arrival-world .swatch-chip{outline:2px solid #111}
@media(max-width:760px){.studio .arrival-world .arrival-screen{grid-template-columns:minmax(0,1fr)}.studio .arrival-feed{display:flex;flex-wrap:wrap;gap:4px 16px;padding:10px 0 0 12px}}
@media(max-width:600px){.studio .attendance-content{padding:20px}.studio .attendance-content h3{font-size:24px}.studio .attendance-strip{padding:13px 20px}.studio .lab-pass{padding:18px}.studio .checkin-buttons button{width:100%}.studio .arrival-world .arrival-screen{margin:-20px -20px 22px;padding:24px 20px}.studio .arrival-world .lab-pass{padding:0 0 18px}.studio .arrival-world .lab-pass>*:not(.pass-band){margin-left:18px;margin-right:18px}}
@media print{.attendance-console{display:none!important}}
