:root{
--bg:#0d1f2d;--bg-panel:#142436;--bg-header:#0e1e2c;--bg-input:#172a3c;--border:#1e4a68;--border-highlight:#2a7aa8;--border-subtle:rgba(13,48,72,.5);--accent:#00b4d8;--accent-dim:#0088b0;--success:#30d060;--warn:#ffa020;--danger:#e04040;--player-self:#00e676;--energy-bar:#d6b642;--cargo-bar:#6fa8b8;--text:#a8ccd8;--text-muted:#7aaabb;--text-bright:#d0eaf8;--text-accent:#00c8e8;--tint-accent-scanline:rgba(0,180,216,.013);--tint-accent-faint:rgba(0,180,216,.04);--tint-accent-subtle:rgba(0,180,216,.05);--tint-accent-chip:rgba(0,180,216,.07);--tint-accent-alert:rgba(0,180,216,.09);--tint-accent-btn:rgba(0,180,216,.14);--tint-accent-btn-hov:rgba(0,180,216,.26);--tint-danger-alert:rgba(224,64,64,.09);--tint-danger-btn:rgba(224,64,64,.11);--tint-danger-btn-hov:rgba(224,64,64,.22);--tint-warn-chip:rgba(255,160,32,.07);--tint-warn-btn:rgba(255,160,32,.11);--tint-warn-btn-hov:rgba(255,160,32,.22);--tint-success-alert:rgba(48,208,96,.09);--scrim-heavy:rgba(13,31,45,.88);--scrim-modal:rgba(13,31,45,.82);--scrim-drawer:rgba(13,31,45,.70);--scrim-sheet:rgba(0,0,0,.55);--font-mono:Consolas,"Lucida Console",Monaco,monospace;--header-height:48px;--tab-height:54px;--radius:3px;--z-sticky:10;--z-alert:90;--z-overlay:200;--z-drawer:300;--z-modal:400;
}
*,*::before,*::after{
box-sizing:border-box;margin:0;padding:0;
}
html,body{
height:100%;overflow:hidden;overscroll-behavior:none;background:var(--bg);color:var(--text);font-family:var(--font-mono);font-size:13px;line-height:1.5;-webkit-font-smoothing:antialiased;
}
#app{
display:flex;flex-direction:column;position:fixed;top:0;bottom:0;left:0;right:0;background:var(--bg);background-image:repeating-linear-gradient(0deg,transparent,transparent 3px,var(--tint-accent-scanline)3px,var(--tint-accent-scanline)4px);
}
header{
display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:0 12px;height:var(--header-height);background:var(--bg-header);border-bottom:1px solid var(--border);flex-shrink:0;position:relative;z-index:var(--z-sticky);
}
.account-menu{
position:relative;
}
.title{
font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--text-accent);background:transparent;border:1px solid var(--border);padding:5px 10px;border-radius:var(--radius);cursor:pointer;transition:border-color .15s,color .15s;
}
.title:hover:not(:disabled){
border-color:var(--accent);color:var(--text-bright);
}
.title:disabled{
opacity:.3;cursor:default;
}
.account-dropdown{
display:none;position:absolute;top:calc(100% + 6px);right:0;min-width:160px;background:var(--bg-panel);border:1px solid var(--border-highlight);border-radius:var(--radius);z-index:var(--z-overlay);overflow:hidden;
}
.account-menu.open .account-dropdown{
display:block;
}
.account-dropdown button{
display:block;width:100%;padding:10px 14px;background:transparent;border:none;border-bottom:1px solid var(--border);color:var(--text);font-family:var(--font-mono);font-size:11px;letter-spacing:0.08em;text-transform:uppercase;text-align:left;cursor:pointer;transition:background .12s,color .12s;
}
.account-dropdown button:last-child{
border-bottom:none;
}
.account-dropdown button:hover{
background:var(--border);color:var(--text-accent);
}
.account-dropdown button .rts-icon{
width:14px;height:14px;margin-right:6px;vertical-align:-2px;
}
#bell-btn,#mission-btn,#rankings-btn{
position:relative;background:transparent;border:1px solid var(--border);color:var(--text-muted);width:36px;height:36px;border-radius:var(--radius);cursor:pointer;font-size:15px;display:flex;align-items:center;justify-content:center;transition:border-color .15s,color .15s;
}
#bell-btn:hover,#mission-btn:hover,#rankings-btn:hover{
border-color:var(--accent);color:var(--text-accent);
}
#bell-btn.has-unread{
border-color:var(--warn);color:var(--warn);
}
#mission-btn.has-objective{
border-color:var(--success);color:var(--success);
}
#bell-count,#mission-dot{
display:none;position:absolute;top:-5px;right:-5px;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:var(--warn);color:#060606;border:1px solid #000;box-shadow:0 0 0 1px rgba(255,255,255,.16),0 0 7px rgba(255,160,32,.45);font-size:8px;font-weight:700;line-height:16px;text-align:center;letter-spacing:0;font-variant-numeric:tabular-nums;text-shadow:none;z-index:2;pointer-events:none;transform:translateZ(0);
}
#mission-dot{
top:5px;right:5px;min-width:7px;width:7px;height:7px;padding:0;border-radius:50%;background:var(--success);box-shadow:0 0 0 1px rgba(0,0,0,.9),0 0 7px rgba(48,208,96,.5);
}
#top-alert{
position:fixed;top:var(--header-height);left:0;right:0;z-index:var(--z-alert);pointer-events:none;padding:6px 10px 0;
}
#top-alert.active{
pointer-events:auto;
}
#top-alert.fading .alert{
opacity:0;transform:translateY(-8px);transition:opacity .35s,transform .35s;
}
#mission-objective-bar{
display:none;flex-shrink:0;background:linear-gradient(180deg,rgba(13,31,45,.98),rgba(6,13,20,.98));border-bottom:1px solid rgba(68,208,191,.22);padding:6px 10px;z-index:calc(var(--z-sticky) - 1);
}
#mission-objective-bar.active{
display:block;
}
.mission-objective-pill{
width:100%;min-height:38px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:6px 8px;border:1px solid rgba(68,208,191,.35);border-radius:var(--radius);background:linear-gradient(180deg,rgba(68,208,191,.12),rgba(0,0,0,.22));box-shadow:inset 1px 1px 0 rgba(255,255,255,.055),inset -1px -1px 0 rgba(0,0,0,.72);color:var(--text);font-family:var(--font-mono);text-align:left;cursor:pointer;
}
.mission-objective-pill:hover{
border-color:rgba(68,208,191,.68);background:linear-gradient(180deg,rgba(68,208,191,.18),rgba(0,0,0,.24));color:var(--text-bright);
}
.mission-objective-pill:active{
transform:translate(1px,1px);box-shadow:inset -1px -1px 0 rgba(255,255,255,.04),inset 1px 1px 0 rgba(0,0,0,.72);
}
.mission-objective-icon{
display:grid;place-items:center;width:24px;height:24px;border:1px solid rgba(48,208,96,.36);background:rgba(48,208,96,.08);color:var(--success);box-shadow:inset 1px 1px 0 rgba(255,255,255,.05),inset -1px -1px 0 rgba(0,0,0,.62);
}
.mission-objective-copy{
min-width:0;display:grid;gap:1px;
}
.mission-objective-kicker{
color:var(--success);font-size:7px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;line-height:1;
}
.mission-objective-copy strong{
min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-bright);font-size:10px;line-height:1.2;letter-spacing:.04em;text-transform:uppercase;
}
.mission-objective-cta{
max-width:34vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:4px 7px;border:1px solid rgba(68,208,191,.32);background:rgba(0,0,0,.2);color:var(--text-accent);font-size:8px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
}
.alert{
display:flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid;border-radius:var(--radius);font-size:11px;letter-spacing:0.04em;transition:opacity .2s,transform .2s;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
}
.alert-err{
background:var(--tint-danger-alert);border-color:var(--danger);color:var(--danger);
}
#main{
flex:1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;padding-bottom:10px;
}
#main:has(#map-screen){
padding-bottom:0;overflow:hidden;
}
#main::-webkit-scrollbar{
width:4px;
}
#main::-webkit-scrollbar-track{
background:var(--bg);
}
#main::-webkit-scrollbar-thumb{
background:var(--border);border-radius:2px;
}
.tab-bar{
display:flex;height:calc(var(--tab-height) + env(safe-area-inset-bottom, 0px));padding-bottom:env(safe-area-inset-bottom,0px);background:var(--bg-header);border-top:1px solid var(--border);flex-shrink:0;
}
.tab-bar button{
flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:transparent;border:none;border-top:2px solid transparent;color:var(--text-muted);font-family:var(--font-mono);font-size:8px;letter-spacing:0.1em;text-transform:uppercase;cursor:pointer;transition:color .15s,border-color .15s;padding:0;
}
.tab-bar button .icon{
font-size:18px;line-height:1;
}
.tab-bar button.active{
color:var(--text-accent);border-top-color:var(--accent);
}
.tab-bar button:hover:not(.active){
color:var(--text);
}
.section{
margin:10px 12px 0;padding:12px;background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);position:relative;
}
.card-title{
font-size:9px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-accent);border-bottom:1px solid var(--border);padding-bottom:6px;margin-bottom:8px;
}
.card-sub{
font-size:11px;color:var(--text-muted);margin-top:3px;
}
.card{
background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);padding:12px;
}
.row{
display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:5px 0;border-bottom:1px solid var(--border-subtle);
}
.row:last-child{
border-bottom:none;
}
.label{
font-size:9px;letter-spacing:0.12em;text-transform:uppercase;color:var(--text-muted);flex-shrink:0;
}
.value{
font-size:12px;color:var(--text-bright);text-align:right;word-break:break-all;
}
.chip{
display:inline-block;padding:1px 7px;border:1px solid var(--border-highlight);border-radius:2px;font-size:8px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--text-muted);background:var(--bg);white-space:nowrap;
}
.chip-accent{
border-color:var(--accent-dim);color:var(--text-accent);background:var(--tint-accent-chip);
}
.chip-warn{
border-color:var(--warn);color:var(--warn);background:var(--tint-warn-chip);
}
.btn{
display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:8px 14px;font-family:var(--font-mono);font-size:10px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;border-radius:var(--radius);cursor:pointer;transition:background .15s,border-color .15s,color .15s,opacity .15s;border:1px solid;white-space:nowrap;
}
.btn:disabled{
opacity:.35;cursor:not-allowed;
}
.btn-primary{
background:var(--tint-accent-btn);border-color:var(--accent);color:var(--text-accent);
}
.btn-primary:hover:not(:disabled){
background:var(--tint-accent-btn-hov);
}
.btn-ghost{
background:transparent;border-color:var(--border-highlight);color:var(--text);
}
.btn-ghost:hover:not(:disabled){
border-color:var(--accent);color:var(--text-accent);background:var(--tint-accent-subtle);
}
.btn-danger{
background:var(--tint-danger-btn);border-color:var(--danger);color:var(--danger);
}
.btn-danger:hover:not(:disabled){
background:var(--tint-danger-btn-hov);
}
.btn-full{
display:flex;width:100%;
}
.btn-sm{
padding:3px 8px;font-size:9px;
}
.btn .icon{
font-size:14px;
}
.action-cost{
font-size:0.78em;color:rgba(208,234,248,.76);margin-left:4px;font-variant-numeric:tabular-nums;
}
.action-cost .cost-eta{
color:var(--text-muted);margin-left:1px;
}
.action-cost .cost-ball{
width:12px;height:12px;flex-basis:12px;margin-left:2px;vertical-align:-1px;border-color:rgba(0,0,0,.78);box-shadow:inset 1px 1px 0 rgba(255,255,255,.34),inset -1px -1px 0 rgba(0,0,0,.5);
}
.form-group{
margin-bottom:12px;
}
.form-group label{
display:block;font-size:8px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--text-muted);margin-bottom:5px;
}
input[type="email"],input[type="password"],input[type="text"],input[type="number"],input[type="search"],.form-group input,.form-group select,select{
width:100%;padding:8px 10px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-bright);font-family:var(--font-mono);font-size:12px;outline:none;transition:border-color .15s;-webkit-appearance:none;appearance:none;
}
input:focus,select:focus{
border-color:var(--accent);
}
input::placeholder{
color:var(--text-muted);
}
select{
background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%234a7585'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:28px;
}
.empty-muted{
color:var(--text-muted);font-size:13px;padding:8px 0;
}
.item-row{
display:flex;align-items:center;gap:8px;padding:7px 0;border-bottom:1px solid var(--border-subtle);
}
.item-row:last-child{
border-bottom:none;
}
.item-name{
flex:1;font-size:12px;color:var(--text);
}
.item-qty{
font-size:11px;color:var(--text-muted);font-variant-numeric:tabular-nums;min-width:28px;text-align:right;flex:0 0 auto;
}
.planet-viewer{
width:250px;height:250px;border-radius:50%;overflow:hidden;background:#000;box-shadow:0 0 32px rgba(0,0,0,0.85);flex-shrink:0;
}
.planet-viewer canvas{
display:block;
}
.spinner{
display:block;width:26px;height:26px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite;margin:32px auto;
}
@keyframes spin{
to{
transform:rotate(360deg);
}
}
#screen-login{
padding:32px 20px;max-width:380px;margin:0 auto;
}
#screen-login h2{
font-size:18px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-accent);text-align:center;margin-bottom:4px;
}
.tagline{
font-size:9px;letter-spacing:0.2em;text-transform:uppercase;color:var(--text-muted);text-align:center;margin-bottom:28px;
}
#login-alert{
margin-bottom:12px;
}
#map-screen{
position:relative;height:100%;overflow:hidden;
}
#map-canvas{
position:absolute;inset:0;display:block;width:100%;height:100%;touch-action:none;background:var(--bg);
}
#map-panel{
position:absolute;bottom:0;left:0;right:0;background:var(--bg-panel);border-top:1px solid var(--border-highlight);overflow-y:auto;max-height:38vh;z-index:var(--z-sticky);transition:max-height .25s ease;
}
#map-panel.is-empty{
max-height:0;border-top-color:transparent;overflow:hidden;
}
#map-panel-handle{
width:100%;height:28px;display:flex;align-items:center;justify-content:center;touch-action:none;cursor:grab;
}
#map-panel-handle::after{
content:"";width:36px;height:4px;background:var(--border-highlight);border-radius:2px;
}
#map-panel .section{
margin:8px 10px 0;
}
#map-panel .section:last-child{
margin-bottom:10px;
}
#map-info{
padding-bottom:0;
}
#map-actions{
display:flex;flex-direction:column;gap:6px;padding:4px 0 6px;
}
#notif-drawer{
position:fixed;inset:0;z-index:var(--z-drawer);pointer-events:none;
}
#notif-drawer.open{
pointer-events:auto;
}
#notif-backdrop{
position:absolute;inset:0;background:var(--scrim-drawer);opacity:0;transition:opacity .25s;
}
#notif-drawer.open #notif-backdrop{
opacity:1;
}
#notif-panel{
position:absolute;top:0;right:0;bottom:0;width:min(320px,88vw);background:var(--bg-panel);border-left:1px solid var(--border-highlight);display:flex;flex-direction:column;transform:translateX(100%);transition:transform .28s ease;
}
#notif-drawer.open #notif-panel{
transform:translateX(0);
}
#notif-header{
border-bottom:1px solid var(--border);flex-shrink:0;
}
#notif-header h3{
color:var(--text-accent);
}
#notif-list{
flex:1;overflow-y:auto;padding:4px 0;
}
.notif-item{
padding:10px 14px;border-bottom:1px solid var(--border);font-size:12px;color:var(--text-muted);
}
.notif-item.unread{
color:var(--text);background:var(--tint-accent-faint);border-left:2px solid var(--accent-dim);padding-left:12px;
}
.notif-time{
font-size:9px;color:var(--text-muted);margin-top:3px;letter-spacing:0.06em;
}
.notif-empty{
text-align:center;padding:28px 14px;color:var(--text-muted);font-size:10px;letter-spacing:0.1em;text-transform:uppercase;
}

#myplanets-drawer{
position:fixed;inset:0;z-index:var(--z-drawer);pointer-events:none;
}
#myplanets-drawer.open{
pointer-events:auto;
}
#myplanets-backdrop{
position:absolute;inset:0;background:var(--scrim-drawer);opacity:0;transition:opacity .25s;
}
#myplanets-drawer.open #myplanets-backdrop{
opacity:1;
}
#myplanets-panel{
position:absolute;top:0;left:0;bottom:0;width:min(390px,94vw);background:var(--bg-panel);border-right:1px solid var(--border-highlight);display:flex;flex-direction:column;transform:translateX(-100%);transition:transform .28s ease;
}
#myplanets-drawer.open #myplanets-panel{
transform:translateX(0);
}
#myplanets-header{
border-bottom:1px solid var(--border);flex-shrink:0;
}
#myplanets-header h3{
color:var(--text-accent);
}
#myplanets-body{
flex:1;overflow-y:auto;padding:10px;
}
.myplanets-drawer-intro{
margin:0 0 10px;padding:8px;border:1px solid var(--border);background:var(--tint-accent-faint);
}
.myplanets-drawer-intro .text-muted{
font-size:10px;line-height:1.35;
}
.myplanets-drawer-state{
padding:28px 12px;text-align:center;color:var(--text-muted);font-size:10px;letter-spacing:.1em;text-transform:uppercase;
}
.myplanets-count{
color:var(--text-muted);font-weight:400;font-size:.9em;
}
#myplanets-body .myplanets-search-group{
margin-bottom:8px;
}
#myplanets-body .myplanets-table{
margin:0;
}

#leaderboard-drawer{
position:fixed;inset:0;z-index:var(--z-drawer);pointer-events:none;
}
#leaderboard-drawer.open{
pointer-events:auto;
}
#leaderboard-backdrop{
position:absolute;inset:0;background:var(--scrim-drawer);opacity:0;transition:opacity .25s;
}
#leaderboard-drawer.open #leaderboard-backdrop{
opacity:1;
}
#leaderboard-panel{
position:absolute;top:0;right:0;bottom:0;width:min(360px,92vw);background:var(--bg-panel);border-left:1px solid var(--border-highlight);display:flex;flex-direction:column;transform:translateX(100%);transition:transform .28s ease;
}
#leaderboard-drawer.open #leaderboard-panel{
transform:translateX(0);
}
#leaderboard-header{
border-bottom:1px solid var(--border);flex-shrink:0;
}
#leaderboard-header h3{
color:var(--text-accent);
}
#leaderboard-body{
flex:1;min-height:0;overflow-y:auto;padding:10px;
}
.leaderboard-drawer-intro{
margin:0 0 10px;padding:8px;border:1px solid var(--border);background:var(--tint-accent-faint);
}
.leaderboard-drawer-intro .text-muted{
font-size:10px;line-height:1.35;
}
.leaderboard-drawer-state{
padding:28px 12px;text-align:center;color:var(--text-muted);font-size:10px;letter-spacing:.1em;text-transform:uppercase;
}
#leaderboard-body .leaderboard-search-group{
position:sticky;top:0;z-index:1;margin:0 0 8px;padding-bottom:8px;background:var(--bg-panel);
}
#leaderboard-body .leaderboard-table{
margin:0;
}

