body.bit101-games{
    --game-ink:#163844;
    --game-muted:#56717b;
    --game-teal:#0aa9ae;
    --game-teal-dark:#08727c;
    --game-aqua:#6fe3d7;
    --game-orange:#ff9c35;
    --game-yellow:#ffd95b;
    --game-cream:#fff9e8;
    --game-danger:#d85c5c;
    min-height:100dvh;
    margin:0;
    overflow:hidden;
    background:
        radial-gradient(circle at 9% 18%,rgba(255,217,91,.42),transparent 21rem),
        radial-gradient(circle at 89% 10%,rgba(111,227,215,.46),transparent 24rem),
        linear-gradient(145deg,#effdf9,#fff8e6 55%,#edf9ff);
    color:var(--game-ink);
}

body.bit101-games *,
body.bit101-games *::before,
body.bit101-games *::after{box-sizing:border-box}

body.bit101-games [hidden]{display:none!important}

body.bit101-games .sr-only{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    padding:0!important;
    margin:-1px!important;
    overflow:hidden!important;
    clip:rect(0,0,0,0)!important;
    white-space:nowrap!important;
    border:0!important;
}

body.bit101-games .game-root{min-height:100dvh}

body.bit101-games .game-selector{
    position:relative;
    width:min(1180px,100%);
    min-height:100dvh;
    margin:0 auto;
    padding:
        max(30px,env(safe-area-inset-top))
        max(24px,env(safe-area-inset-right))
        max(28px,env(safe-area-inset-bottom))
        max(24px,env(safe-area-inset-left));
    overflow:hidden;
}

body.bit101-games[data-game-view="selector"]{overflow:hidden}

body.bit101-games .game-selector::before,
body.bit101-games .game-selector::after{
    position:absolute;
    z-index:-1;
    content:"";
    border:3px solid rgba(10,169,174,.15);
    border-radius:50%;
}

body.bit101-games .game-selector::before{
    width:240px;
    height:240px;
    right:-80px;
    top:18%;
    box-shadow:inset 0 0 0 22px rgba(10,169,174,.05);
}

body.bit101-games .game-selector::after{
    width:150px;
    height:150px;
    left:-64px;
    bottom:10%;
    border-color:rgba(255,156,53,.18);
}

body.bit101-games .game-selector__doodle{
    position:absolute;
    z-index:-1;
    color:rgba(8,114,124,.13);
    font:900 clamp(36px,8vw,94px)/1 "Trebuchet MS",sans-serif;
    transform:rotate(-9deg);
    user-select:none;
}

body.bit101-games .game-selector__doodle--one{right:2%;top:2%}
body.bit101-games .game-selector__doodle--two{left:2%;bottom:1%;transform:rotate(7deg)}

body.bit101-games .game-selector__header{
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
    align-items:start;
    gap:clamp(18px,4vw,48px);
    margin:0 auto clamp(24px,4vw,44px);
}

body.bit101-games .game-selector__eyebrow,
body.bit101-games .game-preflight__kicker,
body.bit101-games .game-card__kicker{
    display:block;
    color:var(--game-teal-dark);
    font-size:12px;
    font-weight:900;
    letter-spacing:.12em;
    text-transform:uppercase;
}

body.bit101-games .game-selector h1{
    max-width:760px;
    margin:5px 0 10px;
    color:var(--game-ink);
    font-size:clamp(38px,6.2vw,76px);
    font-weight:900;
    letter-spacing:-.045em;
    line-height:.95;
}

body.bit101-games .game-selector__header p{
    max-width:760px;
    margin:0;
    color:var(--game-muted);
    font-size:clamp(16px,2vw,21px);
    line-height:1.45;
}

body.bit101-games .game-back-link{
    display:inline-flex;
    align-items:center;
    min-height:46px;
    padding:0 18px;
    border:2px solid rgba(8,114,124,.17);
    border-radius:999px;
    background:rgba(255,255,255,.74);
    box-shadow:0 9px 24px rgba(22,56,68,.08);
    color:var(--game-teal-dark);
    font-weight:900;
    text-decoration:none;
    -webkit-backdrop-filter:blur(12px);
    backdrop-filter:blur(12px);
}

body.bit101-games .game-selector__grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:clamp(18px,3vw,32px);
}

body.bit101-games .game-card{
    display:grid;
    min-width:0;
    overflow:hidden;
    border:0;
    border-radius:clamp(24px,3vw,38px);
    background:rgba(255,255,255,.84);
    box-shadow:0 22px 54px rgba(22,56,68,.15);
    color:var(--game-ink);
    text-decoration:none;
    transform:translateZ(0);
    transition:transform .2s ease,box-shadow .2s ease;
}

