:root{font-family:Arial,Helvetica,sans-serif;color:#183e39;background:#f7f4ec;font-synthesis:none}*{box-sizing:border-box}body{margin:0}main{width:min(100%,480px);margin:auto;padding:calc(23px + env(safe-area-inset-top)) 23px calc(18px + env(safe-area-inset-bottom))}header{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}header a{font-family:Georgia,serif;font-size:31px;font-weight:bold;text-decoration:none;color:inherit;letter-spacing:-1.6px}header a span{color:#e78570;font-family:Arial;margin-left:4px;font-size:19px}.eyebrow{font-size:9px;font-weight:700;letter-spacing:1.8px}header .eyebrow{max-width:116px;text-align:right;line-height:1.7}.connection{display:flex;align-items:center;gap:7px;font-size:11px;color:#687d73;border-top:1px solid #dcded3;border-bottom:1px solid #dcded3;padding:12px 0}.dot{width:7px;height:7px;background:#b6bbb1;border-radius:50%}.dot.online{background:#4d9475;box-shadow:0 0 0 4px #4d94751b}#roomBadge{margin-left:auto;letter-spacing:2px;font-weight:bold;color:#183e39}.section-label{margin:32px 0 14px;color:#839083}h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:47px;letter-spacing:-1.5px;line-height:1.05;margin:0 0 17px}.intro{font-size:14px;line-height:1.65;color:#687b71;margin:0 0 25px}.role-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.role-card{border:0;border-radius:20px;text-align:left;min-height:238px;position:relative;padding:20px;color:#fff;overflow:hidden}.role-card.run{background:#214e45}.role-card.jump{background:#e3917d;color:#3d3c2d}.role-card img{display:block;width:62px;height:62px;object-fit:contain;margin:5px 0 17px}.role-number{position:absolute;right:17px;top:19px;font-size:10px;opacity:.65;letter-spacing:2px}.role-card strong{display:block;font-size:20px;line-height:1.23}.role-card small{display:block;font-size:10px;margin-top:10px;max-width:115px;line-height:1.4;opacity:.78}.arrow{position:absolute;right:17px;bottom:15px;font-size:21px}.privacy{text-align:center;color:#859086;font-size:11px;line-height:1.7;margin:25px 0}button,input{font:inherit}button{cursor:pointer;touch-action:manipulation}button:disabled{cursor:default;opacity:.5}button:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid #d3a44c;outline-offset:4px}footer{display:flex;justify-content:space-between;margin-top:30px;padding-top:17px;border-top:1px solid #dcdfd5;font-size:9px;letter-spacing:2px;color:#899387}footer span{color:#d38d79}.game-status{font-size:12px;background:#e9ede3;padding:12px 15px;border-radius:10px;line-height:1.45;margin-bottom:16px}.voice-card{background:#fffdf8;border:1px solid #e2e3d7;border-radius:20px;padding:19px}.voice-heading{display:flex;justify-content:space-between;font-size:12px;font-weight:bold;gap:10px}#micState{color:#899486;font-size:10px;font-weight:400}.meter{height:34px;background:#edf0e7;border-radius:7px;margin-top:16px;position:relative;overflow:hidden}#meterFill{height:100%;width:0;background:#73a388;transition:width .08s linear}#thresholdMark{position:absolute;width:2px;top:0;bottom:0;background:#c97662;left:30%}#voiceHint{font-size:11px;min-height:29px;line-height:1.4;color:#7c877a;margin:10px 0}.primary{width:100%;border:0;border-radius:10px;background:#244e44;color:white;padding:15px;font-weight:700;font-size:13px}.sensitivity{margin-top:22px}.sensitivity label{display:flex;justify-content:space-between;font-size:12px}.sensitivity output{color:#839180}input[type=range]{width:100%;accent-color:#315d4f;margin:15px 0 5px}.range-labels{display:flex;justify-content:space-between;font-size:9px;color:#86917e}.text-button{display:block;margin:16px auto 0;padding:8px;border:0;background:transparent;color:#587564;font-size:11px;text-decoration:underline;text-underline-offset:4px}.touch-label{display:flex;align-items:center;gap:12px;font-size:8px;letter-spacing:1.25px;color:#8c9587;margin:23px 0 15px;white-space:nowrap}.touch-label span{height:1px;background:#dfe2d7;flex:1}.touch-button{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;padding:17px 12px;border:1px solid #d4decf;background:#e9eee3;border-radius:16px;color:#315246;font-size:13px;font-weight:700;user-select:none;-webkit-user-select:none;touch-action:none}.touch-button img{height:35px;width:35px;object-fit:contain}.touch-button.pressed{background:#b3cbb8;transform:scale(.98)}.footer-note{text-align:center;color:#8a9285;font-size:10px;margin-top:14px}.message{background:#f7e2db;border:1px solid #e4b7a7;padding:14px;border-radius:12px;font-size:12px;line-height:1.6}.room-entry{display:flex;gap:8px;margin:9px 0 22px}.room-entry input{width:65%;padding:12px;border:1px solid #cbd4c5;border-radius:8px;text-transform:uppercase;letter-spacing:3px;background:white}.room-entry button{border:0;border-radius:8px;background:#214e45;color:white;padding:12px}#roomForm label{font-size:12px}[hidden]{display:none!important}@media(prefers-reduced-motion:reduce){*{transition:none!important}}@media(max-width:350px){main{padding-left:16px;padding-right:16px}h1{font-size:41px}.role-card{padding:15px}.role-card strong{font-size:18px}}

body[data-role=jump] .primary{background:#be715b}body[data-role=jump] .touch-button{background:#f4ded4;border-color:#e5c3b5;color:#764937}body[data-role=jump] .touch-button.pressed{background:#e8b6a2}body[data-role=jump] input[type=range]{accent-color:#be715b}