#mission-drawer{
position:fixed;inset:0;z-index:var(--z-drawer);pointer-events:none;
}
#mission-drawer.open{
pointer-events:auto;
}
#mission-backdrop{
position:absolute;inset:0;background:var(--scrim-drawer);opacity:0;transition:opacity .25s;
}
#mission-drawer.open #mission-backdrop{
opacity:1;
}
#mission-panel{
position:absolute;top:0;right:0;bottom:0;width:min(340px,90vw);background:var(--bg-panel);border-left:1px solid var(--border-highlight);display:flex;flex-direction:column;transform:translateX(100%);transition:transform .28s ease;
}
#mission-drawer.open #mission-panel{
transform:translateX(0);
}
#mission-header{
border-bottom:1px solid var(--border);flex-shrink:0;
}
#mission-header h3{
color:var(--text-accent);
}
#mission-body{
flex:1;overflow-y:auto;padding:14px;
}
.mission-briefing{
border:1px solid rgba(48,208,96,.46);background:linear-gradient(180deg,rgba(48,208,96,.055),rgba(0,180,216,.035)),rgba(0,0,0,.12);padding:12px;box-shadow:inset 1px 1px 0 rgba(255,255,255,.06),inset -2px -2px 0 rgba(0,0,0,.5);
}
.mission-kicker{
display:flex;align-items:center;margin-bottom:8px;
}
.mission-title{
color:var(--text-bright);font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;margin-bottom:6px;
}
.mission-copy{
color:rgba(208,234,248,.84);font-size:11px;line-height:1.45;margin-bottom:10px;
}
.mission-checklist{
display:grid;grid-template-columns:1fr;gap:6px;margin:10px 0 12px;
}
.mission-check{
display:flex;align-items:center;gap:6px;min-width:0;min-height:26px;padding:4px 6px;background:rgba(0,0,0,.15);border:1px solid rgba(122,170,187,.22);color:rgba(168,204,216,.72);font-size:8.5px;letter-spacing:.06em;text-transform:uppercase;
}
.mission-check span:last-child{
overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.mission-check.done{
color:rgba(191,255,208,.9);border-color:rgba(48,208,96,.42);background:rgba(48,208,96,.065);
}
.mission-check .rts-icon{
width:12px;height:12px;flex:0 0 12px;color:var(--success);
}
.mission-dot{
width:8px;height:8px;flex:0 0 8px;border:1px solid rgba(122,170,187,.54);background:rgba(0,0,0,.3);
}
.mission-cta{
min-height:34px;
}
.mission-empty{
text-align:center;padding:28px 12px;color:var(--text-muted);font-size:10px;letter-spacing:0.1em;text-transform:uppercase;
}
.mission-empty-title{
color:var(--text-bright);margin-bottom:6px;
}
.mission-empty-copy{
color:var(--text-muted);font-size:9px;
}
#transfer-modal{
display:none;position:fixed;inset:0;z-index:var(--z-modal);align-items:center;justify-content:center;background:var(--scrim-modal);
}
#transfer-modal.open{
display:flex;
}
#transfer-box{
background:var(--bg-panel);border:1px solid var(--border-highlight);border-radius:var(--radius);padding:20px;width:min(320px,90vw);position:relative;
}
#transfer-title{
font-size:9px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-accent);margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid var(--border);
}
#dm-modal{
display:none;position:fixed;inset:0;z-index:var(--z-modal);align-items:center;justify-content:center;background:var(--scrim-modal);
}
#dm-modal.open{
display:flex;
}
#dm-box{
background:var(--bg-panel);border:1px solid var(--border-highlight);border-radius:var(--radius);padding:20px;width:min(360px,92vw);position:relative;display:flex;flex-direction:column;gap:10px;
}
#dm-box::before{
content:"";position:absolute;top:-1px;left:-1px;width:12px;height:12px;border-top:2px solid var(--accent);border-left:2px solid var(--accent);
}
#dm-title{
font-size:9px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-accent);padding-bottom:8px;border-bottom:1px solid var(--border);
}
#dm-history{
max-height:220px;overflow-y:auto;display:flex;flex-direction:column;gap:6px;font-size:11px;
}
.dm-msg{
display:flex;flex-direction:column;gap:2px;
}
.dm-msg-meta{
font-size:9px;color:var(--text-muted);
}
.dm-msg-text{
color:var(--text);word-break:break-word;
}
.dm-msg.dm-mine .dm-msg-meta{
text-align:right;
}
.dm-msg.dm-mine .dm-msg-text{
text-align:right;color:var(--text-accent);
}
#dm-compose{
display:flex;gap:6px;
}
#dm-input{
flex:1;font-size:11px;
}
.text-muted{
color:var(--text-muted);
}
.entity-name{
font-weight:700;font-size:17px;
}
.text-self{
color:var(--player-self);font-weight:700;
}
.text-self-sm{
color:var(--player-self);font-size:0.8em;
}
.section-compact{
padding:10px 14px;margin-bottom:6px;
}
:root{
--bg:#05070a;--bg-panel:#18202a;--bg-header:#101821;--bg-input:#070d12;--metal-0:#05070a;--metal-1:#111820;--metal-2:#25313c;--metal-3:#394858;--metal-4:#6b7b83;--panel-bg:#151d25;--panel-inset:#071016;--panel-screen:#061a1d;--border:#56636a;--border-highlight:#a2a98f;--border-subtle:rgba(158,167,147,.18);--bevel-hi:#9ea78f;--bevel-mid:#4d5a60;--bevel-lo:#07090c;--shadow-hard:#000;--accent:#44d0bf;--accent-dim:#208477;--success:#72c050;--warn:#d69a2d;--danger:#bf3e2d;--player-self:#86e070;--text:#c2c8ad;--text-muted:#7d897f;--text-bright:#f0f4cf;--text-accent:#65e4d2;--tint-accent-scanline:rgba(88,242,216,.035);--tint-accent-faint:rgba(74,200,180,.08);--tint-accent-subtle:rgba(74,200,180,.12);--tint-accent-chip:rgba(74,200,180,.16);--tint-accent-alert:rgba(74,200,180,.14);--tint-accent-btn:rgba(38,102,96,.65);--tint-accent-btn-hov:rgba(58,132,124,.82);--tint-danger-alert:rgba(160,52,38,.22);--tint-danger-btn:rgba(116,42,34,.72);--tint-danger-btn-hov:rgba(168,58,44,.9);--tint-warn-chip:rgba(214,154,45,.18);--tint-warn-btn:rgba(128,86,26,.76);--tint-warn-btn-hov:rgba(178,120,32,.95);--tint-success-alert:rgba(87,156,68,.20);--scrim-heavy:rgba(4,6,8,.92);--scrim-modal:rgba(3,5,7,.86);--scrim-drawer:rgba(3,5,7,.76);--scrim-sheet:rgba(0,0,0,.68);--font-mono:Consolas,"Lucida Console",Monaco,monospace;--radius:0;--icon-size:16px;--icon-size-lg:20px;--tap-min:44px;--rivet-size:3px;--panel-gradient:linear-gradient(180deg,#202b34 0%,#121a22 58%,#0a1016 100%);--panel-surface:linear-gradient(180deg,rgba(21,31,39,.96),rgba(7,12,17,.98));--screen-gradient:linear-gradient(180deg,rgba(18,54,58,.28),rgba(3,14,17,.9));--dither:linear-gradient(180deg,rgba(255,255,255,.018),rgba(0,0,0,.035));
}
html,body{
image-rendering:pixelated;text-rendering:geometricPrecision;
}
body{
background:#000;
}
#app{
background:radial-gradient(circle at 50% -20%,rgba(51,87,94,.28),transparent 42%),linear-gradient(180deg,#070b10 0%,#030507 100%);background-blend-mode:normal;
}
#app::before{
content:"";position:fixed;inset:0;pointer-events:none;z-index:9999;background:repeating-linear-gradient(0deg,rgba(255,255,255,.025)0 1px,transparent 1px 3px),radial-gradient(circle at 50% 50%,transparent 55%,rgba(0,0,0,.40)100%);mix-blend-mode:screen;opacity:.5;
}
#app::after{
content:"";position:fixed;inset:0;pointer-events:none;z-index:9998;background-image:linear-gradient(rgba(68,208,191,.035)1px,transparent 1px),linear-gradient(90deg,rgba(68,208,191,.028)1px,transparent 1px);background-size:24px 24px;opacity:.45;
}
.rts-sprite{
position:absolute;width:0;height:0;overflow:hidden;
}
.rts-icon{
width:var(--icon-size);height:var(--icon-size);display:inline-block;flex:0 0 auto;fill:currentColor;color:currentColor;vertical-align:-0.18em;filter:drop-shadow(1px 1px 0 #000);image-rendering:pixelated;
}
.entity-name .rts-icon,#screen-login h2 .rts-icon{
width:var(--icon-size-lg);height:var(--icon-size-lg);color:var(--accent);
}
.icon-muted{
color:var(--text-muted);
}
header,.tab-bar,#myplanets-header,#leaderboard-header,#notif-header,#mission-header{
background:var(--panel-gradient),var(--dither);border-color:var(--bevel-lo)var(--bevel-lo)var(--bevel-hi)var(--bevel-hi);box-shadow:inset 0 1px 0 var(--bevel-hi),inset 0 -2px 0 var(--bevel-lo),0 2px 0 #000;
}
header::before,.tab-bar::before{
display:none;
}
.title,.btn,#bell-btn,#mission-btn,#rankings-btn,.account-dropdown button,input,select,.form-group input,.form-group select{
min-height:var(--tap-min);border-radius:0;text-shadow:1px 1px 0 #000;box-shadow:inset 1px 1px 0 var(--bevel-hi),inset -2px -2px 0 var(--bevel-lo),2px 2px 0 rgba(0,0,0,.65);-webkit-tap-highlight-color:transparent;
}
.title,.btn,#bell-btn,#mission-btn,#rankings-btn{
background:linear-gradient(180deg,#36434e 0%,#202a33 45%,#0b1117 46%,#1e2b32 100%);border:1px solid var(--bevel-mid);color:var(--text-bright);
}
.btn:hover:not(:disabled),.title:hover:not(:disabled),#bell-btn:hover,#mission-btn:hover,#rankings-btn:hover{
color:var(--text-accent);border-color:var(--accent-dim);filter:brightness(1.16);
}
.btn:active:not(:disabled),.title:active:not(:disabled),#bell-btn:active,#mission-btn:active,#rankings-btn:active{
transform:translate(1px,1px);box-shadow:inset -1px -1px 0 var(--bevel-hi),inset 2px 2px 0 var(--bevel-lo),1px 1px 0 rgba(0,0,0,.5);
}
.btn:disabled{
filter:grayscale(1)brightness(.55);color:#596366;opacity:.9;
}
.btn-primary{
background:linear-gradient(180deg,#326a65,#153c3d 48%,#071416 49%,#1d5852);border-color:#4cc8b7;color:#b9fff2;
}
.btn-danger{
background:linear-gradient(180deg,#743126,#39150f 48%,#130706 49%,#5a2118);border-color:var(--danger);color:#ffd0c9;
}
.btn-ghost{
background:linear-gradient(180deg,#2f3a43,#182029 48%,#070b10 49%,#202a33);border-color:var(--bevel-mid);color:var(--text);
}
.btn .rts-icon,.btn svg{
margin-right:4px;
}
.btn-sm{
min-height:34px;padding:4px 9px;font-size:9px;
}
.tab-bar{
position:relative;border-top:2px solid var(--bevel-hi);
}
.tab-bar button{
min-height:54px;background:linear-gradient(180deg,rgba(81,95,104,.28),rgba(10,15,20,.65));border-left:1px solid rgba(255,255,255,.10);border-right:1px solid rgba(0,0,0,.75);border-top:0;color:#879188;
}
.tab-bar button .rts-icon{
width:19px;height:19px;margin-bottom:2px;
}
.tab-bar button.active{
color:#bffff4;background:linear-gradient(180deg,rgba(36,112,105,.82),rgba(8,32,34,.95));box-shadow:inset 0 3px 0 var(--accent),inset 0 -2px 0 #000;
}
.section,.card,#transfer-box,#notif-panel,#mission-panel,.account-dropdown,#map-panel{
background:var(--panel-gradient),var(--dither);border:2px solid;border-color:var(--bevel-hi)var(--bevel-lo)var(--bevel-lo)var(--bevel-hi);border-radius:0;box-shadow:inset 2px 2px 0 rgba(255,255,255,.07),inset -3px -3px 0 rgba(0,0,0,.72),0 3px 0 rgba(0,0,0,.7);
}
.section{
padding:14px;
}
.card,#transfer-box{
position:relative;
}
.card-title,#transfer-title-title,#leaderboard-header h3,#notif-header h3,#mission-header h3{
color:var(--text-accent);background:var(--screen-gradient),repeating-linear-gradient(90deg,rgba(255,255,255,.035)0 1px,transparent 1px 3px);border:1px solid var(--accent-dim);box-shadow:inset 1px 1px 0 rgba(144,255,238,.18),inset -1px -1px 0 #000;padding:7px 9px;margin:-2px -2px 10px;letter-spacing:.09em;display:flex;align-items:center;gap:6px;
}
.row{
background:linear-gradient(90deg,rgba(5,10,13,.55),rgba(29,42,50,.20));border-bottom:1px solid rgba(0,0,0,.75);box-shadow:inset 0 1px 0 rgba(255,255,255,.035);padding:7px 6px;
}
.label{
color:#8d9b8f;
}
.value{
color:#edf4c9;
}
.chip,.capital-badge{
display:inline-flex;align-items:center;gap:4px;min-height:20px;padding:2px 7px;border-radius:0;border:1px solid var(--bevel-mid);background:linear-gradient(180deg,#202932,#070d12);box-shadow:inset 1px 1px 0 rgba(255,255,255,.10),inset -1px -1px 0 #000;font-size:9px;letter-spacing:.06em;color:var(--text-bright);text-transform:uppercase;white-space:nowrap;
}
.chip-accent{
border-color:var(--accent-dim);color:var(--text-accent);
}
.chip-warn,.capital-badge{
border-color:var(--warn);color:#ffd37c;background:linear-gradient(180deg,#3a2d15,#100b04);
}
.ball-swatch{
display:inline-block;width:10px;height:10px;flex:0 0 10px;border-radius:50%;border:1px solid rgba(0,0,0,.72);box-shadow:inset 1px 1px 0 rgba(255,255,255,.28),inset -1px -1px 0 rgba(0,0,0,.42);image-rendering:pixelated;
}
.ball-red{
background:radial-gradient(circle at 35% 35%,#f4ada3 0 18%,#d95041 19% 62%,#7f1b16 63% 100%);
}
.ball-yellow{
background:radial-gradient(circle at 35% 35%,#f0e0a6 0 18%,#d6b642 19% 62%,#7c6516 63% 100%);
}
.ball-orange{
background:radial-gradient(circle at 35% 35%,#f2c29b 0 18%,#d77c35 19% 62%,#8a4314 63% 100%);
}
.ball-blue{
background:radial-gradient(circle at 35% 35%,#a8c8ef 0 18%,#4d8fd8 19% 62%,#1d4f88 63% 100%);
}
.ball-green{
background:radial-gradient(circle at 35% 35%,#b9deae 0 18%,#70bd58 19% 62%,#2f6c25 63% 100%);
}
.ball-purple{
background:radial-gradient(circle at 35% 35%,#d6b7ea 0 18%,#a569c9 19% 62%,#61317c 63% 100%);
}
.row .ball-swatch,.action-cost .ball-swatch{
vertical-align:-1px;
}
input[type="email"],input[type="password"],input[type="text"],input[type="number"],input[type="search"],.form-group input,.form-group select,select{
background:var(--panel-screen),var(--dither);color:var(--text-bright);border:2px solid;border-color:var(--bevel-lo)var(--bevel-hi)var(--bevel-hi)var(--bevel-lo);box-shadow:inset 2px 2px 0 #000,inset -1px -1px 0 rgba(116,208,194,.12);
}
input:focus,select:focus{
outline:1px solid var(--accent);border-color:var(--bevel-lo)var(--accent-dim)var(--accent-dim)var(--bevel-lo);
}
.item-row{
min-height:42px;background:rgba(5,10,13,.36);padding:8px 6px;
}
.item-name::before{
content:"";display:inline-block;width:8px;height:8px;margin-right:6px;background:linear-gradient(135deg,#9da68f,#26333b 50%,#05070a 51%);border:1px solid #000;
}
.alert{
background:var(--panel-gradient)!important;border-width:2px;border-color:var(--bevel-hi)var(--bevel-lo)var(--bevel-lo)var(--bevel-hi)!important;box-shadow:inset 2px 2px 0 rgba(255,255,255,.07),inset -2px -2px 0 #000,0 3px 0 #000;
}
.alert-err{
color:var(--danger);
}
#map-canvas{
background:radial-gradient(circle at 50% 50%,#071219,#010305 75%);
}
#map-panel-handle::after{
width:44px;height:6px;border-radius:3px;background:linear-gradient(180deg,#56646c,#1a2328 68%);border:1px solid #000;box-shadow:inset 1px 1px 0 rgba(255,255,255,.16),inset -1px -1px 0 rgba(0,0,0,.58);
}
.planet-viewer{
border:3px solid;border-color:var(--bevel-lo)var(--bevel-hi)var(--bevel-hi)var(--bevel-lo);box-shadow:inset 0 0 30px #000,0 0 18px rgba(68,208,191,.16),0 0 0 6px #101820;
}
#screen-login{
margin-top:18px;border:2px solid;border-color:var(--bevel-hi)var(--bevel-lo)var(--bevel-lo)var(--bevel-hi);background:var(--panel-gradient),var(--dither);box-shadow:inset 2px 2px 0 rgba(255,255,255,.07),inset -3px -3px 0 rgba(0,0,0,.72),0 6px 0 #000;
}
#screen-login h2{
display:flex;align-items:center;justify-content:center;gap:8px;color:var(--text-bright);text-shadow:0 0 8px rgba(68,208,191,.55),2px 2px 0 #000;
}
.tagline::before,.tagline::after{
content:" ▬ ";color:var(--warn);
}
#bell-btn.has-unread::after{
display:none;
}
@keyframes rts-blink{
50%{
opacity:.25;
}
}
@keyframes scannerPulse{
0%{
box-shadow:inset 0 0 0 rgba(68,208,191,0);
}
50%{
box-shadow:inset 0 0 18px rgba(68,208,191,.24);
}
100%{
box-shadow:inset 0 0 0 rgba(68,208,191,0);
}
}
#map-panel,#notif-panel,#mission-panel{
animation:scannerPulse 3.5s ease-in-out infinite;
}
.icon-button{
display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;margin-left:6px;padding:0;border:1px solid var(--bevel-mid);background:linear-gradient(180deg,#303b44,#111820);color:var(--text-muted);box-shadow:inset 1px 1px 0 var(--bevel-hi),inset -1px -1px 0 #000;cursor:pointer;
}
.icon-button:hover{
color:var(--text-accent);
}
@media(max-width:390px){
.section{
margin-left:8px;margin-right:8px;padding:12px;
}
.btn{
padding-left:10px;padding-right:10px;
}
.tab-bar button{
font-size:7px;
}
}
@media(prefers-reduced-motion:reduce){
#map-panel,#myplanets-panel,#leaderboard-panel,#notif-panel,#mission-panel,#bell-btn.has-unread::after{
animation:none;
}
*{
transition-duration:.001ms !important;
}
}
#ship-modules .card-title{
margin-bottom:10px;
}
.module-grid{
display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;
}
.module-card{
min-width:0;padding:8px;background:linear-gradient(180deg,rgba(16,24,34,.92),rgba(7,12,18,.98)),var(--dither);border:2px solid;border-color:var(--bevel-hi)var(--bevel-lo)var(--bevel-lo)var(--bevel-hi);box-shadow:inset 1px 1px 0 rgba(255,255,255,.06),inset -2px -2px 0 rgba(0,0,0,.7);
}
.module-empty{
opacity:.82;
}
.module-head{
display:flex;align-items:center;justify-content:space-between;gap:6px;min-height:22px;margin-bottom:5px;
}
.module-slot{
overflow:hidden;color:var(--text-muted);font-size:8px;font-weight:700;letter-spacing:.09em;line-height:1.15;text-transform:uppercase;text-overflow:ellipsis;white-space:nowrap;
}
.module-bonus{
flex:0 0 auto;min-height:18px;padding:1px 6px;font-size:8px;
}
.module-name{
display:flex;align-items:center;gap:7px;min-height:28px;color:var(--text-bright);font-size:11px;font-weight:700;line-height:1.25;
}
.module-name span{
overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:0 1 auto;min-width:0;
}
.module-name .rts-icon{
flex:0 0 auto;width:15px;height:15px;color:var(--text-accent);
}
.module-actions{
display:grid;grid-template-columns:minmax(0,1fr)34px;gap:6px;margin-top:8px;
}
.module-empty .module-actions{
grid-template-columns:1fr;
}
.module-actions .btn{
min-height:28px;padding:3px 6px;
}
.module-upgrade{
justify-content:center;overflow:hidden;
}
.module-upgrade .action-cost{
margin-left:2px;font-size:8px;
}
.module-unequip{
display:inline-flex;align-items:center;justify-content:center;width:28px;min-width:28px;min-height:28px;padding:0;
}
.module-unequip .rts-icon,.module-upgrade .rts-icon{
margin-right:0;
}
.module-unequip .rts-icon{
width:11px;height:11px;display:block;transform:translateX(.5px);
}
@media(max-width:340px){
.module-grid{
grid-template-columns:1fr;
}
}
:root{
--panel-secondary:linear-gradient(180deg,rgba(19,28,36,.72),rgba(6,10,14,.88));--panel-primary:linear-gradient(180deg,rgba(28,48,58,.96),rgba(8,18,23,.98));--line-soft:rgba(112,208,191,.12);
}
.section{
margin:8px 10px 0;padding:11px;background:var(--panel-primary),var(--dither);border:2px solid;border-color:var(--bevel-hi)var(--bevel-lo)var(--bevel-lo)var(--bevel-hi);border-radius:0;box-shadow:inset 2px 2px 0 rgba(255,255,255,.07),inset -3px -3px 0 rgba(0,0,0,.72),0 3px 0 rgba(0,0,0,.6);
}
.card-title,#transfer-title-title,#leaderboard-header h3,#notif-header h3,#mission-header h3{
min-height:24px;margin:-1px -1px 9px;padding:5px 7px;background:linear-gradient(180deg,rgba(8,24,29,.82),rgba(3,9,12,.92)),repeating-linear-gradient(90deg,rgba(255,255,255,.025)0 1px,transparent 1px 4px)!important;border-color:rgba(68,208,191,.46)!important;box-shadow:inset 1px 1px 0 rgba(144,255,238,.12),inset -1px -1px 0 rgba(0,0,0,.82)!important;color:#a9efe4 !important;font-size:8px;letter-spacing:.07em;
}
.row{
min-height:24px;padding:4px 6px !important;background:linear-gradient(90deg,rgba(5,10,13,.42),rgba(29,42,50,.12))!important;border-bottom:1px solid rgba(112,208,191,.07);
}
.row:last-child{
border-bottom:none;
}
.label{
font-size:8px;letter-spacing:.06em;text-transform:uppercase;
}
.value{
font-size:11px;
}
.btn-sm{
min-height:26px !important;padding:3px 7px !important;font-size:8px !important;letter-spacing:.07em;box-shadow:inset 1px 1px 0 rgba(255,255,255,.055),inset -1px -1px 0 rgba(0,0,0,.62),0 1px 0 rgba(0,0,0,.55)!important;
}
.btn-sm .rts-icon{
width:12px;height:12px;margin-right:3px;
}
.inventory-table{
border:1px solid rgba(68,208,191,.18);background:rgba(2,7,10,.34);
}
.inventory-head,.item-row{
display:grid !important;grid-template-columns:minmax(0,1fr)auto;align-items:center;column-gap:8px;
}
.inventory-head{
min-height:22px;padding:3px 6px;color:var(--text-muted);font-size:7px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;background:rgba(8,24,29,.72);border-bottom:1px solid rgba(68,208,191,.20);
}
.inventory-head span:nth-child(2){
text-align:right;
}
.item-row{
min-height:36px !important;padding:5px 6px !important;border-bottom:1px solid rgba(68,208,191,.10)!important;background:transparent !important;
}
.item-row:nth-child(odd){
background:rgba(255,255,255,.018)!important;
}
.inventory-item-row.item-row-actionable{
cursor:pointer;
}
.inventory-item-row.item-row-actionable:hover,.inventory-item-row.item-row-actionable:focus-visible{
outline:none;background:rgba(68,208,191,.075)!important;
}
.inventory-item-row.item-row-actionable:active{
background:rgba(68,208,191,.12)!important;
}
.item-name{
min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px !important;
}
.item-name::before{
width:6px !important;height:6px !important;margin-right:5px !important;opacity:.65;
}
.item-qty{
min-width:0 !important;color:var(--text-bright)!important;font-size:11px !important;text-align:right !important;
}
.module-grid{
gap:6px !important;
}
.module-card{
padding:7px !important;background:linear-gradient(180deg,rgba(14,22,30,.70),rgba(5,9,13,.88)),var(--dither)!important;border-width:1px !important;border-color:rgba(113,130,133,.55)rgba(0,0,0,.88)rgba(0,0,0,.9)rgba(113,130,133,.55)!important;box-shadow:inset 1px 1px 0 rgba(255,255,255,.04),inset -1px -1px 0 rgba(0,0,0,.7)!important;
}
.module-head{
min-height:18px !important;margin-bottom:3px !important;
}
.module-name{
min-height:24px !important;font-size:10px !important;gap:5px !important;
}
.module-actions{
gap:4px !important;margin-top:6px !important;grid-template-columns:minmax(0,1fr)30px !important;
}
.module-actions .btn{
min-height:25px !important;padding:2px 5px !important;
}
.module-bonus{
min-height:16px !important;padding:1px 5px !important;
}
#map-panel .section{
margin:7px 8px 0 !important;padding:9px !important;
}
#map-actions.action-grid{
gap:6px;
}
@media(max-width:390px){
.section{
margin-left:7px;margin-right:7px;padding:10px;
}
.inventory-head,.item-row{
grid-template-columns:minmax(0,1fr)auto;column-gap:5px;
}
}
.owner-profile-btn,.leaderboard-player-btn{
min-height:22px;height:22px;padding:1px 8px;font-size:10px;line-height:1;letter-spacing:.06em;display:inline-flex;align-items:center;justify-content:center;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.leaderboard-player-btn{
justify-content:flex-start;font-weight:600;width:auto;
}
.row .owner-profile-btn .rts-icon,.leaderboard-player-btn .rts-icon{
width:13px;height:13px;margin-right:3px;
}
:root{
--panel-secondary:linear-gradient(180deg,rgba(16,24,31,.58),rgba(5,8,12,.82));--line-soft:rgba(112,208,191,.085);
}
.chip,.capital-badge,.module-bonus{
min-height:16px !important;padding:1px 5px !important;font-size:7px !important;letter-spacing:.09em !important;opacity:.86;box-shadow:inset 1px 1px 0 rgba(255,255,255,.045),inset -1px -1px 0 rgba(0,0,0,.55)!important;
}
.chip-accent{
border-color:rgba(68,208,191,.38)!important;color:rgba(169,239,228,.82)!important;background:rgba(20,45,48,.38)!important;
}
.chip-warn,.capital-badge{
border-color:rgba(214,154,45,.46)!important;color:rgba(255,211,124,.82)!important;background:rgba(58,45,21,.38)!important;
}
.row{
min-height:22px !important;padding:3px 5px !important;border-bottom-color:var(--line-soft)!important;
}
.inventory-table{
border-color:rgba(68,208,191,.13)!important;background:rgba(2,7,10,.25)!important;
}
.inventory-head{
min-height:19px !important;padding:2px 6px !important;font-size:6.5px !important;color:rgba(122,170,187,.78)!important;background:rgba(8,24,29,.46)!important;border-bottom-color:rgba(68,208,191,.13)!important;
}
.item-row{
min-height:32px !important;padding:4px 6px !important;border-bottom-color:rgba(68,208,191,.075)!important;
}
.item-name{
font-size:10.5px !important;
}
.item-qty{
font-size:10px !important;color:rgba(208,234,248,.78)!important;
}
.btn-sm{
min-height:23px !important;padding:2px 6px !important;font-size:7.5px !important;letter-spacing:.08em !important;border-color:rgba(98,128,137,.56)rgba(0,0,0,.84)rgba(0,0,0,.88)rgba(98,128,137,.56)!important;color:rgba(168,204,216,.82)!important;background:linear-gradient(180deg,rgba(47,58,67,.70),rgba(12,17,22,.84))!important;
}
.module-grid{
gap:5px !important;
}
.module-card{
padding:6px !important;background:linear-gradient(180deg,rgba(14,22,30,.55),rgba(5,9,13,.78)),var(--dither)!important;
}
.module-slot{
font-size:7px !important;letter-spacing:.13em !important;
}
.module-name{
min-height:21px !important;
}
.module-name .rts-icon{
width:13px !important;height:13px !important;opacity:.78;
}
#planet-mgmt .btn{
min-height:34px;
}
.rts-icon{
display:inline-block;flex:0 0 auto;vertical-align:-0.14em;
}
.tab-bar button .rts-icon{
flex:0 0 19px;
}
.module-name .rts-icon{
flex:0 0 13px;
}
input[type="email"],input[type="password"],input[type="text"],input[type="number"],input[type="search"],.form-group input,.form-group select,select{
min-height:32px !important;padding-top:4px !important;padding-bottom:4px !important;font-size:11px !important;border-width:1px !important;box-shadow:inset 1px 1px 0 rgba(0,0,0,.88),inset -1px -1px 0 rgba(116,208,194,.08)!important;text-shadow:none !important;
}
select{
padding-right:26px !important;
}
.form-group{
margin-bottom:9px;
}
.terraform-btn{
width:28px !important;min-width:28px !important;min-height:24px !important;padding:0 !important;justify-content:center;font-size:12px !important;line-height:1;
}
.planet-biosphere-block{
margin-top:10px;padding-top:9px;border-top:1px solid rgba(112,208,191,.13);
}
.planet-biosphere-block .biosphere-health{
margin-bottom:0;padding:0;border:0;background:transparent;
}
.level-chip{
min-height:22px !important;height:22px !important;padding:2px 8px !important;display:inline-flex;align-items:center;justify-content:center;line-height:1 !important;
}
.empty-muted,.notif-empty{
color:rgba(122,170,187,.62)!important;font-size:9px !important;letter-spacing:.09em;text-transform:uppercase;font-family:var(--font-mono);
}
.empty-muted::before,.notif-empty::before{
content:">";margin-right:6px;color:rgba(68,208,191,.55);
}
.item-name-ball{
display:inline-flex;align-items:center;gap:6px;
}
.item-name-ball::before{
display:none !important;
}
.inventory-ball{
width:12px;height:12px;flex-basis:12px;
}
.inventory-table .item-name::before{
display:none !important;content:none !important;
}
.leaderboard-table{
margin-top:7px;
}
.leaderboard-head,.leaderboard-row{
display:grid !important;grid-template-columns:46px minmax(0,1fr)74px;align-items:center;column-gap:8px;
}
.leaderboard-head span:nth-child(3),.leaderboard-ascension{
text-align:right;
}
.leaderboard-row{
min-height:32px;padding:4px 6px;border-bottom:1px solid rgba(68,208,191,.075);
}
.leaderboard-row:nth-child(odd){
background:rgba(255,255,255,.018);
}
.leaderboard-row:last-child{
border-bottom:none;
}
.leaderboard-rank{
color:rgba(208,234,248,.82);font-size:10px;font-variant-numeric:tabular-nums;white-space:nowrap;
}
.leaderboard-player{
min-width:0;
}
.leaderboard-player-btn{
max-width:100%;width:100%;
}
.leaderboard-ascension{
color:rgba(208,234,248,.78);font-size:10px;font-variant-numeric:tabular-nums;white-space:nowrap;
}
.leaderboard-ascension .rts-icon,.leaderboard-rank .rts-icon{
width:12px;height:12px;margin-right:3px;vertical-align:-0.16em;
}
@media(max-width:390px){
.leaderboard-head,.leaderboard-row{
grid-template-columns:38px minmax(0,1fr)62px;column-gap:5px;
}
}
.terraform-preview-row{
display:grid;grid-template-columns:minmax(0,1fr)minmax(0,1fr);gap:6px;margin:-2px 0 8px;
}
.terraform-preview-row .terraform-preview-btn{
width:auto !important;min-width:0 !important;min-height:39px !important;padding:4px 6px !important;display:grid;grid-template-columns:18px minmax(0,1fr);grid-template-rows:14px 13px;align-items:center;column-gap:5px;line-height:1 !important;text-align:left;
}
.terraform-btn-sign{
grid-row:1 / 3;display:inline-flex;align-items:center;justify-content:center;width:18px;height:24px;color:var(--text-bright);font-size:14px;
}
.terraform-btn-change{
min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:rgba(208,234,248,.92);font-size:9px;font-variant-numeric:tabular-nums;
}
.biosphere-health{
margin-bottom:10px;padding:9px;border:1px solid rgba(68,208,191,.22);background:linear-gradient(180deg,rgba(68,208,191,.055),rgba(0,0,0,.12)),rgba(0,0,0,.18);
}
.bio-output-grid{
display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-bottom:8px;
}
.bio-climate-control{
min-width:0;padding:7px;border:1px solid rgba(122,170,187,.22);background:rgba(0,0,0,.16);
}
.bio-climate-control-head{
display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:5px;
}
.bio-climate-control-head strong{
min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
color:rgba(208,234,248,.94);font-size:10px;font-weight:700;font-variant-numeric:tabular-nums;
}
.bio-climate-control .terraform-preview-row{
margin:0;gap:5px;
}
.bio-output-grid div{
min-width:0;padding:6px;border:1px solid rgba(122,170,187,.22);background:rgba(0,0,0,.16);
}
.bio-output-grid span,.bio-output-grid strong{
display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:rgba(208,234,248,.94);font-size:10px;font-weight:700;
}
.bio-output-grid .bio-output-item{
display:inline-flex;align-items:center;max-width:100%;gap:5px;
}
.bio-output-item span{
min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.bio-output-ball{
width:12px;height:12px;flex-basis:12px;
}
.bio-health-steps{
display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-bottom:8px;
}
.bio-health-step{
min-width:0;min-height:88px;padding:6px;border:1px solid rgba(122,170,187,.22);background:rgba(0,0,0,.15);
}
.bio-climate-step{
grid-column:1 / -1;min-height:0;
}
.bio-health-top{
display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:4px;
}
.bio-health-top span,.bio-health-top strong,.bio-health-count{
min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:8px;letter-spacing:.06em;text-transform:uppercase;
}
.bio-health-top span{
color:rgba(208,234,248,.86);
}
.bio-health-top strong{
color:rgba(168,204,216,.78);font-weight:700;
}
.bio-health-top strong:empty{
display:none;
}
.bio-health-count{
margin-bottom:4px;color:rgba(168,204,216,.72);font-variant-numeric:tabular-nums;
}
.bio-health-meter{
height:4px;background:rgba(0,0,0,.35);border:1px solid rgba(122,170,187,.18);overflow:hidden;
}
.bio-health-meter span{
display:block;height:100%;background:rgba(68,208,191,.65);
}
.bio-health-step.is-ready{
border-color:rgba(48,208,96,.32);
}
.bio-health-step.is-ready .bio-health-meter span{
background:var(--success);
}
.bio-health-step.is-limiting{
border-color:rgba(214,182,66,.36);
}
.bio-health-step.is-limiting .bio-health-meter span{
background:var(--warn);
}
.bio-health-step.is-blocking{
border-color:rgba(224,64,64,.42);
}
.bio-health-step.is-blocking .bio-health-meter span{
background:var(--danger);
}
.bio-health-step.is-waiting{
opacity:.78;
}
.bio-health-step.is-recommended{
border-color:rgba(68,208,191,.62);background:linear-gradient(180deg,rgba(68,208,191,.08),rgba(0,0,0,.12)),rgba(0,0,0,.16);
}
.bio-add-btn{
width:100%;min-width:0 !important;min-height:30px !important;margin-top:6px;padding:4px 6px !important;display:grid !important;grid-template-columns:minmax(0,1fr)auto;align-items:center;column-gap:5px;text-align:left;letter-spacing:.08em !important;
}
.bio-add-btn span,.bio-add-btn strong{
min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.1;
}
.bio-add-btn span{
font-size:8px;
}
.bio-add-btn strong{
color:rgba(168,204,216,.74);font-size:7px;font-weight:700;font-variant-numeric:tabular-nums;
}
.bio-add-btn.is-recommended:not(:disabled){
border-color:rgba(68,208,191,.7)!important;color:rgba(208,255,247,.96)!important;
}

#ship-repair.repair-action-btn{
display:inline-flex !important;align-items:center !important;justify-content:center !important;gap:4px !important;width:100%;min-width:0 !important;min-height:30px !important;padding:4px 6px !important;white-space:nowrap;text-align:center;
}
#ship-repair.repair-action-btn .rts-icon{
margin:0 !important;flex:0 0 auto;
}
#ship-repair.repair-action-btn .action-cost{
margin-left:0 !important;
}
@media(max-width:390px){
.bio-output-grid{
grid-template-columns:1fr;
}
.bio-health-steps{
grid-template-columns:1fr;
}
}
.myplanets-table{
margin-top:7px;
}
.myplanets-head,.myplanets-row{
display:grid !important;grid-template-columns:minmax(0,1fr)42px 34px 58px;align-items:center;column-gap:8px;
}
.myplanets-head span:nth-child(n+2),.myplanets-level,.myplanets-bio,.myplanets-stability{
text-align:right;
}
.myplanets-row{
min-height:38px;padding:4px 6px;border-bottom:1px solid rgba(68,208,191,.075);
}
.myplanets-row:nth-child(odd){
background:rgba(255,255,255,.018);
}
.myplanets-row:last-child{
border-bottom:none;
}
.myplanets-planet{
min-width:0;display:flex;flex-direction:column;gap:2px;
}
.myplanets-planet-btn{
width:100%;max-width:100%;
}
.myplanets-level,.myplanets-bio,.myplanets-stability{
color:rgba(208,234,248,.80);font-size:10px;font-variant-numeric:tabular-nums;white-space:nowrap;
}
@media(max-width:390px){
.myplanets-head,.myplanets-row{
grid-template-columns:minmax(0,1fr)36px 28px 48px;column-gap:5px;
}
}
.leaderboard-row,.myplanets-row{
overflow:visible;
}
.leaderboard-player,.myplanets-planet{
overflow:hidden;
}
.leaderboard-table .leaderboard-player-btn,.myplanets-table .myplanets-planet-btn{
min-height:23px !important;height:23px !important;max-width:100%;width:100%;padding:2px 6px !important;display:inline-flex;align-items:center;justify-content:flex-start;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:7.5px !important;line-height:1 !important;letter-spacing:.08em !important;border-radius:0 !important;border-width:1px !important;border-style:solid !important;border-color:rgba(98,128,137,.56)rgba(0,0,0,.84)rgba(0,0,0,.88)rgba(98,128,137,.56)!important;color:rgba(168,204,216,.88)!important;background:linear-gradient(180deg,rgba(47,58,67,.70),rgba(12,17,22,.84))!important;box-shadow:inset 1px 1px 0 rgba(255,255,255,.055),inset -1px -1px 0 rgba(0,0,0,.62),0 1px 0 rgba(0,0,0,.55)!important;text-shadow:1px 1px 0 #000;transform:none;
}
.leaderboard-table .leaderboard-player-btn:hover,.myplanets-table .myplanets-planet-btn:hover{
color:var(--text-accent)!important;border-color:rgba(68,208,191,.62)rgba(0,0,0,.84)rgba(0,0,0,.88)rgba(68,208,191,.62)!important;filter:brightness(1.08);
}
.leaderboard-table .leaderboard-player-btn:active,.myplanets-table .myplanets-planet-btn:active{
transform:translate(1px,1px);box-shadow:inset -1px -1px 0 rgba(255,255,255,.055),inset 1px 1px 0 rgba(0,0,0,.62)!important;
}
.leaderboard-table .leaderboard-player-btn.text-self{
color:var(--player-self)!important;
}
.myplanets-table .capital-badge,.myplanets-table .chip{
vertical-align:1px;
}
.leaderboard-table .leaderboard-player-btn,.myplanets-table .myplanets-planet-btn{
width:auto !important;max-width:100% !important;min-width:0 !important;justify-self:start;
}
.leaderboard-player,.myplanets-planet{
display:flex;align-items:flex-start;min-width:0;
}
.leaderboard-table .leaderboard-player-btn,.myplanets-table .myplanets-planet-btn{
flex:0 1 auto;
}
.leaderboard-head span:nth-child(2){
padding-left:6px;
}
#lb-table-section{
padding-top:6px;
}
#lb-table-section .leaderboard-search-group{
margin:10px 0 8px;
}
#lb-table-section .leaderboard-table{
margin-top:0;
}
.leaderboard-head span:nth-child(2){
text-align:left !important;justify-self:start !important;padding-left:6px;
}
.leaderboard-head span:nth-child(3){
text-align:right !important;justify-self:end !important;
}
#myplanets-table-section{
padding-top:6px;
}
#myplanets-table-section .myplanets-table{
margin-top:0;
}
.myplanets-head,.myplanets-row{
grid-template-columns:minmax(0,1fr)22px 42px 34px 58px !important;
}
.myplanets-capital{
display:inline-flex;align-items:center;justify-content:center;min-width:0;
}
.myplanets-capital .capital-badge,.myplanets-capital .chip{
min-height:15px !important;height:15px !important;padding:0 3px !important;font-size:0 !important;
}
.myplanets-capital .rts-icon{
width:11px;height:11px;margin-right:0 !important;
}
.myplanets-head span:nth-child(n+3),.myplanets-level,.myplanets-bio,.myplanets-stability{
text-align:right;
}
@media(max-width:390px){
.myplanets-head,.myplanets-row{
grid-template-columns:minmax(0,1fr)18px 36px 28px 48px !important;
}
}
.myplanets-capital-head{
display:block !important;width:22px;min-width:22px;height:1px;padding:0 !important;margin:0 !important;overflow:hidden;
}
.myplanets-head span:nth-child(2),.myplanets-capital{
text-align:center !important;justify-self:center !important;
}
.myplanets-head span:nth-child(3),.myplanets-head span:nth-child(4),.myplanets-head span:nth-child(5){
text-align:right !important;
}
.myplanets-planet{
display:inline-flex !important;align-items:flex-start;width:fit-content;max-width:100%;
}
.myplanets-row{
grid-template-columns:max-content 18px 42px 34px 58px !important;
}
.myplanets-head{
grid-template-columns:max-content 18px 42px 34px 58px !important;
}
.myplanets-capital{
justify-self:start !important;margin-left:2px;
}
.myplanets-capital-head{
width:18px;min-width:18px;
}
@media(max-width:390px){
.myplanets-row,.myplanets-head{
grid-template-columns:max-content 16px 36px 28px 48px !important;
}
}
.myplanets-head,.myplanets-row{
grid-template-columns:minmax(0,1fr)42px 34px 58px !important;align-items:center;
}
.myplanets-head span:nth-child(2),.myplanets-head span:nth-child(3),.myplanets-head span:nth-child(4),.myplanets-level,.myplanets-bio,.myplanets-stability{
text-align:right !important;
}
.myplanets-planet{
display:flex !important;flex-direction:column !important;align-items:flex-start !important;min-width:0;width:auto !important;max-width:100%;
}
.myplanets-capital{
display:inline-flex !important;align-items:center;justify-content:center;justify-self:start !important;width:18px;min-width:18px;margin-left:0 !important;
}
.myplanets-capital:empty{
visibility:hidden;
}
.myplanets-capital .capital-badge,.myplanets-capital .chip{
min-height:15px !important;height:15px !important;padding:0 3px !important;font-size:0 !important;
}
.myplanets-capital .rts-icon{
width:11px !important;height:11px !important;margin-right:0 !important;
}
.myplanets-capital-head{
display:none !important;
}
@media(max-width:390px){
.myplanets-head,.myplanets-row{
grid-template-columns:minmax(0,1fr)36px 28px 48px !important;column-gap:5px;
}
.myplanets-capital{
width:16px;min-width:16px;
}
}
.myplanets-head,.myplanets-row{
display:grid !important;grid-template-columns:minmax(0,1fr)22px 42px 34px 58px !important;align-items:center !important;column-gap:6px !important;
}
.myplanets-head span:nth-child(1){
text-align:left !important;justify-self:stretch !important;
}
.myplanets-head span:nth-child(2),.myplanets-capital{
text-align:center !important;justify-self:center !important;
}
.myplanets-head span:nth-child(3),.myplanets-head span:nth-child(4),.myplanets-head span:nth-child(5),.myplanets-level,.myplanets-bio,.myplanets-stability{
text-align:right !important;justify-self:stretch !important;
}
.myplanets-capital-head{
display:block !important;position:static !important;width:22px !important;min-width:22px !important;height:1px !important;overflow:hidden !important;padding:0 !important;margin:0 !important;
}
.myplanets-planet{
display:flex !important;flex-direction:column !important;align-items:flex-start !important;min-width:0 !important;width:auto !important;max-width:100% !important;
}
.myplanets-capital{
display:inline-flex !important;align-items:center !important;justify-content:center !important;width:22px !important;min-width:22px !important;margin:0 !important;
}
.myplanets-capital:empty{
visibility:hidden !important;
}
.myplanets-capital .capital-badge,.myplanets-capital .chip{
min-height:15px !important;height:15px !important;padding:0 3px !important;font-size:0 !important;
}
.myplanets-capital .rts-icon{
width:11px !important;height:11px !important;margin-right:0 !important;
}
@media(max-width:390px){
.myplanets-head,.myplanets-row{
grid-template-columns:minmax(0,1fr)18px 36px 28px 48px !important;column-gap:5px !important;
}
.myplanets-capital-head,.myplanets-capital{
width:18px !important;min-width:18px !important;
}
}
.myplanets-capital{
display:flex !important;align-items:center !important;justify-content:center !important;width:22px !important;min-width:22px !important;height:22px !important;min-height:22px !important;line-height:1 !important;
}
.myplanets-capital .capital-badge,.myplanets-capital .chip,.myplanets-capital .chip-warn{
display:flex !important;align-items:center !important;justify-content:center !important;width:16px !important;height:16px !important;min-width:16px !important;min-height:16px !important;padding:0 !important;margin:0 !important;line-height:1 !important;font-size:0 !important;box-sizing:border-box !important;
}
.myplanets-capital .rts-icon{
display:block !important;width:10px !important;height:10px !important;margin:0 !important;transform:none !important;
}
@media(max-width:390px){
.myplanets-capital{
width:18px !important;min-width:18px !important;height:20px !important;min-height:20px !important;
}
.myplanets-capital .capital-badge,.myplanets-capital .chip,.myplanets-capital .chip-warn{
width:15px !important;height:15px !important;min-width:15px !important;min-height:15px !important;
}
.myplanets-capital .rts-icon{
width:10px !important;height:10px !important;
}
}
.myplanets-capital{
display:flex !important;align-items:center !important;justify-content:center !important;width:22px !important;min-width:22px !important;height:23px !important;min-height:23px !important;padding:0 !important;margin:0 !important;line-height:1 !important;font-size:0 !important;
}
.myplanets-capital .myplanets-capital-icon{
display:block !important;width:12px !important;height:12px !important;margin:0 !important;padding:0 !important;color:var(--warn)!important;flex:0 0 12px !important;transform:none !important;vertical-align:middle !important;
}
.myplanets-capital:empty{
visibility:hidden !important;
}
@media(max-width:390px){
.myplanets-capital{
width:18px !important;min-width:18px !important;height:23px !important;min-height:23px !important;
}
}
.objective-pulse{
animation:objectivePulse 1.35s ease-out 1;
}
@keyframes objectivePulse{
0%{
box-shadow:0 0 0 0 rgba(48,208,96,.75),inset 1px 1px 0 rgba(255,255,255,.08);
}
100%{
box-shadow:0 0 0 12px rgba(48,208,96,0),inset 1px 1px 0 rgba(255,255,255,.08);
}
}
.rename-inline-editor{
display:inline-flex;align-items:center;gap:4px;max-width:100%;vertical-align:middle;
}
.rename-input{
width:130px;max-width:min(130px,52vw);min-height:24px !important;height:24px !important;padding:2px 6px !important;font-size:inherit;line-height:1 !important;background:rgba(2,7,10,.72)!important;border:1px solid var(--accent)!important;color:var(--text-bright)!important;border-radius:0 !important;box-shadow:inset 1px 1px 0 rgba(255,255,255,.055),inset -1px -1px 0 rgba(0,0,0,.62)!important;
}
.rename-control{
width:24px;min-width:24px;height:24px;min-height:24px;padding:0 !important;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(98,128,137,.62);background:linear-gradient(180deg,#2f3a43,#182029 48%,#070b10 49%,#202a33);color:rgba(190,220,229,.88);box-shadow:inset 1px 1px 0 rgba(255,255,255,.06),inset -1px -1px 0 rgba(0,0,0,.66),0 1px 0 rgba(0,0,0,.62);cursor:pointer;
}
.rename-ok{
color:var(--accent);
}
.rename-cancel{
color:rgba(255,208,201,.9);border-color:rgba(224,64,64,.54)rgba(0,0,0,.86)rgba(0,0,0,.86)rgba(224,64,64,.54);
}
.rename-control .rts-icon{
width:11px !important;height:11px !important;margin:0 !important;display:block;
}
.rename-control:active{
transform:translate(1px,1px);box-shadow:inset -1px -1px 0 rgba(255,255,255,.035),inset 1px 1px 0 rgba(0,0,0,.66);
}
#planet-rename-pencil.icon-button,#ship-rename-pencil.icon-button{
width:24px !important;min-width:24px !important;height:24px !important;min-height:24px !important;padding:0 !important;margin-left:5px !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;vertical-align:middle !important;border-radius:0 !important;border:1px solid !important;border-color:var(--upgrade-btn-border-hi,rgba(98,128,137,.62))var(--upgrade-btn-border-lo,rgba(0,0,0,.86))var(--upgrade-btn-border-lo,rgba(0,0,0,.86))var(--upgrade-btn-border-hi,rgba(98,128,137,.62))!important;background:var(--upgrade-btn-bg,linear-gradient(180deg,#2f3a43,#182029 48%,#070b10 49%,#202a33))!important;box-shadow:var(--upgrade-btn-shadow,inset 1px 1px 0 rgba(255,255,255,.06),inset -1px -1px 0 rgba(0,0,0,.66),0 1px 0 rgba(0,0,0,.62))!important;color:rgba(190,220,229,.88)!important;cursor:pointer;transform:none !important;
}
#planet-rename-pencil.icon-button:hover,#ship-rename-pencil.icon-button:hover{
color:var(--text-accent)!important;background:var(--upgrade-btn-bg-hover,linear-gradient(180deg,#3b4a54,#1e2a34 48%,#091017 49%,#263540))!important;border-color:rgba(68,208,191,.62)var(--upgrade-btn-border-lo,rgba(0,0,0,.86))var(--upgrade-btn-border-lo,rgba(0,0,0,.86))rgba(68,208,191,.62)!important;
}
#planet-rename-pencil.icon-button:active,#ship-rename-pencil.icon-button:active{
transform:translate(1px,1px)!important;box-shadow:var(--upgrade-btn-shadow-active,inset -1px -1px 0 rgba(255,255,255,.035),inset 1px 1px 0 rgba(0,0,0,.66))!important;
}
#planet-rename-pencil.icon-button .rts-icon,#ship-rename-pencil.icon-button .rts-icon{
width:11px !important;height:11px !important;margin:0 !important;display:block !important;
}
.planet-stat-label{
display:inline-flex;align-items:center;gap:4px;min-width:0;max-width:100%;
}
.planet-stat-label-text{
min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.planet-stat-icon{
width:12px !important;height:12px !important;min-width:12px !important;min-height:12px !important;margin:0 !important;flex:0 0 12px;color:rgba(208,234,248,.92);opacity:.94;vertical-align:-0.12em;
}
.bio-climate-control-head .planet-stat-icon,.bio-health-top .planet-stat-icon{
opacity:.96;
}
.tab-bar{
overflow:visible !important;
}
.tab-bar button.active{
position:relative;z-index:2;margin-top:-2px;min-height:56px;padding-top:2px;border-top:2px solid var(--accent)!important;box-shadow:inset 0 2px 0 rgba(191,255,244,.28),inset 0 -2px 0 #000 !important;
}

.tab-bar .tab-drawer-btn{
position:relative;
}
.tab-bar .tab-drawer-btn span{
display:block;
max-width:100%;
overflow:hidden;
text-overflow:ellipsis;
white-space:nowrap;
}
.tab-bar .tab-drawer-btn em{
position:absolute;
top:5px;
right:calc(50% - 22px);
min-width:16px;
height:16px;
padding:0 4px;
display:inline-flex;
align-items:center;
justify-content:center;
border:1px solid rgba(68,208,191,.42);
background:rgba(68,208,191,.12);
color:var(--accent);
font-style:normal;
font-size:8px;
line-height:1;
box-shadow:inset 1px 1px 0 rgba(255,255,255,.05),inset -1px -1px 0 rgba(0,0,0,.7);
}
.tab-bar .tab-drawer-btn[aria-expanded="true"]{
color:#bffff4;
background:linear-gradient(180deg,rgba(36,112,105,.62),rgba(8,32,34,.88));
box-shadow:inset 0 2px 0 rgba(191,255,244,.18),inset 0 -2px 0 #000;
}
@media(max-width:420px){
  .tab-bar button{font-size:7px;letter-spacing:.05em;}
  .tab-bar .tab-drawer-btn em{right:calc(50% - 20px);top:4px;}
}

header{
z-index:500 !important;
}
.account-menu{
z-index:520 !important;
}
.account-menu.open .account-dropdown,.account-dropdown{
z-index:530 !important;
}
#myplanets-drawer,#leaderboard-drawer,#notif-drawer,#mission-drawer{
z-index:300;
}
.planet-title-inline{
display:inline-flex !important;flex-direction:row !important;align-items:center !important;gap:6px !important;min-width:0;max-width:100%;
}
.planet-title-name{
display:inline-flex;align-items:center;gap:4px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.planet-title-name #planet-name-label{
min-width:0;overflow:hidden;text-overflow:ellipsis;
}
.planet-capital-inline,.planet-novice-inline{
flex:0 0 auto;min-height:16px !important;padding:1px 4px !important;font-size:7px !important;line-height:1 !important;white-space:nowrap;
}
.planet-capital-inline .rts-icon,.planet-novice-inline .rts-icon{
width:10px !important;height:10px !important;margin-right:2px !important;
}
.hold-over{color:var(--danger) !important;}
.cost-load{color:var(--accent);font-weight:700;}
:root{
--btn-skeuo-bg:linear-gradient(180deg,#2f3a43,#182029 48%,#070b10 49%,#202a33);--btn-skeuo-bg-hover:linear-gradient(180deg,#3b4a54,#1e2a34 48%,#091017 49%,#263540);--btn-skeuo-primary-bg:linear-gradient(180deg,#326a65,#153c3d 48%,#071416 49%,#1d5852);--btn-skeuo-primary-bg-hover:linear-gradient(180deg,#3e7d78,#1b4b4c 48%,#08191b 49%,#246a63);--btn-skeuo-danger-bg:linear-gradient(180deg,#743126,#39150f 48%,#130706 49%,#5a2118);--btn-skeuo-danger-bg-hover:linear-gradient(180deg,#8b352a,#4d1b14 48%,#170807 49%,#6a261d);--btn-skeuo-warn-bg:linear-gradient(180deg,#765625,#39270d 48%,#130c04 49%,#5b421a);--btn-skeuo-border-hi:rgba(98,128,137,.62);--btn-skeuo-border-lo:rgba(0,0,0,.86);--btn-skeuo-shadow:inset 1px 1px 0 rgba(255,255,255,.06),inset -1px -1px 0 rgba(0,0,0,.66),0 1px 0 rgba(0,0,0,.62);--btn-skeuo-shadow-active:inset -1px -1px 0 rgba(255,255,255,.035),inset 1px 1px 0 rgba(0,0,0,.66);
}
.btn{
min-height:34px;padding:6px 12px;display:inline-flex;align-items:center;justify-content:center;gap:5px;border-radius:0;border:1px solid;border-color:var(--btn-skeuo-border-hi)var(--btn-skeuo-border-lo)var(--btn-skeuo-border-lo)var(--btn-skeuo-border-hi);background:var(--btn-skeuo-bg);box-shadow:var(--btn-skeuo-shadow);color:rgba(190,220,229,.88);font-family:var(--font-mono);font-size:9px;font-weight:700;line-height:1;letter-spacing:.06em;text-transform:uppercase;text-shadow:1px 1px 0 #000;white-space:nowrap;cursor:pointer;transform:none;transition:filter .12s,color .12s,background .12s,border-color .12s,opacity .12s;-webkit-tap-highlight-color:transparent;
}
.btn:hover:not(:disabled){
color:var(--text-accent);background:var(--btn-skeuo-bg-hover);border-color:rgba(68,208,191,.62)var(--btn-skeuo-border-lo)var(--btn-skeuo-border-lo)rgba(68,208,191,.62);filter:brightness(1.08);
}
.btn:active:not(:disabled){
transform:translate(1px,1px);box-shadow:var(--btn-skeuo-shadow-active);
}
.btn:disabled{
cursor:not-allowed;filter:grayscale(1)brightness(.55);color:#596366;opacity:.9;
}
.btn-primary{
border-color:rgba(68,208,191,.72)var(--btn-skeuo-border-lo)var(--btn-skeuo-border-lo)rgba(68,208,191,.72);color:#b9fff2;background:var(--btn-skeuo-primary-bg);
}
.btn-primary:hover:not(:disabled){
background:var(--btn-skeuo-primary-bg-hover);
}
.btn-danger{
border-color:rgba(224,64,64,.62)var(--btn-skeuo-border-lo)var(--btn-skeuo-border-lo)rgba(224,64,64,.62);color:rgba(255,208,201,.92);background:var(--btn-skeuo-danger-bg);
}
.btn-danger:hover:not(:disabled){
color:#ffe1dc;background:var(--btn-skeuo-danger-bg-hover);border-color:rgba(255,103,87,.76)var(--btn-skeuo-border-lo)var(--btn-skeuo-border-lo)rgba(255,103,87,.76);
}
.btn-ghost{
background:var(--btn-skeuo-bg);border-color:var(--btn-skeuo-border-hi)var(--btn-skeuo-border-lo)var(--btn-skeuo-border-lo)var(--btn-skeuo-border-hi);color:rgba(190,220,229,.88);
}
.btn-sm{
min-height:28px;height:28px;padding:3px 8px;font-size:8px;gap:4px;
}
.btn-icon{
width:28px;min-width:28px;height:28px;min-height:28px;padding:0;
}
.btn-full{
display:flex;width:100%;
}
.btn .rts-icon,.btn svg{
width:12px;height:12px;margin:0 3px 0 0;flex:0 0 12px;
}
.btn-icon .rts-icon,.btn-icon svg{
margin:0;
}
.drawer-header,#myplanets-header,#leaderboard-header,#notif-header,#mission-header{
display:grid;grid-template-columns:minmax(0,1fr)auto;align-items:center;min-height:52px;line-height:1;margin:0;padding:6px 7px;gap:6px;
}
.drawer-header h3,#myplanets-header h3,#leaderboard-header h3,#notif-header h3,#mission-header h3{
min-width:0;margin:0;align-self:center;
}
.drawer-header-actions{
display:flex;align-items:center;justify-content:flex-end;gap:6px;min-width:0;
}
.drawer-header-actions .btn{
flex:0 0 auto;
}
.drawer-action,.drawer-close{
margin-left:0;
}

