html,body{margin:0;height:100%;background:#111;color:#eee;font-family:system-ui,-apple-system,sans-serif}.card{max-width:360px;margin:10vh auto;padding:24px;display:grid;gap:12px}.card input,.card button{font-size:18px;padding:10px}.card a{color:#9cf;font-size:18px}.console{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;grid-template-rows:32px 1fr}.console header{display:flex;gap:12px;align-items:center;padding:0 8px;font-size:14px;background:#000}.console header button{margin-left:auto}.stage{position:relative;background:#000}.stage video{width:100%;height:100%;object-fit:contain}.dpad{position:fixed;left:24px;bottom:24px;width:160px;height:160px;border-radius:50%;background:#ffffff1f;touch-action:none;user-select:none;-webkit-user-select:none}.dpad .knob{position:absolute;top:55px;right:55px;bottom:55px;left:55px;border-radius:50%;background:#ffffff59;pointer-events:none}.right{position:fixed;right:16px;bottom:24px;display:grid;gap:8px}.right button{font-size:22px;width:56px;height:56px}.right details button{width:auto;height:auto;font-size:14px;margin:2px}.rotate{display:none;position:fixed;top:0;right:0;bottom:0;left:0;place-items:center;background:#000c;font-size:24px}dialog{background:#222;color:#eee;border:1px solid #444;border-radius:8px}dialog input{font-size:18px;padding:8px;width:60vw}@media(orientation:portrait){.rotate{display:grid}}.topnav{display:flex;gap:16px;padding:10px 16px;background:#000;position:sticky;top:0}.topnav a{color:#9cf;text-decoration:none}.topnav a.active{color:#fff;font-weight:600}.page{max-width:640px;margin:0 auto;padding:16px;display:grid;gap:16px}.page .card{margin:0;padding:16px;background:#1b1b1b;border-radius:10px;display:grid;gap:10px}.page label,.page fieldset{display:grid;gap:6px}fieldset{border:1px solid #333;border-radius:8px}.page input,.page select,.page button{font-size:16px;padding:8px}.row{display:flex;justify-content:space-between;align-items:center}.prow{display:flex;gap:8px;align-items:center}.hint{color:#aaa;font-size:14px}.err{color:#f88}table{width:100%;border-collapse:collapse}td,th{text-align:left;padding:6px;border-bottom:1px solid #333}.console #ent{padding:2px 8px;border-radius:6px;background:#a33;color:#fff}
