:root { --aw-bg:#0e0e0e; --aw-sidebar:#121212; --aw-panel:#1a1a1a; --aw-panel-dark:#161616; --aw-panel-light:#232323; --aw-border:#3a3a3a; --aw-border-soft:#2a2a2a; --aw-text:#ececec; --aw-text-soft:#a6a6a6; --aw-text-mute:#787878; --aw-purple:#9689ff; --aw-font:"Montserrat","Segoe UI",sans-serif; }
/* Portal chrome overrides; the replica below intentionally retains its Luau geometry. */
.features-site-header { display:grid; grid-template-columns:1fr auto 1fr; }
.features-site-header .back-link { justify-self:start; }
.features-header-spacer { justify-self:end; }
.features-brand { color:var(--text-primary); }
.features-brand span { color:var(--accent-hover); }
.aw-topbar-controls { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; gap:0; pointer-events:none; }
.aw-search-bar { width:310px; pointer-events:auto; }
.aw-search-bar:focus-within { width:340px; }
.aw-close-btn { position:absolute; right:16px; pointer-events:auto; }
body.features-page { background:#1a1a1a; }
.features-site-header { display:grid; grid-template-columns:1fr auto 1fr; }
.features-site-header .back-link { justify-self:start; }
.features-header-spacer { justify-self:end; }
.features-brand { color:var(--text-primary); }
.features-brand span { color:var(--accent-hover); }
.aw-topbar-controls { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; gap:0; pointer-events:none; }
.aw-search-bar { width:310px; pointer-events:auto; }
.aw-search-bar:focus-within { width:340px; }
.aw-close-btn { position:absolute; right:16px; pointer-events:auto; }
@media (max-width:1050px) { .aw-search-bar { width:220px; }.aw-search-bar:focus-within { width:240px; } }
@media (max-width:760px) { .features-site-header { grid-template-columns:1fr auto 1fr; }.aw-search-bar { width:130px; }.aw-search-bar:focus-within { width:150px; }.aw-close-btn { right:10px; } }
body.features-page { min-height:100vh; overflow-x:hidden; background:radial-gradient(circle at 77% 5%,rgba(124,111,255,.13),transparent 28rem),#111; color:var(--text-primary); font-family:var(--aw-font); }
.features-site-header { width:min(1400px,calc(100% - 48px)); min-height:80px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; }.features-brand,.features-site-actions { display:flex; align-items:center; }.features-brand { gap:0; color:var(--text-primary); font-weight:800; font-size:1.15rem; text-decoration:none; letter-spacing:-.04em; }.features-brand img { border-radius:8px; box-shadow:0 0 20px rgba(124,111,255,.28); }.features-brand span span { color:var(--accent-hover); }.features-site-actions { gap:18px; }.features-eyebrow { font-family:var(--aw-font); color:var(--text-muted); font-size:.62rem; letter-spacing:.1em; }.features-back-link { display:inline-flex; align-items:center; gap:7px; color:var(--text-secondary); font-family:var(--aw-font); font-size:.76rem; text-decoration:none; transition:color .15s ease; }.features-back-link:hover { color:var(--text-primary); text-decoration:none; }.features-back-link svg { width:14px; height:14px; color:var(--accent-hover); }
.features-layout { width:min(1400px,calc(100% - 48px)); min-height:calc(100vh - 120px); margin:0 auto; padding:32px 0 44px; display:grid; grid-template-columns:238px minmax(0,1fr); gap:30px; }.game-select-sidebar { align-self:start; background:rgba(26,26,26,.86); border:1px solid var(--border); border-radius:0; box-shadow:var(--shadow-sm); overflow:hidden; backdrop-filter:blur(14px); }.game-select-heading { padding:20px 18px 16px; border-bottom:1px solid var(--border); }.game-select-kicker { color:var(--accent-hover); font-family:var(--aw-font); letter-spacing:.11em; font-size:.57rem; }.game-select-heading h1 { margin:5px 0 6px; font-size:1rem; line-height:1.3; letter-spacing:-.03em; }.game-select-heading p { color:var(--text-muted); font:.68rem/1.55 var(--aw-font); }.game-list { display:grid; gap:7px; padding:12px; }.game-btn { width:100%; padding:12px 11px; display:flex; align-items:center; justify-content:center; border:2.25px solid #0a0a0a; border-radius:0; background:transparent; color:var(--text-secondary); font:600 .72rem var(--aw-font); text-align:center; cursor:pointer; transition:background .15s,border-color .15s,color .15s; }.game-btn:hover { background:#252525; color:var(--text-primary); }.game-btn.active { color:var(--text-primary); background:rgba(124,111,255,.1); border-color:rgba(150,137,255,.42); }.game-sidebar-note { display:flex; align-items:center; gap:7px; margin:4px 18px 17px; color:var(--text-muted); font:.61rem var(--aw-font); }.game-sidebar-dot { width:6px; height:6px; border-radius:50%; background:#75dba0; box-shadow:0 0 8px #75dba0; }
.aeroware-stage { min-width:0; min-height:660px; display:grid; place-items:center; position:relative; overflow:hidden; border-radius:0; background:linear-gradient(145deg,rgba(36,36,36,.4),rgba(14,14,14,.18)); border:1px solid rgba(255,255,255,.05); }.aeroware-ui { width:min(100%,960px); height:610px; min-width:590px; min-height:380px; max-width:100%; max-height:680px; position:relative; overflow:hidden; background:linear-gradient(180deg,#111,#151515); border-radius:14px; box-shadow:0 18px 50px rgba(0,0,0,.56),inset 0 1px rgba(255,255,255,.025); transform:translate(0,0); touch-action:none; animation:aw-shell-in .5s cubic-bezier(.175,.885,.32,1.18) both; }.aeroware-ui.is-dragging,.aeroware-ui.is-resizing { user-select:none; cursor:grabbing; transition:none; }@keyframes aw-shell-in { from { opacity:0; transform:translateY(10px) scale(.97); } to { opacity:1; transform:translateY(0) scale(1); } }#aw-particles { position:absolute; inset:0; width:100%; height:100%; pointer-events:none; opacity:.38; }.aw-chrome { position:relative; z-index:1; width:100%; height:100%; }.aw-topbar { height:48px; position:relative; display:flex; align-items:center; justify-content:space-between; padding:0 16px 0 20px; cursor:grab; }.aw-brand { position:relative; display:flex; align-items:baseline; font-size:18px; font-weight:700; letter-spacing:-.045em; color:var(--aw-text); }.aw-logo-ware { color:var(--aw-purple); }.aw-brand small { position:absolute; top:20px; left:0; color:var(--aw-text-mute); font-size:11px; font-weight:400; letter-spacing:0; }.aw-topbar-controls { display:flex; align-items:center; gap:15px; cursor:default; }.aw-search-bar { width:260px; height:26px; display:flex; align-items:center; gap:7px; padding:0 8px; background:var(--aw-panel-dark); border:1px solid var(--aw-border); border-radius:7px; transition:width .32s cubic-bezier(.165,.84,.44,1),border-color .25s,box-shadow .25s; }.aw-search-bar:focus-within { width:286px; border-color:rgba(150,137,255,.75); box-shadow:0 0 0 2px rgba(150,137,255,.08); }.aw-search-bar svg { flex:none; width:13px; height:13px; color:var(--aw-purple); }.aw-search-bar input { width:100%; min-width:0; border:0; outline:0; background:transparent; color:var(--aw-text); font:12px var(--aw-font); }.aw-search-bar input::placeholder { color:var(--aw-text-mute); }.aw-close-btn { width:28px; height:28px; display:grid; place-items:center; border:0; border-radius:999px; background:var(--aw-panel); color:var(--aw-purple); cursor:pointer; transition:background .14s,transform .14s; }.aw-close-btn:hover { background:var(--aw-panel-light); transform:scale(1.07); }.aw-close-btn:active { transform:scale(.91); }.aw-close-btn svg { width:14px; }
.aw-content { height:calc(100% - 60px); display:flex; gap:26px; padding:12px; overflow:hidden; }.aw-sidebar,.aw-pages { background:rgba(18,18,18,.94); border:1px solid var(--aw-border-soft); border-radius:12px; }.aw-sidebar { width:226px; flex:0 0 226px; display:flex; flex-direction:column; padding:12px; overflow:hidden; }.aw-game-info { height:40px; display:flex; align-items:center; gap:10px; padding:0 8px; margin-bottom:10px; }.aw-game-info-icon svg { width:18px; color:var(--aw-purple); }.aw-game-info strong,.aw-game-info span { display:block; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }.aw-game-info strong { max-width:160px; color:var(--aw-text); font-size:13px; font-weight:600; }.aw-game-info span { margin-top:2px; color:var(--aw-text-mute); font-size:11px; }.aw-tabs { flex:1; display:flex; flex-direction:column; gap:8px; overflow-y:auto; padding:5px 0; scrollbar-width:thin; scrollbar-color:rgba(166,166,166,.45) transparent; }.aw-tab-btn { height:34px; min-height:34px; width:98%; position:relative; display:flex; align-items:center; padding:0 10px; border:1px solid transparent; border-radius:8px; background:var(--aw-sidebar); color:var(--aw-text-mute); font:12px var(--aw-font); text-align:left; cursor:pointer; transition:height .18s,background .18s,color .18s,border-color .18s; }.aw-tab-btn:hover { background:#171717; color:var(--aw-text-soft); }.aw-tab-btn.active { height:40px; min-height:40px; background:var(--aw-panel); color:var(--aw-text); border-color:rgba(150,137,255,.15); }.aw-tab-btn > svg:first-of-type { width:16px; height:16px; flex:none; margin-right:12px; color:var(--aw-purple); }.aw-tab-btn.active > svg:first-of-type { color:var(--aw-text); }.aw-tab-btn span { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }.aw-tab-btn .aw-tab-chevron { width:14px; height:14px; margin-left:auto; color:var(--aw-purple); transition:transform .18s; }.aw-tab-btn.active .aw-tab-chevron { transform:rotate(90deg); color:var(--aw-text); }.aw-tab-indicator { position:absolute; left:-1px; top:50%; width:3px; height:20px; border-radius:99px; background:var(--aw-purple); opacity:0; transform:translateY(-50%); transition:opacity .18s; }.aw-tab-btn.active .aw-tab-indicator { opacity:1; }.aw-sidebar-footer { height:36px; display:flex; align-items:end; color:var(--aw-text-mute); font-size:11px; }.aw-sidebar-footer b { color:var(--aw-purple); font-weight:400; }.aw-pages { min-width:0; flex:1; position:relative; overflow:hidden; padding:12px; }.aw-page { display:none; height:100%; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; overflow-y:auto; padding:5px; scrollbar-width:thin; scrollbar-color:rgba(166,166,166,.4) transparent; }.aw-page.active { display:grid; animation:aw-page-in .2s ease; }.aw-page-col { display:flex; flex-direction:column; align-self:start; gap:10px; min-width:0; }@keyframes aw-page-in { from { opacity:.25; transform:translateY(4px); } to { opacity:1; transform:none; } }
.aw-section { display:flex; flex-direction:column; gap:8px; padding:12px; overflow:visible; background:linear-gradient(90deg,var(--aw-panel),var(--aw-panel-dark)); border:1px solid transparent; border-radius:10px; transition:border-color .25s,box-shadow .25s; }.aw-section:hover { border-color:rgba(150,137,255,.45); box-shadow:0 0 0 1px rgba(150,137,255,.04); }.aw-section-header { display:flex; align-items:flex-start; gap:8px; padding:1px 0 4px; }.aw-section-header svg { width:18px; height:18px; color:var(--aw-purple); flex:none; }.aw-section-header strong { display:block; color:var(--aw-text); font-size:13px; font-weight:500; line-height:1.2; }.aw-section-header small { display:block; margin-top:3px; color:var(--aw-text-mute); font-size:10px; line-height:1.25; }.aw-row { min-height:38px; display:flex; align-items:center; justify-content:space-between; gap:10px; padding:9px 12px; background:var(--aw-panel-light); border:1px solid rgba(58,58,58,.65); border-radius:8px; }.aw-row.has-description { min-height:60px; }.aw-row-info { min-width:0; flex:1; }.aw-row-title { color:var(--aw-text); font-size:12px; line-height:1.2; }.aw-row-desc { margin-top:4px; color:var(--aw-text-mute); font-size:10px; line-height:1.2; }.aw-display-value { max-width:48%; overflow:hidden; color:var(--aw-text-soft); font-size:12px; text-align:right; text-overflow:ellipsis; white-space:nowrap; }.aw-input,.aw-value-input { width:145px; height:27px; padding:0 8px; outline:0; border:1px solid rgba(150,137,255,.35); border-radius:7px; background:var(--aw-panel-dark); color:var(--aw-text); font:11px var(--aw-font); transition:border-color .16s,box-shadow .16s; }.aw-input:focus,.aw-value-input:focus { border-color:var(--aw-purple); box-shadow:0 0 0 2px rgba(150,137,255,.09); }.aw-input::placeholder { color:var(--aw-text-mute); }.aw-btn { width:84px; height:26px; border:2.25px solid rgba(105,90,220,.85); border-radius:7px; background:var(--aw-bg); color:var(--aw-text); font:11px var(--aw-font); cursor:pointer; transition:background .13s,transform .12s,border-color .13s; }.aw-btn:hover { background:var(--aw-panel-dark); border-color:var(--aw-purple); }.aw-btn:active { transform:scale(.94); }.aw-toggle { width:44px; height:24px; flex:none; position:relative; border:1px solid var(--aw-border); border-radius:99px; background:var(--aw-bg); cursor:pointer; transition:background .12s,border-color .12s; }.aw-toggle.active { background:var(--aw-purple); border-color:var(--aw-purple); }.aw-toggle-knob { position:absolute; top:1px; left:1px; width:20px; height:20px; border-radius:50%; background:var(--aw-purple); box-shadow:0 1px 3px rgba(0,0,0,.5); transition:transform .12s cubic-bezier(.175,.885,.32,1.275),background .12s; }.aw-toggle.active .aw-toggle-knob { transform:translateX(20px); background:var(--aw-bg); }
.aw-dropdown-wrap { width:145px; position:relative; flex:none; }.aw-dropdown { width:100%; height:27px; display:flex; align-items:center; justify-content:space-between; gap:7px; padding:0 7px 0 8px; border:1px solid rgba(150,137,255,.5); border-radius:7px; background:var(--aw-panel); color:var(--aw-text); font:11px var(--aw-font); cursor:pointer; transition:background .15s,border-color .15s; }.aw-dropdown:hover,.aw-dropdown[aria-expanded="true"] { border-color:var(--aw-purple); background:var(--aw-panel-light); }.aw-dropdown span { overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }.aw-dropdown svg { width:13px; height:13px; flex:none; color:var(--aw-purple); transition:transform .16s; }.aw-dropdown[aria-expanded="true"] svg { transform:rotate(90deg); }.aw-dropdown-panel { position:absolute; z-index:60; top:calc(100% + 5px); right:0; width:100%; max-height:176px; display:none; padding:6px; overflow-y:auto; border:1px solid var(--aw-border); border-radius:8px; background:#191919; box-shadow:0 10px 26px rgba(0,0,0,.45); }.aw-dropdown-panel.open { display:block; animation:aw-drop .14s ease; }@keyframes aw-drop { from { opacity:0; transform:translateY(-4px); } to { opacity:1; transform:none; } }.aw-dropdown-option { width:100%; padding:7px; border:0; border-radius:5px; background:transparent; color:var(--aw-text-soft); font:10px var(--aw-font); text-align:left; cursor:pointer; }.aw-dropdown-option:hover,.aw-dropdown-option.selected { background:rgba(150,137,255,.12); color:var(--aw-text); }.aw-dropdown-empty { padding:7px; color:var(--aw-text-mute); font-size:10px; }.aw-slider-row { display:block; padding-bottom:10px; }.aw-slider-top { display:flex; align-items:center; justify-content:space-between; gap:12px; }.aw-slider-top .aw-row-info { max-width:calc(100% - 84px); }.aw-slider-value { width:64px; height:19px; border:0; border-radius:6px; background:var(--aw-panel-dark); color:var(--aw-text-soft); font:11px var(--aw-font); text-align:right; padding:0 7px; outline:0; }.aw-slider-value:focus { box-shadow:inset 0 0 0 1px var(--aw-purple); }.aw-slider-track { width:100%; height:14px; position:relative; margin-top:8px; }.aw-slider-track::before { content:""; position:absolute; inset:3px 0; border:1px solid var(--aw-border); border-radius:99px; background:var(--aw-bg); }.aw-slider-fill { position:absolute; top:4px; left:1px; height:6px; border:1px solid rgba(150,137,255,.75); border-radius:99px; background:var(--aw-panel-dark); pointer-events:none; }.aw-slider { position:absolute; z-index:2; inset:0; width:100%; height:14px; margin:0; opacity:0; cursor:pointer; }.aw-slider-knob { position:absolute; top:0; width:14px; height:14px; border:1.4px solid var(--aw-purple); border-radius:50%; background:var(--aw-bg); box-shadow:0 1px 4px rgba(0,0,0,.7); pointer-events:none; transform:translateX(-50%); transition:left .05s linear,transform .14s cubic-bezier(.175,.885,.32,1.275); }.aw-slider:active + .aw-slider-fill + .aw-slider-knob { transform:translateX(-50%) scale(1.16); }.aw-keybind { min-width:84px; height:26px; border:1px solid rgba(150,137,255,.42); border-radius:7px; background:var(--aw-panel-dark); color:var(--aw-text-soft); font:11px var(--aw-font); cursor:pointer; }.aw-keybind.listening { color:var(--aw-purple); border-color:var(--aw-purple); animation:aw-key-pulse .85s ease infinite; }@keyframes aw-key-pulse { 50% { box-shadow:0 0 0 3px rgba(150,137,255,.1); } }.aw-console { padding:8px; display:block; }.aw-console-output { height:85px; overflow:auto; padding:8px; border:1px solid var(--aw-border); border-radius:7px; background:#121212; color:var(--aw-text-mute); font:10px/1.55 var(--aw-font); }.aw-console-input { width:100%; height:25px; margin-top:7px; border:1px solid rgba(150,137,255,.28); border-radius:6px; background:var(--aw-panel-dark); color:var(--aw-text); padding:0 8px; outline:0; font:10px var(--aw-font); }.aw-bottom-bar { position:absolute; left:12px; right:12px; bottom:0; height:12px; display:flex; align-items:center; gap:8px; color:var(--aw-text-mute); font-size:9px; pointer-events:none; }.aw-key-time { margin-left:auto; }.aw-resize-handle { position:absolute; z-index:10; right:8px; bottom:8px; width:20px; height:20px; display:grid; place-items:center; border:1px solid rgba(58,58,58,.9); border-radius:6px; background:rgba(26,26,26,.95); color:var(--aw-purple); cursor:nwse-resize; }.aw-resize-handle:hover { background:var(--aw-panel-light); }.aw-resize-handle svg { width:12px; height:12px; }.preview-hint { position:absolute; bottom:15px; display:flex; align-items:center; gap:6px; color:var(--text-muted); font:.63rem var(--aw-font); }.preview-hint svg { width:13px; color:var(--accent-hover); }.aw-tooltip { position:fixed; z-index:200; display:none; max-width:260px; padding:7px 9px; border:1px solid rgba(150,137,255,.55); border-radius:7px; background:#202020; box-shadow:0 5px 16px rgba(0,0,0,.35); color:var(--aw-text); font:11px var(--aw-font); pointer-events:none; }.aw-tooltip.visible { display:block; }.aw-toast-region { position:fixed; z-index:300; right:20px; bottom:20px; width:min(300px,calc(100vw - 40px)); display:grid; gap:8px; pointer-events:none; }.aw-toast { padding:11px 13px; border:1px solid rgba(150,137,255,.42); border-radius:9px; background:rgba(31,31,31,.96); box-shadow:0 9px 24px rgba(0,0,0,.36); color:var(--aw-text); font:11px var(--aw-font); animation:aw-toast-in .25s ease; }.aw-toast::before { content:"aeroWare"; display:block; margin-bottom:3px; color:var(--aw-purple); font-size:10px; font-weight:700; }@keyframes aw-toast-in { from { opacity:0; transform:translateX(16px) scale(.95); } to { opacity:1; transform:none; } }.aw-empty { height:100%; display:grid; place-items:center; color:var(--aw-text-mute); font-size:12px; text-align:center; }
@media (max-width:1050px) { .features-layout { grid-template-columns:190px minmax(0,1fr); gap:18px; }.aeroware-ui { min-width:0; }.aw-sidebar { width:170px; flex-basis:170px; }.aw-search-bar { width:180px; }.aw-page { grid-template-columns:1fr; }.aeroware-stage { min-height:620px; }.aw-game-info strong { max-width:115px; } }@media (max-width:760px) { .features-site-header,.features-layout { width:min(100% - 28px,600px); }.features-site-header { min-height:64px; }.features-eyebrow { display:none; }.features-layout { display:block; padding-top:20px; }.game-select-sidebar { margin-bottom:16px; }.game-select-heading { padding:14px; }.game-list { grid-template-columns:repeat(auto-fit,minmax(140px,1fr)); }.game-sidebar-note { display:none; }.aeroware-stage { min-height:555px; }.aeroware-ui { width:100%; height:540px; min-height:0; border-radius:11px; }.aw-content { gap:10px; padding:8px; }.aw-sidebar { width:148px; flex-basis:148px; padding:8px; }.aw-game-info { padding:0 3px; }.aw-game-info strong { max-width:95px; font-size:10px; }.aw-game-info span { font-size:9px; }.aw-tab-btn { padding:0 6px; font-size:10px; }.aw-tab-btn > svg:first-of-type { margin-right:6px; width:13px; }.aw-tab-btn .aw-tab-chevron { display:none; }.aw-sidebar-footer { font-size:9px; }.aw-pages { padding:7px; }.aw-page { padding:2px; }.aw-search-bar { width:130px; }.aw-search-bar:focus-within { width:150px; }.aw-brand { font-size:15px; }.aw-brand small { top:17px; font-size:9px; }.aw-topbar { padding-left:12px; }.aw-row { padding:8px; }.aw-dropdown-wrap,.aw-input { width:112px; }.aw-row-title { font-size:10px; }.aw-row-desc { font-size:9px; }.preview-hint { display:none; } }@media (prefers-reduced-motion:reduce) { *,*::before,*::after { animation-duration:.01ms !important; scroll-behavior:auto !important; transition-duration:.01ms !important; } }