header{
z-index:500 !important;
}
.account-menu{
z-index:520 !important;
}
.account-menu.open .account-dropdown,.account-dropdown{
z-index:530 !important;
}
#myplanets-drawer,#leaderboard-drawer,#notif-drawer,#mission-drawer{
z-index:300;
}
.tab-bar{
overflow:visible !important;
}
.tab-bar button.active{
position:relative;z-index:2;margin-top:-2px;min-height:56px;padding-top:2px;border-top:2px solid var(--accent)!important;box-shadow:inset 0 2px 0 rgba(191,255,244,.28),inset 0 -2px 0 #000 !important;
}
.login-title-ball{
width:20px !important;height:20px !important;flex-basis:20px !important;margin-right:6px;vertical-align:-0.22em;border-color:rgba(0,0,0,.78);box-shadow:inset 1px 1px 0 rgba(255,255,255,.34),inset -1px -1px 0 rgba(0,0,0,.5),1px 1px 0 #000;
}
.topbar-brand{
margin-right:auto;min-width:0;display:inline-flex;align-items:center;gap:6px;height:28px;color:var(--text-accent);font-family:var(--font-mono);font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;text-shadow:1px 1px 0 #000;overflow:hidden;
}
.topbar-brand-ball{
width:16px !important;height:16px !important;flex:0 0 16px !important;border-color:rgba(0,0,0,.78);box-shadow:inset 1px 1px 0 rgba(255,255,255,.34),inset -1px -1px 0 rgba(0,0,0,.5),1px 1px 0 #000;
}
body{
font-family:var(--font-mono);font-size:11px;line-height:1.42;
}
.card-title,.secondary-title,#transfer-title-title,#leaderboard-header h3,#notif-header h3,#mission-header h3{
font-size:9px !important;font-weight:700 !important;line-height:1 !important;letter-spacing:.14em !important;text-transform:uppercase;
}
.entity-name{
font-size:16px !important;font-weight:700 !important;line-height:1.15 !important;letter-spacing:.02em;
}
.label,.form-group label,.row .label,.bio-health-top span,.bio-output-grid span{
font-size:7px !important;font-weight:700 !important;line-height:1.1 !important;letter-spacing:.11em !important;text-transform:uppercase;
}
.value,.row .value,.bio-health-count,.bio-output-grid strong,#planet-atmo-val,#planet-temp-val{
font-size:10px !important;font-weight:700 !important;line-height:1.15 !important;font-variant-numeric:tabular-nums;
}
.btn,button,.btn-sm,.module-upgrade,.bio-add-btn,.terraform-preview-btn,.map-context-btn,.back-to-btn,.owner-profile-btn,.leaderboard-player-btn,.myplanets-planet-btn,.transfer-actions .btn,.rename-control,.icon-button{
font-weight:700;letter-spacing:.06em;
}
.btn,.btn-sm,.module-upgrade,.bio-add-btn,.terraform-preview-btn,.map-context-btn,.back-to-btn,.owner-profile-btn,.leaderboard-player-btn,.myplanets-planet-btn,.transfer-actions .btn{
font-size:8px !important;line-height:1 !important;text-transform:uppercase;
}
.text-muted,.empty-muted{
font-size:9px;line-height:1.35;
}
.chip,.capital-badge,.level-chip,.planet-capital-inline{
font-size:7px !important;font-weight:700 !important;line-height:1 !important;letter-spacing:.08em !important;text-transform:uppercase;
}
input,select,.form-group input,.form-group select,.rename-input,#transfer-qty,.topbar-brand{
font-size:10px !important;font-weight:700 !important;letter-spacing:.12em !important;
}
@media(max-width:360px){
body{
font-size:10px;
}
.entity-name{
font-size:15px !important;
}
.card-title,.secondary-title,#transfer-title-title,#leaderboard-header h3,#notif-header h3,#mission-header h3{
font-size:8px !important;
}
}
.topbar-brand{
height:32px !important;gap:8px !important;color:var(--text-bright)!important;font-size:12px !important;font-weight:700 !important;letter-spacing:.16em !important;text-transform:uppercase;text-shadow:0 0 8px rgba(68,208,191,.55),2px 2px 0 #000 !important;
}
.topbar-brand-ball{
width:20px !important;height:20px !important;flex:0 0 20px !important;margin-right:0 !important;border-color:rgba(0,0,0,.78);box-shadow:inset 1px 1px 0 rgba(255,255,255,.34),inset -1px -1px 0 rgba(0,0,0,.5),1px 1px 0 #000;
}
.topbar-brand-text{
line-height:1 !important;
}
@media(max-width:360px){
.topbar-brand{
font-size:10px !important;letter-spacing:.13em !important;gap:6px !important;
}
.topbar-brand-ball{
width:17px !important;height:17px !important;flex-basis:17px !important;
}
}
.btn .action-cost,button .action-cost,.module-upgrade .action-cost,#colonize-btn .action-cost,#ship-repair .action-cost,#ship-upgrade .action-cost{
display:inline-flex !important;align-items:center !important;justify-content:center;gap:2px;margin-left:4px !important;font-size:8px !important;line-height:1 !important;vertical-align:baseline !important;transform:translateY(0)!important;position:relative;top:0 !important;
}
.btn .action-cost .ball-swatch,button .action-cost .ball-swatch,.btn .action-cost .cost-ball,button .action-cost .cost-ball{
display:inline-block !important;width:10px !important;height:10px !important;flex:0 0 10px !important;margin-left:1px !important;vertical-align:middle !important;transform:translateY(0)!important;position:relative;top:0 !important;
}
.planet-viewer{
border:3px solid transparent !important;background:linear-gradient(#000,#000)padding-box,conic-gradient(var(--accent)0 var(--planet-completion-angle,0deg),rgba(68,208,191,.16)0 1turn)border-box !important;box-shadow:inset 0 0 30px #000,0 0 18px rgba(68,208,191,.16),0 0 0 6px #101820 !important;
}
.vitals-steps{
display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-bottom:8px;
}
.vitals-step{
min-width:0;min-height:72px;padding:6px;border:1px solid rgba(122,170,187,.22);background:rgba(0,0,0,.15);
}
.vitals-step.is-ready{
border-color:rgba(48,208,96,.32);
}
.vitals-step.is-limiting{
border-color:rgba(214,182,66,.36);
}
.vitals-step.is-blocking{
border-color:rgba(224,64,64,.42);
}
.vitals-step.is-waiting{
opacity:.78;
}
.vitals-step .bio-health-meter span{
background:rgba(68,208,191,.65);
}
.vitals-step.is-ready .bio-health-meter span{
background:var(--success);
}
.vitals-step.is-limiting .bio-health-meter span{
background:var(--warn);
}
.vitals-step.is-blocking .bio-health-meter span{
background:var(--danger);
}
.chip-powered{
border-color:rgba(48,208,96,.46);color:rgba(191,255,208,.92);background:rgba(20,48,28,.38);
}
.chip-offline{
border-color:rgba(224,64,64,.46);color:rgba(255,190,184,.92);background:rgba(48,20,18,.38);
}
.combat-summary{
display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-bottom:8px;
}
.combat-summary>div{
padding:6px;border:1px solid rgba(122,170,187,.22);background:rgba(0,0,0,.16);
}
.combat-summary span{
display:block;font-size:8px;letter-spacing:.08em;text-transform:uppercase;color:rgba(208,234,248,.76);
}
.combat-summary strong{
display:block;font-size:11px;font-weight:700;color:rgba(208,234,248,.94);
}
#ship-upgrade .action-cost,#ship-repair .action-cost,.module-upgrade .action-cost{
display:inline-flex !important;align-items:center !important;gap:2px !important;margin-left:4px !important;line-height:1 !important;vertical-align:baseline !important;transform:translateY(0)!important;top:0 !important;
}
.combat-summary strong{
display:inline-flex !important;align-items:center !important;justify-content:flex-end !important;width:auto !important;min-width:0 !important;
}
.combat-summary .chip-powered,.combat-summary .chip-offline{
display:inline-flex !important;width:auto !important;min-width:0 !important;max-width:max-content !important;flex:0 0 auto !important;align-items:center !important;justify-content:center !important;align-self:center !important;padding:1px 6px !important;line-height:1 !important;white-space:nowrap !important;
}
#ship-modules .module-card,#ship-hold-items .inventory-table{
border-color:rgba(68,208,191,.18)!important;background:rgba(2,7,10,.34)!important;
}
#sound-menu-btn.sound-off,#music-menu-btn.music-off{
color:rgba(255,208,201,.82)!important;
}
#sound-menu-btn:not(.sound-off),#music-menu-btn:not(.music-off){
color:var(--text-accent)!important;
}
.map-tools{
position:absolute;z-index:12;display:flex;align-items:center;gap:8px;top:calc(env(safe-area-inset-top, 0px) + 12px);right:12px;
}
.map-tool-btn,.map-sensor-toggle{
display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:7px 10px;border:1px solid rgba(68,208,191,.45);border-radius:0;color:var(--text-bright);background:linear-gradient(180deg,rgba(15,37,42,.92),rgba(4,10,13,.92));box-shadow:inset 0 0 0 1px rgba(255,255,255,.035),0 0 18px rgba(68,208,191,.10);font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;
}
.map-tool-btn:hover,.map-sensor-toggle:hover,.map-sensor-toggle[aria-expanded="true"]{
border-color:rgba(68,208,191,.85);box-shadow:inset 0 0 0 1px rgba(255,255,255,.05),0 0 22px rgba(68,208,191,.20);color:var(--text-accent);
}
.map-tool-label,.map-sensor-label{
display:inline-flex;align-items:center;gap:6px;white-space:nowrap;
}
.map-sensor-count{
min-width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(68,208,191,.38);background:rgba(68,208,191,.10);color:var(--accent);font-size:10px;line-height:1;
}
.map-sensor-panel{
position:absolute;top:calc(env(safe-area-inset-top, 0px) + 54px);right:12px;z-index:11;width:min(330px,calc(100vw - 24px));max-height:min(46vh,360px);margin:0 !important;overflow:auto;background:linear-gradient(180deg,rgba(8,18,22,.96),rgba(3,8,10,.94))!important;border-color:rgba(68,208,191,.38)!important;box-shadow:0 18px 42px rgba(0,0,0,.48),0 0 22px rgba(68,208,191,.10);
}

