:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#e8e8ec;background-color:#14151a;font-family:Lexend,system-ui,Avenir,Helvetica,Arial,sans-serif}body{margin:0}main{max-width:1200px;margin:0 auto;padding:2rem 1.5rem}h1{margin-bottom:.25rem}h2{margin-bottom:.5rem}.tagline{color:#9aa0ad;margin-top:0}table{border-collapse:collapse;width:100%;margin-top:.5rem}th,td{text-align:left;white-space:nowrap;border-bottom:1px solid #2a2c34;padding:.5rem .75rem}tbody tr:nth-child(2n){background:#1a1c23}th.num,td.num{text-align:right;font-variant-numeric:tabular-nums}.error{color:#ff6b6b}section{margin-top:1.75rem}button{color:#e8e8ec;cursor:pointer;background:#20222b;border:1px solid #3a3d48;border-radius:6px;padding:.45rem .9rem;font-family:inherit;font-size:.9rem}button:hover:not(:disabled){background:#2a2d38}button:disabled{opacity:.5;cursor:not-allowed}.row{align-items:baseline;gap:1rem;display:flex}.spacer{flex:1}.header{flex-wrap:wrap;align-items:baseline;gap:1rem;display:flex}.header h1{margin:0}.header .char-name{color:#9aa0ad;font-size:.95rem}.header .admin-btn,.header .logout-btn{margin-left:auto;padding:.3rem .7rem;font-size:.8rem}.header .admin-btn+.logout-btn{margin-left:0}main.login{justify-content:center;align-items:center;min-height:80vh;display:flex}.login-card{text-align:center;background:#1a1c23;border:1px solid #2a2c34;border-radius:12px;padding:2.5rem 3rem}.login-card button.primary{color:#fff;background:#1f6feb;border-color:#1f6feb;margin-top:1rem;padding:.6rem 1.5rem;font-size:1rem}.login-card button.primary:hover:not(:disabled){background:#2b7cf0}.denied-msg{color:#ff6b6b;margin-top:1rem}.tabs{border-bottom:1px solid #2a2c34;gap:.5rem;margin-top:1.25rem;padding-bottom:.75rem;display:flex}.tabs button.active{color:#fff;background:#1f6feb;border-color:#1f6feb}.card{background:#16181e;border:1px solid #2a2c34;border-radius:8px;margin-top:1rem;padding:1rem 1.25rem}.card h3{margin:0 0 .25rem;font-size:1.1rem}.card-meta{color:#9aa0ad;margin:0 0 .75rem;font-size:.85rem}.slots-row{flex-wrap:wrap;gap:.75rem;margin-bottom:.75rem;display:flex}.slot-badge{color:#c7ccd6;background:#20222b;border:1px solid #3a3d48;border-radius:4px;padding:.2rem .5rem;font-size:.8rem}.expand-row{cursor:pointer;-webkit-user-select:none;user-select:none}.expand-row:hover{background:#22242d}.expand-toggle{color:#9aa0ad;margin-right:.5rem;font-size:.85rem}.sub-table{width:100%;margin:0}.sub-table td{border-bottom:1px solid #22242d;padding:.3rem .75rem;font-size:.85rem}.sub-table tr:nth-child(2n){background:#1e2028}.indent{color:#74c0fc;padding-left:2rem;font-size:.82rem}.indent-row td{border-bottom:1px solid #1e2028;padding-top:.2rem;padding-bottom:.2rem}.group-header{cursor:pointer;-webkit-user-select:none;user-select:none;border-bottom:1px solid #2a2c34;align-items:baseline;gap:.5rem;margin-top:.5rem;padding:.6rem 0;display:flex}.group-header:hover{color:#fff}.group-header h4{margin:0;font-size:.95rem}.group-count{color:#9aa0ad;font-size:.8rem;font-weight:400}.group-toggle{color:#9aa0ad;font-size:.85rem}.cat-label{text-transform:uppercase;letter-spacing:.05em;color:#6b7280;background:#1a1c23;border-radius:3px;padding:.2rem .5rem;font-size:.75rem}.cat-pi{color:#74d99a}.cat-mineral{color:#74c0fc}.cat-component{color:#ffd43b}.cat-other{color:#c7ccd6}.fuel-ticker{color:#9aa0ad;font-size:.85rem;font-weight:400}.fuel-total-row td{color:#fff;border-top:2px solid #3a3d48;font-weight:600}.fuel-alliance-card{border-color:#1f6feb}.fuel-table td,.fuel-table th{padding:.3rem .75rem}.fuel-corps{grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:.75rem;margin-top:.75rem;display:grid}.fuel-corp-card{margin-top:0;padding:.75rem 1rem}.fuel-corp-card h4{margin:0 0 .25rem;font-size:.95rem}.fuel-bom-controls{flex-wrap:wrap;align-items:center;gap:1rem;margin:.5rem 0 0;display:flex}.fuel-bom-timeframes{display:flex}.fuel-bom-timeframes button{border-right-width:0;border-radius:0;padding:.25rem .65rem;font-size:.8rem}.fuel-bom-timeframes button:first-child{border-radius:6px 0 0 6px}.fuel-bom-timeframes button:last-child{border-right-width:1px;border-radius:0 6px 6px 0}.fuel-bom-timeframes button.active{color:#fff;background:#1f6feb;border-color:#1f6feb}.fuel-bom-scope{color:#e8e8ec;cursor:pointer;background:#20222b;border:1px solid #3a3d48;border-radius:6px;padding:.3rem .6rem;font-family:inherit;font-size:.85rem}.cat-ice{color:#63e2ff}.refine-rate-input{text-align:right;color:#e8e8ec;background:#20222b;border:1px solid #3a3d48;border-radius:4px;width:4.5rem;padding:.25rem .4rem;font-family:inherit;font-size:.85rem}.ice-surplus{color:#74d99a;margin:.5rem 0 0;font-size:.82rem}.ice-must-purchase{color:#ff8787;background:#ff6b6b10;border:1px solid #ff6b6b40;border-radius:6px;margin-top:.75rem;padding:.5rem .75rem;font-size:.85rem}.ice-must-purchase p:first-child{margin:0;font-weight:600}.pledges-section h3{margin-bottom:.25rem}.pledge-group-row td{color:#9aa0ad;text-transform:uppercase;letter-spacing:.05em;padding:.75rem .75rem .25rem;font-size:.85rem;font-weight:600}.pledge-group-row:first-child td{padding-top:.3rem}.pledge-table{margin:0 0 .5rem}.pledge-table th{color:#9aa0ad;text-transform:uppercase;letter-spacing:.04em;padding:.3rem .75rem;font-size:.8rem;font-weight:400}.pledge-table td{padding:.35rem .75rem;font-size:.85rem}.pledge-corp-badge{color:#74d99a;white-space:nowrap;background:#74d99a20;border-radius:3px;padding:.15rem .4rem;font-size:.7rem}.pledge-actions{gap:.4rem;display:flex}.pledge-actions button{border-radius:4px;padding:.15rem .45rem;font-size:.75rem}.pledge-actions .pledge-edit{border-color:#3a3d48}.pledge-actions .pledge-delete{color:#ff8787;background:#ff6b6b10;border-color:#ff6b6b40}.pledge-actions .pledge-delete:hover:not(:disabled){background:#ff6b6b20}.pledge-form{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:.75rem;display:flex}.pledge-form select,.pledge-form input[type=number]{color:#e8e8ec;background:#20222b;border:1px solid #3a3d48;border-radius:6px;padding:.35rem .5rem;font-family:inherit;font-size:.85rem}.pledge-form select{min-width:12rem}.pledge-form input[type=number]{text-align:right;width:7rem}.pledge-form label{color:#9aa0ad;cursor:pointer;align-items:center;gap:.3rem;font-size:.82rem;display:flex}.pledge-form .pledge-save{color:#fff;background:#1f6feb;border-color:#1f6feb}.pledge-form .pledge-save:hover:not(:disabled){background:#2b7cf0}.pledge-empty{color:#9aa0ad;margin:.5rem 0;font-size:.85rem;font-style:italic}.pledge-add-btn{margin-top:.5rem;padding:.3rem .7rem;font-size:.82rem}.modal-overlay{z-index:1000;background:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background:#1a1c23;border:1px solid #2a2c34;border-radius:12px;min-width:400px;max-width:600px;max-height:80vh;padding:1.5rem 2rem;overflow-y:auto}.modal-content h2,.admin-table{margin:0 0 1rem}.admin-table th{color:#9aa0ad;text-transform:uppercase;letter-spacing:.04em;font-size:.8rem;font-weight:400}.admin-table td{font-size:.85rem}.role-badge{text-transform:capitalize;border-radius:3px;padding:.15rem .45rem;font-size:.75rem}.role-admin{color:#74c0fc;background:#1f6feb20}.role-manager{color:#74d99a;background:#74d99a20}.admin-remove-btn{color:#ff8787;background:#ff6b6b10;border-color:#ff6b6b40;border-radius:4px;padding:.15rem .45rem;font-size:.75rem}.admin-remove-btn:hover:not(:disabled){background:#ff6b6b20}.admin-add-form{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.admin-add-form input,.admin-add-form select{color:#e8e8ec;background:#20222b;border:1px solid #3a3d48;border-radius:6px;padding:.35rem .5rem;font-family:inherit;font-size:.85rem}.admin-add-form input{min-width:12rem}.admin-add-btn{color:#fff;background:#1f6feb;border-color:#1f6feb}.admin-add-btn:hover:not(:disabled){background:#2b7cf0}.admin-close-btn{width:100%;margin-top:1rem}.admin-empty{color:#9aa0ad;font-size:.85rem;font-style:italic}.moon-controls{flex-wrap:wrap;align-items:center;gap:1.25rem;margin:.75rem 0 0;display:flex}.moon-filter-label{color:#9aa0ad;margin-right:.35rem;font-size:.8rem}.moon-filter-group,.moon-tier-group{align-items:center;display:flex}.moon-tier-buttons{display:flex}.moon-tier-buttons button{border-right-width:0;border-radius:0;padding:.25rem .55rem;font-size:.8rem}.moon-tier-buttons button:first-child{border-radius:6px 0 0 6px}.moon-tier-buttons button:last-child{border-right-width:1px;border-radius:0 6px 6px 0}.moon-tier-buttons button.active{color:#fff;background:#1f6feb;border-color:#1f6feb}.moon-select{color:#e8e8ec;cursor:pointer;background:#20222b;border:1px solid #3a3d48;border-radius:6px;padding:.3rem .6rem;font-family:inherit;font-size:.85rem}.moon-count{color:#9aa0ad;margin-left:auto;font-size:.82rem}.moon-table-wrap{margin-top:.5rem;overflow-x:auto}.moon-table th{color:#9aa0ad;text-transform:uppercase;letter-spacing:.03em;border-bottom:2px solid #2a2c34;padding:.4rem .75rem;font-size:.82rem;font-weight:500}.moon-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.moon-table th.sortable:hover{color:#e8e8ec}.moon-table td{padding:.35rem .75rem;font-size:.88rem}.moon-ores-cell{white-space:normal;color:#c7ccd6;max-width:22rem;font-size:.82rem}.moon-refinery{color:#9aa0ad}.refinery-editable{cursor:pointer;border-bottom:1px dashed #4a4e5a;padding-bottom:1px}.refinery-editable:hover{color:#c1c7d0;border-bottom-color:#74c0fc}.refinery-edit-input{color:#e0e0e0;box-sizing:border-box;background:#1a1c24;border:1px solid #74c0fc;border-radius:3px;outline:none;width:100%;padding:.15rem .35rem;font-family:inherit;font-size:.85rem}.isk{color:#ffd43b;font-weight:500}.rtier{background:#20222b;border-radius:3px;padding:.15rem .4rem;font-size:.78rem;font-weight:600}.rtier-4{color:#9aa0ad}.rtier-8{color:#74c0fc}.rtier-16{color:#74d99a}.rtier-32{color:#ffd43b}.rtier-64{color:#ff8787}.moon-detail-row td{border-bottom:1px solid #1e2028;padding:.2rem .75rem;font-size:.82rem}.moon-detail-row:last-child td{border-bottom:1px solid #2a2c34}.moon-detail-qty{color:#c7ccd6}.moon-detail-price{color:#9aa0ad;font-size:.78rem}.moon-missing-mats{color:#6b7280;margin:.5rem 0 0;font-size:.8rem}.moon-missing-label{color:#9aa0ad}.metenox-cost-grid{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.metenox-cost-grid .card{margin-top:.5rem}.metenox-verdict{text-align:center;background:#74d99a10;border-color:#74d99a40}.metenox-verdict p{color:#74d99a;margin:0;font-size:1rem}.metenox-verdict strong{color:#fff}.cost-detail-table{border-collapse:collapse;width:100%}.cost-detail-table td{color:#74c0fc;border-bottom:1px solid #1e2028;padding:.15rem .75rem;font-size:.8rem}.cost-detail-table td:first-child{padding-left:2rem}.cost-detail-at{white-space:nowrap;color:#6b7280!important;font-size:.75rem!important}@media (width<=700px){.metenox-cost-grid{grid-template-columns:1fr}}
