/* Aircraft-first hangar: compact chrome, top-centre battle action, bottom flight line. */
#ui .so-hangar{--blue:#dcb471;--blue-2:#ae8245;--blue-hi:#f1d29a;--blue-glow:#dcb47122;--ink:#ededec;--ink-2:#d4d7da;--ink-3:#aeb6be;--ink-4:#8d979f;--line:#ffffff18;--line-2:#ffffff2d;--glass:#1c242dd9;--panel-w:280px;font-family:var(--font-ui),Helvetica,sans-serif;font-size:13px}
#ui .so-hangar.is-active{display:block;overflow:hidden}
#ui .so-hangar-vignette{background:linear-gradient(180deg,#0f172575,transparent 150px),linear-gradient(0deg,#121820bb,transparent 40%),linear-gradient(90deg,#10161b40,transparent 40%)}
#ui .so-hangar button{border-radius:1px;letter-spacing:.025em;font-family:inherit}
#ui .so-hangar .so-top{position:absolute;inset:0 0 auto;height:58px;padding:0 20px;display:flex;justify-content:space-between;background:linear-gradient(#29313ef5,#161e29ed);border-bottom:1px solid #8d9dab55;box-shadow:0 2px 10px #0004;gap:20px}
#ui .so-hangar .so-top-l,#ui .so-hangar .so-top-r{gap:10px;max-width:calc(50% - 150px)}
#ui .so-hangar .so-brand{margin:0 13px 0 0;flex:none}#ui .so-hangar .so-brand b{font:26px/1 var(--font-display);letter-spacing:.015em;color:#eee9dc}#ui .so-hangar .so-brand span{display:none}
#ui .so-hangar .so-hangar-action{font-size:11px;color:#c5cdd5;padding:9px 11px;background:#fff00000;white-space:nowrap;border:1px solid transparent}
#ui .so-hangar .so-hangar-action:hover{background:#ffffff12;border-color:#ffffff25;color:white}
#ui .so-hangar .so-rp{border:0;display:flex;gap:5px;padding:0 6px;height:30px;color:#e1c07b}#ui .so-hangar .so-rp b{font-size:15px}#ui .so-hangar .so-rp span{font-size:10px}
#ui .so-hangar .so-switch{gap:6px;font-size:10px;letter-spacing:.05em;white-space:nowrap}#ui .so-hangar .so-icbtn{height:30px;width:30px;flex:none}
#ui .so-hangar .so-cta{position:absolute;animation:none;left:50%;right:auto;top:6px;bottom:auto;transform:translateX(-50%);width:250px;height:auto;display:flex;flex-direction:column;gap:0;z-index:4;padding:0;margin:0;background:none}
#ui .so-hangar .so-sortie{position:relative;flex:none;height:48px;min-height:48px;width:100%;border:1px solid #f0a083;border-top-color:#ffceb3;border-radius:1px;clip-path:none;background:linear-gradient(#bf4d2d,#8d2419 55%,#74231b);color:#fff6e8;box-shadow:inset 0 0 0 2px #2e100f66,0 2px 9px #0007;text-shadow:0 2px 2px #441510}
#ui .so-hangar .so-sortie:hover:not(:disabled){background:linear-gradient(#d66337,#a42f20 55%,#87271b)}
#ui .so-hangar .so-sortie.is-locked{filter:saturate(.35);opacity:.8}#ui .so-hangar .so-sortie.is-research{background:linear-gradient(#81683b,#4f442a)}
#ui .so-hangar .so-sortie-label{font:700 23px/1 var(--font-ui);letter-spacing:.025em}#ui .so-hangar .so-sortie-label--sm,#ui .so-hangar .so-sortie-label--md{font-size:14px}#ui .so-hangar .so-sortie kbd,#ui .so-hangar .so-sortie-chev,#ui .so-hangar .so-sortie-sweep{display:none}
#ui .so-hangar .so-cta-sum{display:flex;flex-direction:row;flex-shrink:0;align-items:center;justify-content:center;gap:10px;border:1px solid #8a9aab3d;border-top:0;background:#1b2a3be8;color:#c6d0da;height:32px;padding:0 8px;font-size:11px;border-radius:0;cursor:pointer}
#ui .so-hangar .so-cta-sum:hover{background:#304158}#ui .so-hangar .so-cta-line{font-size:11px;letter-spacing:0;gap:6px}#ui .so-hangar .so-cta-line b{font-weight:400}#ui .so-hangar .so-cta-line--lo{display:none}#ui .so-hangar .so-mission-caret{font-size:18px}
#ui .so-hangar .so-stage{position:absolute;left:326px!important;right:24px;top:105px;bottom:226px;height:auto;margin:0;transition:none}
#ui .so-hangar[data-tab=loadout] .so-stage{left:392px!important;right:28px}
#ui .so-hangar .so-aircard{position:absolute;top:116px;left:20px;width:280px;max-height:calc(100% - 372px);display:flex;flex-direction:column;background:linear-gradient(110deg,#18212be6,#26313bca);border:1px solid #9babba38;box-shadow:0 2px 12px #0002;z-index:2;backdrop-filter:blur(8px)}
#ui .so-hangar[data-tab=loadout] .so-aircard{width:350px}
#ui .so-hangar[data-tab=loadout] .so-roster{transform:none;opacity:1;pointer-events:auto}#ui .so-hangar[data-tab=loadout] .so-plate-name{font-size:27px}
#ui .so-hangar .so-details-toggle{position:absolute;top:87px;left:20px;height:29px;width:280px;padding:0 12px;text-align:left;background:#202b37e8;border:1px solid #ffffff26;color:#b9c6d1;font-size:10px;z-index:3}
#ui .so-hangar .so-plate{position:static;left:auto;top:auto;right:auto;margin:0;max-width:none;min-height:0;width:auto;padding:13px 15px 11px;background:linear-gradient(#46576855,transparent);pointer-events:auto;flex:none}
#ui .so-hangar .so-plate>*{animation:none!important}#ui .so-hangar .so-plate-k{font-size:9px;letter-spacing:.065em;color:#a5b5c5;gap:5px}
#ui .so-hangar .so-plate-name{font:500 27px/1.1 var(--font-ui);letter-spacing:-.02em;margin:6px 0 4px;color:#f1f1ed;text-shadow:0 1px 2px #0008;white-space:normal}#ui .so-hangar .so-plate-full{font-size:10px;letter-spacing:.01em;color:#c5cbd0;line-height:1.5}#ui .so-hangar .so-plate-full em{display:none}
#ui .so-hangar .so-plate-chips{margin-top:9px;gap:5px}#ui .so-hangar .so-badge{font-size:9px;letter-spacing:.06em;padding:3px 5px;height:auto;background:#637b8c40;color:#dce5eb;border:1px solid #71849469;clip-path:none}#ui .so-hangar .so-chip{font-size:9px;height:19px;padding:0 5px;border-color:#71849460}#ui .so-hangar .so-chip--key{display:none}
#ui .so-hangar .so-plate-research{width:auto;margin-top:10px;padding:8px;background:#10182070;border-color:#bca06b44}#ui .so-hangar .so-res-head{font-size:10px;gap:4px}#ui .so-hangar .so-res-head b{font-size:10px;letter-spacing:.04em}#ui .so-hangar .so-res-head>span{font-size:10px;line-height:1.4}#ui .so-hangar .so-research-btn{height:28px;margin-top:7px;font-size:10px}#ui .so-hangar .so-research-btn b{font-size:10px}
#ui .so-hangar .so-panel{position:static;top:auto;right:auto;bottom:auto;left:auto;width:auto;min-height:0;flex:1;background:none;box-shadow:none;border:0;clip-path:none;backdrop-filter:none;animation:none;border-radius:0;display:flex;flex-direction:column}
#ui .so-hangar .so-panel::before,#ui .so-hangar .so-panel::after{display:none}#ui .so-hangar .so-tabs{padding:0;border-top:1px solid #ffffff15;flex:none;min-height:34px}#ui .so-hangar .so-tab{height:34px;min-height:34px;font-size:10px;letter-spacing:0;gap:5px}#ui .so-hangar .so-tab .so-ico{width:12px;height:12px}#ui .so-hangar .so-tab.is-on{background:#96b6d51c}#ui .so-hangar .so-tab::after{left:0;right:0;box-shadow:none}
#ui .so-hangar .so-panes{min-height:0;padding:12px 15px;overflow:auto;scrollbar-width:thin;scrollbar-color:#8999a65c transparent}#ui .so-hangar .so-pane{padding:0}
#ui .so-hangar .so-sec-k{font-size:9px;letter-spacing:.08em;color:#859eaf;margin:12px 0 8px;line-height:1.4}#ui .so-hangar .so-sec-k:first-child{margin-top:0}#ui .so-hangar .so-sec-k em{font-size:8px;color:#94a0aa}
#ui .so-hangar .so-sbs{gap:7px}#ui .so-hangar .so-sb{display:flex;justify-content:space-between;gap:6px}#ui .so-hangar .so-sb-bar{display:none}#ui .so-hangar .so-sb-l{font-size:11px;color:#b8c3cc;letter-spacing:0;font-weight:400}#ui .so-hangar .so-sb-v{font-size:11px;font-weight:600;letter-spacing:0;color:#e0e4e6}#ui .so-hangar .so-sb-v em{font-size:9px;color:#dbb570}
#ui .so-hangar .so-kv{font-size:10px;line-height:1.6;grid-template-columns:16px 46px 1fr;gap:5px;padding:7px 0}#ui .so-hangar .so-kv>svg{width:16px;height:16px}#ui .so-hangar .so-kv>.so-link{grid-column:3;justify-self:start}#ui .so-hangar .so-kv>span{font-size:9px;color:#a6b3bd}#ui .so-hangar .so-kv b{font-size:10px;font-weight:400}#ui .so-hangar .so-kv--ab{display:none}
#ui .so-hangar .so-sensor-card{padding:10px 0;margin:5px 0 7px;border:0;border-top:1px solid #ffffff15;background:none;border-radius:0}#ui .so-hangar .so-sensor-card b{font-size:12px;font-weight:400}#ui .so-hangar .so-sensor-card p{font-size:10px;color:#bbbdb9;margin:4px 0}#ui .so-hangar .so-sensor-facts{font-size:10px;color:#a6b1b9;line-height:1.6}
#ui .so-hangar .so-blurb{font-size:11px;color:#abb9c4;line-height:1.55;margin:10px 0}#ui .so-hangar .so-link{font-size:9px;letter-spacing:.025em;color:#d4bb8b}
#ui .so-hangar.details-hidden .so-aircard{display:none}#ui .so-hangar.details-hidden .so-stage{left:36px!important}#ui .so-hangar.details-hidden .so-details-toggle{width:164px}
#ui .so-hangar .so-mission-brief{position:absolute;right:22px;top:114px;width:226px;padding:13px 15px;background:linear-gradient(110deg,#263544b8,#1a222daf);border:1px solid #829aad3d;z-index:2;box-shadow:0 2px 7px #0002}
#ui .so-hangar .so-brief-kicker{font-size:9px;color:#abbaca;letter-spacing:.12em}#ui .so-hangar .so-mission-brief h2{font-size:17px;font-weight:400;margin:7px 0;color:#e7ecee}#ui .so-hangar .so-mission-brief p{font-size:10px;color:#a5b6c5;margin:5px 0}#ui .so-hangar .so-mission-brief ul{margin:12px 0;padding-left:13px;font-size:10px;line-height:1.7;color:#c9d0d5}#ui .so-hangar[data-tab=loadout] .so-mission-brief{display:none}
#ui .so-hangar .so-quick-actions{position:absolute;left:20px;bottom:212px;display:flex;gap:6px;z-index:3}#ui .so-hangar .so-quick-actions button{background:#25313dde;border:1px solid #7d91a45c;padding:9px 13px;font-size:10px;box-shadow:0 1px 3px #0004}
/* Lineup occupies one shallow strip rather than a permanent full-height navigation column. */
#ui .so-hangar .so-roster{position:absolute;left:0;right:0;top:auto;bottom:0;width:auto;height:194px;max-height:none;margin:0;display:flex!important;flex-direction:column;overflow:hidden;padding:0 18px;background:linear-gradient(#25323fee,#17202aec);border:0;border-top:1px solid #9caec25c;border-radius:0;backdrop-filter:blur(14px);z-index:3}
#ui .so-hangar .so-lineup-head{display:flex;align-items:stretch;gap:14px;height:43px;flex:none;border-bottom:1px solid #ffffff1a}
#ui .so-hangar .so-tree-button{align-self:stretch;min-width:148px;border:0;border-right:1px solid #8295aa40;color:#e2c78e;background:linear-gradient(#56667566,#2a354055);font-size:12px;letter-spacing:.05em;text-align:left;padding:0 16px}
#ui .so-hangar .so-tree-button:hover{background:#526a7a88}
#ui .so-hangar .so-era{position:static;display:flex;flex:1;width:auto;padding:0;min-width:0;grid-column:auto;grid-row:auto;align-items:stretch}
#ui .so-hangar .so-era-track{display:none}#ui .so-hangar .so-era-node{display:flex;flex-direction:row;gap:8px;justify-content:center;align-items:center;flex:1;min-width:0;padding:0 10px;border-bottom:3px solid transparent}
#ui .so-hangar .so-era-node:hover{background:#b6d1e017}#ui .so-hangar .so-era-node.is-active{background:#879eab2a;border-color:#d4b079}
#ui .so-hangar .so-era-dot{width:auto;height:auto;min-width:18px;border:0;background:none;box-shadow:none;transform:none;font:12px Georgia;color:#ccd3d8}#ui .so-hangar .so-era-dot>*{transform:none!important}#ui .so-hangar .so-era-dot::before{display:none}#ui .so-hangar .so-era-node.is-active .so-era-dot{color:#f0d39b;background:none}
#ui .so-hangar .so-era-txt{margin:0;text-align:left;gap:0}#ui .so-hangar .so-era-txt b{font-size:10px;letter-spacing:.03em}#ui .so-hangar .so-era-txt em{display:none}
#ui .so-hangar .so-roster-tools{display:flex;align-items:center;gap:12px;padding:0;flex:none}#ui .so-hangar .so-roster-tools input[type=search]{width:178px;height:27px;background:#0f19266b;border:1px solid #8396aa45;border-radius:1px;font-size:11px;padding:0 8px;color:#e0e6eb}#ui .so-hangar .so-all-eras{display:flex!important;margin:0;font-size:10px;gap:5px;white-space:nowrap}#ui .so-hangar .so-all-eras input{accent-color:#ba945b;width:12px;height:12px}
#ui .so-hangar .so-roster-list{display:flex;flex-direction:row;align-items:stretch;flex:1;gap:7px;min-height:0;padding:8px 0 7px;margin:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#8197a66b transparent}
#ui .so-hangar .so-roster-list .so-fac{display:none}#ui .so-hangar .so-roster-lock{font-size:10px;width:170px;min-width:170px;margin:0;padding:10px;align-self:stretch;line-height:1.5}
#ui .so-hangar .so-rc{position:relative;display:block;width:152px;min-width:152px;height:99px;min-height:99px;flex:none;border:1px solid #8195a64f;background:linear-gradient(135deg,#435b6f9e,#1b2a37b0);padding:0;border-radius:1px;overflow:hidden;clip-path:none;animation:none!important;color:#dde5eb;opacity:1}
#ui .so-hangar .so-rc:hover{border-color:#b4c7d4;background:linear-gradient(135deg,#5e778dba,#324553bd)}#ui .so-hangar .so-rc.is-active{border-color:#e0c186;box-shadow:inset 0 0 0 1px #e0c186;background:linear-gradient(135deg,#666a58bb,#393d32d9)}#ui .so-hangar .so-rc::before,#ui .so-hangar .so-rc::after{display:none}
#ui .so-hangar .so-rc-sil{position:absolute;left:-7px;bottom:8px;width:118px;height:83px;opacity:1;display:block}#ui .so-hangar .so-rc-sil img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 3px 2px #0006);animation:none;opacity:1}#ui .so-hangar .so-rc.is-locked .so-rc-sil img{opacity:.85}#ui .so-hangar .so-rc-sil>i{display:none}
#ui .so-hangar .so-rc-txt{position:absolute;inset:7px 7px auto;display:flex;align-items:flex-end;gap:2px;pointer-events:none}#ui .so-hangar .so-rc-txt b{font-size:11px;letter-spacing:0;text-align:right;max-width:100%;color:#edf1f4;text-shadow:0 1px 2px #10202b}#ui .so-hangar .so-rc-txt em{font-size:9px;letter-spacing:0;color:#c2cbd1;text-shadow:0 1px 2px #000}#ui .so-hangar .so-rc-role{position:absolute;top:56px;right:0;font-size:8px;letter-spacing:.04em;color:#ccd9df}
#ui .so-hangar .so-rc-state{position:absolute;left:0;right:0;bottom:0;padding:3px 6px;font-size:9px;background:#101e2969;justify-content:flex-end;color:#d0cbb7}#ui .so-hangar .so-rc-state--ready{background:#9c875a70;color:#fff5d9;animation:none}
#ui .so-hangar .so-lineup-foot{height:34px;flex:none;display:flex;align-items:center;gap:14px;border-top:1px solid #ffffff18;font-size:10px;color:#9eacb8}#ui .so-hangar .so-lineup-count{color:#d6dee4;letter-spacing:.05em}#ui .so-hangar .so-role-filters{display:flex;gap:3px;margin:0}#ui .so-hangar .so-role-filters button{padding:3px 9px;font-size:10px;height:24px;line-height:1;background:none;border:1px solid transparent;color:#aebbcc}#ui .so-hangar .so-role-filters button[aria-pressed=true]{border-color:#a7bccc44;background:#65849933;color:#e1e7eb}
#ui .so-hangar .so-roster-foot{display:none}#ui .so-hangar .so-lineup-help{margin-left:auto;font-size:10px;color:#97a8b9}
/* The research browser reflects the game's actual era unlock rules. */
#ui .so-research{background:#0c1422cf;padding:25px}#ui .so-research-window{background:linear-gradient(#293441f5,#19222ef5);border:1px solid #a0b4c452;width:min(1440px,96vw);height:90vh;display:flex;flex-direction:column;color:#e1e5e9;padding:20px;box-shadow:0 12px 70px #0007}#ui .so-research-window .so-modal-head{flex:none;gap:20px;padding:0 0 12px;border-bottom:1px solid #ffffff20}#ui .so-research-window .so-modal-head h1{font:500 25px/1.2 var(--font-ui);letter-spacing:-.02em;margin-top:5px}#ui .so-research-window .so-kicker{font-size:9px;color:#d5bc8d;letter-spacing:.13em}#ui .so-research-window .so-modal-head input{height:34px;max-width:280px;flex:1;background:#142233;color:#e2e6ec;border:1px solid #8b9aaa50;padding:8px 12px;font:12px var(--font-ui)}#ui .so-research-note{font:12px/1.5 var(--font-ui);color:#a4b6c6;margin:12px 0}
#ui .so-research-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;overflow:auto;min-height:0;padding:0 4px 15px;scrollbar-width:thin;scrollbar-color:#849bad70 transparent}#ui .so-research-era{min-width:0;border-left:1px solid #ffffff10;padding-left:12px}#ui .so-research-era>header{position:sticky;top:0;z-index:1;display:flex;flex-direction:column;gap:5px;padding:13px 8px;background:#2b3848f5;border-bottom:2px solid #b29970;margin-bottom:12px}#ui .so-research-era>header b{font:16px Georgia;color:#dfc38e}#ui .so-research-era>header span{font:13px var(--font-ui)}#ui .so-research-era>header small{font:10px/1.4 var(--font-ui);color:#9caebd;min-height:28px}
#ui .so-research-card{position:relative;width:100%;height:108px;display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-start;gap:4px;padding:10px;margin-bottom:8px;background:linear-gradient(135deg,#46627a6b,#1c2939);border:1px solid #718a9d55;overflow:hidden;color:#e8edf0;text-align:right}#ui .so-research-card:hover,#ui .so-research-card.is-selected{border-color:#dbc086;background:linear-gradient(135deg,#68684f9c,#273442)}#ui .so-research-card>b{position:relative;font:600 12px var(--font-ui)}#ui .so-research-card>span:not(.so-research-image){position:relative;font:9px var(--font-ui);color:#c1ced9}#ui .so-research-card>small{position:absolute;bottom:0;left:0;right:0;padding:5px 10px;background:#1321309c;font:10px var(--font-ui);color:#d9bf8c}#ui .so-research-card>small.is-owned{color:#b9ccb8}#ui .so-research-image{position:absolute;left:0;bottom:13px;width:120px;height:85px}#ui .so-research-image img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 3px 2px #0006)}
@media(max-width:1150px){#ui .so-hangar .so-top{padding:0 12px}#ui .so-hangar .so-top-l,#ui .so-hangar .so-top-r{gap:4px}#ui .so-hangar .so-top-l>.so-hangar-action{display:none}#ui .so-hangar .so-rp{display:none}#ui .so-hangar .so-aircard{left:12px;width:246px}#ui .so-hangar .so-details-toggle{left:12px;width:246px}#ui .so-hangar .so-stage{left:272px!important;right:16px}#ui .so-hangar .so-mission-brief{display:none}#ui .so-hangar .so-tree-button{min-width:120px;font-size:10px}#ui .so-hangar .so-lineup-head{gap:6px}#ui .so-hangar .so-era-node{padding:0 5px;gap:4px}#ui .so-hangar .so-era-txt b{font-size:9px}#ui .so-hangar .so-roster-tools input[type=search]{width:145px}#ui .so-hangar .so-all-eras{font-size:9px}#ui .so-hangar .so-roster-tools{gap:5px}#ui .so-hangar .so-lineup-help{font-size:9px}}
@media(max-height:760px){#ui .so-hangar .so-roster{height:166px}#ui .so-hangar .so-lineup-head{height:36px}#ui .so-hangar .so-lineup-foot{height:29px}#ui .so-hangar .so-rc{height:85px;min-height:85px;width:145px;min-width:145px}#ui .so-hangar .so-roster-list{padding:6px 0 5px}#ui .so-hangar .so-rc-sil{height:69px;width:105px;bottom:8px}#ui .so-hangar .so-rc-role{top:45px}#ui .so-hangar .so-quick-actions{bottom:181px}#ui .so-hangar .so-aircard{max-height:calc(100% - 336px)}#ui .so-hangar .so-stage{bottom:207px}}
@media(max-width:760px){#ui .so-hangar .so-top-r .so-hangar-action,#ui .so-hangar .so-top-r .so-switch span{display:none}#ui .so-hangar .so-brand b{font-size:20px}#ui .so-hangar .so-cta{width:200px}#ui .so-hangar .so-sortie-label{font-size:19px}#ui .so-hangar .so-top{height:56px}#ui .so-hangar .so-stage{left:12px!important;right:12px;top:118px;bottom:210px}#ui .so-hangar .so-aircard{width:224px;max-height:calc(100% - 328px);top:115px}#ui .so-hangar .so-details-toggle{width:224px}#ui .so-hangar .so-roster{padding:0 10px;height:180px}#ui .so-hangar .so-roster-tools{position:absolute;left:10px;right:10px;top:36px;justify-content:flex-end;pointer-events:none}#ui .so-hangar .so-roster-tools>*{pointer-events:auto}#ui .so-hangar .so-roster-tools input[type=search]{width:140px;height:23px}#ui .so-hangar .so-lineup-head{height:64px;align-items:flex-start;gap:4px}#ui .so-hangar .so-tree-button{min-width:86px;height:34px;padding:0 6px}#ui .so-hangar .so-era{height:34px}#ui .so-hangar .so-era-dot{display:none}#ui .so-hangar .so-era-node{padding:0 3px}#ui .so-hangar .so-era-txt b{font-size:8px}#ui .so-hangar .so-lineup-foot{height:22px}#ui .so-hangar .so-lineup-help{display:none}#ui .so-hangar .so-role-filters button{font-size:9px;padding:2px 5px;height:21px}#ui .so-hangar .so-lineup-count{font-size:9px}#ui .so-hangar .so-quick-actions{bottom:192px;left:12px;gap:3px}#ui .so-hangar .so-quick-actions button{font-size:8px;padding:8px 7px}#ui .so-research-grid{grid-template-columns:repeat(5,180px)}#ui .so-research-window{padding:12px}#ui .so-research-window .so-modal-head input{max-width:160px}#ui .so-research-window .so-modal-head h1{font-size:20px}}

/* FURBALL arcade lobby: bold outlined controls and a clean aircraft showcase. */
#ui .so-hangar{--blue:#ffd649;--blue-hi:#fff0a2;--blue-2:#eeba22;--glass:#152e65ed;--ink:#fff;--ink-2:#ecf4ff;--ink-3:#bcd3f6;--ink-4:#91aed8;--line:#92bcff40;--line-2:#aacbff66;font-family:var(--font-ui),Helvetica,sans-serif}
#ui .so-hangar-vignette{background:radial-gradient(ellipse at 50% 44%,transparent 14%,#1c327c38 65%,#101744aa),linear-gradient(180deg,#152a6a80,transparent 28%,transparent 68%,#141d57ba);pointer-events:none}
#ui .so-hangar button{border-radius:5px}#ui .so-hangar button:active:not(:disabled){filter:brightness(.9)}
#ui .so-hangar .so-top{height:90px;background:linear-gradient(#10193980,transparent);border:0;box-shadow:none;padding:0 28px;align-items:flex-start;padding-top:20px}
#ui .so-hangar .so-top-l,#ui .so-hangar .so-top-r{max-width:none;gap:10px}
#ui .so-hangar .so-top-l>.so-hangar-action,#ui .so-hangar .so-top-r>.so-hangar-action{display:none}
#ui .so-hangar .so-brand b{font:42px/.95 var(--font-display);letter-spacing:.01em;color:#fff;-webkit-text-stroke:1px #09102a;text-shadow:3px 4px #10132c,0 5px #10132c}
#ui .so-hangar .so-icbtn{width:46px;height:44px;border:3px solid #111b3a;background:linear-gradient(#6582b6,#354d7d);box-shadow:0 4px #09142d,inset 0 2px #bad0f066;color:white}
#ui .so-hangar .so-top-l>.so-icbtn{width:40px;margin-right:5px}#ui .so-hangar .so-icbtn svg{width:24px;height:24px}
#ui .so-hangar .so-rp{display:flex;height:43px;min-width:98px;background:#101933cc;border:3px solid #10182e;border-radius:6px;color:#ffde4f;padding:0 12px;box-shadow:0 3px #0b122a;gap:7px}#ui .so-hangar .so-rp b{font:24px var(--font-display)}#ui .so-hangar .so-rp span{font-size:11px;font-weight:800}#ui .so-hangar .so-rp svg{width:25px;height:25px}
#ui .so-hangar .so-switch{height:43px;background:#183a69;border:3px solid #111b3a;border-radius:6px;padding:0 10px;box-shadow:0 3px #09142d;font-weight:900;font-size:11px;color:#fff}
#ui .so-hangar .so-lobby-identity{position:absolute;left:50%;top:106px;transform:translateX(-50%);text-align:center;z-index:2;pointer-events:none;min-width:260px}
#ui .so-lobby-rank{display:flex;align-items:center;justify-content:center;gap:6px;font:700 12px var(--font-ui);color:white;text-shadow:0 2px #111b36}
#ui .so-lobby-rank>*{border:3px solid #111b3a;border-radius:4px;background:linear-gradient(#8d66e4,#4d3497);box-shadow:0 3px #111730;padding:6px 10px;transform:skew(-4deg)}#ui .so-lobby-rank>b{background:linear-gradient(#ec8651,#c14b32)}#ui .so-lobby-rank>span:last-child{background:linear-gradient(#567cb4,#28456e)}
#ui .so-lobby-identity h1{font:48px/1.03 var(--font-display);margin:12px 0 3px;color:white;-webkit-text-stroke:1px #101938;text-shadow:3px 4px #101938;letter-spacing:.015em}#ui .so-lobby-identity p{font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;text-shadow:0 2px #10223c;color:#e0edff;margin:0}
#ui .so-hangar .so-stage,#ui .so-hangar.details-hidden .so-stage{left:150px!important;right:150px;top:198px;bottom:154px}
#ui .so-hangar:not(.details-hidden) .so-stage{left:430px!important;right:145px}#ui .so-hangar[data-tab=loadout] .so-stage{left:470px!important;right:145px;top:168px;bottom:158px}
#ui .so-hangar .so-lobby-left{position:absolute;left:24px;top:174px;display:flex;flex-direction:column;gap:20px;z-index:4}
#ui .so-hangar .so-lobby-button,#ui .so-hangar .so-details-toggle{position:relative;width:110px;height:84px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;background:linear-gradient(155deg,#647faa,#334a74);border:3px solid #101b36;border-top-color:#b1cbef;border-radius:5px;box-shadow:0 5px #0b1632,inset 0 -5px #1b30567d;color:#fff;font:17px/.95 var(--font-display);letter-spacing:.015em;text-shadow:1px 2px #0c1733;padding:6px;transform:skew(-3deg)}
#ui .so-hangar .so-lobby-button:hover,#ui .so-hangar .so-details-toggle:hover{filter:brightness(1.15)}#ui .so-hangar .so-lobby-button>*{transform:skew(3deg)}#ui .so-hangar .so-lobby-button svg{width:40px;height:40px;stroke-width:2.2;color:#e3f0ff;filter:drop-shadow(0 2px #162e53)}
#ui .so-hangar .so-lobby-left .so-lobby-button:first-child{background:linear-gradient(155deg,#9474e0,#59419e);border-top-color:#dab7ff}#ui .so-hangar .so-lobby-left .so-lobby-button:first-child svg{fill:#ecd6ff;stroke:#47347a}#ui .so-hangar .so-lobby-left .so-lobby-button:nth-child(2) svg{color:#ffcd51}
#ui .so-hangar .so-details-toggle,#ui .so-hangar.details-hidden .so-details-toggle{position:absolute;left:24px;top:382px;width:110px;height:72px;font-size:18px}
#ui .so-hangar .so-details-toggle::before{content:'▥';font:31px/1 var(--font-ui);color:#65eebd;text-shadow:1px 2px #123d3c}
#ui .so-hangar .so-quick-actions{position:absolute;left:auto;right:24px;top:174px;bottom:auto;display:flex;flex-direction:column;gap:20px;z-index:4}
#ui .so-hangar .so-quick-actions button{width:110px;height:84px;padding:6px;font:17px/.95 var(--font-display);background:linear-gradient(155deg,#647faa,#334a74);border:3px solid #101b36;border-top-color:#b1cbef;box-shadow:0 5px #0b1632,inset 0 -5px #1b30567d}
#ui .so-hangar .so-quick-actions button:first-child svg{color:#ff9081}#ui .so-hangar .so-quick-actions button:nth-child(2) svg{color:#72e8ff}#ui .so-hangar .so-quick-actions button:nth-child(3) svg{color:#b1ec75}
#ui .so-hangar .so-aircard{left:150px;top:175px;width:270px;max-height:calc(100% - 335px);background:linear-gradient(140deg,#294c88f7,#152651f7);border:3px solid #101a34;border-top-color:#728bc1;border-radius:7px;box-shadow:0 6px #0b1430;backdrop-filter:blur(12px)}
#ui .so-hangar[data-tab=loadout] .so-aircard{width:310px}#ui .so-hangar .so-plate{padding:14px 15px 9px;background:#719edf15}#ui .so-hangar .so-plate-name,#ui .so-hangar[data-tab=loadout] .so-plate-name{font:28px var(--font-display);font-style:normal;text-shadow:1px 2px #0d1732}
#ui .so-hangar .so-tabs{background:#111f4580}#ui .so-hangar .so-tab{font-weight:800}#ui .so-hangar .so-sb-l,#ui .so-hangar .so-sb-v{font-size:12px}#ui .so-hangar .so-sec-k{font-size:10px;color:#a7c9f6}#ui .so-hangar .so-kv b{font-size:11px}#ui .so-hangar .so-link{color:#ffdd67}
#ui .so-hangar .so-mission-brief{display:none}#ui .so-hangar .so-roster,#ui .so-hangar[data-tab=loadout] .so-roster{display:none!important}
#ui .so-hangar .so-cta{left:auto;right:28px;top:auto;bottom:30px;transform:none;width:min(750px,60vw);display:flex;flex-direction:row;align-items:stretch;gap:12px;animation:none}
#ui .so-hangar .so-sortie{order:2;width:260px;height:88px;min-height:88px;border:4px solid #101930;border-top-color:#fff2a0;background:linear-gradient(#ffe966,#ffd139 78%,#eba625 79%);color:white;box-shadow:0 6px #111a32,inset 0 3px #fff6b5;border-radius:6px;transform:skew(-4deg);text-shadow:2px 3px #161727}
#ui .so-hangar .so-sortie:hover:not(:disabled){background:linear-gradient(#fff18b,#ffdd4c 78%,#f4b436 79%)}#ui .so-hangar .so-sortie-label{font:42px/1 var(--font-display);letter-spacing:.02em;-webkit-text-stroke:1px #11162b;transform:skew(4deg)}#ui .so-hangar .so-sortie-label--md{font-size:26px}#ui .so-hangar .so-sortie-label--sm{font-size:22px}#ui .so-hangar .so-sortie.is-research{background:linear-gradient(#80df6d,#48b842);color:white}
#ui .so-hangar .so-cta-sum{order:1;flex:1;min-width:0;height:88px;flex-direction:row;justify-content:space-between;align-items:center;background:linear-gradient(#455c97,#2b3d6f);border:4px solid #101930;border-top-color:#8ba9de;border-radius:6px;box-shadow:0 6px #101832,inset -42px 0 #5686b740;padding:10px 16px;transform:skew(-4deg);text-align:left}
#ui .so-hangar .so-cta-sum>*{transform:skew(4deg)}#ui .so-hangar .so-cta-line{display:grid;grid-template-columns:38px 1fr;grid-template-rows:auto auto;gap:3px 10px;font-size:12px;letter-spacing:0;text-transform:uppercase}#ui .so-hangar .so-cta-line>svg{grid-row:1/3;align-self:center;width:34px;height:34px;color:#ff9396}#ui .so-hangar .so-cta-line>b{font:22px var(--font-display);color:white;text-shadow:1px 2px #10182e}#ui .so-hangar .so-cta-line>i{display:none}#ui .so-hangar .so-cta-line>span{grid-column:2;color:#b9d7ff;font-weight:700}#ui .so-hangar .so-cta-line--lo{display:none}#ui .so-hangar .so-mission-caret{font:28px var(--font-display);color:#fff}
#ui .so-hangar .so-lobby-progress{position:absolute;left:28px;bottom:30px;width:300px;background:linear-gradient(150deg,#9965c9,#674195);border:4px solid #101930;border-top-color:#d3a6ee;transform:skew(-3deg);border-radius:5px;box-shadow:0 6px #101832;z-index:3;padding:9px 14px;color:white}
#ui .so-hangar .so-roster-foot{display:block;padding:0;transform:skew(3deg);border:0}#ui .so-hangar .so-goal-k{font-size:11px;font-weight:800;color:#e5c8ff;margin:0 0 7px}#ui .so-hangar .so-goal-k em{color:white}#ui .so-hangar .so-goal{color:#fff;padding:0 0 5px;gap:7px;width:100%}#ui .so-hangar .so-goal b{font:22px var(--font-display);text-shadow:1px 2px #251a46}#ui .so-hangar .so-goal span{color:#ffe471}#ui .so-hangar .so-bar{background:#241b48;border:1px solid #11162a;height:7px}#ui .so-hangar .so-bar>i{background:#a4f66e}
#ui .so-hangar[data-tab=loadout] .so-lobby-progress{display:none}
#ui .so-research{background:#071033dd;padding:20px}#ui .so-research-window{background:linear-gradient(140deg,#264f9d,#173b88);border:4px solid #101732;border-top-color:#6898e5;border-radius:10px;padding:22px;width:min(1500px,96vw);height:94vh;box-shadow:0 8px #080e21}
#ui .so-research-window .so-modal-head{border-bottom:0;align-items:center}#ui .so-research-window .so-kicker{color:#9fc8ff;font:700 11px var(--font-ui);letter-spacing:.08em}#ui .so-research-window .so-modal-head h1{font:32px var(--font-display);color:#fff;text-shadow:2px 3px #101937}#ui .so-research-window .so-modal-head input{background:#123065;border:3px solid #0e1c40;border-top-color:#436db0;border-radius:5px;height:42px;font:700 13px var(--font-ui);color:white}#ui .so-research-window .so-modal-head input::placeholder{color:#a7c7f1}
#ui .so-aircraft-filters{display:flex;gap:8px;margin:5px 0 20px;flex:none;flex-wrap:wrap}#ui .so-aircraft-filters button{padding:9px 18px;background:#244a84;border:3px solid #10213d;border-top-color:#628dcc;border-radius:4px;box-shadow:0 3px #111d39;font:16px var(--font-display);color:#deebff}#ui .so-aircraft-filters button[aria-pressed=true]{background:#ffe25b;color:#18234d;border-top-color:#fff3a2}
#ui .so-research-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;padding:0 5px 18px;align-content:start;scrollbar-color:#71a8ea #153870;overflow:auto}
#ui .so-research-card{height:218px;min-height:218px;border:4px solid #122448;border-top-color:#9bc9ff;border-radius:7px;background:radial-gradient(ellipse at 50% 35%,#68d4e7,#268fab 75%);box-shadow:0 5px #0b1939;padding:0;display:block;margin:0;overflow:hidden;transform:none;color:#fff}
#ui .so-research-card[data-rank='2']{background:radial-gradient(ellipse at 50% 35%,#9dd477,#498b5c 75%)}#ui .so-research-card[data-rank='3']{background:radial-gradient(ellipse at 50% 35%,#779bef,#435dba 75%)}#ui .so-research-card[data-rank='4']{background:radial-gradient(ellipse at 50% 35%,#b183de,#72489d 75%)}#ui .so-research-card[data-rank='5']{background:radial-gradient(ellipse at 50% 35%,#f2b273,#b76a43 75%)}#ui .so-research-card:hover,#ui .so-research-card.is-selected{border-color:#ffea76;box-shadow:0 5px #0b1939,0 0 0 2px #ffdb40;background-color:#a1d5ff}
#ui .so-research-image{left:0;right:0;bottom:29px;width:100%;height:180px}#ui .so-research-image img{width:100%;height:100%;filter:drop-shadow(0 6px 2px #17254455)}
#ui .so-research-card>b{position:absolute;bottom:34px;left:0;right:0;padding:9px 8px 5px;background:linear-gradient(transparent,#11224aab);font:25px/1 var(--font-display);text-align:left;text-shadow:2px 2px #102140;color:#fff}
#ui .so-research-card>span.so-card-rank{position:absolute;top:8px;left:8px;padding:4px 7px;background:#173267d9;border:2px solid #16244b;font:12px var(--font-display);color:#fff;z-index:1;transform:rotate(-4deg)}#ui .so-research-card>span.so-card-role{position:absolute;right:7px;top:11px;font:9px var(--font-ui);font-weight:900;text-align:right;max-width:110px;color:#fff;text-shadow:1px 1px #132541;z-index:1}
#ui .so-research-card>small{font:700 11px var(--font-ui);padding:10px 8px;background:#172e5a;color:#ffdf63;height:32px;text-align:left}#ui .so-research-card>small.is-owned{background:#183d53;color:#b6ff9f}
#ui .so-no-aircraft{color:#fff;font-size:18px;grid-column:1/-1;padding:30px}
/* Matching title and loading chrome keeps the arcade direction coherent. */
#ui .so-title-scrim{background:linear-gradient(90deg,#142960ef,#1d2c6970 47%,transparent)}#ui .so-logo-word{color:#fff;-webkit-text-fill-color:#fff;text-shadow:5px 7px #101630}#ui .so-title-menu .so-mi{border:3px solid #111b39;border-top-color:#819dd8;background:linear-gradient(#3e609c,#293f73);box-shadow:0 5px #111b36;border-radius:6px}#ui .so-title-menu .so-mi--primary{background:linear-gradient(#ffe866,#efbe32);color:#111c35;border-top-color:#fff2aa}#ui .so-title-menu .so-mi--primary .so-mi-sub,#ui .so-title-menu .so-mi--primary .so-mi-n{color:#384368}#ui .so-title-menu .so-mi-label{font-family:var(--font-display);font-size:24px;letter-spacing:.03em}
#ui .so-loading{background:radial-gradient(ellipse at 65% 40%,#466ec2,#162d67 70%)}#ui .so-loading-title{color:#ffe064;text-shadow:6px 7px #11193a;-webkit-text-stroke:1px #142049}#ui .so-loading-brand,#ui .so-tip b{color:#ffdf71}#ui .so-loading-art img{filter:none;opacity:.8}#ui .so-loading-art span{color:#7997e22b}#ui .so-loading-meta,#ui .so-loading-status,#ui .so-tip{color:#d9e9ff}#ui .so-loadbar{height:12px;border:3px solid #101b3b;background:#173775;border-radius:4px}#ui .so-loadbar i{background:#ffe05d}
@media(max-width:1150px){#ui .so-hangar .so-top{padding:15px 18px}#ui .so-hangar .so-brand b{font-size:34px}#ui .so-hangar .so-lobby-left{left:18px}#ui .so-hangar .so-quick-actions{right:18px}#ui .so-hangar .so-details-toggle,#ui .so-hangar.details-hidden .so-details-toggle{left:18px}#ui .so-hangar .so-cta{right:20px;bottom:24px;width:60vw;gap:9px}#ui .so-hangar .so-sortie{width:200px}#ui .so-hangar .so-lobby-progress{left:20px;bottom:24px;width:29vw}#ui .so-hangar .so-aircard{left:140px;width:250px}#ui .so-hangar .so-lobby-identity{top:100px}#ui .so-hangar .so-lobby-identity h1{font-size:38px}#ui .so-research-grid{grid-template-columns:repeat(4,minmax(0,1fr))}#ui .so-research-card{height:200px;min-height:200px}}
@media(max-height:760px){#ui .so-hangar .so-lobby-identity{top:77px}#ui .so-hangar .so-lobby-identity h1{font-size:32px;margin-top:9px}#ui .so-hangar .so-lobby-rank>*{padding:4px 8px;font-size:10px}#ui .so-hangar .so-lobby-left,#ui .so-hangar .so-quick-actions{top:135px;gap:14px}#ui .so-hangar .so-lobby-button,#ui .so-hangar .so-quick-actions button{height:70px;width:94px;font-size:15px}#ui .so-hangar .so-lobby-button svg{height:33px;width:33px}#ui .so-hangar .so-details-toggle,#ui .so-hangar.details-hidden .so-details-toggle{top:303px;width:94px;height:64px;font-size:16px}#ui .so-hangar .so-stage,#ui .so-hangar.details-hidden .so-stage{top:160px;bottom:127px;left:130px!important;right:130px}#ui .so-hangar:not(.details-hidden) .so-stage{left:410px!important}#ui .so-hangar .so-aircard{top:137px;left:130px;max-height:calc(100% - 270px)}#ui .so-hangar .so-cta-sum,#ui .so-hangar .so-sortie{height:78px;min-height:78px}#ui .so-hangar .so-cta-line>b{font-size:18px}#ui .so-hangar .so-cta-line{grid-template-columns:28px 1fr;font-size:10px;gap:3px 7px}#ui .so-hangar .so-cta-line>svg{width:27px;height:27px}#ui .so-hangar .so-sortie-label{font-size:36px}#ui .so-hangar .so-sortie-label--sm{font-size:18px}}
@media(max-width:760px){#ui .so-hangar .so-brand b{font-size:28px}#ui .so-hangar .so-top-r{gap:5px}#ui .so-hangar .so-top-r>.so-rp{display:none}#ui .so-hangar .so-switch{padding:0 5px;font-size:9px}#ui .so-hangar .so-top-r .so-switch span{display:inline}#ui .so-hangar .so-icbtn{width:35px;height:37px}#ui .so-hangar .so-lobby-left{left:12px}#ui .so-hangar .so-quick-actions{right:12px}#ui .so-hangar .so-lobby-button,#ui .so-hangar .so-quick-actions button{width:76px;height:67px;font-size:13px}#ui .so-hangar .so-details-toggle,#ui .so-hangar.details-hidden .so-details-toggle{left:12px;top:297px;width:76px;height:62px}#ui .so-hangar .so-stage,#ui .so-hangar.details-hidden .so-stage{left:90px!important;right:90px;top:172px;bottom:150px}#ui .so-hangar .so-aircard{left:96px;width:240px;max-height:calc(100% - 300px)}#ui .so-hangar:not(.details-hidden) .so-stage{left:100px!important;right:30px}#ui .so-hangar .so-lobby-identity h1{font-size:32px}#ui .so-hangar .so-lobby-identity p{font-size:9px}#ui .so-hangar .so-cta{left:12px;right:12px;width:auto;bottom:22px;gap:8px}#ui .so-hangar .so-sortie{width:38%}#ui .so-hangar .so-lobby-progress{display:none}#ui .so-research-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}#ui .so-research-card{height:174px;min-height:174px}#ui .so-research-image{height:145px}#ui .so-research-card>b{font-size:20px}#ui .so-research-card>span.so-card-role{display:none}#ui .so-research-window{padding:12px}#ui .so-research-window .so-modal-head h1{font-size:25px}#ui .so-aircraft-filters{gap:5px;margin-bottom:12px}#ui .so-aircraft-filters button{font-size:12px;padding:6px 9px}}
/* Branching research and per-aircraft mods share the arcade collection styling. */
#ui .so-hangar .so-details-toggle,#ui .so-hangar.details-hidden .so-details-toggle{top:486px}
#ui .so-tree-window{display:flex;flex-direction:column;gap:8px}
#ui .so-tree-help{font:13px var(--font-ui);color:#c4dcff;margin:0 0 6px}
#ui .so-tree-scroll{overflow:auto;flex:1;min-height:0;scrollbar-color:#71a8ea #153870}
#ui .so-tree-canvas{position:relative;display:grid;grid-auto-flow:column;grid-auto-columns:190px;gap:54px;width:max-content;min-height:100%;padding:5px 18px 25px;box-sizing:content-box}
#ui .so-tree-column{display:flex;flex-direction:column;gap:24px;position:relative;z-index:1}
#ui .so-tree-column h2{position:sticky;top:0;background:#153774;z-index:3;font:18px var(--font-display);text-align:center;padding:10px 0;margin:0;color:#dbeaff;border-radius:5px}
#ui .so-tree-node{position:relative;height:127px;flex-shrink:0;border:3px solid #101d40;border-top-color:#8bafe5;border-radius:6px;background:linear-gradient(145deg,#4872af,#244877);color:#fff;box-shadow:0 4px #0e2049;text-align:left;padding:72px 10px 6px;overflow:hidden;cursor:pointer}
#ui .so-tree-node b{font:20px var(--font-display);display:block;text-shadow:1px 2px #182847;position:relative}
#ui .so-tree-node small{font:700 10px var(--font-ui);color:#ffdc62;position:relative}
#ui .so-tree-node em{position:absolute;top:7px;right:6px;font:700 8px var(--font-ui);background:#132948;padding:4px;color:#bfe0ff}
#ui .so-tree-node.is-owned{background:linear-gradient(145deg,#3d978e,#205c69)}
#ui .so-tree-node.is-owned small{color:#a4fbd0}
#ui .so-tree-node.is-ready{border-color:#ffe166}
#ui .so-tree-node.is-selected{outline:3px solid #ffdb53;outline-offset:3px}
#ui .so-tree-portrait{position:absolute;left:0;right:0;top:-22px;height:134px;pointer-events:none}
#ui .so-tree-portrait img{width:100%;height:100%;object-fit:contain}
#ui .so-tree-links{position:absolute;left:0;top:0;pointer-events:none;overflow:visible}
#ui .so-tree-links path{fill:none;stroke:#779ace;stroke-width:2;opacity:.55}
#ui .so-tree-links path.is-open{stroke:#85efbd;opacity:.8}
#ui .so-tree-links path.is-selected{stroke:#ffe562;stroke-width:4;opacity:1}
#ui .so-tree-detail{display:flex;gap:12px;align-items:center;background:#102951;border:2px solid #5c87bb;border-radius:6px;padding:12px 16px;flex-wrap:wrap}
#ui .so-tree-detail>div{flex:1;min-width:170px}#ui .so-tree-detail b{font:21px var(--font-display);color:white}#ui .so-tree-detail p{font:12px var(--font-ui);color:#c0d7fa;margin:4px 0}#ui .so-tree-detail small{font:700 10px var(--font-ui);color:#ffe573}
#ui .so-tree-detail .so-btn{font:700 12px var(--font-ui);padding:10px 14px;height:auto;min-height:38px}
#ui .so-tree-search-results{display:flex;flex-wrap:wrap;gap:8px;max-height:120px;overflow:auto}#ui .so-tree-search-results button{padding:8px;background:#3969a9;color:white;border:1px solid #8abbff;border-radius:4px}
#ui .so-modifications{background:#071033dd;padding:20px}
#ui .so-mod-window{display:flex;flex-direction:column;height:auto;max-height:94vh;overflow:auto;max-width:1100px}
#ui .so-mod-stock{background:#155f68;color:#b7ffdf;font:700 14px/1.5 var(--font-ui);padding:14px;border:2px solid #39a59f;border-radius:6px}
#ui .so-mod-explain{color:#c2dcff;font:14px/1.5 var(--font-ui);margin:5px 0 12px}
#ui .so-mod-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:15px 0}
#ui .so-mod-card{padding:18px 15px;display:flex;flex-direction:column;gap:12px;background:linear-gradient(145deg,#436da8,#213d73);border:3px solid #112044;border-top-color:#9cbbe4;border-radius:6px;color:white}
#ui .so-mod-card.is-installed{border-color:#75e8b3;background:linear-gradient(145deg,#338c82,#1e4c67)}
#ui .so-mod-card>svg{width:35px;height:35px;color:#ffe377}#ui .so-mod-card h2{font:21px var(--font-display);margin:0}#ui .so-mod-card p{font:13px/1.4 var(--font-ui);margin:0;flex:1;color:#d8e8ff}#ui .so-mod-card small{font:700 11px var(--font-ui);color:#ffdf68}#ui .so-mod-card button{font:700 11px var(--font-ui);padding:8px;height:40px}
#ui .so-mod-summary{display:flex;gap:20px;flex-wrap:wrap;background:#102951;padding:17px;border-radius:6px;font:13px var(--font-ui);color:#c6e2ff}#ui .so-mod-summary b{color:#b7ffd4}
@media(max-height:760px){#ui .so-hangar .so-details-toggle,#ui .so-hangar.details-hidden .so-details-toggle{top:387px}#ui .so-tree-detail{padding:8px}#ui .so-tree-detail b{font-size:17px}}
@media(max-width:760px){#ui .so-hangar .so-details-toggle,#ui .so-hangar.details-hidden .so-details-toggle{top:378px}#ui .so-mod-grid{grid-template-columns:repeat(2,1fr)}#ui .so-tree-detail .so-btn{font-size:10px;padding:7px}#ui .so-tree-help{font-size:11px}}
#ui .so-sweep-demo{position:absolute;left:50%;transform:translateX(-50%);bottom:150px;z-index:5;display:flex;align-items:center;gap:12px;padding:12px 16px;background:#13284bea;border:2px solid #79a5d7;border-radius:6px;color:#d8eaff;font:11px var(--font-ui)}
#ui .so-sweep-demo[hidden]{display:none}#ui .so-sweep-demo input{width:120px;accent-color:#ffcf4c}#ui .so-sweep-demo button{padding:8px;background:#ffce4e;color:#192443;border:2px solid #162747;border-radius:4px;font:700 11px var(--font-ui);white-space:nowrap}
@media(max-height:760px){#ui .so-sweep-demo{bottom:115px;padding:7px 10px;gap:8px}#ui .so-sweep-demo b{max-width:90px;font-size:10px}}
#ui .so-wcard[aria-disabled=true]{opacity:.6}

/* Rounded arcade type: broad titles, quiet metadata, readable controls. */
#ui{font-synthesis:none;font-optical-sizing:auto;font-weight:600}
#ui .so-logo,#ui .so-brand b,#ui .so-lobby-identity h1,#ui .so-loading-title{font-weight:400;letter-spacing:0;font-style:normal;paint-order:stroke fill}
#ui .so-hangar .so-brand b{font-size:38px;-webkit-text-stroke:3px #0b1530;text-shadow:0 4px #0b1530;transform:rotate(-3deg)}
#ui .so-lobby-identity h1{-webkit-text-stroke:4px #101938;text-shadow:0 4px #101938;line-height:1.12;letter-spacing:.005em}
#ui .so-lobby-identity p{font-family:var(--font-ui);font-size:12px;font-weight:800;letter-spacing:.04em;margin-top:5px}
#ui .so-lobby-rank{font-family:var(--font-ui);font-weight:900;letter-spacing:0;text-shadow:0 1px #18213a}
#ui .so-hangar .so-lobby-button,#ui .so-hangar .so-quick-actions button,#ui .so-hangar .so-details-toggle{font-weight:400;letter-spacing:0;line-height:1.08;text-align:center;paint-order:stroke fill;-webkit-text-stroke:2px #111c34;text-shadow:0 2px #111c34}
#ui .so-hangar .so-switch{font-weight:900;letter-spacing:.025em}
#ui .so-hangar .so-sortie-label{font-weight:400;font-size:46px;letter-spacing:.015em;paint-order:stroke fill;-webkit-text-stroke:4px #11162b;text-shadow:0 3px #11162b;margin:0}
#ui .so-hangar .so-sortie-label--md{font-size:26px}#ui .so-hangar .so-sortie-label--sm{font-size:20px;-webkit-text-stroke:2px #11162b}
#ui .so-hangar .so-cta-line>b{font-size:25px;letter-spacing:.015em;font-weight:400;line-height:1.12;paint-order:stroke fill;-webkit-text-stroke:2px #10182e;text-shadow:0 2px #10182e}
#ui .so-hangar .so-cta-line>span{font-family:var(--font-ui);font-size:12px;letter-spacing:0;font-weight:800}
#ui .so-hangar .so-goal b{font-weight:400;letter-spacing:0;paint-order:stroke fill;-webkit-text-stroke:2px #251a46}
#ui .so-hangar .so-goal-k{font-family:var(--font-ui);font-size:11px;font-weight:900;letter-spacing:.07em}
#ui .so-research-window .so-modal-head h1{font-weight:400;letter-spacing:0;font-style:normal;paint-order:stroke fill;-webkit-text-stroke:2px #101937;text-shadow:0 3px #101937}
#ui .so-tree-node b,#ui .so-research-card>b{font-weight:400;letter-spacing:0;paint-order:stroke fill;-webkit-text-stroke:2px #14274c;text-shadow:0 2px #14274c}
#ui .so-tree-help,#ui .so-mod-explain{font-weight:650;line-height:1.5}
#ui .so-tree-node small,#ui .so-tree-detail p{font-size:12px;letter-spacing:0}
#ui .so-aircraft-filters button{font-weight:400;letter-spacing:0}
#ui .so-mod-card h2{font-weight:400;font-size:20px;line-height:1.1;letter-spacing:0}
#ui .so-mod-card p{font-weight:600;font-size:14px;line-height:1.45}
#ui .so-btn,#ui .so-mi-label{letter-spacing:.035em;font-weight:400}
#ui .so-btn{font-family:var(--font-display)}
#ui .so-sec-k,#ui .so-kicker{letter-spacing:.08em}
#ui .so-modal-head h1,#ui .so-pause h1{font-family:var(--font-display);font-weight:400;letter-spacing:0}
#boot .boot-kicker,#boot .boot-tag{font-family:var(--font-ui);font-weight:800;letter-spacing:.07em}
#boot .t{paint-order:stroke fill;-webkit-text-stroke:4px #11162b;text-shadow:0 6px #11162b}
@media(max-height:760px){#ui .so-hangar .so-brand b{font-size:32px}#ui .so-hangar .so-sortie-label{font-size:38px}#ui .so-hangar .so-sortie-label--sm{font-size:18px}#ui .so-hangar .so-cta-line>b{font-size:21px}#ui .so-lobby-identity p{font-size:11px}}
@media(max-width:760px){#ui .so-hangar .so-brand b{font-size:28px}#ui .so-lobby-identity h1{-webkit-text-stroke:3px #101938}#ui .so-hangar .so-lobby-button,#ui .so-hangar .so-quick-actions button{font-size:13px}#ui .so-hangar .so-sortie-label{font-size:34px}#ui .so-hangar .so-sortie-label--sm{font-size:17px}}

#ui .so-title-menu .so-mi-label{color:#fff;paint-order:stroke fill;-webkit-text-stroke:1.5px #152240;text-shadow:0 2px #152240}
#ui .so-title-menu .so-mi-sub{font-size:11px;letter-spacing:0;line-height:1.4}