.map-myplanets-panel{
position:absolute;top:calc(env(safe-area-inset-top, 0px) + 54px);right:12px;z-index:11;width:min(390px,calc(100vw - 24px));max-height:min(50vh,420px);margin:0 !important;overflow:auto;background:linear-gradient(180deg,rgba(8,18,22,.96),rgba(3,8,10,.94))!important;border-color:rgba(68,208,191,.38)!important;box-shadow:0 18px 42px rgba(0,0,0,.48),0 0 22px rgba(68,208,191,.10);
}
.map-myplanets-panel.is-hidden{
display:none !important;
}
.map-myplanets-search-group{
margin:8px 0;
}
.map-myplanets-list{
display:grid;gap:6px;
}
.map-territory-toggle[aria-expanded="true"]{
border-color:rgba(68,208,191,.85);box-shadow:inset 0 0 0 1px rgba(255,255,255,.05),0 0 22px rgba(68,208,191,.20);color:var(--text-accent);
}
.map-sensor-panel.is-hidden{
display:none !important;
}
.map-sensor-list{
display:grid;gap:6px;
}
@media(max-width:640px){
.map-tools{
top:calc(env(safe-area-inset-top, 0px) + 8px);right:8px;gap:6px;left:8px;justify-content:flex-end;
}
.map-tool-btn,.map-sensor-toggle{
padding:6px 8px;
}
#map-sensor-toggle,#map-myplanets-toggle{
min-width:104px;justify-content:space-between;
}
.map-myplanets-panel,.map-sensor-panel{
top:calc(env(safe-area-inset-top, 0px) + 46px);right:8px;width:calc(100vw - 16px);max-height:34vh;
}
}
.map-target-row{
border:1px solid rgba(68,208,191,.18);background:linear-gradient(90deg,rgba(5,10,13,.74),rgba(29,42,50,.20));box-shadow:inset 0 0 0 1px rgba(255,255,255,.025);cursor:pointer;
}
.map-target-row:hover,.map-target-row:focus{
border-color:rgba(68,208,191,.42);background:linear-gradient(90deg,rgba(8,22,26,.82),rgba(29,42,50,.30));outline:none;
}
.map-target-row.is-selected{
border-color:rgba(255,176,64,.52);background:linear-gradient(180deg,rgba(19,23,19,.92),rgba(5,10,13,.88));box-shadow:inset 0 0 0 1px rgba(255,176,64,.08),0 0 18px rgba(255,176,64,.08);
}
.map-target-head{
display:grid;grid-template-columns:minmax(0,1fr)auto;gap:10px;align-items:center;padding:10px 11px;
}
.map-target-id{
min-width:0;display:grid;gap:3px;
}
.map-target-name{
overflow:hidden;color:var(--text-bright);font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.06em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;
}
.map-target-owner,.map-target-hull{
color:var(--text-muted);font-family:var(--font-mono);font-size:9px;letter-spacing:.06em;text-transform:uppercase;
}
.map-target-hull{
color:var(--accent);white-space:nowrap;
}
.map-target-card{
padding:0 11px 11px;display:grid;gap:8px;
}
.map-target-status{
display:flex;justify-content:space-between;gap:10px;color:var(--warn);font-family:var(--font-mono);font-size:9px;letter-spacing:.09em;text-transform:uppercase;
}
.map-target-meter{
height:5px;overflow:hidden;border:1px solid rgba(255,176,64,.20);background:rgba(255,255,255,.05);
}
.map-target-meter>span{
display:block;height:100%;background:linear-gradient(90deg,rgba(255,176,64,.70),rgba(68,208,191,.70));
}
.map-target-actions{
display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;
}
.map-target-actions .btn{
min-height:32px;padding:7px 8px;font-size:10px;
}
@media(max-width:640px){
.map-target-head{
padding:9px 10px;
}
.map-target-card{
padding:0 10px 10px;
}
}

