:root{color:#edf3fc;font-synthesis:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#0c111b;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer;background:#1c293d;border:1px solid #35455e;border-radius:10px;padding:9px 15px}button:focus-visible,input:focus-visible,a:focus-visible{outline-offset:3px;outline:3px solid #9cfbe0}button:disabled{cursor:default;opacity:.38}a{color:inherit;text-decoration:none}main{min-height:100dvh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.topbar{border-bottom:1px solid #243044;align-items:center;gap:16px;padding:13px 22px;display:flex}.brand{letter-spacing:-1px;font-size:25px;font-weight:850}.brand span{color:#70e6c1}.connection-badge,.eyebrow{letter-spacing:1.5px;color:#9daec5;font-size:10px;font-weight:750}.connection-badge{background:#162234;border-radius:5px;padding:6px 10px}.connection-badge.online{color:#70e6c1}.top-actions{gap:8px;margin-left:auto;display:flex}.top-actions button{padding:7px 11px;font-size:12px}.status-strip{color:#acbcd2;align-items:center;gap:9px;min-height:37px;padding:10px 23px;font-size:12px;display:flex}.status-strip small{color:#769087;white-space:nowrap;margin-left:auto}.status-dot{background:#91a0b5;border-radius:50%;flex-shrink:0;width:6px;height:6px}.status-dot.online{background:#70e6c1;box-shadow:0 0 12px #70e6c144}.join-card{background:#141e2c;border:1px solid #2c3c53;border-radius:19px;max-width:490px;margin:7vh auto;padding:32px}.eyebrow{color:#70e6c1}.join-card h1{letter-spacing:-1.7px;margin:14px 0 18px;font-size:42px;line-height:1.1}.join-card p{color:#9babc2;font-size:15px;line-height:1.65}.join-card small{color:#8093ad;margin-top:23px;font-size:12px;display:block}.join-card label{color:#aab9ce;margin:24px 0 16px;font-size:12px;display:block}.join-card input{width:100%;font:inherit;color:#fff;background:#0d1521;border:1px solid #3d4c63;border-radius:9px;margin-top:8px;padding:13px;font-size:16px;display:block}.primary{color:#0b2520;background:#70e6c1;border-color:#70e6c1;justify-content:space-between;width:100%;padding:14px 17px;font-weight:750;display:flex}.approval-card{text-align:center;padding:18px}.approval-card strong{letter-spacing:5px;margin:10px;font-size:30px;display:block}.approval-card p{color:#9babc2;font-size:12px}.gamepad{touch-action:none;-webkit-user-select:none;user-select:none;opacity:.45;height:calc(100dvh - 138px);min-height:250px;transition:opacity .15s;position:relative;overflow:hidden}.gamepad.active{opacity:1}.pad-button{touch-action:none;-webkit-user-select:none;user-select:none;background:#1e2c42;border-color:#3b4c65;border-radius:12px;min-width:48px;min-height:45px;font-weight:750;box-shadow:0 4px #0a111d}.pad-button.pressed,.dpad.pressed{background:#39665f;border-color:#8cf5d3;box-shadow:0 0 15px #70e6c130}.pad-button.small{border-radius:7px;min-width:39px;min-height:28px;padding:5px 8px;font-size:10px}.stick-wrap{text-align:center;flex-direction:column;align-items:center;gap:8px;display:flex}.stick{touch-action:none;background:radial-gradient(circle,#192a3c,#0c1422);border:1px solid #33445b;border-radius:50%;justify-content:center;align-items:center;width:clamp(86px,13vw,132px);height:clamp(86px,13vw,132px);padding:0;display:flex;position:relative}.stick-guide{border:1px dashed #34445a;border-radius:50%;position:absolute;inset:18%}.stick-knob{color:#adc2db;pointer-events:none;background:linear-gradient(145deg,#33455c,#1b2a3f);border:1px solid #5a6f87;border-radius:50%;place-items:center;width:56%;height:56%;font-size:13px;display:grid;position:absolute;box-shadow:0 5px 10px #0006}.dpad{touch-action:none;color:#a6bad4;background:#1d2c40;border:1px solid #3b4c65;border-radius:16px;grid-template:repeat(3,31px)/repeat(3,31px);place-items:center;padding:5px;display:grid}.dpad .up{grid-area:1/2}.dpad .left{grid-area:2/1}.dpad .middle{color:#5c7693;grid-area:2/2;font-size:8px}.dpad .right{grid-area:2/3}.dpad .down{grid-area:3/2}.faces{grid-template:repeat(3,37px)/repeat(3,37px);gap:2px;display:grid}.faces button{border-radius:50%;width:43px;min-width:0;height:43px;min-height:0;padding:0;font-size:18px}.face-y{color:#e9c574;grid-area:1/2}.face-x{color:#8aaff5;grid-area:2/1}.face-b{color:#ef8b91;grid-area:2/3}.face-a{color:#70e6c1;grid-area:3/2}.shoulder{width:23%;position:absolute;top:4px}.shoulder button{border-radius:12px 12px 5px 5px;width:100%;min-height:31px;font-size:12px}.trigger{color:#8ca3be;flex-direction:column;align-items:center;gap:7px;height:100%;font-size:10px;display:flex}footer{color:#7187a3;justify-content:space-between;align-items:center;gap:12px;padding:4px 22px 10px;font-size:10px;display:flex}footer button{padding:4px 9px;font-size:10px}.rotate-hint{display:none}@media (orientation:portrait){.join-card{margin:35px 20px}.gamepad{display:none}.rotate-hint{text-align:center;color:#9eb0c7;flex-direction:column;justify-content:center;align-items:center;min-height:42vh;padding:20px;display:flex}.rotate-hint>span{color:#70e6c1;font-size:54px}.rotate-hint h2{color:#e9f3ff;margin:10px;font-size:25px}.rotate-hint p{font-size:14px}.approval-card strong{font-size:25px}.topbar{gap:9px;padding:12px 17px}.brand{font-size:23px}.connection-badge{display:none}.status-strip{padding:10px 17px}footer{padding:15px 17px}}@media (orientation:landscape) and (max-height:430px){.topbar{padding:7px 18px}.brand{font-size:22px}.status-strip{min-height:26px;padding:6px 19px;font-size:10px}.gamepad{height:calc(100dvh - 111px);min-height:195px}.stick{width:88px;height:88px}.dpad{grid-template:repeat(3,26px)/repeat(3,26px);padding:3px}.faces{grid-template:repeat(3,31px)/repeat(3,31px)}.faces button{width:37px;height:37px}.shoulder button{min-height:26px;padding:4px}.approval-card{z-index:2;pointer-events:none;position:absolute;inset:115px 0 auto}.approval-card strong{margin:5px;font-size:24px}.approval-card p{margin:5px}.gamepad:not(.active){opacity:.16}}.pad-slot{transform-origin:50%;width:max-content;position:absolute}.pad-slot.shoulder{width:23%}.utility{gap:8px;display:flex}.trigger-slot{height:58%}.trigger-track{touch-action:none;background:#0d1521;border-radius:7px;flex:1;width:25px;min-height:35px;padding:0;position:relative;overflow:hidden}.trigger-fill{pointer-events:none;background:#70e6c1;position:absolute;inset:auto 0 0}.gamepad.layout-preview{opacity:1;border-bottom:1px dashed #3a4a64}.layout-preview .pad-slot button:disabled{opacity:1}.session-panel{background:#141e2c;border:1px solid #2c3c53;border-radius:12px;max-width:900px;margin:12px auto;padding:15px 19px}.session-panel h2,.session-panel h3{margin:0 0 10px;font-size:16px}.session-panel p{color:#acbcd2;margin:8px 0;font-size:13px}.session-heading,.session-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.session-heading{justify-content:space-between;margin-bottom:10px}.game-list{margin:0;padding:0;list-style:none}.game-list li{border-bottom:1px solid #243044;justify-content:space-between;align-items:center;gap:12px;padding:7px 0;display:flex}.layout-fields{grid-template-columns:repeat(auto-fit,minmax(152px,1fr));gap:10px 16px;margin:12px 0;display:grid}.layout-fields label{color:#acbcd2;align-content:start;gap:4px;font-size:12px;display:grid}.layout-fields select{font:inherit;border:1px solid #35455e;border-radius:6px;padding:6px}.layout-fields input{accent-color:#70e6c1;width:100%}.layout-fields .layout-checkbox{align-items:center;display:flex}.layout-fields .layout-checkbox input{width:auto}.join-card form+.primary,.join-card .primary+.primary{margin-top:10px}@media (max-width:920px){.session-panel{margin:10px 14px}}@media (max-width:380px){.topbar{flex-wrap:wrap}}@media (orientation:landscape) and (max-height:430px){.gamepad.layout-preview{height:195px}}
