@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--bg:#091015;--surface:#101920;--surface2:#151f28;--line:#263641;--text:#e8f0f1;--muted:#84949c;--cyan:#66e0df;--teal:#20aaa8;--violet:#a98df7;--amber:#f4bc67;--danger:#ec7272;--c0:#65dedb;--c1:#a992ff;--c2:#f5bc67;--c3:#e779ad;--c4:#7ecb83}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 75% -20%,#17343a 0,transparent 27%),var(--bg);color:var(--text);font-family:Manrope,system-ui,sans-serif;font-size:14px}.app-shell{min-height:100vh;display:grid;grid-template-columns:246px 1fr}.sidebar{position:fixed;width:246px;height:100vh;border-right:1px solid var(--line);padding:27px 14px;display:flex;flex-direction:column;background:#0b1218cc;backdrop-filter:blur(15px);z-index:5}.brand{display:flex;gap:10px;align-items:center;color:#f7ffff;text-decoration:none;font-size:20px;font-weight:800;letter-spacing:.1em;margin:0 10px 40px}.brand small{display:block;color:var(--cyan);font-family:'DM Mono';font-size:8px;letter-spacing:.13em;margin-top:2px}.brand-mark{font-size:34px;color:var(--cyan);text-shadow:0 0 18px #66e0df88}.nav-item{font:600 13px Manrope;border:0;background:transparent;color:#91a0a6;width:100%;padding:12px 13px;border-radius:7px;text-align:left;display:flex;gap:13px;align-items:center;cursor:pointer;margin:2px 0}.nav-item i{font-style:normal;font-size:17px;width:18px;text-align:center}.nav-item:hover{background:#1c2d33;color:#eafafa}.nav-item.active{background:linear-gradient(90deg,#24464c,#183038);color:var(--cyan);box-shadow:inset 2px 0 var(--cyan)}.sidebar-footer{margin:auto 10px 0;color:#718188;font:11px/1.7 'DM Mono';border-top:1px solid var(--line);padding-top:17px}.sidebar-footer small{font-size:9px}.pulse{display:inline-block;width:6px;height:6px;border-radius:50%;background:#75df9a;margin-right:7px;box-shadow:0 0 7px #75df9a}.topbar{height:76px;margin-left:246px;padding:0 48px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;background:#0b1218a8;backdrop-filter:blur(12px);position:sticky;top:0;z-index:4}.eyebrow{font:500 10px 'DM Mono';letter-spacing:.16em;color:var(--cyan);text-transform:uppercase;margin:0 0 9px}.top-stats{display:flex;gap:32px;align-items:center}.top-stats>div{min-width:78px}.top-stats span,.metric-grid span,.market-row span,.sell-line small,.machine-stat span{display:block;color:var(--muted);font:10px 'DM Mono';text-transform:uppercase;letter-spacing:.07em}.top-stats strong{font-size:14px;color:#f2ffff}.xp-wrap{width:150px}.xp-wrap i,.progress i,.prop i{display:block;background:#22333b;border-radius:5px;height:4px;margin-top:6px;overflow:hidden}.xp-wrap b,.progress b,.prop em{display:block;height:100%;background:linear-gradient(90deg,var(--teal),var(--cyan));border-radius:5px}.content{max-width:1450px;padding:46px 48px 70px;margin-left:246px}.page-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:29px}.page-head h1{font-size:34px;margin:0 0 7px;letter-spacing:-.045em}.page-head>div>p:last-child{color:var(--muted);margin:0;max-width:650px;line-height:1.6}.hero{min-height:300px;border:1px solid #2a4b52;border-radius:12px;background:linear-gradient(112deg,#13262b 0%,#122026 48%,#171727 100%);position:relative;overflow:hidden;padding:52px 64px;margin-bottom:21px;display:flex;justify-content:space-between}.hero:after{content:'';position:absolute;inset:0;background-image:linear-gradient(#ffffff05 1px,transparent 1px),linear-gradient(90deg,#ffffff05 1px,transparent 1px);background-size:28px 28px;mask-image:linear-gradient(90deg,#000,transparent 65%)}.hero>div:first-child{z-index:1}.hero h1{font-size:45px;line-height:1.07;letter-spacing:-.055em;margin:0 0 15px}.hero h1 span{color:var(--cyan)}.lead{color:#a8b9be;font-size:14px;line-height:1.7;max-width:490px;margin-bottom:24px}.hero-actions{display:flex;gap:10px}.hero-orb{width:270px;position:relative;z-index:1;display:grid;place-items:center}.nucleus{width:90px;height:90px;display:grid;place-content:center;text-align:center;border-radius:50%;font-size:28px;font-weight:700;background:radial-gradient(circle at 35% 32%,#83ffff,#236c75 62%,#153239);box-shadow:0 0 40px #44c4c077}.nucleus small{font:10px 'DM Mono'}.orbit{position:absolute;border:1px solid #72ded977;border-radius:50%;transform:rotate(-35deg)}.o1{width:225px;height:90px}.o2{width:90px;height:225px}.button{border:1px solid transparent;border-radius:5px;padding:10px 15px;font:700 12px Manrope;cursor:pointer;transition:.18s;white-space:nowrap}.button:disabled{opacity:.45;cursor:not-allowed}.button.primary{color:#062225;background:var(--cyan);box-shadow:0 5px 20px #67e1dd25}.button.primary:hover:not(:disabled){background:#a4ffff;transform:translateY(-1px)}.button.secondary{color:#cffbfa;background:#1d5053;border-color:#368083}.button.ghost{color:#b0c2c5;background:transparent;border-color:#40525b}.button.danger{background:#54292e;color:#ffc3c3;border-color:#8c4149}.button.small{padding:7px 11px;font-size:11px}.button.full{width:100%;margin-top:18px}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:21px}.metric-grid article,.panel,.material-card,.contract-card,.research-card{background:linear-gradient(145deg,#142029cc,#0e171d);border:1px solid var(--line);border-radius:9px}.metric-grid article{padding:18px}.metric-grid strong{font-size:26px;display:block;letter-spacing:-.04em;margin:6px 0}.metric-grid strong i{font-size:13px;font-style:normal;color:#597078}.metric-grid small{font-size:11px;color:var(--muted)}.two-col,.lab-layout,.market-layout,.factory-grid{display:grid;grid-template-columns:1.45fr 1fr;gap:20px}.panel{padding:24px}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:13px}.panel h2{font-size:18px;letter-spacing:-.035em;margin:0}.panel>p{color:var(--muted);line-height:1.65}.client,.status-dot,.lab-status,.xp-badge,.market-cycle,.factory-rate{color:#aabbbd;font:10px 'DM Mono';letter-spacing:.07em;border:1px solid #405059;border-radius:20px;padding:7px 10px;white-space:nowrap}.status-dot{color:#9eeab7;border-color:#4a8162}.text-button{border:0;background:transparent;color:var(--cyan);font:600 12px Manrope;cursor:pointer;padding:8px 0}.element-chips,.inventory-tokens{display:flex;flex-wrap:wrap;gap:7px;margin:15px 0}.element-chips span,.inventory-tokens span{font:10px 'DM Mono';border:1px solid #30454d;border-radius:4px;padding:6px 8px;color:#a8c1c3}.inventory-tokens b{display:block;color:#d7eeee;margin-bottom:3px}.progress{display:flex;align-items:center;gap:10px;margin:18px 0}.progress i{width:100%;margin:0;height:6px}.progress span{font:10px 'DM Mono';color:#9bacb1;white-space:nowrap}.lab-status{align-self:center}.lab-status b{color:var(--cyan);margin:0 5px}.lab-status span{color:#7cdb9e}.formula-panel{min-height:470px}.total{font:500 15px 'DM Mono';color:var(--cyan)}.total.danger{color:var(--danger)}.formula-row{display:grid;grid-template-columns:42px 1fr 52px 8px minmax(80px,150px) 24px;align-items:center;gap:9px;padding:9px 0;border-bottom:1px solid #203038}.element-symbol{width:37px;height:37px;border-radius:6px;display:grid;place-content:center;background:#21454d;color:#8efffb;font-weight:800;font-size:16px;position:relative}.element-symbol small{position:absolute;font:8px 'DM Mono';color:#a9dddd;top:3px;left:4px}.element-symbol.nonmetal{background:#4c3f25;color:#ffd78b}.element-symbol.metalloid{background:#3f3151;color:#cdaeff}.formula-row b{font-size:12px;display:block}.formula-row small{display:block;color:var(--muted);font-size:10px;margin-top:2px}.formula-row input[type=number]{background:#0b1217;border:1px solid #385059;border-radius:4px;color:#dff;min-width:0;padding:7px 5px;text-align:right;font:12px 'DM Mono'}.formula-row input[type=range]{accent-color:var(--cyan);min-width:0}.remove{border:0;background:transparent;color:#83979e;font-size:20px;cursor:pointer}.add-row{display:flex;gap:8px;align-items:center;padding:16px 0}.add-row select,.panel select,.panel input[type=search]{background:#0b1318;border:1px solid #354a53;border-radius:5px;color:#ddecf0;padding:9px;min-width:0;font:12px Manrope}.add-row select{flex:1}.composition-bar{height:12px;border-radius:4px;overflow:hidden;display:flex;background:#26343a}.composition-bar i{height:100%;transition:.2s}.sample-cost{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);margin:16px 0}.sample-cost b{color:#d8ebed;font-family:'DM Mono'}.material-card{padding:18px;position:relative;overflow:hidden}.material-card:before{content:'';height:3px;position:absolute;inset:0;background:var(--cyan)}.rarity-rare:before{background:var(--violet)}.rarity-epic:before{background:#db77c9}.rarity-legendary:before{background:var(--amber)}.card-top{display:flex;justify-content:space-between;font:9px 'DM Mono';color:var(--muted)}.rarity{color:var(--cyan);letter-spacing:.1em;font-weight:500}.rarity-rare .rarity{color:#bda9ff}.rarity-epic .rarity{color:#ed9ee1}.rarity-legendary .rarity{color:var(--amber)}.material-card h3{font-size:16px;margin:17px 0 7px;letter-spacing:-.025em}.formula{font:10px 'DM Mono';color:#9cbbbd}.formula b{color:#e1f6f5}.mini-props{display:flex;gap:12px;margin:16px 0}.mini-props span{font:9px 'DM Mono';color:#779095}.mini-props b{display:block;color:#deeff0;margin-top:3px;font-size:11px}.material-card footer{border-top:1px solid #263840;padding-top:12px;display:flex;justify-content:space-between;align-items:center;color:#91a6ab;font-size:10px}.fineprint{font-size:10px!important;color:#72858c!important;line-height:1.55!important}.material-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(245px,1fr));gap:14px}.empty-state,.empty{text-align:center;color:#82969d;padding:44px 25px}.empty-state>div{font-size:42px;color:var(--cyan)}.empty-state h2{color:#dceff0}.market-layout{grid-template-columns:1.65fr 1fr}.market-list{max-height:565px;overflow:auto;margin:0 -8px}.market-row{display:grid;grid-template-columns:48px 1fr 70px 90px 92px;gap:12px;align-items:center;padding:12px 8px;border-bottom:1px solid #21313a}.market-row h3{font-size:13px;margin:0 0 3px}.market-row p{margin:0;color:var(--muted);font-size:10px}.owned b,.price b{font:12px 'DM Mono';color:#dbeded}.buy-actions{display:flex;gap:5px}.buy-actions button{border:1px solid #3c5d64;background:#18353b;color:var(--cyan);border-radius:4px;padding:6px;cursor:pointer;font:11px 'DM Mono'}.market-row.locked{opacity:.55}.lock{color:#bf8b8b!important;font-size:9px!important}.sell-panel{min-height:280px}.sell-line{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:13px 0;border-bottom:1px solid #293841}.sell-line b{font-size:12px;display:block}.furnace{display:flex;gap:20px;align-items:center;min-height:200px}.furnace-visual{width:100px;height:120px;border-radius:45px 45px 10px 10px;background:linear-gradient(#293b43,#121c22);border:1px solid #49636b;display:grid;place-items:center;box-shadow:inset 0 -18px #05090c}.flame{font-size:48px;color:var(--amber);text-shadow:0 0 20px #ff9e4388}.machine-stat{display:flex;justify-content:space-between;margin-top:25px;border-top:1px solid #304048;padding-top:12px}.machine-stat b{font:12px 'DM Mono';color:var(--cyan)}.research-grid,.contract-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.research-card,.contract-card{padding:22px;min-height:220px;display:flex;flex-direction:column}.research-card>i{font-style:normal;font-size:27px;color:var(--cyan)}.research-card>span,.contract-client{font:10px 'DM Mono';letter-spacing:.07em;color:var(--muted);margin-top:15px}.research-card h2,.contract-card h2{font-size:18px;letter-spacing:-.04em;margin:7px 0}.research-card p,.contract-card p{color:var(--muted);font-size:12px;line-height:1.6}.research-card footer,.contract-card footer{margin-top:auto;display:flex;justify-content:space-between;align-items:center}.research-card.complete{border-color:#397065;background:#112722}.research-card.complete>span{color:#85e8a5}.research-card.unavailable{opacity:.55}.contract-client{display:flex;justify-content:space-between;color:#b9d6d7;margin:0}.contract-client span{color:var(--cyan);font-size:9px}.contract-card.claimed{opacity:.7}.element-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(115px,1fr));gap:10px}.element-tile{background:#121e25;border:1px solid #2a4149;border-radius:7px;padding:13px;min-height:120px;position:relative}.element-tile>span{font:9px 'DM Mono';color:#83a7aa}.element-tile>b{display:block;font-size:30px;color:var(--cyan);line-height:1.1}.element-tile h3{font-size:12px;margin:5px 0}.element-tile small{color:var(--muted);font-size:9px}.element-tile.unknown{opacity:.55}.reference{margin-top:22px}.reference>div{display:grid;grid-template-columns:160px 1fr;gap:5px;padding:12px 0;border-top:1px solid #2a3a41;font-size:11px}.reference>div span{color:#a9bdc0}.reference>div small{grid-column:2;color:#73868b}.stat-list{display:grid;grid-template-columns:repeat(2,1fr);gap:0 35px}.stat-list span{display:flex;justify-content:space-between;padding:14px 0;border-bottom:1px solid #26363e;color:#a8b9bd}.stat-list b{font-family:'DM Mono';color:#def5f4}.settings-list{padding:0}.settings-list>div{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:18px 24px;border-bottom:1px solid #273840}.settings-list b,.settings-list small{display:block}.settings-list small{color:var(--muted);font-size:11px;margin-top:4px}.danger-zone b{color:#f0a1a1}.toast-region{position:fixed;z-index:20;right:25px;top:88px;display:grid;gap:8px}.toast{background:#173036;border:1px solid #3c7776;border-left:3px solid var(--cyan);padding:12px 15px;border-radius:5px;box-shadow:0 12px 30px #0005;font-size:12px;max-width:330px;animation:in .24s ease}.toast.warning{border-color:#8e6740;border-left-color:var(--amber)}.toast.success{border-color:#3b775a;border-left-color:#83e3a1}@keyframes in{from{transform:translateX(20px);opacity:0}to{transform:none;opacity:1}}.modal-backdrop{position:fixed;inset:0;z-index:30;background:#030708c9;display:grid;place-items:center;padding:20px;backdrop-filter:blur(6px)}.discovery-modal{width:min(480px,100%);padding:36px;text-align:center;border:1px solid #4d8588;border-radius:12px;background:radial-gradient(circle at 50% 0,#1d5051,#101b21 60%);box-shadow:0 0 70px #57d7d533;animation:in .35s ease}.spark{font-size:35px;color:var(--amber);text-shadow:0 0 20px var(--amber)}.discovery-modal h1{font-size:31px;letter-spacing:-.05em;margin:9px 0}.rarity.big{display:inline-block;border:1px solid #527d7d;padding:6px 9px;border-radius:15px;font:10px 'DM Mono'}.props-grid{display:grid;grid-template-columns:repeat(4,1fr);margin:24px 0}.props-grid span{font:9px 'DM Mono';color:#9eafb3;text-transform:capitalize}.props-grid b{display:block;color:#eaffff;font-size:16px;margin-top:5px}.mobile-only{display:none}.icon-button{background:none;border:0;color:#dceff0;font-size:20px}@media(max-width:900px){.app-shell{display:block}.sidebar{transform:translateX(-100%);transition:.2s;width:250px}.menu-open .sidebar{transform:none}.topbar,.content{margin-left:0}.topbar{padding:0 20px}.content{padding:32px 20px}.mobile-only{display:block}.top-stats{gap:13px}.top-stats>div:first-child{display:none}.xp-wrap{width:105px}.hero{padding:36px;min-height:280px}.hero-orb{display:none}.two-col,.lab-layout,.market-layout,.factory-grid{grid-template-columns:1fr}.research-grid,.contract-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.topbar{height:66px}.topbar>#breadcrumb{display:none}.top-stats{margin-left:auto}.top-stats>div:nth-child(2){display:none}.content{padding:24px 14px 50px}.page-head{display:block}.page-head>div{margin-bottom:17px}.page-head h1{font-size:29px}.hero{padding:30px 24px}.hero h1{font-size:36px}.metric-grid{grid-template-columns:repeat(2,1fr);gap:9px}.metric-grid article{padding:14px}.metric-grid strong{font-size:21px}.hero-actions{flex-wrap:wrap}.formula-row{grid-template-columns:38px 1fr 45px 7px;gap:7px}.formula-row input[type=range]{grid-column:2/6}.formula-row .remove{grid-column:6;grid-row:1}.formula-row small{font-size:9px}.sample-cost{display:grid;gap:8px}.research-grid,.contract-grid{grid-template-columns:1fr}.market-row{grid-template-columns:43px 1fr 55px 75px}.market-row .buy-actions,.market-row .lock{grid-column:2/5}.reference>div{grid-template-columns:1fr}.reference>div small{grid-column:1}.stat-list{grid-template-columns:1fr}.furnace{min-height:auto}.lab-status{display:inline-block}.toast-region{left:14px;right:14px;top:76px}.toast{max-width:none}.props-grid{grid-template-columns:repeat(2,1fr);gap:15px}.settings-list>div{padding:15px;}}