.vitals-hold-card{
grid-column:1 / -1;width:100%;display:block;text-align:left;color:var(--text);font:inherit;cursor:pointer;padding:8px !important;background:linear-gradient(180deg,rgba(18,34,39,.82),rgba(3,8,11,.92)),repeating-linear-gradient(90deg,rgba(255,255,255,.035)0 1px,transparent 1px 4px),var(--dither)!important;border:2px solid !important;border-color:var(--bevel-hi)var(--bevel-lo)var(--bevel-lo)var(--bevel-hi)!important;box-shadow:inset 2px 2px 0 rgba(255,255,255,.07),inset -3px -3px 0 rgba(0,0,0,.70),2px 2px 0 rgba(0,0,0,.62)!important;
}
.hold-card-shell{
display:grid;grid-template-columns:minmax(0,1fr);gap:0;align-items:stretch;
}
.hold-card-main{
min-width:0;padding:4px 0 2px;
}
.vitals-hold-card:hover,.vitals-hold-card:focus-visible{
border-color:var(--accent)var(--accent-dim)var(--accent-dim)var(--accent)!important;color:var(--text-accent);outline:none;filter:brightness(1.08);
}
.vitals-hold-card:active{
transform:translate(1px,1px);border-color:var(--bevel-lo)var(--bevel-hi)var(--bevel-hi)var(--bevel-lo)!important;box-shadow:inset -1px -1px 0 rgba(255,255,255,.05),inset 3px 3px 0 rgba(0,0,0,.72),1px 1px 0 rgba(0,0,0,.45)!important;
}
@media(max-width:360px){
.hold-card-shell{
grid-template-columns:minmax(0,1fr);gap:0;
}
}

