:root{font-family:Arial,system-ui,sans-serif;color:#162440;background:#f3f6fc;font-size:17px}*{box-sizing:border-box}body{margin:0}header{background:#162440;color:white;display:flex;gap:24px;align-items:center;padding:18px max(20px,calc((100% - 1000px)/2))}.logo{font-size:24px;font-weight:900;text-decoration:none;color:white;letter-spacing:.04em}.logo span{color:#bcf35d}#total{margin-left:auto;white-space:nowrap;color:#bcf35d;font-weight:bold}button,.file{font:inherit;border:1px solid #b5c2d9;border-radius:10px;background:white;color:#162440;padding:12px 18px;cursor:pointer;min-height:46px}button:hover,.file:hover{border-color:#315cf4;background:#edf2ff}button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible,select:focus-visible{outline:3px solid #f1a900;outline-offset:3px}button:disabled{opacity:.5;cursor:default}.primary{background:#315cf4;color:white;border-color:#315cf4;font-weight:bold}.primary:hover{background:#2444ca;color:white}main{max-width:1000px;margin:24px auto;padding:0 22px}nav{display:flex;gap:10px;margin-bottom:28px}nav button[aria-pressed=true]{background:#162440;color:white}.topline{display:flex;align-items:center;justify-content:space-between;color:#315cf4;font-weight:bold}h1{font-size:34px;margin:10px 0}h2{font-size:23px;margin:24px 0 14px}p{line-height:1.45}#hint{margin:8px 0 18px}#playPanel{background:white;padding:26px;border-radius:18px;border:1px solid #d7dfed}.metrics{display:flex;gap:24px;justify-content:space-between;padding:18px 10px;text-align:center}.metrics>div{flex:1}.metrics strong{display:block;font-size:36px}.metrics span{display:block;font-size:15px;margin-top:3px}.track{height:6px;border-radius:3px;background:#e9eef8;overflow:hidden}.track>div{height:100%;background:#315cf4;width:0}#target{font:24px/1.65 Consolas,monospace;background:#f1f4fb;border-radius:10px;padding:20px;min-height:132px;height:156px;overflow:hidden;white-space:pre-wrap}.done{color:#476b6a}.current{color:white;background:#315cf4;border-bottom:3px solid #162440}textarea{font:21px/1.5 Consolas,monospace;width:100%;height:64px;padding:12px;margin-top:12px;border:2px solid #adbbd5;border-radius:10px;resize:vertical}textarea.wrong{border-color:#bd223a;background:#fff0f2}#status{min-height:25px;font-size:16px;margin:8px 0;color:#465978}.actions{display:flex;gap:12px;flex-wrap:wrap}.actions .primary{min-width:175px}#result{margin-top:22px;padding-top:18px;border-top:2px solid #e2e8f4}#resultHeadline{font-size:30px;font-weight:bold;color:#264ccf}#resultFacts{margin:12px 0}#nextGoal{color:#3c5874}#compare{margin-top:22px;background:#edf3ff;padding:18px;border-radius:10px}form{display:flex;align-items:end;gap:12px;flex-wrap:wrap}label{display:block}input,select{font:inherit;padding:10px;border:1px solid #aebdd6;border-radius:6px;max-width:100%}input[type=number]{display:block;width:150px;margin-top:5px}#duelSetup{padding:12px;background:#edf3ff;border-radius:8px;margin-bottom:12px}#duelSetup p{margin-bottom:0;font-size:16px}footer{margin:26px 0;color:#465978;font-size:15px}footer details{margin:14px 0}footer p{max-width:850px}summary{cursor:pointer;padding:8px 0}dialog{border:1px solid #abbcd7;border-radius:18px;max-width:680px;width:calc(100% - 28px);max-height:90vh;overflow:auto;padding:25px}dialog::backdrop{background:#14223cb3}dialog h2{margin-top:0}dialog button{margin:5px 0}.zone{padding:10px;border-bottom:1px solid #ccd6e7}.mission{display:flex;width:100%;justify-content:space-between;text-align:left;gap:16px}.mission small{white-space:nowrap}.active{border:2px solid #315cf4}.file{display:inline-block;margin:8px 0}input[type=file]{display:block;font-size:14px;margin-top:8px;border:0;padding:0}.path{font-size:16px;font-weight:bold}table{border-collapse:collapse;width:100%;background:white}td,th{text-align:left;padding:12px;border-bottom:1px solid #d4deed;font-size:16px}th{background:#162440;color:white}.tablewrap{overflow-x:auto}#badges{display:flex;gap:10px;flex-wrap:wrap}#badges span{padding:10px 15px;border-radius:8px;background:#e2e9f6;color:#53627b}#badges .won{background:#d9f3b9;color:#22491b}#history p,#duelHistory p{border-bottom:1px solid #d4deed;padding:8px;margin:0}.notice{background:#fff6da;padding:12px;border-radius:8px}.notice button{padding:5px 10px;font-size:15px}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}[hidden]{display:none!important}@media(max-width:650px){header{padding:12px;gap:10px;flex-wrap:wrap}header button{font-size:15px;padding:8px}main{padding:0 12px;margin:16px auto}nav{gap:6px;flex-wrap:wrap}nav button{font-size:15px;flex:1;padding:10px}#playPanel{padding:16px}h1{font-size:27px}.metrics{gap:8px}.metrics strong{font-size:29px}#target{font-size:20px;height:160px}.topline button{font-size:15px;padding:8px}.actions button{flex:1}}
