*{box-sizing:border-box}body{margin:0;background:#f5f4ed;color:#183e39;font:16px/1.65 system-ui,-apple-system,sans-serif}header{max-width:1180px;margin:auto;padding:28px 36px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;line-height:1.12;font-size:11px;letter-spacing:2px;text-decoration:none;color:inherit}.brand strong{font-size:23px;letter-spacing:3px}.crest{display:grid;place-items:center;width:48px;height:52px;border:2px solid #183e39;border-radius:14px 14px 24px 24px;font-size:30px}.tag{font-size:12px;border:1px solid #cbcfc3;border-radius:20px;padding:5px 14px;color:#56665c}main{max-width:1180px;margin:45px auto 60px;padding:0 36px;display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:70px}.eyebrow{font-size:11px;letter-spacing:2.2px;font-weight:700;color:#7b825e}h1{font-size:clamp(32px,4.1vw,52px);line-height:1.35;letter-spacing:-1px;margin:20px 0}.lead{color:#607269;font-size:18px}.journey{display:flex;gap:28px;margin-top:40px}.journey span{font-size:12px;color:#8d956d;border-top:2px solid #d3d9c7;padding-top:12px;min-width:90px}.journey b{color:#3e5d50;font-size:15px}.card{background:#fff;border:1px solid #e1e6dc;border-radius:24px;padding:34px;box-shadow:0 14px 50px #183e3909}h2{font-size:28px;margin:8px 0}.card>p{color:#637368}button{font:inherit;cursor:pointer;border:0;border-radius:12px;padding:13px 18px;background:#183e39;color:white}#login{width:100%;display:flex;align-items:center;justify-content:space-between;margin-top:24px}button:hover{background:#28564d}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible{outline:3px solid #bd9d43;outline-offset:4px}#message{font-size:14px;min-height:24px;margin-top:20px;overflow-wrap:anywhere}.member{display:flex;align-items:center;gap:14px;padding:18px 0;border-top:1px solid #e4e8df}.avatar{background:#e5eddd;border-radius:50%;width:48px;height:48px;display:grid;place-items:center;font-size:25px}.member h3{font-size:21px;line-height:1.3;overflow-wrap:anywhere;margin:0 0 4px}.role{font-size:13px;color:#6d785d}.next{background:#f5f6ee;padding:18px;border-radius:14px}.next h3{font-size:15px;margin:0 0 8px}.next p{font-size:14px;margin:0;color:#6d785d}.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.secondary{background:#eef2e8;color:#183e39;font-size:14px}.secondary:hover{background:#dde7d3}.note{font-size:12px;line-height:1.8;border-top:1px solid #e4e8df;padding-top:20px;margin-top:24px}footer{text-align:center;padding:20px 24px 35px;color:#7a8879;font-size:12px}[hidden]{display:none!important}@media(max-width:760px){header{padding:22px}main{margin:20px auto 35px;padding:0 22px;grid-template-columns:1fr;gap:28px}.lead{font-size:16px}.journey{margin-top:24px;gap:22px}.card{padding:26px}.intro h1{font-size:34px}.eyebrow{font-size:10px}.tag{font-size:11px}}

#party-list{list-style:none;padding:0;margin:12px 0 0}#party-list:empty{display:none}#party-list li{background:#fff;border:1px solid #e1e6dc;border-radius:10px;padding:14px;margin-top:10px}#party-list h4{font-size:16px;margin:0 0 5px;overflow-wrap:anywhere}#party-list p{font-size:13px;overflow-wrap:anywhere}#party-status{font-size:13px}

.assignment-panel{margin-top:16px}#assignment-list{list-style:none;padding:0;margin:12px 0 0}#assignment-list:empty{display:none}#assignment-list li{background:white;border:1px solid #e1e6dc;border-radius:10px;padding:16px;margin-top:12px}#assignment-list h4{margin:0 0 8px;font-size:17px;overflow-wrap:anywhere}#assignment-list p{font-size:13px;margin-top:8px;white-space:pre-wrap;overflow-wrap:anywhere}#assignment-list progress{display:block;width:100%;height:12px;margin-top:14px;accent-color:#28564d}#party-list button{margin-top:12px}

main:has(#welcome:not([hidden])){grid-template-columns:1fr;max-width:1100px}main:has(#welcome:not([hidden])) .intro{display:none}
.game-nav{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.game-nav button{width:auto}.game-panel{min-width:0}.game-card{border:1px solid #d4ded5;border-radius:14px;padding:18px;margin:14px 0;background:#fbfcf7}.game-card h4{margin:0 0 10px}.game-card p{white-space:pre-wrap;overflow-wrap:anywhere}.game-form{display:grid;gap:12px;margin:14px 0}.field{display:grid;gap:6px;color:#183e39;font-size:.95rem}.field input,.field textarea,.field select{font:inherit;border:1px solid #bdcfc6;border-radius:8px;padding:10px;width:100%;box-sizing:border-box;background:white;color:#183e39}.field textarea{min-height:86px;resize:vertical}fieldset{border:1px solid #bdcfc6;border-radius:10px;padding:12px}.check{display:flex;gap:10px;align-items:center;margin:8px 0}.check input{width:18px;height:18px}.recap-stage{border:1px solid #d4ded5;border-radius:12px;padding:16px}.recap-stage summary{font-weight:700;cursor:pointer;margin-bottom:10px}.recap-stage .field{margin:12px 0}.summary{padding:14px;background:#eef3e6;border-radius:10px}.notice{color:#784d0a;overflow-wrap:anywhere}.json-view{white-space:pre-wrap;overflow-wrap:anywhere;max-height:360px;overflow:auto;font-size:.85rem}button{margin:4px 0}button:disabled{opacity:.55;cursor:wait}