#transfer-modal,#dm-modal,#ship-hold-modal,#planet-hold-modal,.rts-modal{
display:none;position:fixed;inset:0;z-index:var(--z-modal);align-items:center;justify-content:center;padding:14px;background:radial-gradient(circle at 50% 36%,rgba(68,208,191,.10),transparent 38%),var(--scrim-modal);backdrop-filter:none;
}
#transfer-modal.open,#dm-modal.open,#ship-hold-modal.open,#planet-hold-modal.open,.rts-modal.open{
display:flex;
}
#transfer-box,#dm-box,#ship-hold-box,#planet-hold-box,.rts-modal-box{
width:min(430px,94vw);max-height:calc(100dvh - 28px);display:flex;flex-direction:column;padding:14px;gap:8px;background:var(--panel-gradient),var(--dither);border:2px solid;border-color:var(--bevel-hi)var(--bevel-lo)var(--bevel-lo)var(--bevel-hi);border-radius:0;box-shadow:inset 2px 2px 0 rgba(255,255,255,.07),inset -3px -3px 0 rgba(0,0,0,.72),0 4px 0 rgba(0,0,0,.75);
}
#transfer-box::before,#transfer-box::after,#dm-box::before,#dm-box::after,#ship-hold-box::before,#ship-hold-box::after,#planet-hold-box::before,#planet-hold-box::after,.rts-modal-box::before,.rts-modal-box::after{
content:none;display:none;
}
.rts-modal-header{
display:grid;grid-template-columns:minmax(0,1fr) 28px;align-items:center;min-height:28px;margin:-2px -2px 2px;gap:6px;
}
#transfer-title,#dm-title,#ship-hold-title,#planet-hold-title,#attack-preview-title,#combat-result-title,.rts-modal-title{
display:flex;align-items:center;min-width:0;min-height:26px;color:var(--text-accent);background:var(--screen-gradient),repeating-linear-gradient(90deg,rgba(255,255,255,.035)0 1px,transparent 1px 3px);border:1px solid var(--accent-dim);box-shadow:inset 1px 1px 0 rgba(144,255,238,.18),inset -1px -1px 0 #000;padding:0 7px;margin:-2px -2px 2px;font-size:7px;line-height:1;letter-spacing:.08em;text-shadow:1px 1px 0 #000;
}
.rts-modal-header #transfer-title,.rts-modal-header #dm-title,.rts-modal-header #ship-hold-title,.rts-modal-header #planet-hold-title,.rts-modal-header #attack-preview-title,.rts-modal-header #combat-result-title,.rts-modal-header .rts-modal-title{
height:24px;min-height:24px;margin:0;padding:0 8px;font-size:8px;line-height:1;letter-spacing:.1em;
}
.rts-modal-title-text{
display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.rts-modal-header .rts-modal-title-text{
display:flex;align-items:center;height:100%;line-height:1;
}
#planet-hold-title{
letter-spacing:.1em;
}
#dm-recipient-name{
color:var(--text-bright);
}
#dm-history,#ship-hold-items,#planet-hold-items,.rts-modal-body{
flex:1 1 auto;min-height:180px;max-height:320px;overflow:auto;padding:8px;background:linear-gradient(180deg,rgba(6,26,29,.88),rgba(3,12,15,.96)),repeating-linear-gradient(0deg,rgba(101,228,210,.045)0 1px,transparent 1px 4px),var(--dither);border:2px solid;border-color:var(--bevel-lo)var(--bevel-hi)var(--bevel-hi)var(--bevel-lo);box-shadow:inset 2px 2px 0 #000,inset -1px -1px 0 rgba(116,208,194,.14);scrollbar-color:var(--accent-dim)#05090b;
}
#dm-history{
display:flex;flex-direction:column;gap:7px;
}
#dm-compose,#ship-hold-compose,#planet-hold-compose,.rts-modal-compose{
display:flex;gap:7px;align-items:stretch;
}
#ship-hold-capacity,#planet-hold-total,.rts-modal-status{
flex:1;min-width:0;min-height:44px;display:flex;align-items:center;padding:0 10px;background:linear-gradient(180deg,rgba(14,22,30,.70),rgba(5,9,13,.88)),var(--dither);border:1px solid rgba(122,170,187,.24);box-shadow:inset 1px 1px 0 rgba(255,255,255,.06),inset -1px -1px 0 rgba(0,0,0,.58);color:var(--text-bright);font-size:10px;line-height:1.25;letter-spacing:0;text-transform:none;text-shadow:1px 1px 0 #000;
}
.dm-close-control,.ship-hold-close-control,.planet-hold-close-control,.rts-modal-close{
align-self:flex-end;width:auto;min-width:92px;min-height:34px;padding:6px 12px;font-size:8px !important;
}
.dm-msg{
position:relative;padding:5px 2px 7px;background:none;border:0;border-bottom:1px solid rgba(116,208,194,.18);box-shadow:none;
}
.dm-msg:last-child{
border-bottom:0;
}
.dm-msg::before,.dm-msg.dm-mine::before{
content:none;display:none;
}
.dm-msg.dm-mine{
background:none;border-color:rgba(116,208,194,.18);
}
.dm-msg-meta{
font-size:8px;line-height:1.2;letter-spacing:.07em;color:var(--text-muted);text-transform:uppercase;text-shadow:1px 1px 0 #000;
}
.dm-msg-text{
margin-top:3px;font-size:10px;line-height:1.35;color:var(--text-bright);text-shadow:1px 1px 0 #000;
}
.dm-msg.dm-mine .dm-msg-text{
color:#b9fff2;
}
#dm-input{
flex:1;min-width:0;height:44px;font-size:11px !important;letter-spacing:0;line-height:1.25 !important;text-transform:none;
}
#dm-input::placeholder{
text-transform:none;letter-spacing:.02em;
}
.dm-send-control{
min-height:44px;font-size:8px !important;line-height:1;
}
#ship-hold-items .inventory-table,#planet-hold-items .inventory-table{
margin-top:0;border:0 !important;background:transparent !important;box-shadow:none !important;
}
#ship-hold-items .inventory-head,#planet-hold-items .inventory-head{
background:rgba(8,24,29,.44)!important;border-bottom-color:rgba(116,208,194,.18)!important;
}
#ship-hold-items .item-row,#planet-hold-items .item-row{
border-bottom-color:rgba(116,208,194,.14)!important;
}
#ship-hold-items .item-row:nth-child(odd),#planet-hold-items .item-row:nth-child(odd){
background:rgba(255,255,255,.012)!important;
}
.planet-hold-card{
grid-column:1 / -1;
}
@media(max-width:640px){
#transfer-modal,#dm-modal,#ship-hold-modal,#planet-hold-modal,.rts-modal{
padding:8px;
}
#transfer-box,#dm-box,#ship-hold-box,#planet-hold-box,.rts-modal-box{
width:min(430px,calc(100vw - 16px));max-height:calc(100dvh - 16px);
}
#dm-history,#ship-hold-items,#planet-hold-items,.rts-modal-body{
min-height:clamp(220px,48dvh,320px);max-height:min(58dvh,420px);
}
}
@media(max-width:360px){
#transfer-box,#dm-box,#ship-hold-box,#planet-hold-box,.rts-modal-box{
padding:12px;
}
#dm-history,#ship-hold-items,#planet-hold-items,.rts-modal-body{
min-height:clamp(210px,46dvh,300px);max-height:min(58dvh,380px);
}
.dm-send-control{
padding-left:10px;padding-right:10px;
}
.dm-close-control,.ship-hold-close-control,.planet-hold-close-control,.rts-modal-close{
min-width:86px;min-height:32px;padding:5px 10px;
}
}
.rts-modal-header .rts-modal-close{
position:static;width:28px !important;min-width:28px !important;height:28px !important;min-height:28px !important;padding:0 !important;font-size:0 !important;display:inline-flex;align-items:center;justify-content:center;align-self:center;justify-self:end;
}
.rts-modal-header .rts-modal-close .rts-icon{
width:12px;height:12px;margin:0;
}
.terraform-preview-btn{
grid-template-columns:auto 1fr !important;
}
.terraform-btn-change{
text-align:center;white-space:nowrap;
}
.module-title{
display:inline-flex;align-items:center;gap:5px;min-width:0;overflow:hidden;
}
.module-title .rts-icon{
flex:0 0 13px;width:13px;height:13px;color:var(--text-accent);opacity:.86;
}
.module-title .module-slot{
min-width:0;
}
.module-head-meta{
display:inline-flex;align-items:center;gap:4px;flex:0 0 auto;
}
.module-name{
padding-left:0;
}
.climate-value-meter{
margin:5px 0 7px;
background:linear-gradient(90deg,rgba(224,64,64,.18) 0%,rgba(214,182,66,.14) 25%,rgba(48,208,96,.16) 50%,rgba(214,182,66,.14) 75%,rgba(224,64,64,.18) 100%),rgba(0,0,0,.35);
}
.climate-value-meter span{
transition:background .18s ease;
}
#planet-biosphere-section{
margin-top:10px;
}
#planet-biosphere-section .card-title{
margin-bottom:8px;
}
.planet-biosphere-block{
margin-top:0 !important;padding-top:0 !important;border-top:0 !important;
}
.biosphere-card-grid{
grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px !important;margin-bottom:0 !important;
}
.biosphere-card-grid .bio-climate-step{
grid-column:auto !important;min-height:96px;
}
.bio-climate-step .bio-climate-control{
margin-top:2px;padding:0;border:0;background:transparent;box-shadow:none;
}
.bio-climate-step .bio-climate-control-head{
margin-bottom:4px;
}
.climate-value-meter{
margin:5px 0 7px;
background:linear-gradient(90deg,rgba(224,64,64,.18) 0%,rgba(214,182,66,.14) 25%,rgba(48,208,96,.16) 50%,rgba(214,182,66,.14) 75%,rgba(224,64,64,.18) 100%),rgba(0,0,0,.35);
}
.climate-value-meter span{
transition:background .18s ease;
}
.terraform-preview-row{
align-items:stretch;
}
.terraform-preview-row .terraform-preview-btn{
min-height:30px !important;grid-template-columns:auto minmax(0,1fr)!important;grid-template-rows:1fr !important;align-items:center !important;text-align:center !important;
}
.terraform-btn-sign{
grid-row:auto !important;width:16px !important;height:auto !important;align-self:center !important;line-height:1 !important;
}
.terraform-btn-change{
align-self:center !important;line-height:1 !important;text-align:center;
}
@media(max-width:360px){
.biosphere-card-grid{
grid-template-columns:1fr !important;
}
}
.owner-profile-btn{
min-height:24px !important;height:24px !important;padding:2px 7px !important;font-size:8px !important;line-height:1 !important;width:auto !important;max-width:170px;display:inline-flex !important;align-items:center;justify-content:center;box-shadow:inset 1px 1px 0 rgba(255,255,255,.045),inset -1px -1px 0 rgba(0,0,0,.62)!important;
}
.owner-profile-btn .rts-icon{
width:11px;height:11px;
}
.planet-owner-stockpile{
margin-top:8px;
}
.planet-owner-stockpile .planet-hold-card{
width:100%;
}
.terraform-preview-row .terraform-preview-btn{
grid-template-columns:auto minmax(0,1fr) !important;column-gap:4px !important;
}
.terraform-btn-energy{
align-self:center;justify-self:end;color:var(--text-muted);font-size:7px;line-height:1;letter-spacing:0;white-space:nowrap;text-transform:uppercase;
}
.terraform-btn-energy,.bio-add-btn strong{
display:inline-flex;align-items:center;justify-content:flex-end;gap:2px;
}
.terraform-btn-energy .rts-icon,.bio-add-btn strong .rts-icon{
width:10px;height:10px;margin:0;flex:0 0 10px;
}
#planet-biosphere-section .planet-biosphere-block,#planet-biosphere-section .biosphere-health,#ship-modules .module-grid{
background:transparent;border:0;box-shadow:none;
}
#lb-table-section .leaderboard-table,#myplanets-table-section .myplanets-table{
background:rgba(2,7,10,.34);border-color:rgba(68,208,191,.18);box-shadow:none;
}
.section>.card-title,.section>.card-title.secondary-title,.card-title.secondary-title{
min-height:24px !important;margin:-1px -1px 9px !important;padding:5px 7px !important;display:flex !important;align-items:center !important;gap:6px !important;background:linear-gradient(180deg,rgba(8,24,29,.92),rgba(3,9,12,.98)),repeating-linear-gradient(90deg,rgba(255,255,255,.04)0 1px,transparent 1px 4px)!important;border:1px solid var(--accent)!important;box-shadow:inset 1px 1px 0 rgba(144,255,238,.16),inset -1px -1px 0 rgba(0,0,0,.86),0 0 8px rgba(68,208,191,.08)!important;color:#e5fffb !important;font-size:9px !important;font-weight:700 !important;line-height:1 !important;letter-spacing:.14em !important;text-transform:uppercase !important;text-shadow:1px 1px 0 #000,0 0 8px rgba(68,208,191,.22)!important;border-bottom-width:1px !important;
}
#myplanets-table-section .myplanets-search-group{
margin:8px 0 10px;
}

.map-sensor-controls{
display:grid;grid-template-columns:1fr;gap:8px;margin:0 0 8px;align-items:stretch;
}
.map-sensor-controls .btn{
margin:0;min-height:32px;
}
@media(max-width:420px){
.map-target-actions{grid-template-columns:1fr;}
}