body.bit101-games .game-card:hover,
body.bit101-games .game-card:focus-visible{
    transform:translateY(-5px) rotate(-.25deg);
    box-shadow:0 28px 68px rgba(22,56,68,.2);
}

body.bit101-games .game-card--road:hover,
body.bit101-games .game-card--road:focus-visible{transform:translateY(-5px) rotate(.25deg)}

body.bit101-games .game-card__preview{
    position:relative;
    display:block;
    aspect-ratio:16/9;
    overflow:hidden;
    background:#d9f3ef;
}

body.bit101-games .game-card__preview::after{
    position:absolute;
    inset:auto 0 0;
    height:36%;
    content:"";
    background:linear-gradient(transparent,rgba(17,42,52,.35));
    pointer-events:none;
}

body.bit101-games .game-card__preview img{
    width:100%;
    height:100%;
    object-fit:cover;
    transform:scale(1.015);
    transition:transform .45s ease;
}

body.bit101-games .game-card:hover .game-card__preview img{transform:scale(1.055)}

body.bit101-games .game-card__number{
    position:absolute;
    z-index:1;
    right:16px;
    bottom:12px;
    color:#fff;
    font-size:26px;
    font-weight:900;
    letter-spacing:.08em;
}

body.bit101-games .game-card__content{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:7px 18px;
    align-items:center;
    padding:clamp(20px,3vw,30px);
}

body.bit101-games .game-card__kicker{grid-column:1/-1}

body.bit101-games .game-card__name{
    font-size:clamp(25px,3vw,38px);
    font-weight:900;
    letter-spacing:-.035em;
    line-height:1.02;
}

body.bit101-games .game-card__description{
    grid-column:1;
    color:var(--game-muted);
    font-size:16px;
    line-height:1.42;
}

body.bit101-games .game-card__action{
    grid-column:2;
    grid-row:2/4;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    min-width:104px;
    min-height:52px;
    padding:0 18px;
    border-radius:999px;
    background:linear-gradient(135deg,var(--game-orange),var(--game-yellow));
    box-shadow:0 10px 20px rgba(255,156,53,.25);
    color:#5b3d00;
    font-weight:900;
}

body.bit101-games .game-selector__hint{
    margin:22px 0 0;
    color:var(--game-muted);
    text-align:center;
    font-size:14px;
    font-weight:800;
}

body.bit101-games .game-resume-card{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:12px 18px;
    align-items:center;
    margin:0 0 24px;
    padding:17px 20px;
    border:2px solid rgba(10,169,174,.17);
    border-radius:22px;
    background:rgba(255,255,255,.82);
    box-shadow:0 12px 30px rgba(22,56,68,.1);
}

body.bit101-games .game-resume-card>div:first-child{display:grid;gap:4px}
body.bit101-games .game-resume-card__actions{display:flex;flex-wrap:wrap;gap:8px}
body.bit101-games .game-resume-card>p{grid-column:1/-1;margin:0;color:var(--game-muted);font-size:13px}

body.bit101-games .game-shell,
body.bit101-games .game-stage{
    position:relative;
    width:100%;
    height:100dvh;
    min-height:100dvh;
    overflow:hidden;
    background:#081a26;
    touch-action:manipulation;
}

body.bit101-games .game-scene{position:absolute;inset:0;overflow:hidden}

body.bit101-games .game-scene-flash{
    position:absolute;
    z-index:3;
    inset:0;
    opacity:0;
    pointer-events:none;
}

body.bit101-games .game-shell[data-outcome="correct"] .game-scene-flash{
    background:radial-gradient(circle at center,rgba(73,220,150,.28),rgba(42,177,119,.08) 52%,transparent 78%);
    animation:game-flash .58s ease-out;
}

body.bit101-games .game-shell[data-outcome="wrong"] .game-scene-flash,
body.bit101-games .game-shell[data-outcome="no-answer"] .game-scene-flash{
    background:radial-gradient(circle at center,rgba(255,105,105,.26),rgba(218,65,65,.08) 52%,transparent 78%);
    animation:game-flash .68s ease-out;
}

@keyframes game-flash{
    0%{opacity:0}
    22%{opacity:1}
    100%{opacity:0}
}

body.bit101-games .game-shell__tools{
    position:absolute;
    z-index:6;
    top:max(12px,env(safe-area-inset-top));
    display:flex;
    gap:8px;
}

