.games-page{padding:64px 0 104px}.packet-path-page{padding:42px 0 90px}.games-hero{max-width:820px;margin-bottom:48px}.packet-path-hero{max-width:900px;margin-bottom:30px}.games-hero h1,.packet-path-hero h1{color:var(--ink);letter-spacing:-.065em;margin:18px 0 20px;font-size:clamp(3.1rem,7vw,5.8rem);font-weight:540;line-height:.94}.packet-path-hero h1{font-size:clamp(2.7rem,5vw,4.5rem);line-height:.98}.games-hero>p:last-child,.packet-path-hero>p:last-child{max-width:720px;color:var(--muted);margin:0;font-size:1.05rem;line-height:1.7}.games-catalog{border:1px solid var(--line);background:var(--panel);grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);display:grid}.games-catalog-secondary{margin-top:16px}.game-card-main{border-right:1px solid var(--line);min-width:0;padding:42px}.game-card-main h2{letter-spacing:-.055em;margin:16px 0 14px;font-size:clamp(2.2rem,5vw,4rem);font-weight:560;line-height:1}.game-card-main>p:not(.mono-label){max-width:660px;color:var(--muted);margin:0;line-height:1.7}.game-card-main ul{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin:32px 0;padding:0;list-style:none;display:grid}.game-card-main li{border-bottom:1px solid var(--line);color:#bdcbe0;min-height:76px;padding:16px 14px 12px 0;font:650 .75rem/1.45 ui-monospace,Consolas,monospace}.game-card-main a,.packet-primary{border:1px solid var(--accent);color:#05070c;background:var(--accent);cursor:pointer;border-radius:3px;justify-content:center;align-items:center;gap:34px;width:max-content;min-height:46px;padding:12px 16px;font-size:.8rem;font-weight:800;text-decoration:none;display:inline-flex}.game-card-main a:hover,.packet-primary:hover{background:#79b7ff}.game-card-preview{background:radial-gradient(circle at 50% 40%,#4f9fff24,#0000 58%);align-content:center;min-height:390px;padding:34px;display:grid}.freedoom-card-preview{background:radial-gradient(circle at 50% 42%,#ff96481f,#0000 58%)}.freedoom-catalog-screen{aspect-ratio:4/3;background:linear-gradient(#171b23 0 48%,#302c28 48% 83%,#111720 83%);border:1px solid #354963;width:min(100%,350px);margin:0 auto;position:relative;overflow:hidden;box-shadow:inset 0 0 50px #00000080}.freedoom-horizon{background:#171920;border:2px solid #746c61;position:absolute;inset:24% 31% 20%}.freedoom-corridor{clip-path:polygon(0 0,100% 25%,100% 100%,0 100%);background:repeating-linear-gradient(90deg,#2b2d32,#2b2d32 16px,#353638 17px 18px);width:42%;position:absolute;top:0;bottom:17%}.freedoom-corridor.left{left:0}.freedoom-corridor.right{right:0;transform:scaleX(-1)}.freedoom-reticle{z-index:2;color:#bedbff;font:500 1.2rem/1 ui-monospace,Consolas,monospace;position:absolute;top:43%;left:50%;transform:translate(-50%,-50%)}.freedoom-catalog-screen div{z-index:3;color:#aab9ca;background:#0a1019;border-top:1px solid #42526a;justify-content:space-around;align-items:center;height:17%;padding:0 10px;font:650 .55rem ui-monospace,Consolas,monospace;display:flex;position:absolute;bottom:0;left:0;right:0}.freedoom-catalog-screen b{color:#ffbe5c;font-size:.78rem}.freedoom-catalog-screen i{font-style:normal}.preview-telemetry{color:var(--faint);letter-spacing:.08em;justify-content:space-between;margin-bottom:14px;font:700 .65rem/1.4 ui-monospace,Consolas,monospace;display:flex}.preview-grid{grid-template-columns:repeat(5,1fr);gap:4px;width:min(100%,330px);margin:0 auto;display:grid}.preview-grid span{aspect-ratio:1;background:#070c14;border:1px solid #253b58}.preview-grid span.route{background:#4f9fff14;border-color:#38618d;position:relative}.preview-grid span.route:before{content:"";background:var(--accent);height:4px;position:absolute;top:calc(50% - 2px);left:0;right:0;box-shadow:0 0 9px #4f9fff8c}.preview-grid span.node:after{content:"";background:var(--accent-cool);border-radius:50%;position:absolute;inset:calc(50% - 5px)}.game-boundary{border:1px solid var(--line);justify-content:space-between;align-items:center;gap:30px;margin-top:20px;padding:24px 28px;display:flex}.game-boundary strong{color:var(--ink);font-size:.875rem}.game-boundary p{max-width:660px;color:var(--muted);margin:5px 0 0;font-size:.8rem;line-height:1.55}.game-boundary span{color:var(--accent);text-transform:uppercase;letter-spacing:.08em;flex:none;font:700 .68rem/1.4 ui-monospace,Consolas,monospace}.packet-path-loading{border:1px solid var(--line);min-height:420px;color:var(--muted);background:var(--panel);place-items:center;font-size:.8rem;display:grid}.packet-path-shell{color:var(--ink)}.packet-path-toolbar{align-items:center;gap:22px;min-height:52px;margin-bottom:16px;display:flex}.packet-path-tabs{border:1px solid var(--line);background:#0000002e;border-radius:6px;width:max-content;padding:4px;display:flex}.packet-path-tabs button{min-height:44px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:3px;padding:10px 17px;font-size:.83rem;font-weight:740}.packet-path-tabs button[aria-selected=true]{color:#05070c;background:var(--accent)}.packet-path-status{color:var(--accent-cool);margin:0;font-size:.76rem;line-height:1.45}.packet-path-warning{color:#ffe1ac;background:#824d001f;border:1px solid #ffbe5c66;border-left:3px solid #ffbe5c;margin:0 0 16px;padding:13px 15px;font-size:.8rem;line-height:1.5}.packet-path-workspace{border:1px solid var(--line);background:var(--panel);outline:0;grid-template-columns:minmax(0,1.28fr) minmax(300px,.72fr);min-height:560px;display:grid}.packet-board-panel{border-right:1px solid var(--line);min-width:0;padding:30px}.packet-telemetry{border:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:20px;display:grid}.packet-telemetry>div{border-right:1px solid var(--line);min-width:0;padding:12px 14px}.packet-telemetry>div:last-child{border-right:0}.packet-telemetry span{color:var(--faint);letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px;font:700 .62rem/1.35 ui-monospace,Consolas,monospace;display:block}.packet-telemetry strong{color:var(--ink);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font:650 clamp(.72rem,1.5vw,.9rem)/1.4 ui-monospace,Consolas,monospace;display:block}.packet-ttl-meter{background:#101b29;width:min(100%,560px);height:5px;margin:-8px auto 18px;overflow:hidden}.packet-ttl-meter>span{width:var(--ttl-percent);background:var(--accent);height:100%;transition:width .16s ease-out,background-color .16s ease-out;display:block;box-shadow:0 0 13px #4f9fff7a}.packet-ttl-meter.warning>span{background:#e9b558;box-shadow:0 0 13px #e9b5585c}.packet-ttl-meter.critical>span{background:#ff8175;box-shadow:0 0 13px #ff81756b}.packet-coach{color:#b8c8db;background:#265c9714;border:1px solid #294464;grid-template-columns:repeat(3,1fr);width:min(100%,560px);margin:0 auto 16px;font:680 .66rem/1.4 ui-monospace,Consolas,monospace;display:grid}.packet-coach span{border-right:1px solid #294464;align-items:center;gap:7px;min-height:42px;padding:11px 10px;display:flex}.packet-coach span:last-child{border-right:0}.packet-coach b{color:var(--accent);font-size:.6rem}.packet-board{--board-size:6;grid-template-columns:repeat(var(--board-size), minmax(0, 1fr));gap:4px;width:min(100%,560px);margin:0 auto;display:grid}.packet-board>[role=row]{display:contents}.packet-board [role=gridcell]{min-width:0}.packet-tile{aspect-ratio:1;width:100%;min-width:0;min-height:44px;color:var(--muted);cursor:pointer;background:#060a11;border:1px solid #243953;padding:0;position:relative;overflow:hidden}.packet-tile:hover:not([aria-disabled=true]){background:#091321;border-color:#4b78a9}.packet-tile:focus-visible{z-index:4;outline-offset:1px;outline:2px solid #b9d9ff}.packet-tile[aria-disabled=true]{cursor:default}.packet-tile.blocked{background:repeating-linear-gradient(135deg,#070b12,#070b12 7px,#0a101a 7px 8px)}.packet-tile.source,.packet-tile.target{background:#0b1929;border-color:#4679ad}.packet-tile.reached{background:#1a5da429;border-color:#4f9fffbf;box-shadow:inset 0 0 22px #4f9fff14}.packet-arm{z-index:1;background:#52677f;position:absolute}.packet-arm.north,.packet-arm.south{width:4px;height:51%;left:calc(50% - 2px)}.packet-arm.north{top:0}.packet-arm.south{bottom:0}.packet-arm.east,.packet-arm.west{width:51%;height:4px;top:calc(50% - 2px)}.packet-arm.east{right:0}.packet-arm.west{left:0}.packet-tile.reached .packet-arm,.packet-tile.source .packet-arm{background:var(--accent);box-shadow:0 0 10px #4f9fffb8}.packet-node{z-index:2;background:#07101a;border:2px solid #71859c;border-radius:50%;width:12px;height:12px;position:absolute;top:calc(50% - 6px);left:calc(50% - 6px)}.packet-tile.reached .packet-node,.packet-tile.source .packet-node{background:var(--accent);border-color:#a8d1ff;box-shadow:0 0 12px #4f9fffad}.packet-endpoint-label{z-index:3;color:#d5e9ff;letter-spacing:.04em;font:800 clamp(.46rem,1vw,.58rem)/1 ui-monospace,Consolas,monospace;position:absolute;bottom:3px;right:4px}.packet-rotate-hint{z-index:3;color:#a8d1ff;opacity:0;font:700 .72rem/1 ui-monospace,Consolas,monospace;transition:opacity .12s ease-out,transform .12s ease-out;position:absolute;top:3px;right:5px;transform:translateY(-2px)}.packet-tile:hover .packet-rotate-hint,.packet-tile:focus-visible .packet-rotate-hint{opacity:.9;transform:translateY(0)}.packet-board.completed{animation:.46s ease-out packet-complete}@keyframes packet-complete{50%{filter:brightness(1.32)}}@keyframes packet-signal{50%{background-color:#d7ebff;box-shadow:0 0 16px #7cbffff2}}.packet-board.completed .packet-tile.reached .packet-arm{animation:.62s ease-out packet-signal}.packet-outcome{border:1px solid #4f9fff6e;border-left:3px solid var(--accent);background:linear-gradient(120deg,#4f9fff1f,#4f9fff09);width:min(100%,560px);margin:16px auto 0;padding:20px}.packet-outcome.failed{background:linear-gradient(120deg,#8e1f1529,#8e1f1508);border-color:#ff8f836b #ff8f836b #ff8f836b #ff8f83}.packet-outcome-heading{justify-content:space-between;align-items:end;gap:20px;display:flex}.packet-outcome-heading h2{letter-spacing:-.035em;margin:0;font-size:1.35rem;font-weight:590}.packet-outcome dl{border-top:1px solid #74a4da3d;border-bottom:1px solid #74a4da3d;grid-template-columns:repeat(4,minmax(0,1fr));margin:17px 0 0;display:grid}.packet-outcome dl div{min-width:0;padding:11px 9px 10px 0}.packet-outcome dt{color:var(--faint);letter-spacing:.06em;text-transform:uppercase;font:650 .59rem/1.35 ui-monospace,Consolas,monospace}.packet-outcome dd{color:var(--accent);overflow-wrap:anywhere;margin:4px 0 0;font:760 .84rem/1.35 ui-monospace,Consolas,monospace}.packet-outcome.failed dd{color:#ffc2bc}.packet-outcome>p{color:var(--muted);margin:13px 0 0;font-size:.72rem;line-height:1.5}.packet-board-actions{flex-wrap:wrap;gap:8px;width:min(100%,560px);margin:18px auto 0;display:flex}.packet-board-actions button,.packet-privacy button,.packet-confirm-dialog button{min-height:44px;color:var(--ink);cursor:pointer;background:0 0;border:1px solid #314b70;padding:9px 14px;font-size:.75rem;font-weight:720}.packet-board-actions button:hover,.packet-privacy button:hover,.packet-confirm-dialog button:hover{border-color:var(--accent);color:var(--accent)}.packet-board-actions .packet-primary{color:#05070c;background:var(--accent)}.packet-danger{color:#ffb4ad!important;border-color:#ff7f7280!important}.packet-danger:hover{color:#ffe0dd!important;background:#8e1f1533!important;border-color:#ff7f72!important}.packet-sidebar{align-content:start;gap:30px;min-width:0;padding:30px;display:grid}.packet-sidebar>section{border-bottom:1px solid var(--line);padding-bottom:28px}.packet-sidebar>section:last-child{border-bottom:0;padding-bottom:0}.packet-sidebar h2{letter-spacing:-.035em;margin:12px 0 11px;font-size:1.45rem;font-weight:570}.packet-sidebar p:not(.mono-label){color:var(--muted);margin:0;font-size:.8rem;line-height:1.62}.packet-sidebar p:not(.mono-label)+p{margin-top:10px}.packet-records dl{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;margin:17px 0 0;display:grid}.packet-records dl div{border-bottom:1px solid var(--line);padding:12px 8px 10px 0}.packet-records dt{color:var(--faint);font-size:.68rem}.packet-records dd{color:var(--accent);margin:4px 0 0;font:700 .9rem/1.4 ui-monospace,Consolas,monospace}.packet-transmissions ol{border-top:1px solid var(--line);margin:17px 0 0;padding:0;list-style:none}.packet-transmissions li{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;min-height:42px;font:650 .66rem/1.4 ui-monospace,Consolas,monospace;display:grid}.packet-transmissions time{color:#aebed2}.packet-transmissions li span{color:var(--faint)}.packet-transmissions li strong{min-width:28px;color:var(--accent);text-align:right}.packet-transmissions>p:not(.mono-label){margin-top:15px}.packet-run-report{background:var(--line);gap:1px;margin:17px 0 0;display:grid}.packet-run-report div{background:#090f19;justify-content:space-between;gap:15px;padding:10px 11px;display:flex}.packet-run-report dt{color:var(--faint);font-size:.67rem}.packet-run-report dd{color:var(--accent);text-align:right;margin:0;font:700 .7rem/1.4 ui-monospace,Consolas,monospace}.packet-path-empty{text-align:center;grid-column:1/-1;place-self:center;max-width:610px;padding:50px}.packet-path-empty h2{letter-spacing:-.05em;margin:16px 0 13px;font-size:clamp(2rem,5vw,3.4rem);font-weight:560}.packet-path-empty>p:not(.mono-label){color:var(--muted);margin:0 auto 28px;line-height:1.7}.packet-path-empty .packet-primary{margin:0 auto}.packet-privacy{border:1px solid var(--line);justify-content:space-between;align-items:center;gap:32px;margin-top:16px;padding:25px 28px;display:flex}.packet-privacy h2{margin:9px 0 6px;font-size:1.3rem;font-weight:580}.packet-privacy p:not(.mono-label){max-width:720px;color:var(--muted);margin:0;font-size:.78rem;line-height:1.55}.packet-privacy button{flex:none}.packet-dialog-backdrop{z-index:100;backdrop-filter:blur(5px);background:#010409c7;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.packet-confirm-dialog{background:var(--panel-strong);border:1px solid #314b70;width:min(450px,100%);padding:28px;box-shadow:0 24px 80px #0000008f}.packet-confirm-dialog h2{letter-spacing:-.035em;margin:14px 0 10px;font-size:1.8rem;font-weight:580}.packet-confirm-dialog>p:not(.mono-label){color:var(--muted);margin:0;font-size:.86rem;line-height:1.6}.packet-confirm-dialog>div{justify-content:end;gap:8px;margin-top:24px;display:flex}@media (width<=940px){.games-catalog,.packet-path-workspace{grid-template-columns:1fr}.game-card-main,.packet-board-panel{border-right:0;border-bottom:1px solid var(--line)}.game-card-preview{min-height:330px}.packet-sidebar{grid-template-columns:repeat(3,1fr);gap:20px}.packet-sidebar>section{border-right:1px solid var(--line);border-bottom:0;padding:0 20px 0 0}.packet-sidebar>section:last-child{border-right:0;padding-right:0}}@media (width<=700px){.games-page{padding:42px 0 76px}.packet-path-page{padding:30px 0 70px}.games-hero{margin-bottom:34px}.packet-path-hero{margin-bottom:25px}.game-card-main{padding:30px 24px}.game-card-main ul{grid-template-columns:1fr}.game-card-main li{min-height:auto}.game-card-preview{min-height:280px;padding:25px}.game-boundary,.packet-privacy{flex-direction:column;align-items:flex-start}.packet-path-toolbar{flex-direction:column;align-items:stretch;gap:8px}.packet-path-tabs{width:100%}.packet-path-tabs button{flex:1;min-height:44px}.packet-board-panel{padding:22px 18px}.packet-telemetry{grid-template-columns:1fr 1fr}.packet-telemetry>div:nth-child(2){border-right:0}.packet-telemetry>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.packet-sidebar{grid-template-columns:1fr;padding:25px 22px}.packet-sidebar>section,.packet-sidebar>section:last-child{border-right:0;border-bottom:1px solid var(--line);padding:0 0 24px}.packet-sidebar>section:last-child{border-bottom:0;padding-bottom:0}.packet-board-actions button,.packet-privacy button,.packet-confirm-dialog button{min-height:44px}}@media (width<=420px){.games-hero h1,.packet-path-hero h1{font-size:clamp(2.8rem,15vw,4rem)}.packet-board-panel{padding:18px 0 22px}.packet-telemetry,.packet-board-actions,.packet-outcome,.packet-ttl-meter,.packet-coach{width:calc(100% - 24px)}.packet-coach{grid-template-columns:1fr}.packet-coach span{border-bottom:1px solid #294464;border-right:0;min-height:36px}.packet-coach span:last-child{border-bottom:0}.packet-board{gap:2px;width:100%}.packet-board-actions{flex-direction:column;align-items:stretch}.packet-board-actions button{width:100%}.packet-outcome-heading{flex-direction:column;align-items:flex-start;gap:8px}.packet-outcome dl{grid-template-columns:1fr 1fr}.packet-privacy{padding:23px 20px}.packet-privacy button{width:100%}.packet-confirm-dialog>div{flex-direction:column-reverse}.packet-confirm-dialog button{width:100%}}@media (prefers-reduced-motion:reduce){.packet-board.completed,.packet-board.completed .packet-tile.reached .packet-arm{animation:none}.packet-ttl-meter>span,.packet-rotate-hint{transition:none}}