.map-stance-btn{
width:100%;justify-content:center;letter-spacing:.08em;
--stance-color:var(--accent);
--stance-glow:rgba(68,208,191,.22);
--stance-bg:rgba(68,208,191,.07);
border-color:var(--stance-color) !important;
background:linear-gradient(180deg,var(--stance-bg),rgba(2,7,10,.72)) !important;
box-shadow:inset 1px 1px 0 rgba(255,255,255,.08),inset -1px -1px 0 rgba(0,0,0,.78),0 0 10px var(--stance-glow) !important;
transition:background .12s ease,border-color .12s ease,box-shadow .12s ease,color .12s ease;
}
.map-stance-btn strong{
color:var(--stance-color);
text-shadow:0 0 8px var(--stance-glow),1px 1px 0 #000;
}
.map-stance-btn[data-stance="neutral"]{
--stance-color:#9fb7ba;
--stance-glow:rgba(159,183,186,.24);
--stance-bg:rgba(159,183,186,.08);
}
.map-stance-btn[data-stance="aggressive"]{
--stance-color:#ff5f4f;
--stance-glow:rgba(255,95,79,.30);
--stance-bg:rgba(255,95,79,.10);
}
.map-stance-btn[data-stance="defensive"]{
--stance-color:#57a8ff;
--stance-glow:rgba(87,168,255,.30);
--stance-bg:rgba(87,168,255,.10);
}
.map-stance-btn[data-stance="evasive"]{
--stance-color:#8dff91;
--stance-glow:rgba(141,255,145,.26);
--stance-bg:rgba(141,255,145,.09);
}
.inventory-item-row.item-row-actionable{
grid-template-columns:1fr !important;row-gap:0;transition:background .12s ease,border-color .12s ease;
}
.inventory-item-main{
display:grid;grid-template-columns:minmax(0,1fr)auto auto;align-items:center;column-gap:8px;width:100%;
}
.inventory-item-expand-indicator{
color:var(--text-muted);font-size:10px;line-height:1;transition:transform .14s ease,color .14s ease;
}
.inventory-item-row.is-expanded{
background:rgba(68,208,191,.085)!important;border-bottom-color:rgba(68,208,191,.22)!important;
}
.inventory-item-row.is-expanded .inventory-item-expand-indicator{
color:var(--text-accent);transform:rotate(180deg);
}
.inventory-inline-actions{
display:none;grid-template-columns:repeat(auto-fit,minmax(78px,1fr));gap:6px;width:100%;padding:7px 0 2px;margin-top:4px;border-top:1px solid rgba(68,208,191,.14);
}
.inventory-item-row.is-expanded .inventory-inline-actions{
display:grid;
}
.inventory-inline-action-btn{
min-height:28px !important;justify-content:center;font-size:8px !important;white-space:nowrap;
}
.inventory-inline-action-btn .rts-icon{
width:12px;height:12px;
}
.inventory-inline-transfer{
display:none;width:100%;margin-top:6px;padding:7px 0 2px;border-top:1px solid rgba(68,208,191,.14);
}
.inventory-item-row.is-transfer-open .inventory-inline-transfer{
display:grid;gap:6px;
}
.inventory-item-row.is-transfer-open .inventory-inline-actions{
display:none;
}
.inventory-inline-transfer-row,.inventory-inline-transfer-actions{
display:grid;align-items:center;gap:6px;
}
.inventory-inline-transfer-row{
grid-template-columns:auto 32px minmax(30px,auto)32px minmax(52px,auto);
}
.inventory-inline-transfer-actions{
grid-template-columns:minmax(0,1fr)auto;
}
.inventory-inline-transfer-label{
color:var(--text-muted);font-size:9px;text-transform:uppercase;letter-spacing:.1em;
}
.inventory-inline-transfer-value{
min-width:30px;min-height:26px;display:inline-flex;align-items:center;justify-content:center;color:var(--text-accent);font-weight:800;font-size:11px;background:rgba(2,10,18,.42);border:1px solid rgba(68,208,191,.22);box-shadow:inset 0 0 8px rgba(0,0,0,.35);
}
.inventory-qty-btn,.inventory-qty-max,.inventory-transfer-confirm,.inventory-transfer-cancel{
min-height:28px !important;justify-content:center;font-size:8px !important;white-space:nowrap;
}
.inventory-qty-btn{
padding-left:0 !important;padding-right:0 !important;font-size:12px !important;
}
.inventory-transfer-confirm .rts-icon{
width:12px;height:12px;
}
.inventory-item-row.is-transfer-busy .inventory-inline-transfer{
opacity:.62;pointer-events:none;
}
#top-bar #account-btn,#top-bar #bell-btn,#top-bar #mission-btn,#top-bar #rankings-btn{
background:rgba(5,12,18,.34)!important;border:1px solid rgba(68,208,191,.30)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.035)!important;text-shadow:none !important;transform:none !important;filter:none !important;
}
#top-bar #account-btn{
color:var(--text-accent)!important;padding:5px 8px !important;
}
#top-bar #bell-btn,#top-bar #mission-btn,#top-bar #rankings-btn{
color:var(--text-muted)!important;
}
#top-bar #account-btn:hover:not(:disabled),#top-bar #bell-btn:hover,#top-bar #mission-btn:hover,#top-bar #rankings-btn:hover{
background:rgba(68,208,191,.10)!important;border-color:rgba(68,208,191,.55)!important;color:var(--text-accent)!important;
}
#top-bar #bell-btn.has-unread{
color:var(--warn)!important;border-color:rgba(255,211,106,.45)!important;
}
#top-bar #mission-btn.has-objective{
color:var(--success)!important;border-color:rgba(110,240,170,.45)!important;
}
#top-bar #account-btn:active:not(:disabled),#top-bar #bell-btn:active,#top-bar #mission-btn:active,#top-bar #rankings-btn:active{
transform:none !important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.05)!important;
}
.leaderboard-table .leaderboard-player-name{
appearance:none !important;-webkit-appearance:none !important;min-width:0 !important;max-width:100% !important;width:auto !important;padding:1px 0 !important;margin:0 !important;border:0 !important;border-radius:0 !important;background:transparent !important;box-shadow:none !important;color:rgba(208,234,248,.92)!important;display:inline-block !important;overflow:hidden !important;text-overflow:ellipsis !important;white-space:nowrap !important;font:inherit !important;font-size:10px !important;font-weight:700 !important;line-height:1.2 !important;letter-spacing:.035em !important;text-align:left !important;text-transform:none !important;text-shadow:1px 1px 0 #000;cursor:pointer;transform:none !important;
}
.leaderboard-table .leaderboard-player-name::after{
content:'›';margin-left:5px;color:rgba(68,208,191,.55);font-size:11px;vertical-align:-0.02em;
}
.leaderboard-table .leaderboard-player-name:hover,.leaderboard-table .leaderboard-player-name:focus-visible{
color:var(--text-accent)!important;outline:none !important;text-decoration:none !important;
}
.leaderboard-table .leaderboard-player-name:focus-visible{
box-shadow:0 1px 0 rgba(68,208,191,.75)!important;
}
.leaderboard-table .leaderboard-player-name:active{
transform:none !important;filter:brightness(1.12);
}
.leaderboard-table .leaderboard-player-name.text-self{
color:var(--player-self)!important;
}
.leaderboard-table .leaderboard-player-name.text-self::after{
color:rgba(255,211,106,.62);
}

/* Top bar username menu: flat like the other top-bar controls */
#top-bar .account-menu,
#top-bar #account-btn,
#top-bar .account-dropdown,
#top-bar .account-dropdown button{
  filter:none !important;
  transform:none !important;
}
#top-bar .account-dropdown{
  background:rgba(5,12,18,.94)!important;
  border:1px solid rgba(68,208,191,.30)!important;
  border-radius:0 !important;
  box-shadow:0 8px 18px rgba(0,0,0,.42)!important;
}
#top-bar .account-dropdown button{
  background:transparent !important;
  border:0 !important;
  border-bottom:1px solid rgba(68,208,191,.16)!important;
  box-shadow:none !important;
  color:var(--text-muted)!important;
  text-shadow:none !important;
}
#top-bar .account-dropdown button:last-child{
  border-bottom:0 !important;
}
#top-bar .account-dropdown button:hover,
#top-bar .account-dropdown button:focus-visible{
  background:rgba(68,208,191,.10)!important;
  color:var(--text-accent)!important;
  outline:none !important;
}
#top-bar .account-dropdown button:active{
  transform:none !important;
  box-shadow:none !important;
}

/* Sound/music menu state colors: keep flat menu, restore ON/OFF color distinction */
#top-bar #sound-menu-btn.sound-off,
#top-bar #music-menu-btn.music-off{
  color:rgba(255,208,201,.82)!important;
}
#top-bar #sound-menu-btn:not(.sound-off),
#top-bar #music-menu-btn:not(.music-off){
  color:var(--text-accent)!important;
}
#top-bar #sound-menu-btn.sound-off:hover,
#top-bar #sound-menu-btn.sound-off:focus-visible,
#top-bar #music-menu-btn.music-off:hover,
#top-bar #music-menu-btn.music-off:focus-visible{
  color:rgba(255,232,227,.96)!important;
}
#top-bar #sound-menu-btn:not(.sound-off):hover,
#top-bar #sound-menu-btn:not(.sound-off):focus-visible,
#top-bar #music-menu-btn:not(.music-off):hover,
#top-bar #music-menu-btn:not(.music-off):focus-visible{
  color:var(--text-bright)!important;
}
/* Planet owner link: match leaderboard player-name link */
#planet-command .planet-owner-name-link{
appearance:none !important;-webkit-appearance:none !important;min-width:0 !important;max-width:100% !important;width:auto !important;height:auto !important;min-height:0 !important;padding:1px 0 !important;margin:0 !important;border:0 !important;border-radius:0 !important;background:transparent !important;box-shadow:none !important;color:rgba(208,234,248,.92)!important;display:inline-block !important;overflow:hidden !important;text-overflow:ellipsis !important;white-space:nowrap !important;font:inherit !important;font-size:10px !important;font-weight:700 !important;line-height:1.2 !important;letter-spacing:.035em !important;text-align:left !important;text-transform:none !important;text-shadow:1px 1px 0 #000;cursor:pointer;transform:none !important;
}
#planet-command .planet-owner-name-link::after{
content:'›';margin-left:5px;color:rgba(68,208,191,.55);font-size:11px;vertical-align:-0.02em;
}
#planet-command .planet-owner-name-link:hover,#planet-command .planet-owner-name-link:focus-visible{
color:var(--text-accent)!important;outline:none !important;text-decoration:none !important;
}
#planet-command .planet-owner-name-link:focus-visible{
box-shadow:0 1px 0 rgba(68,208,191,.75)!important;
}
#planet-command .planet-owner-name-link:active{
transform:none !important;filter:brightness(1.12);
}
#planet-command .planet-owner-name-link.text-self{
color:var(--player-self)!important;
}
#planet-command .planet-owner-name-link.text-self::after{
color:rgba(255,211,106,.62);
}

/* Attack preview modal ----------------------------------------------------- */
.attack-preview-modal .rts-modal-box{
  max-width: 430px;
}
.attack-preview-panel{
  display:grid;
  gap:10px;
}
.attack-preview-target{
  border:1px solid var(--border);
  background:rgba(0,0,0,.18);
  padding:9px 10px;
  box-shadow:inset 0 1px rgba(255,255,255,.08), inset 0 -1px rgba(0,0,0,.42);
}
.attack-preview-name{
  font-family:var(--mono);
  font-weight:900;
  color:var(--text-bright);
  letter-spacing:.03em;
  text-transform:uppercase;
}
.attack-preview-owner{
  margin-top:3px;
  font-size:11px;
  color:var(--text-muted);
  text-transform:uppercase;
}
.attack-preview-grid{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  gap:8px;
  align-items:stretch;
}
.attack-preview-success{
  border:1px solid rgba(255,255,255,.14);
  background:rgba(0,0,0,.22);
  padding:9px 10px;
  display:grid;
  grid-template-columns:1fr auto;
  gap:2px 10px;
  align-items:center;
  box-shadow:inset 0 1px rgba(255,255,255,.08), inset 0 -1px rgba(0,0,0,.42);
}
.attack-preview-success span{
  color:var(--text-muted);
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.attack-preview-success strong{
  font-family:var(--mono);
  font-size:20px;
  font-weight:900;
  color:var(--text-bright);
  text-shadow:0 1px rgba(0,0,0,.8);
}
.attack-preview-success small{
  grid-column:1 / -1;
  color:var(--text-muted);
  font-size:10px;
  line-height:1.25;
  text-transform:uppercase;
}
.attack-preview-success-good{
  border-color:rgba(114,192,80,.55);
  background:rgba(36,90,42,.22);
}
.attack-preview-success-good strong{
  color:var(--success);
}
.attack-preview-success-even{
  border-color:rgba(214,154,45,.58);
  background:rgba(104,70,20,.22);
}
.attack-preview-success-even strong{
  color:var(--warn);
}
.attack-preview-success-bad{
  border-color:rgba(191,62,45,.62);
  background:rgba(100,22,18,.24);
}
.attack-preview-success-bad strong{
  color:var(--danger);
}
.attack-preview-success-unknown strong{
  font-size:14px;
  color:var(--text-muted);
}
.attack-preview-side{
  border:1px solid var(--border);
  background:rgba(0,0,0,.14);
  padding:8px;
}
.attack-preview-side-title{
  font-family:var(--mono);
  font-size:11px;
  font-weight:900;
  color:var(--text-muted);
  text-transform:uppercase;
  margin-bottom:6px;
}
.attack-preview-stat{
  display:flex;
  justify-content:space-between;
  gap:8px;
  font-size:12px;
  padding:3px 0;
  border-top:1px solid rgba(255,255,255,.06);
}
.attack-preview-stat:first-of-type{
  border-top:0;
}
.attack-preview-stat span{
  color:var(--text-muted);
}
.attack-preview-stat strong{
  color:var(--text-bright);
  font-family:var(--mono);
}
.attack-preview-vs{
  align-self:center;
  font-family:var(--mono);
  font-size:12px;
  font-weight:900;
  color:var(--danger, #ff6b78);
  text-shadow:0 1px rgba(0,0,0,.7);
}
.attack-preview-warning{
  border:1px solid rgba(255, 107, 120, .45);
  background:rgba(120, 0, 20, .18);
  color:var(--text-bright);
  padding:8px 10px;
  font-size:12px;
  line-height:1.35;
}
.attack-preview-actions{
  justify-content:flex-end;
}
.attack-preview-confirm{
  min-width:112px;
}
@media (max-width: 420px){
  .attack-preview-grid{
    grid-template-columns:1fr;
  }
  .attack-preview-vs{
    text-align:center;
  }
}

/* Hide removed module upgrade/equip actions cleanly. */
.module-actions-unequip-only{
  grid-template-columns:34px;
  justify-content:end;
}

/* Terraform +/- buttons: match ship action button cost layout */
.terraform-preview-row .terraform-preview-btn{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:4px !important;
  grid-template-columns:none !important;
  grid-template-rows:none !important;
  text-align:center !important;
}
.terraform-preview-row .terraform-btn-sign{
  width:auto !important;
  height:auto !important;
  grid-row:auto !important;
  align-self:center !important;
  line-height:1 !important;
}
.terraform-preview-row .terraform-btn-energy{
  align-self:center !important;
  justify-self:auto !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:2px !important;
  color:rgba(208,234,248,.76) !important;
  font-size:8px !important;
  font-weight:700 !important;
  font-variant-numeric:tabular-nums !important;
  line-height:1 !important;
  white-space:nowrap !important;
  text-transform:none !important;
}
.terraform-preview-row .terraform-btn-energy .rts-icon{
  width:10px !important;
  height:10px !important;
  flex:0 0 10px !important;
  margin:0 !important;
}


/* Compact installed module cards after removing Upgrade/Equip actions. */
#ship-modules .card-title{
  margin-bottom:6px !important;
}
#ship-modules .module-grid{
  gap:5px !important;
}
#ship-modules .module-card{
  padding:5px 6px !important;
}
#ship-modules .module-head{
  min-height:20px !important;
  margin-bottom:2px !important;
  gap:5px !important;
}
#ship-modules .module-title{
  gap:4px !important;
}
#ship-modules .module-title .rts-icon{
  flex-basis:12px !important;
  width:12px !important;
  height:12px !important;
}
#ship-modules .module-slot{
  font-size:7px !important;
  letter-spacing:.1em !important;
}
#ship-modules .module-head-meta{
  gap:3px !important;
}
#ship-modules .module-bonus{
  min-height:15px !important;
  padding:0 5px !important;
  font-size:7px !important;
}
#ship-modules .module-name{
  min-height:17px !important;
  font-size:10px !important;
  line-height:1.15 !important;
  justify-content:flex-start !important;
  gap:5px !important;
}
#ship-modules .module-name span{
  flex:0 1 auto !important;
  min-width:0 !important;
}
#ship-modules .module-card-compact .module-unequip{
  width:22px !important;
  min-width:22px !important;
  min-height:20px !important;
  height:20px !important;
  padding:0 !important;
}
#ship-modules .module-card-compact .module-unequip .rts-icon{
  width:9px !important;
  height:9px !important;
}
#ship-modules .module-card-compact .module-actions{
  display:none !important;
}
#ship-modules .module-empty .module-name{
  min-height:16px !important;
  color:rgba(178,196,205,.68) !important;
}