body.bit101-games .game-shell__tools--left{left:max(12px,env(safe-area-inset-left))}
body.bit101-games .game-shell__tools--right{right:max(12px,env(safe-area-inset-right))}

body.bit101-games .game-tool{
    display:grid;
    place-items:center;
    width:46px;
    height:46px;
    padding:0;
    border:1px solid rgba(255,255,255,.34);
    border-radius:50%;
    background:rgba(7,25,36,.55);
    box-shadow:0 8px 22px rgba(0,0,0,.18);
    color:#fff;
    cursor:pointer;
    text-decoration:none;
    -webkit-backdrop-filter:blur(12px);
    backdrop-filter:blur(12px);
}

body.bit101-games .game-tool[aria-pressed="false"]{color:#a8bbc2;opacity:.78}
body.bit101-games .game-tool svg{width:22px;height:22px;fill:currentColor}

body.bit101-games .game-status{
    position:absolute;
    z-index:5;
    top:max(14px,env(safe-area-inset-top));
    left:50%;
    display:grid;
    grid-template-columns:auto auto;
    gap:4px 12px;
    min-width:146px;
    padding:7px 12px 8px;
    transform:translateX(-50%);
    border:1px solid rgba(255,255,255,.27);
    border-radius:18px;
    background:rgba(7,25,36,.5);
    box-shadow:0 8px 22px rgba(0,0,0,.16);
    color:#fff;
    -webkit-backdrop-filter:blur(10px);
    backdrop-filter:blur(10px);
}

body.bit101-games .game-status>span{display:flex;align-items:baseline;justify-content:space-between;gap:5px}
body.bit101-games .game-status small{color:rgba(255,255,255,.66);font-size:10px;font-weight:800;text-transform:uppercase}
body.bit101-games .game-status strong{font-size:13px}

body.bit101-games .game-progress{
    grid-column:1/-1;
    display:block;
    height:3px;
    overflow:hidden;
    border-radius:99px;
    background:rgba(255,255,255,.2);
}

body.bit101-games .game-progress>i{
    display:block;
    width:0;
    height:100%;
    border-radius:inherit;
    background:var(--game-aqua);
    transition:width .2s ease;
}

body.bit101-games .game-expression{
    position:absolute;
    z-index:5;
    top:50%;
    left:max(20px,env(safe-area-inset-left));
    display:grid;
    place-items:center;
    min-width:clamp(142px,14vw,190px);
    min-height:58px;
    margin:0;
    padding:10px 18px;
    transform:translateY(-50%);
    color:#eaffff;
    font:900 clamp(24px,2.5vw,34px)/1.05 "Trebuchet MS",Roboto,Arial,sans-serif;
    font-variant-numeric:tabular-nums;
    letter-spacing:.01em;
    text-align:center;
    text-shadow:0 0 12px rgba(111,227,215,.48);
    pointer-events:none;
    contain:layout paint style;
    transition:border-color .16s ease,color .16s ease,box-shadow .16s ease,background-color .16s ease;
}

body.bit101-games .game-expression::before,
body.bit101-games .game-expression::after{
    position:absolute;
    content:"";
    pointer-events:none;
}

body.bit101-games .game-shell[data-game-id="tunnel"] .game-expression{
    min-width:clamp(178px,17vw,226px);
    min-height:64px;
    padding:11px 20px;
    border:1px solid rgba(126,246,255,.72);
    border-radius:50%;
    background:radial-gradient(ellipse at center,rgba(13,73,91,.74),rgba(5,25,39,.68) 72%);
    box-shadow:
        0 0 0 3px rgba(69,198,215,.1),
        inset 0 0 18px rgba(102,235,244,.12),
        0 10px 28px rgba(0,0,0,.2);
    font-size:clamp(28px,2.8vw,38px);
}

body.bit101-games .game-shell[data-game-id="tunnel"] .game-expression::before{
    inset:-7px 12%;
    border-top:2px solid rgba(134,244,255,.48);
    border-bottom:2px solid rgba(134,244,255,.32);
    border-radius:50%;
}

body.bit101-games .game-shell[data-game-id="tunnel"] .game-expression::after{
    top:50%;
    right:-8px;
    left:-8px;
    height:1px;
    background:linear-gradient(90deg,rgba(111,227,215,.72) 0 8px,transparent 8px calc(100% - 8px),rgba(111,227,215,.72) calc(100% - 8px));
}

body.bit101-games .game-shell[data-game-id="road"] .game-expression{
    top:clamp(190px,26vh,236px);
    right:max(20px,env(safe-area-inset-right));
    left:auto;
    min-width:242px;
    min-height:70px;
    padding:13px 24px;
    transform:none;
    border:1px solid rgba(255,210,108,.72);
    border-radius:12px 24px 12px 24px;
    background:linear-gradient(145deg,rgba(19,38,49,.86),rgba(31,55,54,.72));
    box-shadow:
        inset 0 -3px 0 rgba(84,222,169,.18),
        0 10px 28px rgba(0,0,0,.23);
    color:#fff6c9;
    font-size:clamp(30px,2.9vw,41px);
    text-shadow:0 0 11px rgba(255,211,98,.36);
}

body.bit101-games .game-shell[data-game-id="road"] .game-expression::before{
    inset:7px -5px;
    border-right:3px solid rgba(92,227,174,.58);
    border-left:3px solid rgba(92,227,174,.38);
    transform:skewX(-12deg);
}

body.bit101-games .game-shell[data-game-id="road"] .game-expression::after{
    right:18px;
    bottom:5px;
    left:18px;
    height:2px;
    background:linear-gradient(90deg,transparent,rgba(255,213,105,.72),transparent);
}

body.bit101-games .game-shell .game-expression[data-expression-state="correct"]{
    border-color:rgba(112,255,184,.9);
    color:#caffdf;
    box-shadow:0 0 0 3px rgba(80,227,154,.12),inset 0 0 18px rgba(80,227,154,.13),0 10px 28px rgba(0,0,0,.2);
    animation:game-expression-confirm .46s ease-out;
}

body.bit101-games .game-shell .game-expression[data-expression-state="wrong"],
body.bit101-games .game-shell .game-expression[data-expression-state="no-answer"]{
    border-color:rgba(255,139,128,.9);
    color:#ffe0da;
    box-shadow:0 0 0 3px rgba(255,105,105,.1),inset 0 0 18px rgba(255,105,105,.11),0 10px 28px rgba(0,0,0,.2);
    animation:game-expression-correction .54s ease-out;
}

@keyframes game-expression-confirm{
    0%{opacity:.68;filter:brightness(1)}
    42%{opacity:1;filter:brightness(1.24)}
    100%{opacity:1;filter:brightness(1)}
}

@keyframes game-expression-correction{
    0%{opacity:.72;filter:brightness(1)}
    38%{opacity:1;filter:brightness(1.18)}
    100%{opacity:1;filter:brightness(1)}
}

body.bit101-games .game-steering{
    --bit101-fullscreen-overlay-clearance:72px;
    --bit101-fullscreen-overlay-clearance:clamp(56px,10dvh,88px);
    position:absolute;
    z-index:7;
    right:max(18px,env(safe-area-inset-right));
    bottom:max(18px,env(safe-area-inset-bottom));
    left:max(18px,env(safe-area-inset-left));
    display:flex;
    align-items:end;
    justify-content:space-between;
    pointer-events:none;
    transition:transform .55s cubic-bezier(.22,.61,.36,1);
}

body.bit101-games [data-fullscreen-controls="elevated"] .game-steering{
    transform:translate3d(0,calc(0px - var(--bit101-fullscreen-overlay-clearance)),0);
}

body.bit101-games .game-steering__right-cluster{
    display:flex;
    align-items:end;
    gap:clamp(8px,1.2vw,14px);
    pointer-events:none;
}

body.bit101-games .game-steer{
    display:grid;
    place-items:center;
    width:clamp(70px,8vw,88px);
    height:clamp(70px,8vw,88px);
    padding:0;
    border:0;
    border-radius:50%;
    background:transparent;
    box-shadow:none;
    cursor:pointer;
    pointer-events:auto;
    touch-action:none;
    user-select:none;
    -webkit-tap-highlight-color:transparent;
    transition:
        transform .1s ease,
        opacity .15s ease,
        filter .15s ease;
}

body.bit101-games .game-diagnostics{
    position:absolute;
    z-index:11;
    top:clamp(82px,22vh,176px);
    left:max(18px,env(safe-area-inset-left));
    display:grid;
    justify-items:start;
    gap:8px;
    max-width:min(156px,34vw);
    pointer-events:none;
    contain:layout style;
}

/*
 * Tester diagnostics use a reserved rail while full-screen preflight/result
 * content is present. The rail keeps the controls immediately available
 * without placing them over the modal card. Narrow portrait screens reserve
 * vertical space instead because a side rail would make the card unusable.
 */
@media (min-width:560px){
    body.bit101-games .game-shell[data-test-diagnostics="enabled"]:has(.game-preflight:not([hidden])) .game-preflight,
    body.bit101-games .game-shell[data-test-diagnostics="enabled"]:has(.game-result:not([hidden])) .game-result{
        padding-left:max(190px,calc(env(safe-area-inset-left) + 190px));
    }
}

@media (max-width:559px){
    body.bit101-games .game-shell[data-test-diagnostics="enabled"]:has(.game-preflight:not([hidden])) .game-diagnostics,
    body.bit101-games .game-shell[data-test-diagnostics="enabled"]:has(.game-result:not([hidden])) .game-diagnostics{
        top:max(164px,calc(env(safe-area-inset-top) + 164px));
        transform:none;
    }
    body.bit101-games .game-shell[data-test-diagnostics="enabled"]:has(.game-preflight:not([hidden])) .game-preflight,
    body.bit101-games .game-shell[data-test-diagnostics="enabled"]:has(.game-result:not([hidden])) .game-result{
        place-items:start center;
        padding-top:max(258px,calc(env(safe-area-inset-top) + 258px));
    }
}

body.bit101-games .game-fps-counter{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:74px;
    min-height:34px;
    padding:7px 11px;
    border:1px solid rgba(111,227,215,.82);
    border-radius:999px;
    background:rgba(7,25,36,.72);
    box-shadow:0 10px 24px rgba(0,0,0,.2);
    color:#fff;
    font:800 13px/1 Roboto,Arial,sans-serif;
    font-variant-numeric:tabular-nums;
    letter-spacing:.02em;
    white-space:nowrap;
    -webkit-backdrop-filter:blur(10px);
    backdrop-filter:blur(10px);
    pointer-events:none;
}

body.bit101-games .game-quality-test{
    position:static;
    min-width:126px;
    min-height:38px;
    padding:8px 13px;
    border:1px solid rgba(255,255,255,.72);
    border-radius:999px;
    background:rgba(7,25,36,.7);
    box-shadow:0 10px 24px rgba(0,0,0,.22);
    color:#fff;
    font:800 11px/1.1 Roboto,Arial,sans-serif;
    letter-spacing:.035em;
    cursor:pointer;
    -webkit-backdrop-filter:blur(10px);
    backdrop-filter:blur(10px);
    touch-action:manipulation;
    pointer-events:auto;
}

body.bit101-games .game-quality-test[data-quality-profile="high"]{border-color:rgba(255,220,111,.9)}
body.bit101-games .game-quality-test[data-quality-profile="balanced"]{border-color:rgba(111,227,215,.88)}
body.bit101-games .game-quality-test[data-quality-profile="fallback"]{border-color:rgba(184,203,211,.82)}
body.bit101-games .game-quality-test:focus-visible{outline:3px solid rgba(255,217,91,.98);outline-offset:3px}
body.bit101-games .game-quality-test:disabled{opacity:.5;cursor:default}

body.bit101-games .game-direction-icon{
    width:100%;
    height:100%;
    overflow:visible;
    pointer-events:none;
}

body.bit101-games .game-shell[data-game-id="tunnel"] .game-quality-test{
    top:calc(max(12px,env(safe-area-inset-top)) + 56px);
    right:max(12px,env(safe-area-inset-right));
    bottom:auto;
}

@media (hover:hover){
    body.bit101-games .game-steer:not(:disabled):hover{
        filter:brightness(1.1);
    }
}

body.bit101-games .game-steer:not(:disabled):active{
    transform:scale(.94);
    filter:brightness(.94);
}

body.bit101-games .game-steer:focus-visible{
    outline:4px solid rgba(255,217,91,.98);
    outline-offset:4px;
}

body.bit101-games .game-steer:disabled{
    opacity:.32;
    filter:saturate(.55);
    cursor:default;
}

body.bit101-games .game-renderer-fallback,
body.bit101-games .game-placeholder-warning{
    position:absolute;
    z-index:5;
    top:50%;
    left:50%;
    display:grid;
    width:min(500px,calc(100% - 32px));
    gap:6px;
    padding:16px 18px;
    transform:translate(-50%,-50%);
    border:1px solid rgba(255,255,255,.46);
    border-radius:22px;
    background:rgba(7,25,36,.72);
    box-shadow:0 18px 40px rgba(0,0,0,.24);
    color:#fff;
    text-align:center;
    -webkit-backdrop-filter:blur(12px);
    backdrop-filter:blur(12px);
}

body.bit101-games .game-renderer-fallback__answers{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:8px;
    margin-top:8px;
}

body.bit101-games .game-renderer-fallback__answers>span{
    display:grid;
    gap:2px;
    padding:8px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:12px;
}

body.bit101-games .game-renderer-fallback__answers small{color:rgba(255,255,255,.7)}
body.bit101-games .game-renderer-fallback__answers strong{font-size:24px}

body.bit101-games .game-preflight,
body.bit101-games .game-result{
    position:absolute;
    z-index:10;
    inset:0;
    display:grid;
    place-items:center;
    padding:
        max(18px,env(safe-area-inset-top))
        max(18px,env(safe-area-inset-right))
        max(18px,env(safe-area-inset-bottom))
        max(18px,env(safe-area-inset-left));
    overflow:auto;
    background:
        radial-gradient(circle at 15% 18%,rgba(255,217,91,.36),transparent 28rem),
        radial-gradient(circle at 85% 8%,rgba(111,227,215,.42),transparent 25rem),
        rgba(236,250,247,.94);
}

body.bit101-games [data-system-text="true"]{
    font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
    font-kerning:normal;
    font-synthesis:none;
    font-variant-numeric:lining-nums tabular-nums;
}

body.bit101-games [data-system-text="true"] .game-action{font-family:inherit}

body.bit101-games .game-preflight__card,
body.bit101-games .game-result__card{
    width:min(600px,100%);
    padding:clamp(24px,5vw,48px);
    border:1px solid rgba(255,255,255,.78);
    border-radius:clamp(26px,4vw,40px);
    background:rgba(255,255,255,.82);
    box-shadow:0 24px 70px rgba(22,56,68,.16);
    text-align:center;
    -webkit-backdrop-filter:blur(14px);
    backdrop-filter:blur(14px);
}

body.bit101-games .game-preflight__card--start{
    width:min(480px,100%);
    padding:clamp(24px,4vw,36px);
}

body.bit101-games .game-preflight__card--start .game-start__hint{
    margin:0;
    color:var(--game-ink);
    font-size:clamp(18px,2.5vw,22px);
    font-weight:750;
    line-height:1.4;
}

body.bit101-games .game-preflight__card--start .game-preflight__readiness:not(.game-preflight__readiness--visible){
    position:absolute;
    width:1px;
    height:1px;
    padding:0;
    margin:-1px;
    overflow:hidden;
    clip:rect(0,0,0,0);
    white-space:nowrap;
    border:0;
}
body.bit101-games .game-preflight__card--start .game-preflight__actions{margin-top:22px}
body.bit101-games .game-preflight__card--start .game-action--primary{
    width:min(220px,100%);
    min-width:0;
}

body.bit101-games .game-preflight h1,
body.bit101-games .game-result h2{
    margin:6px 0 10px;
    font-size:clamp(32px,6vw,54px);
    font-weight:900;
    letter-spacing:-.045em;
    line-height:1;
}

body.bit101-games .game-preflight__card>p,
body.bit101-games .game-result__card>p{margin:8px 0;color:var(--game-muted);font-size:17px}

body.bit101-games .game-tutorial{
    display:grid;
    gap:10px;
    margin:20px 0;
    padding:18px;
    border:2px dashed rgba(10,169,174,.25);
    border-radius:22px;
    background:rgba(237,252,249,.72);
}

body.bit101-games .game-tutorial h2{margin:0;font-size:21px}
body.bit101-games .game-tutorial p{margin:0;color:var(--game-muted);line-height:1.42}
body.bit101-games .game-tutorial__equation{font-size:30px}

body.bit101-games .game-tutorial__controls{
    display:grid;
    grid-template-columns:auto minmax(40px,120px) auto;
    align-items:center;
    justify-content:center;
    gap:10px;
}

body.bit101-games .game-tutorial__controls span{
    display:grid;
    place-items:center;
    width:48px;
    height:48px;
    border-radius:50%;
    background:#fff;
    color:var(--game-teal-dark);
    box-shadow:0 7px 18px rgba(22,56,68,.1);
}

body.bit101-games .game-tutorial__controls .game-direction-icon{width:62%;height:62%}

body.bit101-games .game-tutorial__controls i{
    height:3px;
    border-radius:99px;
    background:linear-gradient(90deg,var(--game-aqua),var(--game-orange));
}

body.bit101-games .game-preflight__actions,
body.bit101-games .game-result__actions,
body.bit101-games .game-dialog__actions{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:10px;
    margin-top:20px;
}

body.bit101-games .game-action{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:48px;
    padding:0 20px;
    border:0;
    border-radius:999px;
    font:900 15px/1 Roboto,Arial,sans-serif;
    cursor:pointer;
    text-decoration:none;
}

body.bit101-games .game-action--primary{
    background:linear-gradient(135deg,var(--game-orange),var(--game-yellow));
    box-shadow:0 10px 20px rgba(255,156,53,.22);
    color:#593b00;
}

body.bit101-games .game-action--secondary{background:#e0f6f2;color:var(--game-teal-dark)}
body.bit101-games .game-action--text{background:transparent;color:var(--game-teal-dark)}
body.bit101-games .game-action--danger{background:#fee5e1;color:#963b3b}
body.bit101-games .game-action:disabled{opacity:.46;cursor:default}

body.bit101-games .game-dialog{
    width:min(440px,calc(100% - 32px));
    padding:26px;
    border:0;
    border-radius:28px;
    background:#fff;
    box-shadow:0 24px 80px rgba(0,0,0,.28);
    color:var(--game-ink);
    text-align:center;
}

body.bit101-games .game-dialog::backdrop{background:rgba(4,18,27,.58);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}
body.bit101-games .game-dialog h2{margin:0 0 8px;font-size:30px}
body.bit101-games .game-dialog p{margin:0;color:var(--game-muted)}

body.bit101-games .game-orientation{
    position:absolute;
    z-index:12;
    top:max(70px,calc(env(safe-area-inset-top) + 60px));
    left:50%;
    display:flex;
    align-items:center;
    gap:12px;
    width:min(360px,calc(100% - 30px));
    padding:12px 16px;
    transform:translateX(-50%);
    border:1px solid rgba(255,255,255,.45);
    border-radius:20px;
    background:rgba(7,25,36,.76);
    box-shadow:0 14px 34px rgba(0,0,0,.22);
    color:#fff;
    -webkit-backdrop-filter:blur(12px);
    backdrop-filter:blur(12px);
    animation:orientation-hint 2.6s ease both;
    pointer-events:none;
}

body.bit101-games .game-orientation h2{margin:0 0 2px;font-size:15px}
body.bit101-games .game-orientation p{margin:0;color:rgba(255,255,255,.74);font-size:12px;line-height:1.35}

body.bit101-games .game-orientation__phone{
    flex:0 0 auto;
    width:22px;
    height:36px;
    border:2px solid var(--game-aqua);
    border-radius:5px;
    animation:phone-turn 2.2s ease-in-out both;
}

@keyframes orientation-hint{
    0%,100%{opacity:0;transform:translate(-50%,-8px)}
    12%,78%{opacity:1;transform:translate(-50%,0)}
}

@keyframes phone-turn{
    0%,28%{transform:rotate(0)}
    60%,100%{transform:rotate(90deg)}
}

@media (max-width:780px){
    body.bit101-games[data-game-view="selector"]{overflow-x:hidden;overflow-y:auto}
    body.bit101-games .game-selector{height:auto;min-height:100dvh;overflow-x:clip;overflow-y:visible}
    body.bit101-games .game-selector{padding-inline:max(16px,env(safe-area-inset-left),env(safe-area-inset-right))}
    body.bit101-games .game-selector__header{grid-template-columns:1fr;gap:15px}
    body.bit101-games .game-back-link{justify-self:start}
    body.bit101-games .game-selector__grid{grid-template-columns:1fr}
    body.bit101-games .game-card__content{grid-template-columns:minmax(0,1fr) auto}
    body.bit101-games .game-resume-card{grid-template-columns:1fr}
    body.bit101-games .game-resume-card>p{grid-column:auto}
}

@media (max-width:620px){
    body.bit101-games .game-shell__tools{gap:6px}
    body.bit101-games .game-shell__tools--right{
        display:grid;
        grid-template-columns:repeat(2,43px);
    }
    body.bit101-games .game-tool{width:43px;height:43px}
    body.bit101-games .game-status{
        top:max(62px,calc(env(safe-area-inset-top) + 52px));
        min-width:138px;
    }
    body.bit101-games .game-steering{
        right:max(12px,env(safe-area-inset-right));
        bottom:max(14px,env(safe-area-inset-bottom));
        left:max(12px,env(safe-area-inset-left));
    }
    body.bit101-games .game-steer{
        width:min(29vw,96px);
        height:min(29vw,96px);
    }
    body.bit101-games .game-quality-test{
        min-width:116px;
        min-height:36px;
        padding:7px 11px;
        font-size:10px;
    }
    body.bit101-games .game-diagnostics{
        top:clamp(76px,18vh,132px);
        left:max(12px,env(safe-area-inset-left));
        gap:7px;
        max-width:min(124px,31vw);
    }
    body.bit101-games .game-fps-counter{
        min-width:68px;
        min-height:32px;
        padding:6px 10px;
        font-size:12px;
    }
    body.bit101-games .game-preflight__card,
    body.bit101-games .game-result__card{padding:24px 18px}
}

@media (min-width:621px) and (max-width:900px){
    body.bit101-games .game-quality-test{
        top:calc(max(12px,env(safe-area-inset-top)) + 56px);
        right:max(12px,env(safe-area-inset-right));
        bottom:auto;
    }
}

@media (min-width:781px) and (min-height:681px) and (max-height:800px){
    body.bit101-games .game-selector{
        padding-top:18px;
        padding-bottom:18px;
    }
    body.bit101-games .game-selector__header{margin-bottom:16px}
    body.bit101-games .game-selector h1{margin-block:3px 6px;font-size:clamp(38px,5vw,58px)}
    body.bit101-games .game-selector__header p{font-size:17px}
    body.bit101-games .game-card__content{padding:18px 22px}
    body.bit101-games .game-card__name{font-size:30px}
    body.bit101-games .game-card__description{font-size:15px}
    body.bit101-games .game-card__action{min-height:48px}
    body.bit101-games .game-selector__hint{margin-top:12px}
}

@media (max-height:680px){
    body.bit101-games[data-game-view="selector"]{overflow-x:hidden;overflow-y:auto}
    body.bit101-games .game-selector{height:auto;min-height:100dvh;overflow-x:clip;overflow-y:visible}
}

@media (max-width:360px){
    body.bit101-games .game-quality-test{
        min-width:98px;
        padding:6px 8px;
        font-size:9px;
    }
}

@media (max-width:620px) and (orientation:portrait){
    body.bit101-games .game-expression{
        top:auto;
        bottom:max(132px,calc(env(safe-area-inset-bottom) + 118px));
        left:50%;
        min-width:168px;
        min-height:52px;
        padding:8px 16px;
        transform:translateX(-50%);
        font-size:26px;
    }

    body.bit101-games .game-shell[data-game-id="road"] .game-expression{
        top:max(204px,calc(env(safe-area-inset-top) + 176px));
        right:max(14px,env(safe-area-inset-right));
        bottom:auto;
        left:auto;
        min-width:204px;
        min-height:62px;
        padding:11px 19px;
        transform:none;
        font-size:31px;
    }
    body.bit101-games .game-shell[data-game-id="tunnel"] .game-expression{
        min-width:190px;
        min-height:58px;
        font-size:30px;
    }
}

@media (max-height:520px) and (orientation:landscape){
    body.bit101-games .game-status{top:max(8px,env(safe-area-inset-top));padding:5px 10px}
    body.bit101-games .game-tool{width:40px;height:40px}
    body.bit101-games .game-shell__tools--right{
        display:flex;
    }
    body.bit101-games .game-steer{width:64px;height:64px}
    body.bit101-games .game-diagnostics{
        top:clamp(68px,21vh,96px);
        transform:none;
    }
    body.bit101-games .game-quality-test{min-height:34px;padding:6px 10px}
    body.bit101-games .game-shell[data-game-id="tunnel"] .game-expression{
        min-width:164px;
        min-height:50px;
        padding:7px 14px;
        font-size:26px;
    }
    body.bit101-games .game-preflight,
    body.bit101-games .game-result{place-items:start center;padding-block:12px}
    body.bit101-games .game-preflight__card,
    body.bit101-games .game-result__card{padding:18px 22px}
    body.bit101-games .game-preflight h1{font-size:34px}
    body.bit101-games .game-tutorial{margin:10px 0;padding:12px}
}

@media (max-width:559px) and (orientation:portrait){
    body.bit101-games .game-shell .game-diagnostics{
        top:max(164px,calc(env(safe-area-inset-top) + 164px));
        transform:none;
    }
}

@media (prefers-reduced-motion:reduce){
    body.bit101-games *,
    body.bit101-games *::before,
    body.bit101-games *::after{
        scroll-behavior:auto!important;
        animation-duration:.01ms!important;
        animation-iteration-count:1!important;
        transition-duration:.01ms!important;
    }
    body.bit101-games .game-card:hover,
    body.bit101-games .game-card:focus-visible{transform:none}
}