/* ── Forge screen ──────────────────────────────────────────────────────────── */
.forge-section{
  padding:10px;
}
.forge-card{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.forge-intro{
  display:flex;
  flex-direction:column;
  gap:3px;
  padding:9px 10px;
  border:1px solid var(--border-subtle);
  border-radius:var(--radius);
  background:rgba(0,0,0,.14);
  color:var(--text-muted);
  font-size:10px;
  line-height:1.35;
}
.forge-intro strong{
  color:var(--text-bright);
  font-size:11px;
}
.forge-step{
  padding:10px;
  border:1px solid var(--border-subtle);
  border-radius:var(--radius);
  background:rgba(255,255,255,.025);
}
.forge-step-head{
  display:flex;
  align-items:flex-start;
  gap:8px;
  margin-bottom:9px;
}
.forge-step-index{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:20px;
  height:20px;
  flex:0 0 20px;
  border:1px solid var(--accent-dim);
  border-radius:999px;
  color:var(--text-accent);
  background:var(--tint-accent-chip);
  font-size:9px;
  font-weight:700;
  line-height:1;
}
.forge-step-title{
  color:var(--text-bright);
  font-size:11px;
  font-weight:700;
  line-height:1.1;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.forge-step-sub{
  margin-top:3px;
  color:var(--text-muted);
  font-size:9px;
  line-height:1.3;
}
.forge-module-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
}
.forge-module-grid .form-group,
.forge-item-name-group{
  margin-bottom:0;
}

.forge-slot-group{
  gap:6px;
}
.forge-slot-picker{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
  padding:6px;
  border:1px solid rgba(191,255,244,.10);
  border-radius:calc(var(--radius) + 2px);
  background:linear-gradient(180deg,rgba(191,255,244,.035),rgba(0,0,0,.16));
  box-shadow:inset 1px 1px 0 rgba(191,255,244,.05),inset -1px -1px 0 rgba(0,0,0,.65);
}
.forge-slot-choice{
  position:relative;
  display:flex;
  align-items:center;
  gap:7px;
  min-height:46px;
  padding:8px;
  border:1px solid var(--border-subtle);
  border-radius:var(--radius);
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(0,0,0,.24));
  box-shadow:inset 1px 1px 0 rgba(191,255,244,.055),inset -1px -1px 0 rgba(0,0,0,.72);
  color:var(--text-muted);
  font:inherit;
  text-align:left;
  cursor:pointer;
  overflow:hidden;
  transition:border-color .12s ease,background .12s ease,color .12s ease,transform .12s ease,box-shadow .12s ease;
}
.forge-slot-choice::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(120deg,rgba(255,255,255,.08),transparent 42%);
  opacity:.18;
}
.forge-slot-choice:hover{
  border-color:rgba(191,255,244,.20);
  color:var(--text-bright);
  transform:translateY(-1px);
}
.forge-slot-choice.is-active{
  border-color:var(--accent-dim);
  background:linear-gradient(180deg,rgba(68,208,191,.18),rgba(0,0,0,.24));
  color:var(--text-accent);
  box-shadow:inset 1px 1px 0 rgba(191,255,244,.16),inset -1px -1px 0 rgba(0,0,0,.78),0 0 0 1px rgba(68,208,191,.08),0 0 14px rgba(68,208,191,.10);
}
.forge-slot-choice.is-active::before{
  content:"";
  position:absolute;
  right:7px;
  top:7px;
  width:5px;
  height:5px;
  border-radius:50%;
  background:var(--text-accent);
  box-shadow:0 0 8px rgba(68,208,191,.65);
}
.forge-slot-choice:focus-visible{
  outline:1px solid var(--text-accent);
  outline-offset:2px;
}
.forge-slot-choice-icon{
  display:grid;
  place-items:center;
  flex:0 0 28px;
  width:28px;
  height:28px;
  border:1px solid rgba(191,255,244,.10);
  border-radius:8px;
  background:rgba(0,0,0,.22);
  box-shadow:inset 1px 1px 0 rgba(191,255,244,.05),inset -1px -1px 0 rgba(0,0,0,.65);
}
.forge-slot-choice-icon .rts-icon{
  width:15px;
  height:15px;
}
.forge-slot-choice-copy{
  display:flex;
  flex-direction:column;
  min-width:0;
  gap:3px;
}
.forge-slot-choice-name{
  display:block;
  overflow:hidden;
  color:var(--text-bright);
  font-size:9px;
  font-weight:800;
  line-height:1;
  letter-spacing:.055em;
  text-overflow:ellipsis;
  text-transform:uppercase;
  white-space:nowrap;
}
.forge-slot-choice-hint{
  display:block;
  overflow:hidden;
  color:var(--text-muted);
  font-size:8px;
  font-weight:600;
  line-height:1;
  letter-spacing:.02em;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.forge-slot-choice.is-active .forge-slot-choice-name,
.forge-slot-choice.is-active .forge-slot-choice-hint{
  color:var(--text-accent);
}
@media (min-width:720px){
  .forge-slot-picker{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
}


.forge-ball-list{
  display:flex;
  flex-direction:column;
  gap:7px;
}
.forge-ball-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(128px,38%);
  align-items:center;
  gap:10px;
  padding:8px;
  border:1px solid var(--border-subtle);
  border-radius:var(--radius);
  background:rgba(0,0,0,.12);
}
.forge-ball-main{
  min-width:0;
}
.forge-ball-title{
  display:flex;
  align-items:center;
  gap:5px;
  color:var(--text-bright);
  font-size:10px;
  line-height:1.15;
}
.forge-ball-title span{
  color:var(--text-muted);
  font-size:8px;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.forge-ball-rule{
  margin-top:3px;
  color:var(--text-muted);
  font-size:9px;
  line-height:1.25;
}
.forge-ball-have{
  margin-top:4px;
  color:var(--text-accent);
  font-size:8px;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.forge-ball-slider-wrap{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:6px;
  padding:6px;
  border:1px solid var(--border-subtle);
  background:var(--screen-gradient),rgba(0,0,0,.18);
  box-shadow:inset 1px 1px 0 rgba(191,255,244,.08),inset -1px -1px 0 rgba(0,0,0,.75);
}
.forge-ball-slider-value{
  min-height:22px;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  padding:0 7px;
  border:1px solid var(--accent-dim);
  background:rgba(0,0,0,.28);
  box-shadow:inset 1px 1px 0 rgba(191,255,244,.08),inset -1px -1px 0 rgba(0,0,0,.8);
  color:var(--text-bright);
  font-size:11px;
  font-weight:700;
  line-height:1;
}
.forge-ball-input{
  width:100%;
  min-width:0;
}
.forge-ball-slider{
  --forge-fill:0%;
  appearance:none;
  -webkit-appearance:none;
  height:24px;
  padding:0;
  border:0;
  background:transparent;
  cursor:pointer;
}
.forge-ball-slider::-webkit-slider-runnable-track{
  height:10px;
  border:1px solid var(--border);
  background:linear-gradient(90deg,var(--accent-dim) 0 var(--forge-fill),rgba(68,208,191,.13) var(--forge-fill) 100%),repeating-linear-gradient(90deg,rgba(255,255,255,.08)0 1px,transparent 1px 6px),#05090b;
  box-shadow:inset 1px 1px 0 #000,inset -1px -1px 0 rgba(191,255,244,.08);
}
.forge-ball-slider::-webkit-slider-thumb{
  -webkit-appearance:none;
  width:18px;
  height:18px;
  margin-top:-5px;
  border:1px solid var(--accent);
  background:linear-gradient(180deg,rgba(40,78,83,.98),rgba(8,22,26,.98));
  box-shadow:inset 1px 1px 0 rgba(191,255,244,.26),inset -1px -1px 0 #000,0 0 8px rgba(68,208,191,.18);
}
.forge-ball-slider::-moz-range-track{
  height:10px;
  border:1px solid var(--border);
  background:rgba(68,208,191,.13);
  box-shadow:inset 1px 1px 0 #000,inset -1px -1px 0 rgba(191,255,244,.08);
}
.forge-ball-slider::-moz-range-progress{
  height:10px;
  background:var(--accent-dim);
}
.forge-ball-slider::-moz-range-thumb{
  width:18px;
  height:18px;
  border:1px solid var(--accent);
  border-radius:0;
  background:linear-gradient(180deg,rgba(40,78,83,.98),rgba(8,22,26,.98));
  box-shadow:inset 1px 1px 0 rgba(191,255,244,.26),inset -1px -1px 0 #000,0 0 8px rgba(68,208,191,.18);
}
.forge-ball-slider:focus-visible::-webkit-slider-thumb{
  outline:1px solid var(--text-accent);
  outline-offset:2px;
}
.forge-ball-slider:focus-visible::-moz-range-thumb{
  outline:1px solid var(--text-accent);
  outline-offset:2px;
}
.forge-ball-slider.input-error::-webkit-slider-runnable-track{
  border-color:var(--accent-err, #e53e3e);
}
.forge-ball-slider.input-error::-moz-range-track{
  border-color:var(--accent-err, #e53e3e);
}
.forge-ball-slider-max{
  color:var(--text-muted);
  font-size:8px;
  line-height:1;
  text-align:right;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.forge-result-step{
  background:rgba(191,255,244,.035);
}
.forge-total-box,
.forge-bonus-preview{
  padding:8px 9px;
  border:1px solid var(--border-subtle);
  border-radius:var(--radius);
  background:rgba(0,0,0,.16);
  color:var(--text-muted);
  font-size:10px;
  line-height:1.35;
}
.forge-bonus-preview{
  margin-top:7px;
}
.forge-bonus-preview strong{
  color:var(--text-bright);
}
.forge-bonus-preview.forge-bonus-ok,
.forge-total-box.forge-bonus-ok{
  border-color:var(--accent-dim);
  color:var(--text-accent);
}
.forge-bonus-preview.forge-bonus-warn,
.forge-total-box.forge-bonus-warn{
  border-color:#d97706;
  color:#d97706;
}
.forge-bonus-none,
.forge-total-box.forge-bonus-none{
  border-color:rgba(229,62,62,.45);
  color:var(--accent-err, #e53e3e);
}
.forge-exceptional-warn{
  margin-top:7px;
  font-size:9px;
  font-weight:700;
  padding:7px 8px;
  border-radius:var(--radius);
  line-height:1.25;
}
.forge-exceptional-warn.forge-exceptional-active{
  background:rgba(217,119,6,.15);
  color:#d97706;
  border:1px solid rgba(217,119,6,.4);
}
.forge-exceptional-warn.forge-exceptional-over{
  background:rgba(229,62,62,.1);
  color:var(--accent-err, #e53e3e);
  border:1px solid rgba(229,62,62,.3);
}
.forge-primary-action{
  margin-top:2px;
}
.forge-item-card{
  gap:10px;
}
@media (max-width:420px){
  .forge-ball-row{
    grid-template-columns:1fr;
    align-items:stretch;
    padding:7px;
  }
  .forge-ball-rule{
    font-size:8px;
  }
  .forge-ball-slider-value,
  .forge-ball-slider-max{
    text-align:center;
    justify-content:center;
  }
}
.chip-exceptional{
  background:linear-gradient(135deg,#b7791f,#d4a017);
  color:#fff;
  font-size:8px !important;
  font-weight:700;
  padding:1px 5px !important;
  letter-spacing:.5px;
  border:1px solid #92610a;
}
input.input-error{
  border-color:var(--accent-err, #e53e3e) !important;
  color:var(--accent-err, #e53e3e);
}
.module-color-bonus{
  display:inline-flex;
  align-items:center;
  gap:2px;
  font-size:8px !important;
  padding:0 3px !important;
  opacity:.85;
}
.form-hint{
  font-size:11px;
  color:var(--text-muted);
  margin:0 0 10px;
}
.planet-header-ball-value{
display:inline-flex;align-items:center;justify-content:flex-end;gap:6px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.planet-header-ball-value .bio-output-item{
display:inline-flex;align-items:center;gap:5px;min-width:0;
}
.planet-header-ball-value .bio-output-item span{
min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}

/* Planet synesthesia: tactile-looking feedback for level and stability gains. */
#planet-command{
position:relative;
}
.planet-sensory-rise{
animation:planet-sensory-rise .9s cubic-bezier(.16,1,.3,1);
}
.planet-sensory-level{
box-shadow:0 0 0 1px rgba(68,208,191,.75),0 0 18px rgba(68,208,191,.42),inset 0 1px 0 rgba(255,255,255,.22)!important;
}
.planet-sensory-stability{
box-shadow:0 0 0 1px rgba(48,208,96,.72),0 0 16px rgba(48,208,96,.38),inset 0 1px 0 rgba(255,255,255,.18)!important;
}
.planet-sensory-burst{
pointer-events:none;position:absolute;right:12px;top:44px;z-index:8;display:flex;align-items:center;justify-content:center;min-width:96px;padding:7px 10px;border:1px solid rgba(68,208,191,.48);background:linear-gradient(180deg,rgba(68,208,191,.16),rgba(2,7,10,.88));box-shadow:0 0 20px rgba(68,208,191,.28),inset 1px 1px 0 rgba(255,255,255,.08),inset -1px -1px 0 rgba(0,0,0,.7);color:var(--text-bright);font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;animation:planet-sensory-burst 1.25s cubic-bezier(.16,1,.3,1) forwards;
}
.planet-sensory-burst::before,.planet-sensory-burst::after{
content:"";position:absolute;inset:-5px;border:1px solid currentColor;opacity:.28;animation:planet-sensory-ring 1.15s ease-out forwards;
}
.planet-sensory-burst::after{
inset:-10px;opacity:.16;animation-delay:.08s;
}
.planet-sensory-burst-level{
color:rgba(191,255,244,.96);border-color:rgba(68,208,191,.62);
}
.planet-sensory-burst-stability{
color:rgba(187,255,205,.96);border-color:rgba(48,208,96,.62);background:linear-gradient(180deg,rgba(48,208,96,.14),rgba(2,7,10,.88));box-shadow:0 0 20px rgba(48,208,96,.24),inset 1px 1px 0 rgba(255,255,255,.08),inset -1px -1px 0 rgba(0,0,0,.7);
}
@keyframes planet-sensory-rise{
0%{transform:scale(1);filter:brightness(1)}
26%{transform:scale(1.035);filter:brightness(1.35) saturate(1.25)}
52%{transform:scale(.995);filter:brightness(1.08) saturate(1.08)}
100%{transform:scale(1);filter:brightness(1)}
}
@keyframes planet-sensory-burst{
0%{opacity:0;transform:translateY(7px) scale(.92);filter:blur(2px)}
18%{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}
70%{opacity:1;transform:translateY(-5px) scale(1.02)}
100%{opacity:0;transform:translateY(-16px) scale(.98)}
}
@keyframes planet-sensory-ring{
0%{transform:scale(.86);opacity:.34}
100%{transform:scale(1.18);opacity:0}
}
@media(prefers-reduced-motion:reduce){
.planet-sensory-rise,.planet-sensory-burst,.planet-sensory-burst::before,.planet-sensory-burst::after{animation:none!important;}
.planet-sensory-burst{opacity:1;}
}

/* Manage profile: aligned with regular in-game sections */
.profile-screen{
  width:100%;
  max-width:560px;
  margin:0 auto;
  padding:10px 8px 0;
}
.profile-section{
  margin:0 0 8px;
}
.profile-card-title{
  justify-content:space-between;
  min-height:28px;
}
.profile-card-title .chip{
  margin-left:auto;
}
.profile-account-block{
  margin-bottom:10px;
  border:1px solid rgba(68,208,191,.12);
  background:rgba(2,7,10,.25);
}
.profile-account-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
}
.profile-name{
  max-width:210px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  text-align:right;
  text-transform:uppercase;
  color:var(--text-bright);
}
.profile-alert-slot{
  margin:0 0 9px;
}
.profile-alert-slot:empty{
  display:none;
}
.profile-alert-slot .alert{
  margin:0;
}
.profile-form-group{
  margin-bottom:9px;
}
.profile-form-group:last-of-type{
  margin-bottom:0;
}
.profile-form-group input{
  min-height:36px !important;
}
.profile-debug-row{
  margin-top:10px;
  min-height:36px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 44px;
  gap:10px;
  align-items:center;
  padding:5px 6px;
  border:1px solid rgba(214,154,45,.28);
  background:linear-gradient(90deg,rgba(5,10,13,.55),rgba(58,45,21,.18));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
  cursor:pointer;
  user-select:none;
}
.profile-debug-copy{
  min-width:0;
  display:grid;
  gap:2px;
}
.profile-switch{
  position:relative;
  width:44px;
  height:24px;
  display:block;
}
.profile-switch input{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  min-width:0 !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  opacity:0;
  appearance:none;
  -webkit-appearance:none;
  box-shadow:none !important;
  background:transparent !important;
  cursor:pointer;
  z-index:2;
}
.profile-switch-track{
  position:absolute;
  inset:0;
  display:block;
  border:1px solid var(--bevel-mid);
  border-radius:0;
  background:var(--panel-screen),var(--dither);
  box-shadow:inset 1px 1px 0 #000,inset -1px -1px 0 rgba(116,208,194,.08),1px 1px 0 rgba(0,0,0,.65);
}
.profile-switch-track::after{
  content:"";
  position:absolute;
  top:4px;
  left:4px;
  width:14px;
  height:14px;
  background:linear-gradient(180deg,#9ea78f,#4d5a60 52%,#111820 53%);
  border:1px solid #000;
  box-shadow:inset 1px 1px 0 rgba(255,255,255,.16),1px 1px 0 #000;
  transition:transform .12s ease,background .12s ease;
}
.profile-switch input:checked + .profile-switch-track{
  border-color:var(--warn);
  background:linear-gradient(180deg,rgba(58,45,21,.82),rgba(16,11,4,.92));
}
.profile-switch input:checked + .profile-switch-track::after{
  transform:translateX(20px);
  background:linear-gradient(180deg,#ffd37c,#d69a2d 52%,#6f4312 53%);
}
.profile-action-section{
  margin:0;
}
.profile-action-section .btn{
  justify-content:center;
  min-height:36px !important;
}
.profile-action-section .rts-icon{
  width:13px;
  height:13px;
  margin-right:5px;
}
@media(max-width:390px){
  .profile-screen{
    padding:7px 0 0;
  }
  .profile-account-row{
    grid-template-columns:minmax(0,1fr);
    gap:2px;
  }
  .profile-name{
    max-width:100%;
    text-align:left;
  }
  .profile-form-group input::placeholder{
    font-size:9px;
    letter-spacing:.04em;
  }
}


/* Flat drawer header controls, aligned with top-bar actions */
#notif-header #notif-mark-read,
#notif-header #notif-close,
#leaderboard-header #leaderboard-close,
#mission-header #mission-close{
  background:rgba(5,12,18,.34)!important;
  border:1px solid rgba(68,208,191,.30)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.035)!important;
  color:var(--text-muted)!important;
  text-shadow:none!important;
  transform:none!important;
  filter:none!important;
  border-radius:var(--radius)!important;
}
#notif-header #notif-mark-read{
  min-height:28px!important;
  height:28px!important;
  padding:0 9px!important;
  font-size:8px!important;
  letter-spacing:.08em!important;
}
#notif-header #notif-close,
#leaderboard-header #leaderboard-close,
#mission-header #mission-close{
  width:28px!important;
  min-width:28px!important;
  height:28px!important;
  min-height:28px!important;
  padding:0!important;
}
#notif-header #notif-mark-read:hover:not(:disabled),
#notif-header #notif-close:hover:not(:disabled),
#leaderboard-header #leaderboard-close:hover:not(:disabled),
#mission-header #mission-close:hover:not(:disabled){
  background:rgba(68,208,191,.10)!important;
  border-color:rgba(68,208,191,.55)!important;
  color:var(--text-accent)!important;
}
#notif-header #notif-mark-read:active:not(:disabled),
#notif-header #notif-close:active:not(:disabled),
#leaderboard-header #leaderboard-close:active:not(:disabled),
#mission-header #mission-close:active:not(:disabled){
  transform:none!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.05)!important;
}

/* My Planets names: text-link treatment aligned with leaderboard usernames */
.myplanets-table .myplanets-planet-name{
appearance:none !important;-webkit-appearance:none !important;min-width:0 !important;max-width:100% !important;width:auto !important;padding:1px 0 !important;margin:0 !important;border:0 !important;border-radius:0 !important;background:transparent !important;box-shadow:none !important;color:rgba(208,234,248,.92)!important;display:inline-block !important;overflow:hidden !important;text-overflow:ellipsis !important;white-space:nowrap !important;font:inherit !important;font-size:10px !important;font-weight:700 !important;line-height:1.2 !important;letter-spacing:.035em !important;text-align:left !important;text-transform:none !important;text-shadow:1px 1px 0 #000;cursor:pointer;transform:none !important;
}
.myplanets-table .myplanets-planet-name::after{
content:'›';margin-left:5px;color:rgba(68,208,191,.55);font-size:11px;vertical-align:-0.02em;
}
.myplanets-table .myplanets-planet-name:hover,.myplanets-table .myplanets-planet-name:focus-visible{
color:var(--text-accent)!important;outline:none !important;text-decoration:none !important;
}
.myplanets-table .myplanets-planet-name:focus-visible{
box-shadow:0 1px 0 rgba(68,208,191,.75)!important;
}
.myplanets-table .myplanets-planet-name:active{
transform:none !important;filter:brightness(1.12);
}

/* My Planets table density: align row height with leaderboard rows */
.myplanets-table .myplanets-row{
  min-height:32px !important;
  padding:4px 6px !important;
}
.myplanets-table .myplanets-head{
  min-height:24px !important;
  padding:3px 6px !important;
}
.myplanets-table .myplanets-planet{
  min-height:0 !important;
  justify-content:center !important;
}
.myplanets-table .myplanets-planet-name{
  min-height:0 !important;
  height:auto !important;
  padding:0 !important;
  line-height:1.2 !important;
}
.myplanets-table .myplanets-capital{
  height:18px !important;
  min-height:18px !important;
}
.myplanets-table .myplanets-level,
.myplanets-table .myplanets-bio,
.myplanets-table .myplanets-stability{
  line-height:1.2 !important;
}
