:root{--bg: #07090d;--panel: #0e121a;--panel-2: #131925;--line: #222a39;--line-2: #2c3649;--text: #e6ebf3;--muted: #8691a5;--green: #39ff88;--green-2: #1fbf63;--red: #ff4d61;--amber: #ffb547;--blue: #4da3ff;--purple: #b77bff;--radius: 14px;--font: 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;--display: 'Oswald', 'Arial Narrow', sans-serif}
*{box-sizing: border-box}
html, body{margin: 0;min-height: 100%}
body{background:
radial-gradient(1200px 600px at 10% -10%, rgba(57, 255, 136, 0.06), transparent 60%),
radial-gradient(900px 500px at 110% 10%, rgba(183, 123, 255, 0.07), transparent 60%),
var(--bg);color: var(--text);font: 14px/1.45 var(--font);-webkit-font-smoothing: antialiased}
button{font: inherit;color: inherit}
.hidden{display: none !important}
.muted{color: var(--muted)}
.small{font-size: 12px}
.pos{color: var(--green)}
.neg{color: var(--red)}
#app{display: grid;min-height: 100vh}
.topbar{position: sticky;top: 0;z-index: 30;display: flex;align-items: center;background: rgba(8, 11, 16, 0.88);backdrop-filter: blur(10px);border-bottom: 1px solid var(--line)}
.logo, .title-logo{white-space: nowrap;line-height: 0}
.logo img, .title-logo img{display: block;width: auto;height: auto}
.hud{display: flex;flex-wrap: wrap;flex: 1;justify-content: flex-end}
.stat{display: flex;flex-direction: column;justify-content: center;background: var(--panel);border: 1px solid var(--line);border-radius: 10px}
.stat .lbl{font-size: 10px;letter-spacing: 0.08em;text-transform: uppercase;color: var(--muted);white-space: nowrap;overflow: hidden;text-overflow: ellipsis}
.meter-stat.rank{min-width: 168px}
.stat .val{font-family: var(--display);font-weight: 500;white-space: nowrap}
.stat.money .val{color: var(--green)}
.stat.bad{border-color: rgba(255, 77, 97, 0.45)}
.stat.bad .val{color: var(--red)}
.meter-stat{display: grid;grid-template-columns: 1fr auto;column-gap: 8px}
.meter-stat .lbl{grid-column: 1 / -1}
.meter-stat .mval{font-family: var(--display);font-size: 13px;color: var(--muted);align-self: center}
.meter-stat.warn{border-color: rgba(255, 181, 71, 0.5)}
.meter-stat.crit{border-color: rgba(255, 77, 97, 0.7);box-shadow: 0 0 14px rgba(255, 77, 97, 0.25)}
.meter{height: 6px;background: #1a2130;border-radius: 4px;overflow: hidden;align-self: center}
.meter i{display: block;height: 100%;border-radius: 4px;background: var(--green);transition: width 0.5s ease}
.meter.cap i{background: linear-gradient(90deg, #1fbf63, #39ff88)}
.btc-stat{position: relative;min-width: 104px;color: inherit;font: inherit;text-align: left;cursor: pointer;overflow: hidden}
.btc-stat .lbl b{font-weight: 700;letter-spacing: 0}
.btc-stat.up .lbl b{color: var(--green)}
.btc-stat.down .lbl b{color: var(--red)}
.btc-stat .val{position: relative;z-index: 1;color: #ffcf7a}
.btc-stat .spark{position: absolute;left: 0;right: 0;bottom: 0;width: 100%;height: 18px;opacity: 0.85;pointer-events: none}
.spark .ln{fill: none;stroke-width: 1.4;vector-effect: non-scaling-stroke}
.spark .ar{stroke: none;opacity: 0.16}
.up .spark .ln, .up .spark circle{stroke: var(--green);fill: var(--green)}
.up .spark .ln{fill: none}
.up .spark .ar{fill: var(--green)}
.down .spark .ln, .down .spark circle{stroke: var(--red);fill: var(--red)}
.down .spark .ln{fill: none}
.down .spark .ar{fill: var(--red)}
.spark circle{stroke: none}
.btc-stat:hover{border-color: #3a4660}
.fx.btcfx{display: inline-flex;align-items: center;gap: 4px;border-color: rgba(247, 147, 26, 0.55);color: #ffe2b0;font: inherit;font-size: 11.5px;cursor: pointer}
.fx.btcfx b{color: #ffcf7a}
.fx.btcfx small{font-size: 10.5px;font-weight: 700}
.fx.btcfx.up small{color: var(--green)}
.fx.btcfx.down small{color: var(--red)}
.fx.btcfx .spark{width: 40px;height: 14px}
@media (max-width: 1480px){.hud.has-btc .hud-logo{display: none}
}
@media (min-width: 901px) and (max-width: 1480px){body:not(.phone) .topbar:has(.hud.has-btc){grid-template-columns: minmax(0, 1.1fr) auto minmax(0, 0.9fr)}
}
@media (prefers-reduced-motion: reduce){.spark circle{animation: none}
}
.layout{display: grid;gap: 14px;padding: 14px 16px 18px;grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);align-items: start}
.col{display: flex;flex-direction: column;gap: 14px;min-width: 0}
.panel{background: linear-gradient(180deg, var(--panel-2), var(--panel));border: 1px solid var(--line);border-radius: var(--radius);padding: 12px;min-width: 0;box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25)}
.panel-head{display: flex;align-items: center;justify-content: space-between;gap: 10px;margin-bottom: 10px;flex-wrap: wrap}
.panel-head h2{margin: 0;font-family: var(--display);font-weight: 600;font-size: 17px;letter-spacing: 0.06em;text-transform: uppercase}
.panel-head .sub{color: var(--muted);font-size: 12px}
.tabs{display: flex;gap: 4px;background: #0a0d13;padding: 4px;border-radius: 10px;border: 1px solid var(--line)}
.tab{border: 0;background: transparent;padding: 6px 12px;border-radius: 7px;cursor: pointer;font-family: var(--display);font-weight: 500;letter-spacing: 0.04em;color: var(--muted)}
.tab:hover{color: var(--text);background: #151b27}
.tab.active{background: var(--green);color: #04130a}
.tab.locked{opacity: 0.6}
.tab.locked.active{background: #3a3220;color: var(--amber);opacity: 1}
.loc-label{font-size: 13px}
.loc-label span{color: var(--muted);margin-left: 4px}
.map-wrap{position: relative;height: clamp(300px, 48vh, 600px);border-radius: 10px;overflow: hidden;border: 1px solid var(--line);background: #060a11}
.map-wrap canvas{position: absolute;inset: 0;width: 100%;height: 100%;display: block}
.dest-card{display: flex;gap: 14px;align-items: center;justify-content: space-between;margin-top: 10px;padding: 10px 12px;min-height: 74px;scroll-margin-bottom: 84px;background: #0a0e15;border: 1px solid var(--line);border-radius: 10px}
.dest-info{min-width: 0}
.dest-info p{margin: 3px 0 4px;color: #b9c2d2;font-size: 13px}
.dest-title{font-family: var(--display);font-size: 16px;font-weight: 500}
.dest-title small{font-family: var(--font);font-size: 12px;color: var(--muted);margin-left: 4px}
.meta{display: flex;gap: 14px;font-size: 11px;color: var(--muted);letter-spacing: 1px}
.btn{display: inline-flex;align-items: center;justify-content: center;gap: 6px;padding: 8px 14px;border-radius: 10px;cursor: pointer;background: #1a2130;border: 1px solid var(--line-2);color: var(--text);font-weight: 600;font-size: 13px;transition: background 0.15s, border-color 0.15s, transform 0.05s}
.btn:hover:not([disabled]){background: #222b3d;border-color: #3a4660}
.btn:active:not([disabled]){transform: translateY(1px) scale(0.98)}
.btn[disabled]{opacity: 0.4;cursor: not-allowed}
.btn:focus-visible, .tab:focus-visible{outline: 2px solid var(--green);outline-offset: 2px}
.btn.primary{background: var(--green);border-color: var(--green);color: #04130a}
.btn.primary:hover:not([disabled]){background: #6bffa8;border-color: #6bffa8}
.btn.danger{background: rgba(255, 77, 97, 0.14);border-color: rgba(255, 77, 97, 0.5);color: #ffb3bc}
.btn.danger:hover:not([disabled]){background: rgba(255, 77, 97, 0.25)}
.btn.sm{padding: 5px 10px;font-size: 12px;border-radius: 8px}
.btn.big{padding: 12px 22px;font-size: 15px;flex-direction: column;gap: 2px}
.btn small{font-weight: 500;font-size: 11px;opacity: 0.75}
.btn.buy:not([disabled]){border-color: rgba(57, 255, 136, 0.45)}
.btn.sell:not([disabled]){border-color: rgba(255, 181, 71, 0.5)}
.mhead, .mrow{display: grid;grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr) minmax(0, 0.8fr) auto;gap: 8px;align-items: center}
.mhead{padding: 0 8px 6px;font-size: 10px;letter-spacing: 0.08em;text-transform: uppercase;color: var(--muted)}
.mrow{padding: 7px 8px;border-radius: 9px;border: 1px solid transparent}
.mrow:nth-child(even){background: rgba(255, 255, 255, 0.02)}
.mrow:hover{border-color: var(--line-2);background: rgba(255, 255, 255, 0.035)}
.mrow.na{opacity: 0.5}
.mrow.event{border-color: rgba(255, 181, 71, 0.45);background: rgba(255, 181, 71, 0.06)}
.dname{display: flex;align-items: center;gap: 9px;min-width: 0}
.dname b{display: block;font-weight: 600}
.dname small{display: block;font-size: 11px;color: var(--muted)}
.ico{font-size: 20px;width: 26px;text-align: center;flex-shrink: 0}
.price b{font-family: var(--display);font-size: 16px;font-weight: 500;margin-right: 6px}
.diff{font-size: 11px;color: var(--muted);white-space: nowrap}
.diff.cheap{color: var(--green)}
.diff.pricey{color: var(--amber)}
.held{font-size: 12px;color: #c9d1de}
.acts{display: flex;gap: 5px}
.empty{color: var(--muted);padding: 14px 8px;text-align: center;font-size: 13px}
.inv-panel .meter.cap{height: 8px;margin-bottom: 10px}
.iname small{display: block;font-size: 11px;color: var(--muted)}
.chips{display: flex;flex-wrap: wrap;gap: 6px}
.chip{font-size: 12px;padding: 3px 9px;border-radius: 999px;background: #151b27;border: 1px solid var(--line-2)}
.mods{display: flex;flex-wrap: wrap;gap: 6px;margin-bottom: 8px}
.mod{font-size: 11px;padding: 3px 8px;border-radius: 999px;border: 1px solid var(--line-2);background: #121826}
.mod.up{border-color: rgba(255, 77, 97, 0.5);color: #ffb3bc}
.mod.down{border-color: rgba(57, 255, 136, 0.4);color: #b4ffd3}
.log{list-style: none;margin: 0;padding: 0;max-height: 300px;overflow-y: auto;font-size: 12.5px}
.log li{display: flex;gap: 8px;padding: 5px 8px;border-left: 2px solid var(--line-2);margin-bottom: 3px;background: rgba(255, 255, 255, 0.015);border-radius: 0 6px 6px 0}
.log .d{color: var(--muted);min-width: 28px;font-family: var(--display)}
.log li.good, .log li.trade{border-left-color: var(--green-2)}
.log li.bad{border-left-color: var(--red)}
.log li.warn, .log li.spike{border-left-color: var(--amber)}
.log li.crash{border-left-color: #43c6ff}
.log li.police{border-left-color: var(--blue)}
.log li.gov{border-left-color: #ff7ad9}
.log li.rank, .log li.story{border-left-color: var(--purple)}
.log li.travel{border-left-color: #56607a;color: #b7c0cf}
#modal-root{position: relative;z-index: 100}
.modal-back{position: fixed;inset: 0;display: flex;align-items: center;justify-content: center;padding: 16px;background: rgba(3, 5, 8, 0.66);backdrop-filter: blur(3px);animation: fadeIn 0.15s ease}
.modal-back.out{animation: fadeOut 0.15s ease forwards}
.modal{position: relative;width: min(500px, 100%);max-height: calc(100vh - 32px);overflow-y: auto;background: linear-gradient(180deg, #161c29, #0f141d);border: 1px solid var(--line-2);border-radius: 16px;padding: 20px;box-shadow: 0 30px 80px rgba(0, 0, 0, 0.6);animation: pop 0.18s ease}
.modal.wide{width: min(820px, 100%)}
.modal.bad{border-color: rgba(255, 77, 97, 0.45);box-shadow: 0 30px 80px rgba(0, 0, 0, 0.6), 0 0 40px rgba(255, 77, 97, 0.12)}
.modal.police{border-color: rgba(77, 163, 255, 0.55);box-shadow: 0 30px 80px rgba(0, 0, 0, 0.6), 0 0 40px rgba(77, 163, 255, 0.18);animation: pop 0.18s ease, siren 1.2s ease-in-out 2}
.mclose{position: absolute;top: 10px;right: 12px;border: 0;background: transparent;color: var(--muted);font-size: 16px;cursor: pointer;padding: 4px}
.mclose:hover{color: var(--text)}
.mtop{display: flex;align-items: center;gap: 12px;margin-bottom: 10px;padding-right: 20px}
.micon{font-size: 34px;line-height: 1}
.mtop h3{margin: 0;font-family: var(--display);font-weight: 600;font-size: 22px;letter-spacing: 0.02em}
.mbody{color: #cdd5e2}
.mbody p{margin: 0 0 10px}
.mbody h4{margin: 14px 0 8px;font-family: var(--display);font-weight: 500;letter-spacing: 0.06em;text-transform: uppercase;font-size: 13px;color: var(--muted)}
.mbody h4:first-child{margin-top: 0}
.choices{display: flex;flex-wrap: wrap;gap: 8px;justify-content: flex-end;margin-top: 16px}
.rank-name{font-family: var(--display);font-size: 26px;color: var(--purple);text-shadow: 0 0 18px rgba(183, 123, 255, 0.5);margin: 4px 0 12px !important}
.unlock{color: var(--amber)}
.pkg{list-style: none;padding: 0;margin: 0 0 12px;display: grid;gap: 6px}
.pkg li{padding: 8px 12px;background: #0a0e15;border: 1px solid var(--line);border-radius: 9px}
.kv{display: flex;justify-content: space-between;gap: 12px;padding: 4px 0}
.kv.total{border-top: 1px solid var(--line);margin-top: 4px;padding-top: 8px;font-size: 15px}
.kv.total b{color: var(--green);font-family: var(--display);font-size: 18px}
.summary{display: grid;grid-template-columns: repeat(3, 1fr);gap: 8px;margin: 12px 0}
.summary div{background: #0a0e15;border: 1px solid var(--line);border-radius: 9px;padding: 8px 10px}
.summary span{display: block;font-size: 10px;text-transform: uppercase;letter-spacing: 0.07em;color: var(--muted)}
.summary b{font-family: var(--display);font-weight: 500;font-size: 15px}
.help{margin: 0;padding-left: 0;list-style: none;display: grid;gap: 8px}
.help li{padding: 7px 10px;background: #0a0e15;border: 1px solid var(--line);border-radius: 9px;font-size: 13px}
.trade .qty{display: flex;gap: 6px;align-items: center;margin: 12px 0 6px;flex-wrap: wrap}
.qin{width: 96px;padding: 7px 10px;border-radius: 9px;border: 1px solid var(--line-2);background: #0a0e15;color: var(--text);font: 600 15px var(--display);text-align: center}
.qrange{width: 100%;accent-color: var(--green);margin: 4px 0 10px}
.tsum{background: #0a0e15;border: 1px solid var(--line);border-radius: 10px;padding: 8px 12px}
.hint{margin-top: 10px;font-size: 12px;color: #c9d1de}
.shop-grid{display: grid;grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));gap: 8px}
.item{display: grid;grid-template-columns: auto minmax(0, 1fr);grid-template-rows: auto auto;gap: 4px 10px;padding: 10px;background: #0a0e15;border: 1px solid var(--line);border-radius: 11px}
.item.owned{border-color: rgba(57, 255, 136, 0.4)}
.item.rank, .item.worse{opacity: 0.6}
.iic{font-size: 26px;grid-row: 1 / span 2}
.itxt b{display: block}
.itxt small{display: block;color: var(--muted);font-size: 11.5px}
.istat{display: inline-block;margin-top: 4px;font-size: 11px;color: #c9d1de}
.ibuy{grid-column: 2;justify-self: start}
.tag{font-size: 11px;padding: 3px 8px;border-radius: 999px;background: #151b27;border: 1px solid var(--line-2);color: var(--muted)}
.tag.ok{color: var(--green);border-color: rgba(57, 255, 136, 0.4)}
.tag.ai{color: #9fc0ff;border-color: rgba(127, 167, 255, 0.4);white-space: nowrap}
.face.ai-face{display: inline-flex;align-items: center;justify-content: center;font-size: 13px;background: #131925}
.tag.lock{color: var(--amber)}
.shop-cash{text-align: right;margin-top: 12px !important}
.amount{margin: 12px 0 8px}
.amt{width: 100%;padding: 9px 12px;border-radius: 9px;border: 1px solid var(--line-2);background: #0a0e15;color: var(--text);font: 600 15px var(--display)}
.btnrow{display: flex;flex-wrap: wrap;gap: 6px}
.toasts{position: fixed;right: 16px;z-index: 200;display: flex;flex-direction: column;gap: 6px;align-items: flex-end;pointer-events: none}
.toast{padding: 9px 14px;border-radius: 10px;background: #161d2a;border: 1px solid var(--line-2);font-size: 13px;font-weight: 600;box-shadow: 0 10px 30px rgba(0, 0, 0, 0.4);animation: slideIn 0.2s ease;transition: opacity 0.3s, transform 0.3s}
.toast.good{border-color: rgba(57, 255, 136, 0.5);color: #c8ffdf}
.toast.bad{border-color: rgba(255, 77, 97, 0.55);color: #ffc2c9}
.toast.out{opacity: 0;transform: translateX(20px)}
.title-screen{position: fixed;inset: 0;z-index: 50;display: flex;overflow-y: auto;padding: 16px;background:
radial-gradient(700px 400px at 50% 30%, rgba(57, 255, 136, 0.12), transparent 70%),
radial-gradient(600px 400px at 80% 90%, rgba(183, 123, 255, 0.12), transparent 70%),
rgba(5, 7, 10, 0.97)}
.title-card{position: relative;z-index: 1;width: min(480px, 100%);text-align: center;margin: auto}
.title-logo img{width: min(430px, 92%);margin: 6px auto 4px;filter: drop-shadow(0 8px 24px rgba(0, 0, 0, 0.7))}
.tagline{color: #b9c2d2;margin: 6px 0 26px}
.title-bg{position: fixed;left: 0;right: 0;bottom: 0;height: min(72vh, 640px);z-index: 0;pointer-events: none;-webkit-mask-image: linear-gradient(transparent, #000 24%);mask-image: linear-gradient(transparent, #000 24%)}
@media (max-width: 640px){.title-bg{position: absolute;top: 0;bottom: auto;height: 215px;-webkit-mask-image: linear-gradient(#000 72%, transparent);mask-image: linear-gradient(#000 72%, transparent)}
.title-screen:has(.title-bg) .title-card{background: linear-gradient(180deg, rgba(7, 10, 16, 0), rgba(7, 10, 16, 0.3) 150px, rgba(7, 10, 16, 0.9) 235px);border-color: transparent;box-shadow: none;backdrop-filter: none}
}
.title-bg svg{display: block;width: 100%;height: 100%}
@media (min-width: 641px){.title-screen:has(.title-bg) .title-card{background: rgba(7, 10, 16, 0.76);border: 1px solid rgba(255, 255, 255, 0.07);border-radius: 18px;padding: 22px 20px 16px;box-shadow: 0 30px 90px rgba(0, 0, 0, 0.5);backdrop-filter: blur(7px)}
}
.title-bg .tb-tw{animation: aTwinkle 3s ease-in-out infinite}
.title-bg .tb-cloud{animation: tbDrift 90s ease-in-out infinite alternate}
@keyframes tbDrift{from{transform: translateX(-60px)}
to{transform: translateX(60px)}
}
.title-bg .tb-car{animation: tbCar 16s linear infinite}
@keyframes tbCar{from{transform: translateX(-20px)}
to{transform: translateX(390px)}
}
.title-bg .tb-car2{animation: tbCar2 23s linear infinite;animation-delay: -9s}
@keyframes tbCar2{from{transform: translateX(390px)}
to{transform: translateX(-20px)}
}
.title-bg .tb-blink{animation: aBlink 0.8s step-end infinite}
.title-bg .tb-blink2{animation: aBlink 0.8s step-end infinite;animation-delay: -0.4s}
.title-bg .tb-boat{animation: tbBoat 80s linear infinite;animation-delay: -30s}
@keyframes tbBoat{from{transform: translateX(-160px)}
to{transform: translateX(1760px)}
}
.title-bg .tb-rip{animation: tbRip 5s ease-in-out infinite alternate}
@keyframes tbRip{from{transform: translateX(-10px);opacity: 0.2}
to{transform: translateX(10px);opacity: 0.55}
}
.title-bg .tb-shim{transform-box: fill-box;transform-origin: 50% 0;animation: tbShim 4s ease-in-out infinite alternate}
@keyframes tbShim{from{transform: scaleX(1);opacity: 1}
to{transform: scaleX(1.025);opacity: 0.7}
}
.title-bg .tb-win{animation: aFlicker 6s linear infinite}
.title-logo{animation: logoIn 0.9s ease-out both}
.title-card > .tagline{animation: tagIn 0.8s ease-out 0.9s both}
@keyframes logoIn{from{opacity: 0;transform: translateY(8px) scale(0.97)}
to{opacity: 1;transform: none}
}
@keyframes tagIn{from{opacity: 0;transform: translateY(6px)}
to{opacity: 1;transform: none}
}
@media (prefers-reduced-motion: reduce){.title-bg *, .title-logo, .title-card > .tagline{animation: none !important}
}
html.rm .title-bg *, html.rm .title-logo, html.rm .title-card > .tagline{animation: none !important}
.name-field{display: block;text-align: left;margin: 0 auto 18px;max-width: 320px}
.name-field span{display: block;font-size: 11px;text-transform: uppercase;letter-spacing: 0.08em;color: var(--muted);margin-bottom: 6px}
.name-field input{width: 100%;padding: 11px 14px;border-radius: 10px;border: 1px solid var(--line-2);background: #0d1119;color: var(--text);font: 600 16px var(--font)}
.name-field select{width: 100%;padding: 10px 12px;border-radius: 10px;border: 1px solid var(--line-2);background: #0d1119;color: var(--text);font: 600 15px var(--font)}
.home-field{margin-top: -6px}
.name-field input:focus, .qin:focus, .amt:focus{outline: none;border-color: var(--green);box-shadow: 0 0 0 3px rgba(57, 255, 136, 0.15)}
.load-note{display: none;margin: 10px 0 0;font-size: 13px;color: var(--muted);text-align: center}
.load-note span{display: none}
body.loading .load-note{display: block}
body.loading.slow .load-note span{display: inline}
body.loading .title-card .btn, body.loading .title-card .linkbtn{opacity: 0.45;pointer-events: none}
.title-buttons{display: flex;gap: 10px;justify-content: center;flex-wrap: wrap}
.disclaimer{margin-top: 28px;font-size: 11.5px;color: #6f7a8e}
@keyframes fadeIn{from{opacity: 0}
to{opacity: 1}
}
@keyframes fadeOut{to{opacity: 0}
}
@keyframes pop{from{transform: scale(0.96);opacity: 0}
to{transform: none;opacity: 1}
}
@keyframes slideIn{from{transform: translateX(20px);opacity: 0}
to{transform: none;opacity: 1}
}
@keyframes siren{0%, 100%{box-shadow: 0 30px 80px rgba(0, 0, 0, 0.6), 0 0 40px rgba(77, 163, 255, 0.25)}
50%{box-shadow: 0 30px 80px rgba(0, 0, 0, 0.6), 0 0 50px rgba(255, 77, 97, 0.35)}
}
@media (max-width: 1100px){.hud{justify-content: flex-start}
}
@media (max-width: 900px){.topbar{position: relative}
.layout{grid-template-columns: minmax(0, 1fr);padding: 12px 16px}
.col{display: contents}
.map-panel{order: 1}
.market-panel{order: 2}
.dest-card{flex-direction: column;align-items: stretch}
.summary{grid-template-columns: repeat(2, 1fr)}
}
@media (max-width: 520px){.stat{flex: 1 1 calc(33% - 8px)}
.meter-stat{flex-basis: calc(50% - 8px)}
.mhead, .mrow{grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) auto}
.mhead span:nth-child(3), .mrow .held{display: none}
}
.stat.clock .val{color: #cfe3ff}
.meter-stat[data-quick]{cursor: pointer}
.meter-stat[data-quick]:hover{border-color: var(--line-2);background: #141b27}
.meter-stat.hp .meter i{background: linear-gradient(90deg, #ff4d61, #ff7a59)}
.meter-stat.food .meter i{background: linear-gradient(90deg, #d9822b, #ffc35a)}
.meter-stat.water .meter i{background: linear-gradient(90deg, #2b7bd9, #5ac8ff)}
.meter-stat.heat .meter i{background: linear-gradient(90deg, #4da3ff, #ff4d61)}
.meter-stat.xp{min-width: 176px}
.meter-stat.xp .meter i{background: linear-gradient(90deg, #8a5cff, #d38bff)}
.meter-stat.xp .lbl{color: #d7c2ff}
.float-xp{position: fixed;z-index: 300;pointer-events: none;transform: translate(-50%, 0);font: 700 13px var(--display);color: #d9b8ff;text-shadow: 0 0 10px rgba(183, 123, 255, 0.8);animation: floatUp 1.3s ease-out forwards}
@keyframes floatUp{from{opacity: 1;transform: translate(-50%, 0)}
to{opacity: 0;transform: translate(-50%, -34px)}
}
.map-wrap canvas{touch-action: none;cursor: grab}
.map-ctrl{position: absolute;right: 10px;bottom: 10px;display: flex;flex-direction: column;gap: 6px}
.map-wrap > .map-streets, .map-wrap > .map-streets.maplibregl-map{position: absolute;inset: 0;pointer-events: none}
.map-streets .maplibregl-canvas{outline: none}
.map-attr{position: absolute;right: 52px;bottom: 6px;z-index: 2;font-size: 9.5px;line-height: 1.5;color: #8592a6;background: rgba(6, 10, 17, 0.72);padding: 0 6px;border-radius: 4px}
.map-attr a{color: inherit;text-decoration: none}
.map-attr a:hover{color: #c8d3e3;text-decoration: underline}
.map-ctrl button{width: 34px;height: 34px;border-radius: 9px;cursor: pointer;background: rgba(14, 18, 26, 0.9);border: 1px solid var(--line-2);color: var(--text);font: 600 18px var(--font);display: flex;align-items: center;justify-content: center}
.map-ctrl button:hover{border-color: var(--green);color: var(--green)}
.dest-card{align-items: stretch}
.dest-info{flex: 1 1 auto}
.hideout{font-size: 12px;color: #b9c2d2;margin: 4px 0 0 !important}
.meta{flex-wrap: wrap;row-gap: 4px}
.meta .owner{color: var(--c, var(--muted));letter-spacing: 0}
.meta .owner.free{color: var(--muted)}
.meta .patrol{color: #ff8a96;letter-spacing: 0}
.mnote{font-size: 12px;padding: 6px 10px;border-radius: 8px;margin-bottom: 8px;background: #121826;border: 1px solid var(--line-2)}
.mnote.warn{border-color: rgba(255, 181, 71, 0.45);color: #ffd79a}
.mnote.good{border-color: rgba(57, 255, 136, 0.4);color: #b4ffd3}
.crow{display: grid;grid-template-columns: 22px 12px minmax(0, 1fr) auto auto auto;gap: 7px;align-items: center;padding: 5px 6px;border-radius: 8px;font-size: 12.5px}
.crow:nth-child(even){background: rgba(255, 255, 255, 0.02)}
.crow.me{background: rgba(57, 255, 136, 0.07);border: 1px solid rgba(57, 255, 136, 0.3)}
.cr{color: var(--muted);font-family: var(--display)}
.cdot{width: 10px;height: 10px;border-radius: 50%;background: var(--c);box-shadow: 0 0 8px var(--c)}
.cn{overflow: hidden;text-overflow: ellipsis;white-space: nowrap;font-weight: 600}
.ct, .cp{color: #c9d1de;font-size: 11.5px;white-space: nowrap}
.att{font-size: 10.5px;padding: 2px 7px;border-radius: 999px;border: 1px solid var(--line-2);white-space: nowrap}
.att.hostile{color: #ff8a96;border-color: rgba(255, 77, 97, 0.6)}
.att.tense{color: #ffc27a;border-color: rgba(255, 181, 71, 0.5)}
.att.neutral{color: var(--muted)}
.att.friendly{color: #9fe9c0;border-color: rgba(57, 255, 136, 0.4)}
.att.ally, .att.me{color: #39ff88;border-color: rgba(57, 255, 136, 0.7)}
.btn.wide{width: 100%;margin-top: 8px}
.cartel{padding: 10px 12px;margin-bottom: 8px;border-radius: 11px;background: #0a0e15;border: 1px solid var(--line)}
.cartel.me{border-color: rgba(57, 255, 136, 0.45)}
.chead{display: flex;align-items: center;gap: 8px;flex-wrap: wrap}
.cstats{display: flex;flex-wrap: wrap;gap: 12px;align-items: center;margin: 6px 0 4px;font-size: 12.5px}
.stabs{display: flex;gap: 6px;overflow-x: auto;padding-bottom: 8px;margin-bottom: 8px;border-bottom: 1px solid var(--line)}
.stabs{scrollbar-width: thin;scrollbar-color: #2c3649 transparent}
.stabs::-webkit-scrollbar{height: 6px}
.stabs::-webkit-scrollbar-thumb{background: #2c3649;border-radius: 3px}
.stabs::-webkit-scrollbar-track{background: transparent}
.stab{flex-shrink: 0;border: 1px solid var(--line-2);background: #121826;color: var(--muted);padding: 6px 10px;border-radius: 8px;cursor: pointer;font: 600 12px var(--font)}
.stab:hover{color: var(--text)}
.stab.active{background: var(--green);color: #04130a;border-color: var(--green)}
.have{color: var(--muted);font-weight: 500;font-size: 12px}
.ibuy{display: flex;gap: 5px;flex-wrap: wrap}
.item.away{opacity: 0.6}
.wslot{padding: 10px 12px;margin-bottom: 8px;border-radius: 11px;background: #0a0e15;border: 1px solid var(--line);display: grid;gap: 6px}
.wtop{display: flex;gap: 10px;align-items: center}
.wtop small{display: block;color: var(--muted);font-size: 11.5px}
.wic{font-size: 26px}
.durbar{position: relative;height: 16px;background: #1a2130;border-radius: 6px;overflow: hidden}
.durbar i{display: block;height: 100%;background: linear-gradient(90deg, #1fbf63, #39ff88);opacity: 0.55}
.durbar span{position: absolute;inset: 0;display: flex;align-items: center;justify-content: center;font-size: 10.5px;font-weight: 600}
.durbar.broken i{background: var(--red)}
.boost{font-size: 12px;display: flex;flex-wrap: wrap;gap: 6px;align-items: center}
.chip .x{border: 0;background: transparent;color: var(--muted);cursor: pointer;padding: 0 0 0 4px}
.chip .x:hover{color: var(--red)}
.crew-row{display: grid;grid-template-columns: auto minmax(0, 1fr) auto auto;gap: 10px;align-items: center;padding: 8px 10px;margin-bottom: 6px;border-radius: 10px;background: #0a0e15;border: 1px solid var(--line)}
.ric{font-size: 22px}
.cinfo small{display: block;color: var(--muted);font-size: 11.5px}
.loyal{width: 70px;height: 6px;background: #1a2130;border-radius: 4px;overflow: hidden}
.loyal i{display: block;height: 100%;background: linear-gradient(90deg, #ff4d61, #ffd23d, #39ff88)}
.stars{color: #ffd23d;letter-spacing: 1px}
.batch{padding: 8px 10px;margin-bottom: 6px;border-radius: 10px;background: #0a0e15;border: 1px solid var(--line);display: grid;gap: 6px;font-size: 13px}
.recipes{display: grid;gap: 6px}
.recipe{display: flex;justify-content: space-between;gap: 10px;align-items: center;padding: 8px 10px;border-radius: 10px;background: #0a0e15;border: 1px solid var(--line)}
.recipe small{display: block;font-size: 11.5px;margin-top: 2px;color: #c9d1de}
.recipe small.muted{color: var(--muted)}
.recipe.off{opacity: 0.7}
.topbar{gap: 14px;padding: 8px 16px}
.logo img{height: 26px}
.hud{gap: 6px}
.stat{min-width: 66px;padding: 4px 9px}
.stat .val{font-size: 16px}
.meter-stat{min-width: 100px}
@media (max-width: 900px){.cartel-panel{order: 3}
.inv-panel{order: 4}
.log-panel{order: 5}
.meter-stat.xp{min-width: 0;flex-basis: 100%}
}
.topbar{flex-wrap: wrap;row-gap: 6px}
.effects{flex-basis: 100%;display: flex;flex-wrap: wrap;gap: 6px}
.fx{font-size: 11.5px;padding: 3px 9px;border-radius: 999px;background: #151b27;border: 1px solid rgba(183, 123, 255, 0.45);color: #e2d4ff;cursor: help}
.fx.warn{border-color: rgba(255, 181, 71, 0.55);color: #ffd79a}
.fx.bad{border-color: rgba(255, 77, 97, 0.6);color: #ffb3bc}
.meter-stat.energy .meter i{background: linear-gradient(90deg, #d9b52b, #fff27a)}
.log li.drug{border-left-color: #d46bff}
.kv .warn, span.warn{color: var(--amber)}
.mlegend{font-size: 11.5px;color: var(--muted);padding: 2px 8px 8px;line-height: 1.4}
.mlegend .pricey{color: var(--amber)}
.price small.mine{display: block;font-size: 11px;font-family: var(--font);margin-top: 1px}
.inv-tabs{display: flex;gap: 4px;margin: -2px 0 10px;overflow-x: auto;scrollbar-width: thin}
.itab{flex: 1 0 auto;display: flex;align-items: center;justify-content: center;gap: 5px;cursor: pointer;padding: 6px 9px;border-radius: 9px;border: 1px solid var(--line-2);background: #121826;color: var(--muted);font: 600 12px var(--font)}
.itab:hover{color: var(--text)}
.itab.active{background: #1d2a1f;border-color: var(--green);color: var(--green)}
.itab em{font-style: normal;font-size: 10px;background: #263046;color: var(--text);border-radius: 999px;padding: 0 6px}
.irow2{display: grid;grid-template-columns: auto minmax(0, 1fr) auto;gap: 10px;align-items: center;padding: 7px 4px;border-bottom: 1px solid rgba(255, 255, 255, 0.04)}
.irow2 .iname small{display: block;font-size: 11.5px;color: #b6bfce;margin-top: 1px}
.ibtns{display: flex;gap: 5px;flex-wrap: wrap;justify-content: flex-end}
.ibar{margin-top: 10px;display: flex;gap: 6px;flex-wrap: wrap}
#inventory h5{margin: 10px 0 6px;font: 600 11px var(--font);letter-spacing: 0.06em;text-transform: uppercase;color: var(--muted)}
.chip.illegal{border-color: rgba(255, 77, 97, 0.5)}
.durbar.mini{height: 12px;margin-top: 4px}
.durbar.mini span{font-size: 9.5px}
.venue{display: grid;grid-template-columns: auto auto;grid-template-rows: auto auto;column-gap: 7px;text-align: left;cursor: pointer;padding: 6px 10px 6px 8px;border-radius: 10px;background: #121a26;border: 1px solid var(--line-2);color: var(--text)}
.venue:hover:not([disabled]){border-color: var(--purple)}
.venue.closed{opacity: 0.6}
.venue.special{border-color: rgba(255, 181, 71, 0.6)}
.meta .here-contacts{color: #d7c2ff;letter-spacing: 0}
.vopts{display: grid;grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));gap: 8px;margin-top: 8px}
.vopt{display: grid;grid-template-columns: auto 1fr;column-gap: 9px;text-align: left;cursor: pointer;padding: 10px 12px;border-radius: 11px;background: #0a0e15;border: 1px solid var(--line-2);color: var(--text)}
.vopt:hover:not([disabled]){border-color: var(--green);background: #101a14}
.vopt[disabled]{opacity: 0.5;cursor: not-allowed}
.vopt .vi{grid-row: 1 / span 3;font-size: 24px;align-self: center}
.vopt small{color: var(--muted);font-size: 11.5px}
.vopt em{font-style: normal;font-size: 11px;color: #9fe9c0}
.deal-row{display: grid;grid-template-columns: auto minmax(0, 1fr) auto;gap: 10px;align-items: center;padding: 8px 10px;margin-bottom: 6px;border-radius: 10px;background: #0a0e15;border: 1px solid var(--line)}
.deal-row .iname small{display: block;color: #b6bfce;font-size: 11.5px}
.lvlb{font-size: 10.5px;padding: 1px 7px;border-radius: 999px;border: 1px solid rgba(183, 123, 255, 0.5);color: #d7c2ff}
.loyal.wide{width: 100%;height: 8px;margin: 4px 0 6px}
.ach-grid{display: grid;grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));gap: 8px}
.ach{display: grid;grid-template-columns: auto minmax(0, 1fr);gap: 10px;padding: 10px;border-radius: 11px;background: #0a0e15;border: 1px solid var(--line);opacity: 0.75}
.ach.done{opacity: 1;border-color: rgba(57, 255, 136, 0.45);background: #0d1710}
.ach b{display: block}
.ach small{display: block;font-size: 11.5px;color: var(--muted)}
.ach .meter{margin: 5px 0 2px}
.aic2{font-size: 26px;filter: grayscale(0.7)}
.ach.done .aic2{filter: none}
.stat-grid{display: grid;grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));gap: 6px 16px}
.stat-grid h4{margin: 10px 0 4px !important}
.stat-grid .kv{padding: 3px 0;font-size: 13px;border-bottom: 1px solid rgba(255, 255, 255, 0.04)}
#app{grid-template-rows: auto 1fr}
.toasts{bottom: 16px}
.lang-sw{display: inline-flex;border: 1px solid var(--line-2);border-radius: 7px;overflow: hidden;background: #0d121b;vertical-align: middle}
.lang-sw button{border: 0;background: transparent;color: var(--muted);font: 700 10.5px var(--font);letter-spacing: 0.05em;padding: 3px 7px;cursor: pointer}
.lang-sw button.on{background: #1d2a1f;color: var(--green);cursor: default}
.lang-sw button:hover:not(.on){color: var(--text)}
.lang-hud{display: flex;align-items: center;margin-left: auto}
.lang-title{position: absolute;top: 14px;right: 16px;z-index: 3}
.ps-head .lang-sw{margin-left: auto;margin-right: 10px}
.toprow2{flex-basis: 100%;display: flex;align-items: center;gap: 10px;flex-wrap: wrap;min-width: 0}
.toprow2 .effects{flex: 1 1 260px;justify-content: flex-end}
.menubar{display: flex;align-items: center;flex-wrap: wrap}
.mgroup{position: relative}
.mbtn, .qbtn{display: inline-flex;align-items: center;gap: 6px;cursor: pointer;position: relative;padding: 5px 11px;border-radius: 9px;border: 1px solid transparent;background: transparent;font: 500 14px var(--display);letter-spacing: 0.03em;color: #c9d1de}
.mbtn:hover, .qbtn:hover:not([disabled]){background: #151b27;color: var(--text);border-color: var(--line-2)}
.mgroup.open .mbtn{background: #1d2a1f;border-color: var(--green);color: var(--green)}
.mbtn .mic{font-size: 15px}
.mbtn .caret{font-size: 10px;opacity: 0.6}
.qbtn{padding: 5px 8px;font-size: 16px}
.qbtn[disabled]{opacity: 0.35;cursor: wait}
.msep{width: 1px;height: 22px;background: var(--line-2);margin: 0 6px}
.mbadge{font: 700 10px var(--font);font-style: normal;min-width: 17px;height: 17px;padding: 0 5px;border-radius: 999px;display: inline-flex;align-items: center;justify-content: center;background: var(--green);color: #04130a;position: relative}
.mbadge::after{content: '';position: absolute;inset: 0;border-radius: inherit;box-shadow: 0 0 10px rgba(57, 255, 136, 0.6);animation: badgePulse 1.6s ease-in-out infinite;pointer-events: none}
.mbadge.warn::after{box-shadow: 0 0 10px rgba(255, 77, 97, 0.6)}
.qbtn .mbadge{position: absolute;top: -4px;right: -5px}
.mnew{font: 700 9px var(--font);font-style: normal;letter-spacing: 0.04em;padding: 1px 5px;border-radius: 999px;background: var(--amber, #ffb84d);color: #1a1000;vertical-align: 2px}
.mnew.dot{display: inline-block;width: 8px;height: 8px;padding: 0;margin-left: 2px;box-shadow: 0 0 8px rgba(255, 184, 77, 0.7);vertical-align: 1px}
@keyframes badgePulse{50%{opacity: 0.2}
}
.mdrop{display: none;position: absolute;top: calc(100% + 6px);left: 0;z-index: 40;min-width: 290px;padding: 6px;border-radius: 13px;background: #10151f;border: 1px solid var(--line-2);box-shadow: 0 24px 60px rgba(0, 0, 0, 0.6);animation: pop 0.12s ease}
.mgroup.open .mdrop{display: block}
.mdrop hr{border: 0;border-top: 1px solid var(--line);margin: 5px 4px}
.mitem{display: grid;grid-template-columns: 28px minmax(0, 1fr) auto;align-items: center;gap: 8px;width: 100%;padding: 7px 9px;border-radius: 9px;border: 0;background: transparent;text-align: left;cursor: pointer;color: var(--text)}
.mitem:hover:not([disabled]){background: #18202e}
.mitem[disabled]{opacity: 0.4;cursor: not-allowed}
.mitem .mic{font-size: 18px;text-align: center}
.mitem b{display: block;font-size: 13px;font-weight: 600}
.mitem small{display: block;font-size: 11px;color: var(--muted);line-height: 1.3}
.venue{border-left: 3px solid var(--vc, var(--line-2))}
.venue.at{border-color: var(--green);box-shadow: 0 0 0 1px rgba(57, 255, 136, 0.35) inset;background: #12221a}
.linkbtn{border: 0;background: transparent;color: var(--green);cursor: pointer;padding: 0;font: 600 12px var(--font)}
.linkbtn:hover{text-decoration: underline}
.charsheet{display: grid;grid-template-columns: minmax(230px, 290px) minmax(0, 1fr);gap: 16px;align-items: start}
.doll{position: relative;width: 100%;aspect-ratio: 2 / 3;margin: 0 auto;background: radial-gradient(closest-side, rgba(57, 255, 136, 0.08), transparent), #0a0e15;border: 1px solid var(--line);border-radius: 14px}
.doll-fig{position: absolute;left: 8%;top: 6%;width: 84%;height: 88%;filter: drop-shadow(0 0 12px rgba(57, 255, 136, 0.12))}
.dslot{position: absolute;width: 54px;height: 54px;transform: translate(-50%, -50%);cursor: pointer;user-select: none;display: flex;flex-direction: column;align-items: center;justify-content: center;border-radius: 13px;background: rgba(10, 14, 21, 0.92);border: 1px solid rgba(57, 255, 136, 0.55);box-shadow: 0 6px 18px rgba(0, 0, 0, 0.45);transition: box-shadow 0.15s, border-color 0.15s, transform 0.15s}
.dslot:hover{box-shadow: 0 0 16px rgba(57, 255, 136, 0.35);transform: translate(-50%, -50%) scale(1.06)}
.dslot .dic{font-size: 26px;line-height: 1}
.dslot.empty{border: 1px dashed var(--line-2);background: rgba(10, 14, 21, 0.75)}
.dslot.empty .dic{opacity: 0.28;filter: grayscale(1);font-size: 22px}
.dslot .dname{font-size: 9px;color: var(--muted);margin-top: 2px;letter-spacing: 0.04em}
.dslot em{position: absolute;top: -6px;right: -6px;font: 700 10px var(--font);font-style: normal;padding: 1px 5px;border-radius: 999px;background: var(--purple);color: #fff}
.dslot.broken{border-color: var(--red);box-shadow: 0 0 12px rgba(255, 77, 97, 0.35)}
.dslot.sel{border-color: #ffffff;box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.25), 0 0 18px rgba(57, 255, 136, 0.4)}
.dslot.target{border: 2px dashed var(--amber)}
.dslot.over, .wardrobe.over{border-color: var(--green) !important;background: rgba(57, 255, 136, 0.15)}
.ddur{position: absolute;left: 7px;right: 7px;bottom: 4px;height: 3px;border-radius: 2px;background: #2a3242;overflow: hidden}
.ddur b{display: block;height: 100%;background: var(--green)}
.dslot.broken .ddur b{background: var(--red)}
.doll-hint{font-size: 11.5px;color: var(--muted);margin: 8px 2px 0;line-height: 1.4}
.ddetail{margin-top: 8px;padding: 9px 11px;border-radius: 11px;background: #0a0e15;border: 1px solid var(--line-2);display: grid;gap: 4px}
.ddetail small{color: #b6bfce;font-size: 11.5px}
.ddetail .btnrow{margin-top: 4px}
.chead2{display: flex;align-items: center;justify-content: space-between;gap: 10px;flex-wrap: wrap}
.chead2 b{font: 600 18px var(--display);letter-spacing: 0.03em}
.chead2 small{display: block;color: #d7c2ff;font-size: 12px}
.meter.xpbar{height: 5px;margin: 8px 0 10px}
.meter.xpbar i{background: linear-gradient(90deg, #8a5cff, #d38bff)}
.cstats2{display: grid;gap: 4px}
.cstat{display: grid;grid-template-columns: 26px minmax(80px, 1fr) auto;grid-template-rows: auto 3px;column-gap: 8px;align-items: center;padding: 5px 8px;border-radius: 9px;background: rgba(255, 255, 255, 0.02);border: 1px solid transparent;cursor: help}
.cstat:hover{border-color: var(--line-2);background: rgba(255, 255, 255, 0.04)}
.cstat .ci{grid-row: 1 / span 2;font-size: 17px;text-align: center}
.cstat .cn{font-size: 12.5px;color: #c9d1de}
.cstat b{font: 500 15px var(--display);text-align: right}
.cstat b small{font: 400 11px var(--font);color: var(--muted)}
.cbar{grid-column: 2 / span 2;height: 3px;border-radius: 2px;background: #1a2130;overflow: hidden}
.cbar u{display: block;height: 100%;background: linear-gradient(90deg, #1fbf63, #39ff88);text-decoration: none}
.cstat.hp .cbar u{background: linear-gradient(90deg, #ff4d61, #ff7a59)}
.cstat.en .cbar u{background: linear-gradient(90deg, #d9b52b, #fff27a)}
.wardrobe{display: grid;grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));gap: 6px;padding: 6px;min-height: 56px;border-radius: 11px;border: 1px dashed var(--line-2)}
.wardrobe.target{border-color: var(--amber)}
.ward{display: grid;grid-template-columns: auto minmax(0, 1fr);gap: 8px;align-items: center;text-align: left;cursor: grab;padding: 7px 9px;border-radius: 10px;background: #0a0e15;border: 1px solid var(--line-2);color: var(--text)}
.ward:hover{border-color: var(--green)}
.ward .wic{font-size: 22px}
.ward .wtx{position: relative;min-width: 0;padding-bottom: 5px}
.ward b{display: block;font-size: 12.5px}
.ward small{display: block;font-size: 10.5px;color: var(--muted);white-space: nowrap;overflow: hidden;text-overflow: ellipsis}
.ward .ddur{left: 0;right: 0;bottom: 0}
.skill-top{display: flex;justify-content: space-between;align-items: center;gap: 10px;flex-wrap: wrap;margin-bottom: 10px}
.skill-top .sp{font: 600 26px var(--display);color: var(--green);text-shadow: 0 0 14px rgba(57, 255, 136, 0.5);margin-right: 4px}
.stree{display: grid;gap: 8px;overflow-x: auto;padding-bottom: 6px}
.sbranch{display: flex;flex-direction: column;gap: 6px;padding: 8px;border-radius: 12px;background: #0a0e15;border: 1px solid var(--line);border-top: 3px solid var(--bc)}
.sbh{display: flex;justify-content: space-between;align-items: center;font: 600 15px var(--display);letter-spacing: 0.04em;color: var(--bc)}
.sbh em{font: 500 10.5px var(--font);font-style: normal;color: var(--muted)}
.srow{display: grid;gap: 5px;position: relative;padding-top: 14px}
.srow + .srow::before{content: "";position: absolute;left: 50%;top: 0;height: 12px;border-left: 2px dotted var(--line-2)}
.srn{position: absolute;top: 0;left: 0;font: 600 10px var(--display);color: var(--muted)}
.skill{display: grid;grid-template-columns: 26px minmax(0, 1fr);gap: 6px;text-align: left;cursor: pointer;padding: 7px 8px;border-radius: 10px;background: #121826;border: 1px solid var(--line-2);color: var(--text)}
.skill .si{font-size: 18px}
.skill b{display: block;font-size: 12px;line-height: 1.25}
.skill small{display: block;font-size: 10.5px;color: var(--muted);line-height: 1.3}
.skill .pips{display: block;color: var(--bc);letter-spacing: 1px;font-size: 11px;margin-top: 2px}
.skill .req{color: var(--amber)}
.skill.can{border-color: var(--bc)}
.skill.can:hover{background: #18202e;box-shadow: 0 0 14px rgba(255, 255, 255, 0.08)}
.skill.has{background: #141d2b}
.skill.max{border-color: var(--bc);box-shadow: 0 0 10px rgba(255, 255, 255, 0.06) inset}
.skill.locked{opacity: 0.55}
.skill[aria-disabled="true"]{cursor: default}
.skill[aria-disabled="true"].can{border-color: var(--line-2)}
.prop{display: grid;grid-template-columns: auto minmax(0, 1fr) auto;gap: 10px;align-items: center;padding: 8px 10px;margin-bottom: 6px;border-radius: 11px;background: #0a0e15;border: 1px solid var(--line)}
.prop.here{border-color: rgba(57, 255, 136, 0.45)}
.prop .pic{font-size: 24px}
.prop .ptx small{display: block;color: #b6bfce;font-size: 11.5px}
.stash-cols{display: grid;grid-template-columns: 1fr 1fr;gap: 12px}
.stash-cols h5{margin: 6px 0;font: 600 11px var(--font);letter-spacing: 0.06em;text-transform: uppercase;color: var(--muted)}
@media (max-width: 900px){.map-wrap{height: clamp(340px, 58vh, 560px)}
.toprow2 .effects{justify-content: flex-start}
.stash-cols{grid-template-columns: 1fr}
}
@media (max-width: 640px){.charsheet{grid-template-columns: minmax(0, 1fr)}
.doll{max-width: 300px}
.mbtn .mlb{display: none}
.mbtn{padding: 5px 8px}
.mdrop{position: fixed;left: 8px;right: 8px;top: auto;min-width: 0;max-height: calc(100vh - 140px);overflow-y: auto;margin-top: 6px}
.hud{flex-basis: 100%}
.deal-row .ibtns:has(> :nth-child(2)), .crew-row .ibtns:has(> :nth-child(2)){grid-column: 1 / -1;justify-content: flex-end}
}
.mbtn.invbtn{border-color: var(--line-2);background: #121826}
.mbtn.invbtn small{font: 600 11px var(--font);color: var(--muted)}
.mbtn.invbtn small.warn{color: var(--amber)}
.mbtn.invbtn small.neg{color: var(--red)}
.mbtn.invbtn.on{background: #1d2a1f;border-color: var(--green);color: var(--green)}
.mbadge.warn{background: var(--red);color: #fff}
.inv-drawer{position: fixed;z-index: 26;left: 16px;top: 120px;width: min(820px, calc(100vw - 32px));overflow-y: auto;overscroll-behavior: contain;border-radius: var(--radius);box-shadow: 0 30px 80px rgba(0, 0, 0, 0.6), 0 0 0 1px rgba(57, 255, 136, 0.18);animation: pop 0.14s ease}
.inv-drawer .inv-panel{margin: 0;border-color: var(--line-2)}
.inv-drawer .panel-head{position: relative;padding-right: 30px}
.inv-drawer .panel-head .mclose{top: -2px;right: 0}
.inv-drawer .panel-head h2{text-transform: none}
.stimer{margin: 8px 0;padding: 8px 10px;border-radius: 10px;background: #0a0e15;border: 1px solid var(--line-2);display: grid;gap: 5px;font-size: 12.5px}
.stimer .trow{display: flex;justify-content: space-between;gap: 10px;flex-wrap: wrap}
.stimer .tbar{display: block;height: 5px;border-radius: 3px;background: #1a2130;overflow: hidden}
.stimer .tbar u{display: block;height: 100%;text-decoration: none;background: linear-gradient(90deg, #1fbf63, #39ff88)}
.stimer.warn{border-color: rgba(255, 181, 71, 0.55)}
.stimer.warn .tbar u{background: linear-gradient(90deg, #d9822b, #ffb547)}
.stimer.bad{border-color: rgba(255, 77, 97, 0.6)}
.stimer.bad .tbar u{background: var(--red)}
.stimer small{color: #ffb3bc}
.prop.stashrow{align-items: start}
.prop.stashrow .stimer{margin-bottom: 0}
.stree{grid-template-columns: repeat(8, minmax(150px, 1fr))}
.modal.xwide{width: min(1360px, 100%)}
.srow.mrow4{padding-top: 18px}
.srow.mrow4 .srn{color: #ffd23d}
.skill.master{background: linear-gradient(180deg, rgba(255, 210, 61, 0.08), #121826 60%);border-style: double;border-width: 3px}
.skill.master.locked{opacity: 0.5}
@media (max-width: 900px){.inv-drawer{left: 8px;width: calc(100vw - 16px)}
}
@media (max-width: 640px){.mbtn.invbtn .mlb{display: inline}
}
.log li.net{border-left-color: var(--purple)}
.nbars{display: flex;align-items: flex-end;gap: 4px;height: 120px;padding: 8px 8px 0;border-radius: 10px;background: #0a0e15;border: 1px solid var(--line)}
.nbar{flex: 1 1 0;height: 100%;display: flex;flex-direction: column;justify-content: flex-end;align-items: center;gap: 3px;min-width: 0;cursor: help}
.nbar i{display: block;width: 100%;max-width: 34px;border-radius: 4px 4px 0 0;background: linear-gradient(180deg, #39ff88, #1fbf63)}
.nbar.neg i{background: linear-gradient(180deg, #ff7a59, #ff4d61)}
.nbar span{font-size: 9.5px;color: var(--muted);padding-bottom: 3px}
.nalerts{list-style: none;margin: 0;padding: 0;display: grid;gap: 5px}
.nalerts li{padding: 6px 10px;border-radius: 9px;background: rgba(255, 181, 71, 0.08);border: 1px solid rgba(255, 181, 71, 0.4);color: #ffd79a;font-size: 12.5px}
.netpost, .netroute{padding: 10px 12px;margin-bottom: 8px;border-radius: 11px;background: #0a0e15;border: 1px solid var(--line);display: grid;gap: 6px}
.netpost{border-left: 3px solid var(--purple)}
.netpost.empty{border-left-color: var(--amber)}
.netroute{border-left: 3px solid #8f9bff}
.netroute.paused{opacity: 0.65}
.nph{display: flex;align-items: center;gap: 6px;flex-wrap: wrap}
.npm{display: flex;flex-wrap: wrap;gap: 6px 14px;align-items: center;font-size: 12.5px;color: #c9d1de}
.npm .loyal{width: 90px}
.nset{margin-top: 8px}
.netform{display: grid;grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));gap: 8px;margin-bottom: 8px}
.netform label{display: grid;gap: 4px;font-size: 11px;letter-spacing: 0.06em;text-transform: uppercase;color: var(--muted)}
.netform select{width: 100%;padding: 7px 9px;border-radius: 9px;border: 1px solid var(--line-2);background: #0a0e15;color: var(--text);font: 500 13px var(--font);text-transform: none;letter-spacing: 0}
.netform select:focus{outline: none;border-color: var(--green)}
.tut{position: fixed;left: 16px;bottom: 16px;z-index: 25;width: min(340px, calc(100vw - 32px));padding: 12px 14px;border-radius: 14px;background: linear-gradient(180deg, #1a2030, #121722);border: 1px solid rgba(255, 181, 71, 0.55);box-shadow: 0 20px 50px rgba(0, 0, 0, 0.55), 0 0 24px rgba(255, 181, 71, 0.12);animation: pop 0.18s ease}
.tut.min{width: auto;padding: 0;background: transparent;border: 0;box-shadow: none}
.tut-pill{padding: 8px 14px;border-radius: 999px;cursor: pointer;font: 600 13px var(--font);color: #ffd79a;background: #1a2030;border: 1px solid rgba(255, 181, 71, 0.6);box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5)}
.tut-head{display: flex;align-items: center;gap: 8px;margin-bottom: 6px}
.tut-head b{font: 600 15px var(--display);letter-spacing: 0.03em;color: #ffd79a;flex: 1}
.tut-head span{font-size: 11.5px;color: var(--muted)}
.tut-x{border: 0;background: transparent;color: var(--muted);cursor: pointer;font-size: 18px;line-height: 1;padding: 0 2px}
.tut-x:hover{color: var(--text)}
.tut-bar{height: 4px;border-radius: 3px;background: #2a3242;overflow: hidden;margin-bottom: 10px}
.tut-bar i{display: block;height: 100%;background: linear-gradient(90deg, #ffb547, #ffd23d);transition: width 0.4s ease}
.tut-step{display: grid;grid-template-columns: auto minmax(0, 1fr);gap: 10px}
.tut-ic{font-size: 26px;line-height: 1.1}
.tut-step .tt{display: block;font-size: 14px;margin-bottom: 3px}
.tut-step p{margin: 0;font-size: 12.5px;line-height: 1.45;color: #cdd5e2}
.tut-foot{display: flex;align-items: center;justify-content: space-between;gap: 10px;margin-top: 10px}
.tut-foot .linkbtn{color: var(--muted);font-weight: 500}
@keyframes tutPulse{0%, 100%{opacity: 0.35}
50%{opacity: 1}
}
body[data-tut="sell"] #market .mrow .btn.sell:not([disabled]),
body[data-tut="profit"] #market .mrow .btn.sell:not([disabled]),
body[data-tut="buy"] #market .mrow.best .btn.buy:not([disabled]),
body[data-tut="eat"] .meter-stat.food, body[data-tut="eat"] .meter-stat.water,
body[data-tut="travel"] .map-wrap,
body[data-tut="city"] .map-ctrl [data-zoom="city"],
body[data-tut="level"] .meter-stat.xp,
body[data-tut="skill"] .qbtn[data-act="skills"],
body[data-tut="rest"] .qbtn[data-act="rest"], body[data-tut="rest"] .meter-stat.energy,
body[data-tut="heat"] .meter-stat.heat,
body[data-tut="clean"] .stat.money, body[data-tut="clean"] .stat.money .dirty,
body[data-tut="goal"] .mbtn[data-menubtn="char"]{outline: 2px solid var(--amber);outline-offset: 2px;position: relative;z-index: 1}
body[data-tut="sell"] #market .mrow .btn.sell:not([disabled])::after,
body[data-tut="profit"] #market .mrow .btn.sell:not([disabled])::after,
body[data-tut="buy"] #market .mrow.best .btn.buy:not([disabled])::after,
body[data-tut="eat"] .meter-stat.food::after,
body[data-tut="eat"] .meter-stat.water::after,
body[data-tut="travel"] .map-wrap::after,
body[data-tut="city"] .map-ctrl [data-zoom="city"]::after,
body[data-tut="level"] .meter-stat.xp::after,
body[data-tut="skill"] .qbtn[data-act="skills"]::after,
body[data-tut="rest"] .qbtn[data-act="rest"]::after,
body[data-tut="rest"] .meter-stat.energy::after,
body[data-tut="heat"] .meter-stat.heat::after,
body[data-tut="clean"] .stat.money::after,
body[data-tut="goal"] .mbtn[data-menubtn="char"]::after{content: '';position: absolute;inset: -4px;border-radius: inherit;pointer-events: none;box-shadow: 0 0 0 3px rgba(255, 181, 71, 0.35), 0 0 22px rgba(255, 181, 71, 0.55);animation: tutPulse 1.4s ease-in-out infinite}
body[data-tut="travel"] .map-wrap::after{inset: 0;z-index: 4;box-shadow: inset 0 0 0 3px rgba(255, 181, 71, 0.45), inset 0 0 28px rgba(255, 181, 71, 0.5)}
body[data-tut="travel"] .map-wrap{outline-offset: -2px}
@media (max-width: 640px){.tut{left: 8px;bottom: 8px;width: calc(100vw - 16px)}
}
.dest-card.here{display: block;padding: 4px 2px 0;min-height: 0;margin-top: 6px;background: transparent;border: 0}
.lc-demo{display: flex;align-items: center;flex-wrap: wrap;gap: 1px 10px;margin-top: 3px;font-size: 11.5px;color: #b9c2d2;cursor: help}
.lc-demo .d{color: #d7c2ff}
.lc-demo .a{color: #ffd79a}
.lc-bar{flex: 1 1 70px;min-width: 60px;max-width: 200px;display: flex;gap: 2px;height: 4px;border-radius: 2px;background: #273042;overflow: hidden}
.lc-bar u{display: block;height: 100%;text-decoration: none}
.lc-bar u.d{background: #b77bff}
.lc-bar u.a{background: #ffb547}
.lc-row{display: flex;flex-wrap: wrap;align-items: center;gap: 3px;margin-top: 5px}
.lc-lab{font: 600 10px var(--font);letter-spacing: 0.05em;text-transform: uppercase;color: var(--muted);white-space: nowrap;margin-right: 2px}
.lc-row .lc-lab:not(:first-child){margin-left: 8px}
.pc{display: inline-flex;align-items: center;gap: 4px;max-width: 100%;min-width: 0;padding: 1px 7px 1px 5px;border-radius: 6px;cursor: pointer;line-height: 1.55;background: rgba(255, 255, 255, 0.035);border: 1px solid rgba(255, 255, 255, 0.07);border-left: 2px solid var(--vc, rgba(255, 255, 255, 0.18));font: 500 11.5px var(--font);color: var(--text)}
.pc i{font-style: normal;font-size: 12.5px}
.pc span{white-space: nowrap;overflow: hidden;text-overflow: ellipsis;max-width: 128px}
.pc em{font-style: normal;font-size: 10.5px;color: var(--muted)}
.pc:hover:not([disabled]){background: rgba(183, 123, 255, 0.12);border-color: rgba(183, 123, 255, 0.45)}
.pc[disabled]{cursor: wait;opacity: 0.6}
.pc.closed{opacity: 0.5}
.pc.special{border-color: rgba(255, 181, 71, 0.55)}
.pc.special em{color: #ffd79a}
.pc.at{background: rgba(57, 255, 136, 0.1);border-color: rgba(57, 255, 136, 0.55)}
.pc.dealer{border-left-color: var(--gc)}
.pc.free{border-style: dashed;border-left: 2px solid var(--green)}
.pc.free em{color: #9fe9c0}
.pc.stash{border-left-color: #c8a46a}
.pc.stash.filled{border-color: rgba(57, 255, 136, 0.45);border-left-color: var(--green)}
.pc.stash.filled em{color: #9fe9c0}
.pc.stash.warn{border-color: rgba(255, 181, 71, 0.6);border-left-color: var(--amber)}
.pc.stash.warn em{color: #ffd79a}
.pc.stash.danger{border-color: rgba(255, 77, 97, 0.65);border-left-color: var(--red);animation: siren 1.6s ease-in-out infinite}
.pc.netpost{border-left-color: var(--purple);background: rgba(183, 123, 255, 0.08)}
.pc.netpost em{color: #d7c2ff}
.pc.home{border-left-color: var(--green)}
.pc.contact{border-left-color: #d7c2ff}
.pc.contact em{color: #d7c2ff}
.pc.district{border-left-color: #8fd3ff}
.pc.love{border-left-color: #ff5c8a;background: rgba(255, 92, 138, 0.08)}
.pc.love em{color: #ffb3c8}
.pc.love.at{border-color: rgba(255, 92, 138, 0.7);animation: siren 1.6s ease-in-out infinite}
.fx.love{cursor: pointer;border-color: rgba(255, 92, 138, 0.55);color: #ffc2d6}
.fx.mis{cursor: pointer;border-color: rgba(255, 210, 61, 0.55);color: #ffe08a}
.fx.mis.warn{border-color: rgba(255, 138, 150, 0.85);color: #ffc2c9;box-shadow: 0 0 10px rgba(255, 77, 97, 0.25)}
.fx.love.warn{border-color: rgba(255, 92, 138, 0.9);color: #ffd6e2;box-shadow: 0 0 10px rgba(255, 92, 138, 0.3)}
.mnote.love{border-color: rgba(255, 92, 138, 0.45);background: rgba(255, 92, 138, 0.06)}
.mnote.love .btn{margin-left: 6px}
.pc.district.at{border-left-color: var(--green)}
.mnote.dist{border-color: rgba(143, 211, 255, 0.4);background: rgba(143, 211, 255, 0.05)}
.pl-go{display: flex;gap: 4px;flex-wrap: wrap;justify-content: flex-end}
.sgchips{display: flex;flex-wrap: wrap;gap: 4px;margin: 2px 0 8px}
.sgchip{border: 1px solid var(--line-2);background: #121826;color: var(--muted);padding: 4px 9px;border-radius: 999px;cursor: pointer;font: 600 11.5px var(--font)}
.sgchip small{color: var(--muted);font-weight: 500;margin-left: 2px}
.sgchip.on{color: #0b1018;background: var(--green);border-color: var(--green)}
.sgchip.on small{color: #0b1018}
.shop-gh{margin: 12px 0 6px;font: 600 12px var(--font);letter-spacing: 0.04em;text-transform: uppercase;color: var(--muted)}
.shop-gh:first-of-type{margin-top: 4px}
.ward-g{grid-column: 1 / -1;margin: 6px 2px 0;font: 600 10.5px var(--font);letter-spacing: 0.05em;text-transform: uppercase;color: var(--muted)}
.irows .ward-g{margin: 8px 2px 4px}
.modal.wide:has(.gs-tiles){width: min(860px, 100%)}
.gs-tiles{display: grid;grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));gap: 8px;margin: 6px 0 10px}
.gs-tile{display: grid;gap: 1px;padding: 9px 11px;border-radius: 11px;background: #0a0e15;border: 1px solid var(--line)}
.gs-tile .gs-ic{font-size: 16px;line-height: 1}
.gs-tile b{font: 500 19px var(--display);letter-spacing: 0.01em;color: var(--text);overflow-wrap: anywhere}
.gs-tile > span:not(.gs-ic){font-size: 11.5px;color: var(--muted)}
.gs-tile small{font-size: 11px;color: var(--muted)}
.gs-bars{--gs-c: #3987e5;display: grid;gap: 5px;margin: 6px 0 10px}
.gs-bars.out{--gs-c: #d95926}
.gs-bar{display: grid;grid-template-columns: minmax(120px, 34%) minmax(0, 1fr) auto;gap: 10px;align-items: center;font-size: 12.5px}
.gs-bl{white-space: nowrap;overflow: hidden;text-overflow: ellipsis}
.gs-bt{height: 10px;background: rgba(255, 255, 255, 0.04);border-radius: 0 4px 4px 0}
.gs-bt i{display: block;height: 100%;border-radius: 0 4px 4px 0;background: var(--gs-c)}
.gs-bv{font-variant-numeric: tabular-nums;white-space: nowrap;text-align: right}
.gs-bv small{color: var(--muted);margin-left: 4px}
.pet-head{display: flex;gap: 12px;align-items: center;margin-bottom: 8px}
.pet-head b{display: block;font: 500 18px var(--display)}
.pet-head small{color: var(--muted)}
.pet-ic{font-size: 40px;line-height: 1}
.pet-row .pet-ic{font-size: 30px}
.pet-ab{margin: 4px 0 8px;padding-left: 18px;font-size: 12.5px}
.pet-ab li{margin: 2px 0}
input.pet-name{width: 100%;padding: 8px 10px;border-radius: 8px;border: 1px solid var(--line-2);background: #0a0e15;color: var(--text);font: 500 15px var(--font)}
@media (max-width: 640px){.gs-tiles{grid-template-columns: repeat(2, minmax(0, 1fr))}
.gs-bar{grid-template-columns: minmax(0, 1fr) auto;row-gap: 3px}
.gs-bt{grid-column: 1 / -1;grid-row: 2}
}
@media (max-width: 640px){.crew-row.pl-row{grid-template-columns: auto minmax(0, 1fr);row-gap: 6px}
.crew-row.pl-row .pl-p{grid-column: 2;text-align: left;margin: 0;display: flex;flex-wrap: wrap;gap: 2px 6px;align-items: baseline;white-space: normal}
.crew-row.pl-row .pl-go, .crew-row.pl-row > .btn{grid-column: 2;justify-content: flex-start;justify-self: start}
}
td.nowrap{white-space: nowrap}
td.nowrap .btn + .btn{margin-left: 3px}
.mnote.dist .linkbtn{font-size: 11.5px}
.lc-actions{display: flex;flex-wrap: wrap;gap: 4px;margin-top: 6px;padding-top: 6px;border-top: 1px solid rgba(255, 255, 255, 0.05)}
.btn.xs{padding: 3px 8px;gap: 4px;font-size: 11.5px;font-weight: 600;border-radius: 7px}
.dest-card .lc-demo{margin-top: 4px}
.modal.mstats{width: min(900px, 100%)}
.ms{position: relative;display: grid;gap: 10px;--ms-d: #3987e5;--ms-s: #d95926;--ms-surface: #0a0e15}
.ms-filters{display: flex;flex-wrap: wrap;align-items: center;gap: 6px 8px}
.seg{display: inline-flex;flex-wrap: wrap;gap: 2px;padding: 2px;border-radius: 9px;background: #0a0e15;border: 1px solid var(--line)}
.segb{border: 0;background: transparent;color: var(--muted);padding: 5px 10px;border-radius: 7px;cursor: pointer;font: 600 12px var(--font)}
.segb:hover{color: var(--text);background: rgba(255, 255, 255, 0.04)}
.segb.on{background: #1d2a1f;color: var(--green)}
.seg.sm{flex-wrap: nowrap}
.seg.sm .segb{padding: 3px 8px;font-size: 11px}
.ms-sel{max-width: 100%;padding: 6px 9px;border-radius: 9px;border: 1px solid var(--line-2);background: #0a0e15;color: var(--text);font: 500 12.5px var(--font)}
.ms-sel.sm{padding: 3px 7px;font-size: 11.5px;border-radius: 8px}
.ms-sel:focus{outline: none;border-color: var(--green)}
.ms-live{margin-left: auto;font-size: 11.5px;color: var(--muted);cursor: help}
.ms-live.on{color: #b4ffd3}
.ms-note{margin: 0 !important;font-size: 11.5px;line-height: 1.45;color: var(--muted)}
.ms-note b{color: #c9d1de;font-weight: 600}
.ms-kpis{display: grid;grid-template-columns: repeat(auto-fill, minmax(122px, 1fr));gap: 6px}
.ms-kpi{display: grid;gap: 1px;padding: 7px 10px;border-radius: 10px;background: #0a0e15;border: 1px solid var(--line)}
.ms-kpi span{font-size: 11px;color: var(--muted)}
.ms-kpi b{font: 600 17px var(--font);color: var(--text)}
.ms-kpi small{font-size: 10.5px;color: #9aa4b5}
.ms-card{padding: 10px 12px;border-radius: 12px;background: var(--ms-surface);border: 1px solid var(--line);min-width: 0}
.ms-head{display: flex;flex-wrap: wrap;align-items: center;gap: 6px 14px;margin-bottom: 8px}
.mbody .ms-head h4{margin: 0;font: 600 13px var(--font);letter-spacing: 0;text-transform: none;color: var(--text)}
.ms-legend{display: flex;align-items: center;gap: 10px;font-size: 11.5px;color: #b9c2d2}
.ms-legend small{color: var(--muted)}
.ms-legend .sw{display: inline-block;width: 10px;height: 10px;border-radius: 2px;margin-right: 5px;vertical-align: -1px}
.lk{display: inline-block;flex-shrink: 0;width: 14px;height: 2px;border-radius: 1px;margin-right: 5px;vertical-align: 3px}
.sw.d, .lk.d{background: var(--ms-d)}
.sw.s, .lk.s{background: var(--ms-s)}
.ms-tools{display: flex;align-items: center;gap: 6px;margin-left: auto}
.ms-rows{display: grid;gap: 1px;max-height: 340px;overflow-y: auto;scrollbar-width: thin}
.msr{display: grid;grid-template-columns: minmax(96px, 150px) minmax(0, 1fr) 112px;align-items: center;gap: 10px;padding: 4px 6px;border-radius: 7px;cursor: pointer}
.msr:hover, .msr:focus-visible{background: rgba(255, 255, 255, 0.045);outline: none}
.msr.sel{background: rgba(57, 135, 229, 0.1);box-shadow: inset 2px 0 0 #9cc3f5}
.msr-n{display: flex;align-items: center;gap: 6px;min-width: 0;font-size: 12px}
.msr-n i{font-style: normal}
.msr-n b{font-weight: 500;white-space: nowrap;overflow: hidden;text-overflow: ellipsis}
.msr-b{display: grid;gap: 2px}
.msr-b u{display: block;height: 7px;min-width: 2px;border-radius: 0 4px 4px 0;text-decoration: none}
.msr-b u.d{background: var(--ms-d)}
.msr-b u.s{background: var(--ms-s)}
.msr:hover .msr-b u, .msr:focus-visible .msr-b u{filter: brightness(1.18)}
.msr-v{font-size: 11.5px;color: #9aa4b5;text-align: right;white-space: nowrap}
.msr-v.short{color: var(--text);font-weight: 600}
.ms-tablewrap{max-height: 340px;overflow: auto;scrollbar-width: thin}
.ms-table{width: 100%;border-collapse: collapse;font-size: 12px;font-variant-numeric: tabular-nums}
.ms-table th{position: sticky;top: 0;padding: 4px 6px;text-align: right;background: var(--ms-surface);border-bottom: 1px solid var(--line-2);font: 600 10.5px var(--font);letter-spacing: 0.04em;text-transform: uppercase;color: var(--muted)}
.ms-table td{padding: 4px 6px;text-align: right;white-space: nowrap;border-bottom: 1px solid rgba(255, 255, 255, 0.04)}
.ms-table th:first-child, .ms-table td:first-child{text-align: left}
.ms-table tbody tr{cursor: pointer}
.ms-table tbody tr:hover td{background: rgba(255, 255, 255, 0.035)}
.ms-table tr.sel td{background: rgba(57, 135, 229, 0.1)}
.ms-table small{color: var(--muted)}
.ms-line{position: relative;border-radius: 8px;outline: none}
.ms-line:focus-visible{box-shadow: 0 0 0 2px rgba(57, 255, 136, 0.45)}
.ms-line svg{display: block;max-width: 100%;height: auto;overflow: visible;font-family: var(--font)}
.ms-line .grid{stroke: rgba(255, 255, 255, 0.06);stroke-width: 1}
.ms-line .base{stroke: rgba(255, 255, 255, 0.16);stroke-width: 1}
.ms-line .ytick{fill: var(--muted);font-size: 10px;text-anchor: end;font-variant-numeric: tabular-nums}
.ms-line .xtick{fill: var(--muted);font-size: 10px;text-anchor: middle}
.ms-line .ln{fill: none;stroke-width: 2;stroke-linejoin: round;stroke-linecap: round}
.ms-line .ln.d{stroke: var(--ms-d)}
.ms-line .ln.s{stroke: var(--ms-s)}
.ms-line .dot{stroke: var(--ms-surface);stroke-width: 2}
.ms-line .dot.d{fill: var(--ms-d)}
.ms-line .dot.s{fill: var(--ms-s)}
.ms-line .elab{fill: #c9d1de;font-size: 10.5px}
.ms-line .elab .v{fill: var(--muted)}
.ms-line .lead{stroke: rgba(255, 255, 255, 0.25);stroke-width: 1}
.ms-line .xl{stroke: rgba(255, 255, 255, 0.32);stroke-width: 1}
.ms-tip{position: absolute;z-index: 3;min-width: 150px;max-width: 280px;padding: 7px 9px;pointer-events: none;border-radius: 9px;background: #1a2130;border: 1px solid var(--line-2);box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);font-size: 11.5px;color: #c9d1de}
.ms-tip[hidden]{display: none}
.ms-tip .tt-h{margin-bottom: 3px;font-weight: 600;color: var(--text)}
.ms-tip .tt-r{display: flex;align-items: center;gap: 6px}
.ms-tip .tt-r b{font-weight: 600;color: var(--text);font-variant-numeric: tabular-nums}
.ms-tip .tt-r span{color: var(--muted)}
.ms-tip .tt-f{margin-top: 4px;font-size: 11px;color: #9aa4b5}
@media (max-width: 640px){.msr{grid-template-columns: 92px minmax(0, 1fr) 92px;gap: 6px}
.ms-live{margin-left: 0;flex-basis: 100%}
.ms-tools{margin-left: 0;flex-wrap: wrap}
.segb{padding: 4px 7px;font-size: 11.5px}
}
.stat .val small.dirty{display: block;margin-top: 1px;font: 600 10.5px var(--font);color: #ffd79a;cursor: help}
.meter-stat.case{cursor: pointer}
.meter-stat.case:hover{border-color: var(--line-2);background: #141b27}
.meter-stat.case .meter i{background: #39ff88}
.meter-stat.case.s1 .meter i{background: #ffd23d}
.meter-stat.case.s2{border-color: rgba(255, 138, 61, 0.55)}
.meter-stat.case.s2 .meter i{background: #ff8a3d}
.meter-stat.case.s3, .meter-stat.case.s4{border-color: rgba(255, 77, 97, 0.7);box-shadow: 0 0 14px rgba(255, 77, 97, 0.25)}
.meter-stat.case.s3 .meter i, .meter-stat.case.s4 .meter i{background: #ff4d61}
.ql{display: inline-block;margin-left: 4px;padding: 0 6px;border-radius: 999px;font: 600 10.5px var(--font);color: #c9d1de;background: rgba(255, 255, 255, 0.05);border: 1px solid rgba(255, 255, 255, 0.1);white-space: nowrap;vertical-align: 1px;cursor: help}
.ql.hi{color: #b4ffd3;border-color: rgba(57, 255, 136, 0.45)}
.ql.lo{color: #ffd79a;border-color: rgba(255, 181, 71, 0.5)}
.ql.rip{color: #ffb3bc;border-color: rgba(255, 77, 97, 0.65);background: rgba(255, 77, 97, 0.1)}
.price .ql{margin-left: 0;margin-top: 2px}
.qinfo .btn.sm{padding: 2px 8px;margin-left: 6px}
.casehead{display: flex;align-items: baseline;gap: 6px;margin-bottom: 6px}
.casehead b{font: 600 30px var(--font)}
.casehead span{color: var(--muted)}
.casehead em{margin-left: auto;font-style: normal;font-weight: 600}
.casebar{position: relative;height: 10px;margin: 0 0 10px;border-radius: 6px;background: #1a2130;overflow: hidden}
.casebar i{display: block;height: 100%;border-radius: 6px;background: #39ff88}
.casebar i.s1{background: #ffd23d}
.casebar i.s2{background: #ff8a3d}
.casebar i.s3, .casebar i.s4{background: #ff4d61}
.casebar u{position: absolute;top: 0;bottom: 0;width: 2px;margin-left: -1px;background: #0f141d}
.fxlist{margin: 0 0 10px;padding-left: 18px;font-size: 12.5px;color: #e6c9a8}
.caselog{list-style: none;margin: 0;padding: 0;display: grid;gap: 3px;font-size: 12.5px}
.caselog b{display: inline-block;min-width: 42px;text-align: right;margin-right: 6px}
.crew-row.mis, .crew-row.rival{grid-template-columns: auto minmax(0, 1fr) auto}
.crew-row.rival{grid-template-columns: auto minmax(0, 1fr) 70px auto}
.crew-row.rival.beaten{opacity: 0.55}
.mreward{display: flex;flex-direction: column;align-items: flex-end;gap: 4px}
.mreward > b{font: 500 15px var(--display);color: #ffd79a}
.loyal.hostile i{background: linear-gradient(90deg, #ff8a3d, #ff4d61)}
.pc.mission{border-left-color: #ffd23d}
.pc.mission em{color: #ffd79a}
.pc.rival{border-left-color: #c98a92}
.pc.rival.warn{border-color: rgba(255, 77, 97, 0.6);border-left-color: var(--red)}
.chapter{display: flex;align-items: center;gap: 12px;margin-bottom: 8px}
.chapter .chic{font-size: 34px}
.chapter small{display: block;font-size: 11px;letter-spacing: 0.06em;text-transform: uppercase;color: var(--muted)}
.chapter b{font: 600 20px var(--display);letter-spacing: 0.02em}
.goals{list-style: none;margin: 8px 0 10px;padding: 0;display: grid;gap: 4px}
.goals li{padding: 6px 10px;border-radius: 9px;background: #0a0e15;border: 1px solid var(--line);font-size: 13px}
.goals li.ok{border-color: rgba(57, 255, 136, 0.4);color: #b4ffd3}
.goals small{color: var(--muted);margin-left: 4px}
.slots-head{margin: 22px 0 6px;font: 600 11px var(--font);letter-spacing: 0.08em;text-transform: uppercase;color: var(--muted);text-align: left}
.slots{display: grid;gap: 6px;text-align: left}
.slot{display: flex;align-items: center;gap: 6px;padding: 7px 8px;border-radius: 11px;background: #0d1119;border: 1px solid var(--line-2)}
.slot.on{border-color: rgba(57, 255, 136, 0.5)}
.slot.empty{border-style: dashed}
.slot.broken{border-color: rgba(255, 181, 71, 0.55)}
.slot.broken .sinfo b{color: #ffd79a}
.slot .sn{font: 600 15px var(--display);color: var(--muted);width: 22px;text-align: center}
.slot .sinfo{flex: 1;min-width: 0;text-align: left}
.slot .sinfo b{display: block;font-size: 13.5px;white-space: nowrap;overflow: hidden;text-overflow: ellipsis}
.slot .sinfo small{display: block;font-size: 11.5px;color: var(--muted)}
.title-tools{display: flex;flex-wrap: wrap;justify-content: center;gap: 6px;margin-top: 12px}
.report{position: fixed;z-index: 16;right: 16px;top: 130px;width: min(340px, calc(100vw - 32px));padding: 10px 12px;border-radius: 14px;background: linear-gradient(180deg, #172031, #111722);border: 1px solid rgba(77, 163, 255, 0.45);box-shadow: 0 20px 50px rgba(0, 0, 0, 0.55);animation: pop 0.18s ease}
.rp-head, .tp-head{display: flex;align-items: center;gap: 8px;margin-bottom: 6px}
.rp-head b, .tp-head b{font: 600 14px var(--display);letter-spacing: 0.03em}
.rp-head span{flex: 1;font-size: 11.5px;color: var(--muted)}
.tp-head b{flex: 1;color: #ffd79a}
.rp-x{border: 0;background: transparent;color: var(--muted);cursor: pointer;font-size: 15px;line-height: 1;padding: 0 2px}
.rp-x:hover{color: var(--text)}
.rp-lines{display: grid;gap: 3px;font-size: 12.5px}
.rp-lines > div{display: flex;justify-content: space-between;gap: 10px}
.rp-lines > div span:first-child{color: #c9d1de}
.rp-news{margin: 8px 0 0;padding: 6px 0 0 16px;border-top: 1px solid rgba(255, 255, 255, 0.06);font-size: 11.5px;color: #b9c2d2;display: grid;gap: 3px}
.tipcard{position: fixed;z-index: 24;left: 16px;bottom: 16px;width: min(340px, calc(100vw - 32px));padding: 10px 12px;border-radius: 14px;background: linear-gradient(180deg, #1a2030, #121722);border: 1px solid rgba(255, 181, 71, 0.5);box-shadow: 0 20px 50px rgba(0, 0, 0, 0.55);animation: pop 0.18s ease}
.tp-body{display: grid;grid-template-columns: auto minmax(0, 1fr);gap: 10px}
.tp-ic{font-size: 24px;line-height: 1.1}
.tp-body p{margin: 0;font-size: 12.5px;line-height: 1.45;color: #cdd5e2}
.tp-foot{display: flex;justify-content: flex-end;margin-top: 8px}
.logf{display: flex;flex-wrap: wrap;gap: 3px;margin-left: auto}
.lfb{border: 1px solid var(--line-2);background: #121826;color: var(--muted);padding: 2px 7px;border-radius: 7px;cursor: pointer;font: 600 10.5px var(--font)}
.lfb:hover{color: var(--text)}
.lfb.on{background: #1d2a1f;border-color: var(--green);color: var(--green)}
.legend .kv{justify-content: flex-start;gap: 12px}
.legend .lg-i{min-width: 48px;text-align: center}
.errlog{max-height: 180px;overflow: auto;padding: 8px;border-radius: 9px;background: #0a0e15;border: 1px solid var(--line);font: 11px/1.4 ui-monospace, Consolas, monospace;color: #c9d1de;white-space: pre-wrap;word-break: break-word}
@media (max-width: 640px){.report{top: 8px;right: 8px;width: calc(100vw - 16px);z-index: 35}
.tipcard{left: 8px;bottom: 8px;width: calc(100vw - 16px)}
}
.keys{display: flex;flex-wrap: wrap;gap: 6px 14px;font-size: 12px;color: #c9d1de}
kbd{display: inline-block;min-width: 20px;padding: 1px 6px;margin-right: 3px;border-radius: 5px;border: 1px solid var(--line-2);border-bottom-width: 2px;background: #121826;font: 600 11px var(--font);text-align: center;color: var(--text)}
.mtools{display: flex;flex-wrap: wrap;gap: 6px;margin: -2px 0 8px}
.wealth{margin: 4px 0 10px;padding: 8px 10px;border-radius: 10px;background: #0a0e15;border: 1px solid var(--line)}
.wl-head{display: flex;align-items: baseline;gap: 8px;font-size: 12px;color: var(--muted)}
.wl-head span{flex: 1}
.wl-head b{font: 600 14px var(--font);color: var(--text)}
.wl-svg{display: block;width: 100%;height: auto;margin-top: 4px;overflow: visible}
.wl-line{fill: none;stroke: #3987e5;stroke-width: 2;stroke-linejoin: round;stroke-linecap: round}
.wl-area{fill: rgba(57, 135, 229, 0.1)}
.wl-dot{fill: #3987e5;stroke: #0a0e15;stroke-width: 2}
.wl-zero{stroke: rgba(255, 255, 255, 0.16);stroke-width: 1}
.wl-lab{fill: #c9d1de;font: 600 10px var(--font)}
.tabbar, .hudtog{display: none}
.psheet.hidden, .psheet-back.hidden{display: none}
.hud.mini{display: grid;gap: 5px;flex: 1 1 100%;justify-content: stretch}
.hud.mini .hrow{display: flex;gap: 5px;align-items: stretch;min-width: 0}
.hud.mini .hchip{display: inline-flex;align-items: center;gap: 4px;min-width: 0;padding: 4px 8px;border-radius: 9px;background: var(--panel);border: 1px solid var(--line);font: 500 13.5px var(--display);letter-spacing: 0.02em;white-space: nowrap}
.hud.mini .hchip.clock{flex: 1 1 auto}
.hud.mini .hchip.money{color: var(--green);overflow: hidden}
.hud.mini .hchip.money .dirty{font: 600 10px var(--font);color: #c9b27a}
.hud.mini .hchip.bad{color: var(--red);border-color: rgba(255, 77, 97, 0.45)}
.hud.mini .hchip.xp{display: inline-grid;gap: 2px;min-width: 50px;flex: 0 0 auto;padding: 3px 8px;color: #d7c2ff}
.hud.mini .hchip.xp > i:not(.pic){display: block;height: 3px;border-radius: 2px;background: #1a2130;overflow: hidden}
.hud.mini .hchip.xp u{display: block;height: 100%;text-decoration: none;background: linear-gradient(90deg, #8a5cff, #d38bff)}
.hud.mini .meter-stat.mini{flex: 1 1 0;min-width: 0;display: grid;gap: 3px;padding: 4px 2px;border-radius: 9px;background: var(--panel);border: 1px solid var(--line);color: var(--text);font: inherit;cursor: pointer}
.meter-stat.mini span{display: flex;align-items: center;justify-content: center;gap: 2px;font-size: 12px;line-height: 1}
.meter-stat.mini span b{font: 500 12.5px var(--display)}
.meter-stat.mini > i:not(.pic){display: block;height: 3px;margin: 0 3px;border-radius: 2px;background: #1a2130;overflow: hidden}
.meter-stat.mini i u{display: block;height: 100%;text-decoration: none;background: var(--green);transition: width 0.5s ease}
.meter-stat.mini.hp i u{background: linear-gradient(90deg, #ff4d61, #ff7a59)}
.meter-stat.mini.food i u{background: linear-gradient(90deg, #d9822b, #ffc35a)}
.meter-stat.mini.water i u{background: linear-gradient(90deg, #2b7bd9, #5ac8ff)}
.meter-stat.mini.energy i u{background: linear-gradient(90deg, #d9b52b, #fff27a)}
.meter-stat.mini.heat i u{background: linear-gradient(90deg, #4da3ff, #ff4d61)}
.meter-stat.mini.stress i u, .meter-stat.stress .meter i{background: linear-gradient(90deg, #8a6cff, #c49bff)}
.meter-stat.mini.stress.calm i u, .meter-stat.stress.calm .meter i{background: linear-gradient(90deg, #22b39a, #59e0c2)}
.meter-stat.mini.stress.warn i u, .meter-stat.stress.warn .meter i{background: linear-gradient(90deg, #d9822b, #ffb547)}
.meter-stat.mini.stress.crit i u, .meter-stat.stress.crit .meter i{background: linear-gradient(90deg, #ff4d61, #ff7a59)}
.meter-stat.stress{cursor: pointer}
.meter-stat.mini.case.s1 i u{background: #ffd23d}
.meter-stat.mini.case.s2 i u{background: #ff8a3d}
.meter-stat.mini.case.s3 i u, .meter-stat.mini.case.s4 i u{background: #ff4d61}
.hudtog{align-items: center;justify-content: center;min-width: 34px;padding: 0 8px;border-radius: 9px;border: 1px solid var(--line-2);background: #121826;color: var(--muted);font-size: 13px;cursor: pointer}
body.phone .hudtog{display: inline-flex}
body.phone .hud:not(.mini) .hudtog{min-height: 34px;flex: 1 1 100%}
@media (max-width: 640px){body.phone .logo{display: none}
body.phone .topbar{padding: 6px 8px;gap: 6px}
body.phone .menubar{display: none}
body.phone .toprow2:has(> .effects.hidden){display: none}
body.phone #app{padding-bottom: calc(64px + env(safe-area-inset-bottom, 0px))}
body.phone .layout{padding: 8px;gap: 8px}
body.phone[data-ptab="map"] :is(.market-panel, .cartel-panel, .log-panel),
body.phone[data-ptab="market"] :is(.map-panel, .cartel-panel, .log-panel),
body.phone[data-ptab="log"] :is(.map-panel, .market-panel){display: none}
body.phone .map-wrap{height: clamp(260px, 54dvh, 560px)}
body.phone .tabbar{display: grid;grid-template-columns: repeat(5, 1fr);gap: 2px;position: fixed;z-index: 33;left: 0;right: 0;bottom: 0;padding: 4px 4px calc(4px + env(safe-area-inset-bottom, 0px));background: rgba(8, 11, 16, 0.96);border-top: 1px solid var(--line);backdrop-filter: blur(8px)}
.ptab{position: relative;display: flex;flex-direction: column;align-items: center;justify-content: center;gap: 1px;min-height: 50px;padding: 3px 2px;border: 0;border-radius: 11px;background: transparent;color: #9aa6b8;font: 600 10.5px var(--font);cursor: pointer}
.ptab i{font-style: normal;font-size: 20px;line-height: 1.1}
.ptab small{font: 600 9.5px var(--font);color: var(--muted)}
.ptab small.warn{color: var(--amber)}
.ptab small.neg{color: var(--red)}
.ptab.on{color: var(--green);background: #12201a}
.ptab .mbadge{position: absolute;top: 0;left: calc(50% + 9px);font-style: normal}
.ptab .pdot{position: absolute;top: 3px;left: calc(50% + 12px);width: 8px;height: 8px;border-radius: 50%;background: var(--green);box-shadow: 0 0 8px rgba(57, 255, 136, 0.7)}
.ptab .pdot.new{background: var(--amber);box-shadow: 0 0 8px rgba(255, 181, 71, 0.7)}
body.phone .tut, body.phone .tipcard{bottom: calc(66px + env(safe-area-inset-bottom, 0px))}
body.phone .tut:not(.min){padding: 8px 10px;max-height: 34dvh;overflow-y: auto}
body.phone .tut-head{margin-bottom: 4px}
body.phone .tut-bar{margin-bottom: 6px}
body.phone .tut-ic{font-size: 20px}
body.phone .tut-step p{font-size: 12px;line-height: 1.38}
body.phone .tut-foot{margin-top: 6px}
body.phone .toasts{bottom: calc(76px + env(safe-area-inset-bottom, 0px));right: 8px;left: 8px;align-items: stretch}
.psheet-back{position: fixed;inset: 0;z-index: 31;background: rgba(0, 0, 0, 0.5)}
.psheet{position: fixed;z-index: 32;left: 0;right: 0;bottom: calc(58px + env(safe-area-inset-bottom, 0px));max-height: calc(100dvh - 110px);overflow-y: auto;overscroll-behavior: contain;padding: 10px 10px 16px;border-radius: 18px 18px 0 0;background: #0d121b;border: 1px solid var(--line-2);border-bottom: 0;box-shadow: 0 -20px 60px rgba(0, 0, 0, 0.6);animation: sheetUp 0.16s ease}
.ps-head{display: flex;align-items: center;justify-content: space-between;margin-bottom: 8px}
.ps-head b{font: 600 16px var(--display);letter-spacing: 0.03em}
.ps-head .mclose{position: static;font-size: 18px}
.ps-quick{display: grid;grid-template-columns: repeat(4, 1fr);gap: 6px;margin-bottom: 6px}
.psq{position: relative;display: flex;flex-direction: column;align-items: center;gap: 3px;padding: 9px 4px;border-radius: 12px;border: 1px solid var(--line-2);background: #121826;color: var(--text);font: 600 10.5px var(--font);text-align: center;cursor: pointer}
.psq i{font-style: normal;font-size: 22px}
.psq[disabled]{opacity: 0.4}
.psq .mbadge{position: absolute;top: 4px;right: 6px;font-style: normal}
.psg h5{margin: 12px 4px 4px;font: 600 11.5px var(--font);letter-spacing: 0.06em;text-transform: uppercase;color: var(--muted)}
.psg .mitem{padding: 8px 6px;gap: 6px;grid-template-columns: 26px minmax(0, 1fr) auto}
.psg{display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));column-gap: 4px}
.psg h5{grid-column: 1 / -1}
.psg .mitem .mic .pic{width: 26px;height: 26px}
body.phone[data-tut="sell"]:not([data-ptab="market"]) .ptab[data-ptab="market"],
body.phone[data-tut="buy"]:not([data-ptab="market"]) .ptab[data-ptab="market"],
body.phone[data-tut="profit"]:not([data-ptab="market"]) .ptab[data-ptab="market"],
body.phone[data-tut="travel"]:not([data-ptab="map"]) .ptab[data-ptab="map"],
body.phone[data-tut="city"]:not([data-ptab="map"]) .ptab[data-ptab="map"],
body.phone[data-tut="skill"] .ptab[data-ptab="menu"], body.phone[data-tut="skill"] .psheet [data-act="skills"],
body.phone[data-tut="goal"] .ptab[data-ptab="menu"], body.phone[data-tut="goal"] .psheet [data-act="exit"],
body.phone[data-tut="rest"] .ptab[data-ptab="menu"], body.phone[data-tut="rest"] .psheet [data-act="rest"]{outline: 2px solid var(--amber);outline-offset: 2px;position: relative}
body.phone[data-tut="sell"]:not([data-ptab="market"]) .ptab[data-ptab="market"]::after,
body.phone[data-tut="buy"]:not([data-ptab="market"]) .ptab[data-ptab="market"]::after,
body.phone[data-tut="profit"]:not([data-ptab="market"]) .ptab[data-ptab="market"]::after,
body.phone[data-tut="travel"]:not([data-ptab="map"]) .ptab[data-ptab="map"]::after,
body.phone[data-tut="city"]:not([data-ptab="map"]) .ptab[data-ptab="map"]::after,
body.phone[data-tut="skill"] .ptab[data-ptab="menu"]::after,
body.phone[data-tut="skill"] .psheet [data-act="skills"]::after,
body.phone[data-tut="rest"] .ptab[data-ptab="menu"]::after,
body.phone[data-tut="rest"] .psheet [data-act="rest"]::after{content: '';position: absolute;inset: -4px;border-radius: inherit;pointer-events: none;box-shadow: 0 0 0 3px rgba(255, 181, 71, 0.35), 0 0 22px rgba(255, 181, 71, 0.55);animation: tutPulse 1.4s ease-in-out infinite}
}
@keyframes sheetUp{from{transform: translateY(30px);opacity: 0}
}
@media (pointer: coarse){.btn.sm{min-height: 34px;padding-top: 6px;padding-bottom: 6px}
.map-ctrl button{width: 40px;height: 40px;font-size: 18px}
.mitem{padding: 10px}
.lfb{padding: 6px 10px;font-size: 11.5px}
.tab{padding: 7px 12px}
.mclose, .rp-x, .tut-x{min-width: 36px;min-height: 36px}
.qty .btn.sm{min-width: 44px}
}
.cnt{font-variant-numeric: tabular-nums}
.cnt.cnt-up{animation: cntUp 0.9s ease-out}
.cnt.cnt-down{animation: cntDown 0.9s ease-out}
@keyframes cntUp{0%, 45%{color: var(--green);text-shadow: 0 0 10px rgba(57, 255, 136, 0.7)}
}
@keyframes cntDown{0%, 45%{color: var(--red);text-shadow: 0 0 10px rgba(255, 77, 97, 0.6)}
}
.cnt-float{position: fixed;z-index: 9000;pointer-events: none;font: 700 12px var(--font);white-space: nowrap;text-shadow: 0 1px 4px #000;animation: cntFloat 1.3s ease-out forwards}
.cnt-float.up{color: var(--green)}
.cnt-float.down{color: var(--red)}
@keyframes cntFloat{0%{opacity: 0;transform: translate(-50%, 12px)}
15%{opacity: 1;transform: translate(-50%, 6px)}
100%{opacity: 0;transform: translate(-50%, -14px)}
}
.confetti{position: fixed;inset: 0;z-index: 9500;pointer-events: none;overflow: hidden}
.confetti i{position: absolute;top: -14px;width: 7px;height: 12px;border-radius: 2px;animation: confFall 2.4s cubic-bezier(0.25, 0.6, 0.4, 1) both}
@keyframes confFall{from{transform: translate(0, 0) rotate(0)}
to{transform: translate(var(--dx), 108vh) rotate(var(--r))}
}
html.rm .confetti, html.rm .cnt-float{display: none}
.dg-sum{display: flex;flex-wrap: wrap;gap: 6px 16px;margin: 0 0 8px;font-size: 12.5px;color: var(--muted)}
.dg-sum b{color: var(--text)}
.dg-wrap{margin: 0 -8px;border-radius: 14px;background: radial-gradient(60% 60% at 50% 50%, rgba(57, 255, 136, 0.06), transparent 70%), #0a0e15;border: 1px solid var(--line)}
.dg{display: block;width: 100%;height: auto;font-family: var(--font)}
.dg-node, .dg-leaf{cursor: pointer}
.dg-node circle:first-of-type{transition: stroke-width 0.15s, filter 0.15s}
.dg-node:hover circle:first-of-type, .dg-node:focus-visible circle:first-of-type{stroke-width: 3.5;filter: drop-shadow(0 0 8px rgba(57, 255, 136, 0.55))}
.dg-node:focus{outline: none}
.dg-leaf:hover circle{stroke: #39ff88}
.dg-flow{animation: dgFlow 1.1s linear infinite}
@keyframes dgFlow{to{stroke-dashoffset: -12}
}
.dg-cards{display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));gap: 8px}
.dg-card{display: grid;gap: 2px;justify-items: start;text-align: left;padding: 10px;border-radius: 12px;background: #121826;border: 1px solid var(--line-2);color: var(--text);font: inherit;cursor: pointer}
.dg-card.in{border-color: rgba(57, 255, 136, 0.45)}
.dg-card.warn{border-color: rgba(255, 181, 71, 0.6)}
.dg-card b{font-size: 13.5px}
.dg-card small{color: var(--muted);font-size: 11.5px}
.dg-card.warn small{color: var(--amber)}
.dg-ic{position: relative;font-size: 22px;line-height: 1.1}
.dg-ic i{position: absolute;top: -4px;right: -16px;min-width: 18px;padding: 0 4px;border-radius: 9px;background: var(--green);color: #06090f;font: 800 10.5px/18px var(--font);text-align: center;font-style: normal}
.dg-items{display: flex;flex-wrap: wrap;gap: 2px;margin-top: 4px;font-size: 14px}
.dg-items em{font-style: normal;font-size: 11px;color: var(--muted);align-self: center;margin-left: 2px}
@media (prefers-reduced-motion: reduce){.dg-flow{animation: none}
}
.mart{margin: -20px -20px 14px;aspect-ratio: 320 / 68;max-height: 120px;overflow: hidden;border-radius: 15px 15px 0 0;border-bottom: 1px solid var(--line-2)}
.mart svg{display: block;width: 100%;height: 100%}
.modal.has-art .mclose{z-index: 2;color: #e6ebf3;text-shadow: 0 1px 4px #000}
@media (max-width: 640px){.mart{margin-bottom: 10px}
}
.mart .a-blink{animation: aBlink 0.9s step-end infinite}
.mart .a-blink2{animation: aBlink 0.9s step-end infinite;animation-delay: -0.45s}
@keyframes aBlink{0%{opacity: 1}
50%{opacity: 0.12}
}
.mart .a-spin{transform-box: fill-box;transform-origin: center;animation: aSpin 30s linear infinite}
@keyframes aSpin{to{transform: rotate(360deg)}
}
.mart .a-pulse{transform-box: fill-box;transform-origin: center;animation: aPulse 1.6s ease-in-out infinite}
@keyframes aPulse{50%{transform: scale(1.1)}
}
.mart .a-twinkle{animation: aTwinkle 2.2s ease-in-out infinite}
@keyframes aTwinkle{50%{opacity: 0.2}
}
.mart .a-flicker{animation: aFlicker 4s linear infinite}
@keyframes aFlicker{0%, 17%, 23%, 51%, 56%, 100%{opacity: 1}
19%, 21%, 53%{opacity: 0.3}
}
.mart .a-fall{animation: aFall 3.6s linear infinite}
@keyframes aFall{from{transform: translateY(0)}
to{transform: translateY(112px)}
}
.mart .a-rise{animation: aRise 2.4s ease-in infinite}
@keyframes aRise{from{transform: translateY(0);opacity: 0.9}
to{transform: translateY(-26px);opacity: 0}
}
.mart .a-sweep{animation: aSweep 5s ease-in-out infinite alternate}
@keyframes aSweep{from{transform: rotate(-16deg)}
to{transform: rotate(16deg)}
}
.mart .a-float{animation: aFloat 2.6s ease-in-out infinite alternate}
@keyframes aFloat{from{transform: translateY(1.5px)}
to{transform: translateY(-1.5px)}
}
.mart .a-tap{animation: aTap 1.6s ease-in infinite}
@keyframes aTap{0%, 40%, 100%{transform: rotate(26deg)}
50%{transform: rotate(0)}
56%{transform: rotate(5deg)}
62%{transform: rotate(0)}
}
.mart .a-dash{animation: aDash 0.5s linear infinite}
@keyframes aDash{to{stroke-dashoffset: -15}
}
.mart .a-pop{transform-box: fill-box;transform-origin: center;animation: aPop 3s ease-out infinite}
@keyframes aPop{0%{opacity: 0;transform: scale(0.6)}
12%, 85%{opacity: 1;transform: scale(1)}
100%{opacity: 0}
}
.mart .a-fly{animation: aFly 7s linear infinite}
@keyframes aFly{from{transform: translate(-140px, 22px)}
to{transform: translate(320px, -60px)}
}
.mart .a-drive{animation: aDrive 9s linear infinite}
@keyframes aDrive{from{transform: translateX(-200px)}
to{transform: translateX(330px)}
}
.mart .a-coin{transform-box: fill-box;transform-origin: center;animation: aCoin 3.2s ease-in-out infinite}
@keyframes aCoin{0%, 60%, 100%{transform: scaleX(1)}
75%{transform: scaleX(0.08)}
90%{transform: scaleX(1)}
}
.mart .a-bounce{animation: aBounce 0.55s cubic-bezier(0.3, 0, 0.7, 1) infinite alternate}
@keyframes aBounce{from{transform: translateY(0)}
to{transform: translateY(-9px)}
}
.mart .a-drift{animation: aDrift 14s ease-in-out infinite alternate}
@keyframes aDrift{from{transform: translateX(-10px)}
to{transform: translateX(10px)}
}
.mart .a-shine{animation: aShine 3.5s ease-in-out infinite}
@keyframes aShine{0%{transform: translateX(-40px)}
60%, 100%{transform: translateX(70px)}
}
.mart .a-shake{animation: aShake 0.5s steps(2) infinite}
@keyframes aShake{0%{transform: translateX(-1px)}
50%{transform: translateX(1px)}
}
.mart .a-bolt{animation: aBolt 5s infinite}
@keyframes aBolt{0%, 80%, 100%{opacity: 0}
82%{opacity: 1}
85%{opacity: 0.2}
88%{opacity: 1}
91%{opacity: 0}
}
.mart .a-rain{animation: aRainFall 0.6s linear infinite}
@keyframes aRainFall{to{transform: translate(-33.75px, 90px)}
}
.mart .a-sway{animation: aSway 3.2s ease-in-out infinite alternate}
@keyframes aSway{from{transform: skewX(-4deg)}
to{transform: skewX(4deg)}
}
.mart .a-flame{transform-box: fill-box;transform-origin: 50% 100%;animation: aFlame 0.7s ease-in-out infinite alternate}
.mart .a-wag{transform-box: fill-box;transform-origin: 100% 100%;animation: aWag 0.35s ease-in-out infinite alternate}
@keyframes aWag{from{transform: rotate(-14deg)}
to{transform: rotate(14deg)}
}
@keyframes aFlame{from{transform: scale(1, 1)}
to{transform: scale(0.88, 1.16)}
}
@media (prefers-reduced-motion: reduce){.mart [class^="a-"], .mart [class*=" a-"]{animation: none !important}
}
html.rm .mart [class^="a-"], html.rm .mart [class*=" a-"]{animation: none !important}
.crew-row.dead, .crow.dead{opacity: 0.5}
.att.dead{color: var(--muted)}
.cloud-opt{display: flex;gap: 8px;align-items: flex-start;max-width: 320px;margin: -8px auto 16px;text-align: left;font-size: 12.5px;color: #c9d1de;cursor: pointer}
.cloud-opt input{margin-top: 2px;accent-color: var(--green)}
.modal .cloudcode, .cloudcode{margin: 6px auto 14px;padding: 12px 10px;max-width: 320px;text-align: center;font: 700 34px var(--display);letter-spacing: 0.14em;color: var(--green);border: 1px dashed rgba(57, 255, 136, 0.5);border-radius: 12px;background: #0b1410;user-select: all}
.codein{display: block;width: 100%;max-width: 280px;margin: 8px auto 4px;padding: 10px 12px;text-align: center;text-transform: uppercase;letter-spacing: 0.14em;border-radius: 10px;border: 1px solid var(--line-2);background: #0d1119;color: var(--text);font: 700 22px var(--display)}
.kv.me{background: rgba(57, 255, 136, 0.07);border-radius: 8px}
.dname > div{min-width: 0}
.dname b{overflow: hidden;text-overflow: ellipsis;white-space: nowrap}
.dname small.held-m{display: none;color: #9fe9c0}
@media (max-width: 520px){.dname small.held-m{display: block}
}
.title-modes{display: flex;justify-content: center;margin: 2px auto 18px}
.title-modes .btn small{font-weight: 500;color: var(--muted);margin-left: 4px}
.hofx{margin-left: 4px;font-size: 12px}
.modal ul.rules{margin: 6px 0 10px;padding-left: 4px;list-style: none;display: grid;gap: 4px;font-size: 13px}
.hday{margin: 6px 0 8px}
.modal .cloud-opt{max-width: none;margin: 4px 0 12px}
.face{position: relative;display: inline-block;width: 40px;height: 40px;flex: none;vertical-align: middle;font-size: 0;line-height: 0}
.face > svg{width: 100%;height: 100%;display: block;border-radius: 50%;box-shadow: 0 0 0 1.5px rgba(255, 255, 255, 0.1), 0 3px 8px rgba(0, 0, 0, 0.4)}
.face > i{position: absolute;right: -5px;bottom: -4px;font-style: normal;font-size: 13px;line-height: 1;padding: 2px;border-radius: 50%;background: #0e131c;box-shadow: 0 0 0 1px var(--line)}
.face > i .cdot{display: block;width: 9px;height: 9px;margin: 1px}
.face.big{width: 56px;height: 56px}
.face.big > i{font-size: 17px;right: -6px;bottom: -5px}
.face.sm{width: 28px;height: 28px}
.crew-row .face.ric{width: 42px;height: 42px}
.crew-row.rival.beaten .face > svg, .crew-row.dead .face > svg{filter: grayscale(1) brightness(0.7)}
.crew-row.rival.jailed .face > svg{filter: grayscale(0.6)}
.iic .face{width: 44px;height: 44px}
.chead .face.sm{width: 26px;height: 26px}
.nph .face.sm{margin-right: 2px}
.fx.wx{border-color: rgba(150, 180, 230, 0.45);color: #cfe0ff}
.meta .wxm{color: #cfe0ff}
.tring{position: absolute;left: 0;top: 0;width: 0;height: 0;z-index: 4;pointer-events: none;--r: 78px}
.tring.hidden{display: none}
.tring > *{pointer-events: auto}
@keyframes trIn{from{opacity: 0;scale: 0.35}
to{opacity: 1;scale: 1}
}
.tr-mode{position: absolute;left: 0;top: 0;width: 48px;height: 48px;margin: -24px 0 0 -24px;padding: 0;transform: rotate(var(--a)) translate(var(--r)) rotate(calc(var(--a) * -1));display: flex;align-items: center;justify-content: center;border-radius: 50%;cursor: pointer;color: var(--text);background: radial-gradient(circle at 50% 35%, #18263a, #0c131e);border: 2px solid rgba(57, 255, 136, 0.75);box-shadow: 0 0 0 3px rgba(6, 10, 17, 0.55), 0 4px 14px rgba(0, 0, 0, 0.55), 0 0 12px rgba(57, 255, 136, 0.25);animation: trIn 0.18s ease-out both}
.tr-mode:hover, .tr-mode:focus-visible{border-color: #8dffbf;background: radial-gradient(circle at 50% 35%, #1d3a2a, #0e1a14);box-shadow: 0 0 0 3px rgba(6, 10, 17, 0.55), 0 0 18px rgba(57, 255, 136, 0.6);outline: none;z-index: 1}
.tr-ic{font-size: 22px;line-height: 1}
.tr-cap{position: absolute;top: calc(100% + 3px);left: 50%;transform: translateX(-50%);white-space: nowrap;pointer-events: none;display: flex;flex-direction: column;align-items: center;padding: 1px 6px;border-radius: 6px;font-size: 10.5px;line-height: 1.25;background: rgba(6, 10, 17, 0.88);border: 1px solid rgba(255, 255, 255, 0.08)}
.tr-cap b{font-weight: 600;color: #e9eef6}
.tr-cap i{font-style: normal;color: #9fe9c0}
.tr-mode.off{border-color: rgba(150, 160, 180, 0.4);background: #0d121b;box-shadow: 0 0 0 3px rgba(6, 10, 17, 0.55), 0 3px 10px rgba(0, 0, 0, 0.5)}
.tr-mode.off .tr-ic{filter: grayscale(1);opacity: 0.55}
.tr-mode.off .tr-cap i{color: #ff9aa5}
.tr-lbl{position: absolute;left: 0;bottom: calc(var(--r) + 31px);transform: translateX(-50%);white-space: nowrap;text-align: center;padding: 5px 10px 6px;border-radius: 10px;background: rgba(11, 17, 27, 0.95);border: 1px solid rgba(57, 255, 136, 0.45);box-shadow: 0 6px 18px rgba(0, 0, 0, 0.5);animation: trIn 0.18s ease-out both}
.tr-name{display: flex;align-items: center;justify-content: center;gap: 8px}
.tr-name b{font: 500 15px var(--display);letter-spacing: 0.02em}
.tr-lbl small{display: block;font-size: 11px;color: var(--muted)}
.tr-lbl .tr-hint{color: #cfe0ff;min-height: 0}
.tr-lbl .tr-hint:empty{display: none}
.tr-lbl .tr-lock{color: var(--amber);margin-top: 2px}
.tr-lbl .tr-risk{color: #cfd6e2;margin-top: 2px}
.tr-lbl .tr-risk.mid{color: var(--amber)}
.tr-lbl .tr-risk.hi{color: #ff8a96}
.tr-x{width: 20px;height: 20px;padding: 0;border-radius: 50%;border: 1px solid var(--line-2);background: #121826;color: var(--muted);font-size: 11px;line-height: 1;cursor: pointer}
.tr-x:hover{color: var(--text);border-color: var(--green)}
.tring.nob .tr-lbl{bottom: 16px}
body.phone .tr-mode{width: 52px;height: 52px;margin: -26px 0 0 -26px}
body.phone .tr-ic{font-size: 24px}
body[data-tut="travel"] .tr-mode:not(.off){border-color: var(--amber)}
body[data-tut="travel"] .tr-mode:not(.off)::after{content: '';position: absolute;inset: -4px;border-radius: 50%;pointer-events: none;box-shadow: 0 0 0 3px rgba(255, 181, 71, 0.35), 0 0 18px rgba(255, 181, 71, 0.55);animation: tutPulse 1.4s ease-in-out infinite}
.msort{background: none;border: 0;padding: 0;font: inherit;color: inherit;letter-spacing: inherit;text-transform: inherit;cursor: pointer}
.msort:hover, .msort.asc, .msort.desc{color: var(--green)}
.msort i{font-style: normal;margin-left: 3px}
.face.xs{width: 22px;height: 22px;vertical-align: -6px;margin-right: 4px}
.face.xs > svg{box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.12)}
.face.huge{width: 132px;height: 132px}
.mbtn .mic .face.xs{margin: -4px 0 -4px;vertical-align: middle}
.hface{border: 0;background: none;padding: 0 2px 0 0;cursor: pointer}
.slot .face.sm{margin-right: 8px}
.chead-me{display: flex;align-items: center;gap: 12px}
.cperks{display: flex;flex-wrap: wrap;gap: 6px;margin: 8px 0 4px}
.cperks span{font-size: 11.5px;padding: 3px 8px;border-radius: 8px;background: #121a26;border: 1px solid var(--line);color: #cfe0ff}
.look{display: grid;align-items: start}
.lk-prev{display: flex;flex-direction: column;align-items: center;position: sticky;top: 0}
.lk-ctl{display: grid}
.lk-row{display: flex;align-items: center}
.lk-l{flex: none;color: var(--muted)}
.lk-v{text-align: center}
.lk-a{border: 1px solid var(--line-2);background: #121826;color: var(--text);cursor: pointer;line-height: 1}
.lk-a:hover{border-color: var(--green);color: var(--green)}
.lk-sws, .lk-x{display: flex;flex-wrap: wrap}
.lk-sw{border-radius: 50%;border: 2px solid rgba(255, 255, 255, 0.15);background: var(--c);cursor: pointer;padding: 0}
.lk-sw.on{border-color: var(--green);box-shadow: 0 0 0 2px rgba(57, 255, 136, 0.35)}
.lk-chip{border-radius: 12px;border: 1px solid var(--line-2);background: #121826;color: var(--muted);cursor: pointer}
.lk-chip.on{color: var(--green);border-color: var(--green);background: #14231b}
.lk-orig{display: grid}
.lk-o{display: flex;align-items: flex-start;text-align: left;border: 1px solid var(--line-2);background: #0c121c;color: var(--text);cursor: pointer}
.lk-o:hover{border-color: rgba(57, 255, 136, 0.5)}
.lk-o.on{border-color: var(--green);background: #12221a;box-shadow: 0 0 0 2px rgba(57, 255, 136, 0.2)}
.lk-oi{line-height: 1}
.lk-ot{display: grid;gap: 2px}
.lk-ot small{color: var(--muted)}
.lk-ot i{font-style: normal;color: #9fe9c0}
@media (max-width: 640px){.lk-prev{position: static;flex-direction: row;flex-wrap: wrap;justify-content: center}
.face.huge{width: 104px;height: 104px}
}
.modal.talk .micon .face.big{width: 74px;height: 74px}
.modal.talk .mtop h3{font-size: 18px}
.talk-sub{margin: -4px 0 6px;font-size: 11.5px;color: var(--muted)}
.talk-title{margin: 0 0 6px;font: 500 15px var(--display);color: #ffd58a;letter-spacing: 0.02em}
.talk-bubble{position: relative;padding: 10px 12px;border-radius: 12px;background: #141c2a;border: 1px solid var(--line-2);font-size: 14px;line-height: 1.5}
.talk-bubble::before{content: '';position: absolute;left: 18px;top: -7px;width: 12px;height: 12px;background: #141c2a;border-left: 1px solid var(--line-2);border-top: 1px solid var(--line-2);transform: rotate(45deg)}
.talk-bubble.out{background: #121f18;border-color: rgba(57, 255, 136, 0.3)}
.talk-bubble.out::before{background: #121f18;border-color: rgba(57, 255, 136, 0.3)}
.talk-me{display: flex;align-items: center;gap: 8px;margin: 0 0 10px;font-size: 13px;color: #cfe0ff}
.modal.talk .choices{flex-direction: column;align-items: stretch}
.modal.talk .choices .btn{text-align: left;justify-content: flex-start}
#market .mlist{max-height: clamp(260px, calc(100vh - 410px), 760px);overflow-y: auto;overscroll-behavior: contain;margin-right: -4px;padding-right: 4px;scrollbar-width: thin;scrollbar-color: rgba(57, 255, 136, 0.45) rgba(255, 255, 255, 0.04)}
#market .mlist::-webkit-scrollbar{width: 8px}
#market .mlist::-webkit-scrollbar-track{background: rgba(255, 255, 255, 0.04);border-radius: 8px}
#market .mlist::-webkit-scrollbar-thumb{background: rgba(57, 255, 136, 0.4);border-radius: 8px}
#market .mlist::-webkit-scrollbar-thumb:hover{background: rgba(57, 255, 136, 0.65)}
#market .mrow{padding: 3px 8px;gap: 6px;line-height: 1.2}
#market .dname{gap: 7px}
#market .dname .ico{font-size: 16px;width: 20px}
#market .dname b{font-size: 12.5px}
#market .dname small{font-size: 10px}
#market .price b{font-size: 13.5px;margin-right: 4px}
#market .diff, #market .price small.mine{font-size: 10px}
#market .ql{font-size: 9.5px;padding: 0 5px}
#market .held{font-size: 11px}
#market .acts{gap: 4px}
#market .acts .btn.sm{padding: 3px 8px;font-size: 11.5px;border-radius: 7px}
body.phone #market .mlist{max-height: none;overflow: visible;margin-right: 0;padding-right: 0}
.sh-dest{display: flex;align-items: center;gap: 8px;margin: 8px 0;font-size: 13px}
.sh-dest select{flex: 1;min-width: 0;padding: 6px 8px;border-radius: 8px;background: #0c121c;color: var(--text);border: 1px solid var(--line-2);font: inherit}
.sh-rows{display: grid;gap: 4px;margin: 6px 0 10px;max-height: 260px;overflow-y: auto;scrollbar-width: thin}
.sh-row{display: flex;align-items: center;gap: 8px;padding: 4px 6px;border-radius: 8px;background: #0a0e15;border: 1px solid var(--line);flex-wrap: wrap}
.sh-n{flex: 1;min-width: 120px;display: grid}
.sh-n small{font-size: 11px;color: var(--muted)}
.sh-row input{width: 90px;padding: 5px 7px;border-radius: 7px;background: #0c121c;color: var(--text);border: 1px solid var(--line-2);font: inherit}
.sh-prot{display: grid;grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));gap: 6px;margin-bottom: 10px}
.sh-p{display: grid;gap: 2px;text-align: left;padding: 8px 10px;border-radius: 10px;border: 1px solid var(--line-2);background: #0c121c;color: var(--text);cursor: pointer}
.sh-p small{color: var(--muted);font-size: 11px;line-height: 1.35}
.sh-p i{font-style: normal;color: #9fe9c0;font-size: 11.5px}
.sh-p.on{border-color: var(--green);background: #12221a}
.sh-sum{padding: 8px 10px;border-radius: 10px;background: #0b1019;border: 1px solid var(--line)}
.sh-go{display: flex;align-items: center;gap: 10px;margin-top: 8px;flex-wrap: wrap}
.sh-ship{padding: 8px 10px;margin-bottom: 8px;border-radius: 10px;background: #0a0e15;border: 1px solid var(--line);display: grid;gap: 6px}
.sh-h{display: flex;justify-content: space-between;gap: 8px;flex-wrap: wrap;font-size: 13px}
.sh-ship small{font-size: 11.5px;color: #b9c2d2}
.sh-row.pick{flex-wrap: nowrap}
.sh-row.pick .sh-n{min-width: 0}
.sh-row.pick .sh-n b, .sh-row.pick .sh-n small{overflow: hidden;text-overflow: ellipsis;white-space: nowrap}
@media (max-width: 640px){.sh-row.pick input{width: 68px}
.sh-rows{max-height: 220px}
}
.tipcard.refill{border-color: rgba(57, 255, 136, 0.5);width: min(310px, calc(100vw - 32px));padding: 7px 10px 8px}
.tipcard.refill .tp-head b{color: #9fe9c0}
.rf-stat{display: flex;flex-wrap: wrap;align-items: center;gap: 6px;margin-bottom: 3px;font-size: 11.5px;line-height: 1.2}
.rf-s.warn{color: var(--amber)}
.rf-s.crit{color: #ff8a96;font-weight: 600}
.rf-row{display: flex;align-items: center;justify-content: space-between;gap: 6px;padding: 3px 0;border-top: 1px solid rgba(255, 255, 255, 0.06);font-size: 11.5px;line-height: 1.2}
.rf-row > span{display: grid;min-width: 0}
.rf-row small{font-size: 10px;color: var(--muted)}
.rf-foot{margin: 4px 0 0;font-size: 10.5px;color: #b9c2d2;line-height: 1.3}
.tipcard.refill .tp-head{margin-bottom: 3px}
.tipcard.refill .tp-head b{font-size: 12.5px}
.tipcard.refill .rp-x{width: 20px;height: 20px;font-size: 11px}
.rf-row .btn.sm{padding: 2px 8px;font-size: 11px;border-radius: 7px;flex: none}
.rf-stat small{font-size: 10.5px}
body.phone .tipcard.refill .btn.sm{min-height: 28px;padding-top: 3px;padding-bottom: 3px}
.menubar{gap: 2px}
.menubar .mbtn, .menubar .qbtn{gap: 4px;padding: 3px 8px;border-radius: 8px;font-size: 13px}
.menubar .mbtn .mic{font-size: 13px}
.menubar .mbtn .caret{font-size: 9px}
.menubar .qbtn{padding: 3px 6px;font-size: 14px}
.menubar .msep{height: 18px;margin: 0 4px}
.menubar .mbadge{font-size: 9px;min-width: 15px;height: 15px;padding: 0 4px}
.menubar .mbtn.invbtn small{font-size: 10px}
.menubar .mdrop{min-width: 250px;padding: 4px;border-radius: 11px;top: calc(100% + 4px)}
.menubar .mdrop hr{margin: 3px 4px}
.menubar .mitem{grid-template-columns: 28px minmax(0, 1fr) auto;gap: 8px;padding: 4px 7px;border-radius: 8px}
.menubar .mitem .mic{font-size: 15px}
.menubar .mitem b{font-size: 12px}
.menubar .mitem small{font-size: 10px;line-height: 1.25}
.menubar .mitem small, .psg .mitem small{display: none}
.menubar .mitem{grid-template-columns: 24px minmax(0, 1fr) auto;gap: 7px;padding: 5px 8px}
.menubar .mgroup.open .mdrop.two{display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));column-gap: 4px;min-width: 440px}
.menubar .mdrop.two hr, .mdrop .mhd{grid-column: 1 / -1}
.menubar .mdrop.right{left: auto;right: 0}
.mhd{padding: 7px 8px 2px;font: 600 10.5px var(--font);letter-spacing: 0.06em;text-transform: uppercase;color: var(--muted)}
.mhd:first-child{padding-top: 3px}
@media (min-width: 901px){.layout{grid-template-columns: minmax(0, 1fr) clamp(350px, 27vw, 430px)}
.map-wrap{height: clamp(460px, 76vh, 1100px)}
.col-right .panel{padding: 10px}
.col-right .panel-head h2{font-size: 15px}
#market .mhead, #market .mrow{grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr) auto;gap: 5px}
#market .mhead span:nth-child(3), #market .mrow .held{display: none}
#market .dname small.held-m{display: block}
#market .mlegend{font-size: 10.5px}
}
@media (min-width: 901px){body:not(.phone) .topbar{display: grid;grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);align-items: center;column-gap: 10px;row-gap: 4px;padding: 5px 12px}
body:not(.phone) .topbar > .logo{display: none}
body:not(.phone) .hud:not(.mini){display: contents}
body:not(.phone) .hud-l, body:not(.phone) .hud-r{display: flex;flex-wrap: wrap;gap: 5px;min-width: 0}
body:not(.phone) .hud-l{grid-column: 1;justify-content: flex-end}
body:not(.phone) .hud-logo{grid-column: 2;grid-row: 1;padding: 0 4px}
body:not(.phone) .hud-logo img{height: 30px;margin: 0 auto}
body:not(.phone) .hud-r{grid-column: 3;justify-content: flex-start}
body:not(.phone) .toprow2{grid-column: 1 / -1}
body:not(.phone) .hud .stat{min-width: 62px;padding: 2px 8px;border-radius: 8px}
body:not(.phone) .hud .stat .lbl{font-size: 8.5px}
body:not(.phone) .hud .stat .val{font-size: 14px}
body:not(.phone) .hud .meter-stat{min-width: 92px;column-gap: 6px}
body:not(.phone) .hud .meter-stat .mval{font-size: 11px}
body:not(.phone) .hud .meter-stat.xp{min-width: 132px}
body:not(.phone) .hud .meter{height: 5px}
body:not(.phone) .hud .stat small.dirty{font-size: 10px}
}
.hud-logo{display: none}
.hud-l, .hud-r{display: flex;flex-wrap: wrap;gap: 8px;justify-content: flex-end}
@media (min-width: 901px){body:not(.phone) .hud-logo{display: block}
}
.map-panel{padding-top: 8px}
.map-panel .panel-head{margin-bottom: 5px;gap: 6px}
.map-panel .tabs{padding: 2px;gap: 2px;border-radius: 8px}
.map-panel .tab{padding: 2px 9px;font-size: 12.5px;border-radius: 6px}
.map-panel .loc-label{font-size: 12px}
.qbtn.qadd{color: var(--muted);border: 1px dashed var(--line-2);font-size: 13px;padding: 2px 7px}
.qbtn.qadd:hover{color: var(--green);border-color: var(--green)}
.qk-list{display: flex;flex-wrap: wrap;gap: 5px}
.qk{font-size: 12px;padding: 4px 9px;border-radius: 9px;border: 1px solid var(--line-2);background: #0c121c;color: #c9d1de;cursor: pointer}
.qk:hover{border-color: rgba(57, 255, 136, 0.5)}
.qk.on{border-color: var(--green);background: #12221a;color: var(--green)}
.qk small{color: var(--muted);margin-left: 2px}
.qk-foot{margin-top: 10px;display: flex;justify-content: flex-end}
.lk-intro{margin: 0 0 6px}
.look{grid-template-columns: 150px minmax(0, 1fr);gap: 12px}
.lk-prev{gap: 6px}
.lk-prev .face.huge{width: 104px;height: 104px}
.lk-sex .segb{padding: 2px 8px;font-size: 11px}
.lk-ctl{grid-template-columns: repeat(2, minmax(0, 1fr));gap: 2px 14px;align-content: start}
.lk-row{min-height: 24px;gap: 6px}
.lk-l{width: 66px;font-size: 11px}
.lk-v{min-width: 0;flex: 1;font-size: 12px;font-weight: 600}
.lk-a{width: 22px;height: 22px;font-size: 13px;border-radius: 6px;flex: none}
.lk-sw{width: 17px;height: 17px;border-width: 2px}
.lk-sws, .lk-x{gap: 3px}
.lk-chip{font-size: 10.5px;padding: 1px 7px}
.lk-ctl .lk-row:has(.lk-sws), .lk-ctl .lk-row:has(.lk-x){grid-column: 1 / -1}
.lk-aura{width: 100%;padding: 6px 7px;border-radius: 9px;background: #0c121c;border: 1px solid var(--line-2);display: grid;gap: 3px}
.lk-ah{display: flex;justify-content: space-between;align-items: baseline;font-size: 12px}
.lk-ah small{color: var(--muted);font-size: 10px}
.lk-gauge{position: relative;height: 6px;border-radius: 4px;background: linear-gradient(90deg, #39ff88, #6b7385 50%, #ff4d61)}
.lk-gauge i{position: absolute;top: -3px;width: 4px;height: 12px;margin-left: -2px;border-radius: 2px;background: #fff;box-shadow: 0 0 6px rgba(255, 255, 255, 0.7)}
.lk-ends{display: flex;justify-content: space-between;font-size: 10px;line-height: 1}
.lk-fx{font-size: 10px;color: #b9c2d2;line-height: 1.3}
.lk-rand{display: flex;flex-wrap: wrap;align-items: center;gap: 3px;justify-content: center}
.lk-rand small{width: 100%;text-align: center;font-size: 10px;color: var(--muted)}
.lk-rand .btn.sm{padding: 2px 6px;font-size: 13px}
.modal .look + h4, .modal h4:has(+ .lk-orig){margin: 10px 0 6px;font-size: 12px}
.lk-orig{grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));gap: 6px}
.lk-o{gap: 7px;padding: 6px 8px;border-radius: 9px}
.lk-oi{font-size: 19px}
.lk-ot b{font-size: 12px}
.lk-ot small{font-size: 10.5px;line-height: 1.3}
.lk-ot i{font-size: 11px}
@media (max-width: 640px){.look{grid-template-columns: 1fr}
.lk-prev{display: grid;grid-template-columns: auto 1fr;align-items: center}
.lk-prev .face.huge{grid-row: span 3;width: 88px;height: 88px}
.lk-ctl{grid-template-columns: 1fr}
}
.kv.ksub{padding-left: 14px;font-size: 12px;color: #b9c2d2}
.kv.ksub > span:first-child::before{content: '↳ ';color: var(--muted)}
.streakline{margin: 6px 0;color: #ffcf8a}
.streak{display: flex;align-items: center;gap: 12px;margin: 10px 0 4px;padding: 10px 12px;border-radius: 12px;background: linear-gradient(90deg, rgba(255, 138, 40, 0.14), transparent);border: 1px solid rgba(255, 160, 70, 0.3)}
.streak .sk{font-size: 22px;font-weight: 800;color: #ffb35c;white-space: nowrap}
.streak b{display: block}
.streak small{color: var(--muted);font-size: 11.5px}
.hist30{display: grid;grid-template-columns: repeat(15, minmax(0, 1fr));gap: 4px;max-width: 520px}
.h30{aspect-ratio: 1;border-radius: 6px;background: #0c121c;border: 1px solid var(--line);display: grid;place-items: center;font: 700 10.5px var(--font);color: #0b1a10}
.h30.on{background: #39c97a;border-color: #39c97a}
.h30.hard{border: 2px solid #ff9a3c}
.h30.died{opacity: 0.55}
.h30.today{outline: 2px dashed rgba(255, 255, 255, 0.45);outline-offset: 1px}
.troph{display: grid;grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));gap: 6px}
.tro{display: flex;align-items: center;gap: 8px;padding: 6px 8px;border-radius: 10px;border: 1px solid var(--line);background: #0b1018;opacity: 0.55}
.tro.on{opacity: 1;border-color: rgba(255, 207, 107, 0.55);background: #17140b}
.tro .ti{font-size: 20px;filter: grayscale(1)}
.tro.on .ti{filter: none}
.tro .tt{display: grid;min-width: 0}
.tro b{font-size: 12.5px}
.tro small{font-size: 10.5px;color: var(--muted);line-height: 1.3}
.weekly-mini p{margin: 4px 0}
.wd-head{display: grid;grid-template-columns: repeat(3, minmax(0, 1fr));gap: 8px;margin: 4px 0 6px}
.wd-box{display: grid;gap: 3px;padding: 8px 10px;border-radius: 10px;background: #0b1018;border: 1px solid var(--line);min-width: 0}
.wd-box > small:first-child{font-size: 11px;color: var(--muted)}
.wd-box b{font-size: 18px}
.wd-box b span{font-size: 12px;color: var(--muted);font-weight: 500}
.wd-bar{position: relative;height: 6px;border-radius: 4px;background: #1a2230;overflow: visible}
.wd-bar i{position: absolute;left: 0;top: 0;bottom: 0;border-radius: 4px;background: var(--green)}
.wd-bar.p i{background: linear-gradient(90deg, #39c97a, #ffb14d 45%, #ff5d6c)}
.wd-bar.dom em{position: absolute;top: -3px;width: 2px;height: 12px;background: #ffcf6b;transform: translateX(-1px)}
.wd-conts{display: grid;gap: 4px}
.wd-cont{display: flex;align-items: center;gap: 10px;padding: 6px 8px;border-radius: 10px;border: 1px solid var(--line);background: #0b1018}
.wd-cont.ok{border-color: rgba(57, 255, 136, 0.45);background: #0e1a13}
.wd-cont .wc-i{font-size: 20px}
.wd-cont .wc-b{flex: 1;display: grid;gap: 3px;min-width: 0}
.wd-cont .wc-b small{font-size: 11px;color: var(--muted)}
.wd-cont .wc-p{font-size: 14px;min-width: 42px;text-align: right}
.wd-op .btnrow{margin-top: 6px}
.cn-list{display: grid;gap: 2px;margin: 8px 0}
.cn-row .cn-v{font-size: 12px;font-weight: 700;white-space: nowrap;margin: 0 6px}
.cn-v.yes{color: var(--green)}
.cn-v.no{color: #ff8a96}
.cn-sum{font-size: 13px;margin: 6px 0}
.tag.bad{color: #ff8a96;border-color: rgba(255, 93, 108, 0.5)}
@media (max-width: 600px){.wd-head{grid-template-columns: 1fr}
}
.spark{display: inline-flex;vertical-align: middle;margin-left: 5px;padding: 1px 2px;border: 0;border-radius: 4px;background: transparent;color: #8fa0b8;cursor: pointer}
.spark:hover{background: rgba(255, 255, 255, 0.07)}
.spark svg{display: block;overflow: visible}
.spark polyline{fill: none;stroke: currentColor;stroke-width: 1.5;stroke-linejoin: round;stroke-linecap: round}
.spark circle{fill: #e9eef7;stroke: #0b1018;stroke-width: 1}
.spark.lo{color: var(--green)}
.spark.hi{color: var(--amber)}
.al-mark{font-size: 10px;margin-left: 2px;vertical-align: middle}
.pchart{display: block;width: 100%;max-width: 560px;height: auto;margin: 4px 0 8px}
.pchart .pc-line{fill: none;stroke: var(--green);stroke-width: 2;stroke-linejoin: round;stroke-linecap: round}
.pchart .pc-avg{stroke: #6b7890;stroke-width: 1;stroke-dasharray: 3 3}
.pchart .pc-ax{stroke: #2a3446;stroke-width: 1}
.pchart .pc-t{fill: #8b97ab;font: 9px var(--font)}
.pchart .pc-now{fill: #e9eef7;stroke: #0b1018;stroke-width: 2}
.pchart .pc-hit{fill: transparent}
.pchart .pc-hit:hover{fill: rgba(255, 255, 255, 0.05)}
.btnrow.tight{gap: 4px;margin: 0;flex-wrap: nowrap}
.pl-row .pl-p{display: grid;text-align: right;margin-right: 6px;white-space: nowrap}
.pl-row .pl-p small{font-size: 10.5px;color: var(--muted)}
.pl-row .tag{font-size: 10px;padding: 1px 6px}
.crew-row .mood{display: block;font-size: 11px;margin-top: 1px}
.crew-row .mood.pos{color: #8fe0b0}
.crew-row .mood.neg{color: #ff9aa5}
.crew-acts{display: flex;flex-wrap: wrap;gap: 4px;margin-top: 4px}
.crew-acts .btn.sm{padding: 2px 7px;font-size: 11px}
.adv-row .adv-say{display: block;color: #d7deea;font-size: 12px;line-height: 1.4;margin-top: 2px}
.tipcard.advice{border-color: rgba(120, 180, 255, 0.55);width: min(360px, calc(100vw - 32px));padding: 7px 10px 8px}
.tipcard.advice .tp-head b{color: #a9cbff;font-size: 12.5px}
.tipcard.advice .rp-x{width: 20px;height: 20px;font-size: 11px}
.adv-mini{display: flex;align-items: flex-start;gap: 7px;padding: 5px 0;border-top: 1px solid rgba(255, 255, 255, 0.06);font-size: 12px;line-height: 1.35}
.adv-mini .btn.sm{flex-shrink: 0;padding: 2px 7px;font-size: 11px}
.pro-row .loyal{flex-shrink: 0}
.pro-acts{flex-wrap: wrap;justify-content: flex-end;max-width: 330px}
.pro-where li{font-size: 12px;margin: 3px 0}
.adv-mini > .adv-t{flex: 1;min-width: 0}
#market .mtools{gap: 5px}
#market .mtools .btn.sm{padding: 4px 8px;font-size: 11.5px}
@media (max-width: 600px){.crew-row.crew-m{grid-template-columns: auto minmax(0, 1fr) auto;row-gap: 6px}
.crew-row.crew-m .cinfo{grid-column: 2 / -1}
.crew-row.crew-m .loyal{grid-column: 2;width: auto}
.crew-row.crew-m > .btn.danger{grid-column: 3}
}
.brand-b{display: inline-grid;place-items: center;width: 17px;height: 17px;margin-left: 4px;border-radius: 50%;font-size: 10px;background: color-mix(in srgb, var(--bc) 22%, transparent);border: 1px solid var(--bc);vertical-align: 1px}
.br-head{display: flex;align-items: center;gap: 12px;padding: 10px 12px;border-radius: 12px;border: 1px solid var(--bc);background: color-mix(in srgb, var(--bc) 10%, #0b1018);margin-bottom: 8px}
.br-head .br-logo{font-size: 30px}
.br-head > div{flex: 1;display: grid;min-width: 0}
.br-head b{font-size: 17px}
.br-head small{color: var(--muted);font-size: 11.5px}
.br-picks{display: flex;flex-wrap: wrap;gap: 4px;justify-content: flex-end}
.br-pick{width: 32px;height: 32px;border-radius: 9px;border: 1px solid var(--line-2);background: #0c121c;font-size: 17px;cursor: pointer}
.br-pick.on{border-color: var(--green);background: #12221a}
.br-sw{width: 24px;height: 24px;border-radius: 50%;border: 2px solid transparent;background: var(--c);cursor: pointer}
.br-sw.on{border-color: #fff;box-shadow: 0 0 0 2px #0b1018 inset}
.br-name{width: 220px;max-width: 100%;padding: 6px 9px;border-radius: 8px;border: 1px solid var(--line-2);background: #0b1018;color: var(--text);font: 600 13px var(--font)}
.br-row{display: grid;grid-template-columns: minmax(0, 1.2fr) minmax(60px, 1fr) 34px 44px;gap: 8px;align-items: center;padding: 4px 0;font-size: 12.5px;border-bottom: 1px solid rgba(255, 255, 255, 0.05)}
.br-row small{font-size: 10.5px}
.ch-row .cinfo small{display: block}
.ch-row.dim{opacity: 0.55}
.ch-row select{background: #0b1018;color: var(--text);border: 1px solid var(--line-2);border-radius: 6px;font: 12px var(--font);padding: 2px 4px;max-width: 220px}
.ch-acts{flex-wrap: wrap;justify-content: flex-end;max-width: 300px}
@media (max-width: 600px){.ch-row{grid-template-columns: auto minmax(0, 1fr)}
.ch-row .ch-acts{grid-column: 1 / -1;justify-content: flex-start;max-width: none}
}
.fx.season{border-color: rgba(255, 207, 107, 0.5);color: #ffdf9a}
.fx.news{border-color: rgba(120, 180, 255, 0.45);color: #b9d4ff;max-width: 260px;overflow: hidden;text-overflow: ellipsis;white-space: nowrap}
.mnote.season{border-color: rgba(255, 207, 107, 0.5);background: rgba(255, 207, 107, 0.07)}
.mnote.news{border-color: rgba(120, 180, 255, 0.45);background: rgba(120, 180, 255, 0.06)}
.lf-head{display: flex;align-items: center;gap: 12px;margin-bottom: 8px}
.lf-head > div{display: grid;min-width: 0}
.lf-head b{font-size: 17px}
.lf-head small{color: var(--muted);font-size: 11.5px}
.wd-bar.love i{background: linear-gradient(90deg, #ff6b8b, #ff9ab0)}
.lf-furn{display: grid;grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));gap: 6px}
.lf-f{display: grid;gap: 2px;text-align: left;padding: 8px;border-radius: 10px;border: 1px solid var(--line-2);background: #0b1018;color: var(--text);cursor: pointer;font: inherit}
.lf-f .lf-i{font-size: 20px}
.lf-f b{font-size: 12.5px}
.lf-f small{font-size: 10.5px;color: var(--muted);line-height: 1.3}
.lf-f em{font-style: normal;font-size: 11.5px;color: var(--green)}
.lf-f.on{border-color: rgba(57, 255, 136, 0.5);background: #0e1a13}
.lf-f:disabled{cursor: default}
.fx.good{border-color: rgba(57, 255, 136, 0.45);color: #9fe9c0}
.gg-head{display: flex;align-items: center;gap: 12px;padding: 10px 12px;border-radius: 12px;border: 1px solid var(--gc);background: color-mix(in srgb, var(--gc) 10%, #0b1018);margin-bottom: 6px}
.gg-head > div{display: grid;min-width: 0}
.gg-head b{font-size: 16px}
.gg-head small{color: var(--muted);font-size: 11.5px}
.gg-head .gg-c{font-size: 12px;letter-spacing: 1px;color: var(--text)}
.gg-tag{display: inline-grid;place-items: center;min-width: 34px;padding: 3px 6px;border-radius: 8px;font: 800 12px var(--font);color: #0b1018;background: var(--gc, var(--green))}
.gg-head .gg-tag{font-size: 15px;padding: 6px 9px}
.gg-wall{display: grid;gap: 3px;max-height: 220px;overflow-y: auto;margin-top: 6px;padding: 6px 8px;border-radius: 10px;background: #0b1018;border: 1px solid var(--line)}
.gg-msg{font-size: 12.5px}
.gg-code{width: 140px;text-transform: uppercase;letter-spacing: 1px}
.kv-wrap{flex-wrap: wrap;align-items: center;row-gap: 6px}
.kv-wrap .seg.sm{flex-wrap: wrap}
.cb-top{display: grid;grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);align-items: center;gap: 10px;margin-bottom: 10px}
.cb-side{display: flex;align-items: center;gap: 10px;min-width: 0}
.cb-side.me{justify-content: flex-end;text-align: right}
.cb-info{display: grid;gap: 4px;min-width: 0}
.cb-info b{font-size: 15px}
.cb-info small{color: var(--muted);font-size: 11.5px}
.cb-ic{font-size: 40px;line-height: 1}
.cb-vs{font: 700 18px var(--display);color: var(--muted);letter-spacing: 0.05em}
.cb-pips{display: inline-flex;gap: 4px}
.cb-side.me .cb-pips{justify-content: flex-end}
.cb-pips i{width: 14px;height: 14px;border-radius: 4px;border: 1px solid var(--line-2);background: #0b1018}
.cb-pips.foe i.on{background: #ff4d61;border-color: #ff4d61;box-shadow: 0 0 6px rgba(255, 77, 97, 0.45)}
.cb-pips.me i.on{background: var(--green);border-color: var(--green);box-shadow: 0 0 6px rgba(57, 255, 136, 0.4)}
.cb-hp{position: relative;height: 15px;min-width: 130px;border-radius: 8px;background: #1a2130;overflow: hidden}
.cb-hp i{position: absolute;left: 0;top: 0;bottom: 0;background: linear-gradient(90deg, #ff4d61, #ff8a4d);transition: width 0.3s ease}
.cb-hp span{position: relative;display: block;padding: 0 7px;font-size: 10.5px;line-height: 15px;color: #fff}
.cb-intent{padding: 8px 10px;border-radius: 10px;background: #1b150d;border: 1px solid rgba(255, 181, 71, 0.35);font-size: 13px;margin-bottom: 8px}
.cb-end{padding: 10px 12px;border-radius: 10px;margin-bottom: 8px;font-size: 15px;border: 1px solid var(--line-2)}
.cb-end.good{background: #0e1a13;border-color: rgba(57, 255, 136, 0.5);color: var(--green)}
.cb-end.bad{background: #1d0f12;border-color: rgba(255, 77, 97, 0.5);color: #ff8a96}
.cb-end.warn{background: #1b150d;border-color: rgba(255, 181, 71, 0.45);color: var(--amber)}
.cb-end small{color: var(--muted);font-size: 12px}
.cb-log{min-height: 96px;padding: 6px 10px;border-radius: 10px;background: #0b1018;border: 1px solid var(--line);font-size: 12.5px;margin-bottom: 10px}
.cb-log p{margin: 3px 0}
.cb-log p.old{color: var(--muted)}
.cb-acts{display: flex;flex-wrap: wrap;gap: 6px}
.cb-acts .btn small{color: var(--muted);font-weight: 500}
.cb-acts .btn.primary small{color: inherit;opacity: 0.8}
.cb-acts kbd{display: inline-block;min-width: 15px;margin-right: 3px;padding: 0 3px;border-radius: 4px;background: rgba(255, 255, 255, 0.08);font: 600 10px var(--font);text-align: center}
@media (max-width: 640px){.cb-top{grid-template-columns: 1fr;gap: 8px}
.cb-vs{display: none}
.cb-side.me{flex-direction: row-reverse;justify-content: flex-end;text-align: left}
.cb-side.me .cb-pips{justify-content: flex-start}
.cb-acts .btn{flex: 1 1 46%;display: flex;flex-direction: column;align-items: center;justify-content: center;gap: 1px;text-align: center;line-height: 1.25}
.cb-acts .btn small{font-size: 10px}
.cb-acts kbd{display: none}
}
.hs-card{display: grid;grid-template-columns: auto minmax(0, 1fr) auto;gap: 10px;align-items: center;padding: 10px 12px;margin-bottom: 6px;border-radius: 12px;border: 1px solid var(--line-2);background: #0e131c}
.hs-card.off{opacity: 0.6}
.hs-ic{font-size: 28px;line-height: 1}
.hs-main{display: grid;gap: 3px;min-width: 0}
.hs-main small{color: var(--muted);font-size: 11.5px}
.hs-main small .warn{color: var(--amber)}
.hs-btns{display: flex;flex-direction: column;gap: 5px}
.hs-role{margin-left: 2px}
.hs-near{display: flex;flex-wrap: wrap;gap: 5px}
.pill-mini{display: inline-block;padding: 3px 8px;border-radius: 999px;border: 1px solid var(--line-2);background: #0b1018;font-size: 12px}
.hs-head{display: flex;gap: 12px;align-items: center;padding: 10px 12px;border-radius: 12px;border: 1px solid rgba(255, 181, 71, 0.35);background: #1a140c;margin-bottom: 6px}
.hs-head > div{display: grid;gap: 2px;min-width: 0}
.hs-head small{color: var(--muted);font-size: 11.5px}
.hs-appr{display: grid;grid-template-columns: repeat(3, minmax(0, 1fr));gap: 6px}
.hs-ap{display: grid;gap: 3px;text-align: left;padding: 8px 10px;border-radius: 10px;border: 1px solid var(--line-2);background: #0b1018;color: var(--text);cursor: pointer;font: inherit}
.hs-ap small{color: var(--muted);font-size: 11px;line-height: 1.3}
.hs-ap.on{border-color: var(--green);background: #0e1a13}
.hs-slot select{max-width: 60%;padding: 5px 8px;border-radius: 8px;border: 1px solid var(--line-2);background: #0b1018;color: var(--text);font: 12.5px var(--font)}
.hs-odds{display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));gap: 6px}
.hs-odds > div{display: flex;justify-content: space-between;gap: 8px;padding: 7px 10px;border-radius: 10px;background: #0b1018;border: 1px solid var(--line);font-size: 12.5px}
.hs-odds small{color: var(--muted)}
@media (max-width: 640px){.hs-card{grid-template-columns: auto minmax(0, 1fr)}
.hs-btns{grid-column: 1 / -1;flex-direction: row}
.hs-btns .btn{flex: 1}
.hs-appr, .hs-odds{grid-template-columns: 1fr}
.hs-slot{flex-wrap: wrap}
.hs-slot select{max-width: 100%;width: 100%}
}
.dy-line{display: grid;gap: 4px;margin: 6px 0 4px}
.dy-row{display: grid;grid-template-columns: 26px auto minmax(0, 1fr) auto;gap: 10px;align-items: center;padding: 6px 10px;border-radius: 10px;border: 1px solid var(--line);background: #0b1018}
.dy-row.cur{border-color: rgba(255, 215, 122, 0.55);background: #1a160c}
.dy-gen{font: 700 15px var(--display);color: #ffd77a;text-align: center}
.dy-main{display: grid;gap: 2px;min-width: 0}
.dy-main small{color: var(--muted);font-size: 11.5px}
.dy-score{font: 600 14px var(--display);color: #ffd77a}
.dy-perks, .dy-mods{display: grid;grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));gap: 6px}
.dy-perk, .dy-mod{display: grid;gap: 3px;text-align: left;padding: 8px 10px;border-radius: 10px;border: 1px solid var(--line-2);background: #0b1018;color: var(--text);cursor: pointer;font: inherit}
.dy-perk small, .dy-mod small{color: var(--muted);font-size: 11px;line-height: 1.3}
.dy-perk.on{border-color: #ffd77a;background: #1a160c}
.dy-mod.on{border-color: #ff8a4d;background: #1d130c}
.dy-name{width: 260px}
.dy-hof{padding: 6px 0;border-bottom: 1px solid rgba(255, 255, 255, 0.05)}
.dy-faces{display: flex;flex-wrap: wrap;gap: 6px;margin-top: 4px}
.mods-opt{margin-top: -2px}
.gg-acts{display: flex;flex-wrap: wrap;gap: 4px;justify-content: flex-end}
.gw-list{display: grid;gap: 4px;margin: 6px 0}
.gw-row{display: grid;grid-template-columns: minmax(0, 1.1fr) minmax(0, 1.4fr) auto auto;gap: 8px;align-items: center;padding: 6px 10px;border-radius: 10px;border: 1px solid var(--line);background: #0b1018;font-size: 12.5px}
.gw-city{display: grid;min-width: 0}
.gw-city small, .gw-mine small{color: var(--muted);font-size: 11px}
.gw-top{min-width: 0}
.gw-btns{display: flex;gap: 4px}
.gw-prev{display: flex;flex-wrap: wrap;gap: 5px}
.gq{display: grid;gap: 5px;padding: 8px 10px;border-radius: 10px;border: 1px solid var(--line-2);background: #0b1018}
.gq small{color: var(--muted)}
@media (max-width: 640px){.gw-row{grid-template-columns: minmax(0, 1fr) auto}
.gw-top{grid-column: 1 / -1;order: 3}
.gw-mine{order: 2}
.gw-btns{grid-column: 1 / -1;order: 4}
.gw-btns .btn{flex: 1}
}
.toast.toast-act{display: grid;gap: 8px;pointer-events: auto;max-width: 420px}
.toast-act small{display: block;color: var(--muted);font-size: 11px;font-weight: 500}
.toast-btns{display: flex;flex-wrap: wrap;gap: 5px}
.manual{position: fixed;top: 0;right: 0;bottom: 0;width: min(760px, 94vw);z-index: 150;display: none;flex-direction: column;background: #0d121b;border-left: 1px solid var(--line-2);box-shadow: -24px 0 60px rgba(0, 0, 0, 0.55);animation: slideIn 0.2s ease}
.manual.open{display: flex}
.man-head{display: flex;gap: 10px;align-items: center;padding: 12px 14px;border-bottom: 1px solid var(--line)}
.man-head b{font: 600 18px var(--display);white-space: nowrap}
.man-q{flex: 1;min-width: 0;padding: 7px 10px;border-radius: 8px;border: 1px solid var(--line-2);background: #0b1018;color: var(--text);font: 13px var(--font)}
.man-x{border: 0;background: transparent;color: var(--muted);font-size: 18px;cursor: pointer;padding: 2px 6px}
.man-x:hover{color: var(--text)}
.man-body{flex: 1;min-height: 0;display: grid;grid-template-columns: 240px minmax(0, 1fr)}
.man-nav{overflow-y: auto;padding: 6px 8px 14px;border-right: 1px solid var(--line)}
.man-ch{font: 600 12px var(--display);letter-spacing: 0.05em;color: var(--muted);text-transform: uppercase;margin: 12px 6px 4px}
.man-l{display: block;padding: 4px 8px;border-radius: 6px;color: var(--text);text-decoration: none;font-size: 12.5px;line-height: 1.35}
.man-l:hover{background: rgba(255, 255, 255, 0.05)}
.man-l.on{background: #12221a;color: var(--green)}
.man-art{overflow-y: auto;padding: 14px 20px 24px;font-size: 14px;line-height: 1.6}
.man-art h3{font: 600 21px var(--display);margin: 2px 0 10px}
.man-crumb{color: var(--muted);font-size: 12px}
.man-rel{margin-top: 16px;padding-top: 10px;border-top: 1px solid var(--line);font-size: 12.5px;color: var(--muted);line-height: 1.8}
.man-rel a{color: var(--text)}
.man-art mark{background: rgba(255, 215, 122, 0.35);color: inherit;border-radius: 3px;padding: 0 1px}
.man-back{display: none}
.mhelp{margin-left: auto;margin-right: 18px;flex: none;width: 26px;height: 26px;border-radius: 50%;border: 1px solid var(--line-2);background: #0b1018;color: var(--muted);cursor: pointer;font-size: 12px;line-height: 1}
.mhelp:hover{color: var(--text);border-color: var(--green)}
@media (max-width: 640px){.manual{width: 100vw;border-left: 0}
.man-head b{display: none}
.man-body{grid-template-columns: 1fr}
.man-nav{display: none;border-right: 0}
.manual.list-on .man-nav{display: block}
.manual.list-on .man-art{display: none}
.man-back{display: inline-block;margin-bottom: 6px}
.man-art{padding: 12px 14px 20px}
}
.goals .g-row{display: grid;grid-template-columns: auto minmax(0, 1fr) auto;gap: 8px;align-items: center;width: 100%;text-align: left;padding: 7px 8px;margin-bottom: 4px;border-radius: 10px;border: 1px solid var(--line);background: rgba(11, 16, 24, 0.7);color: var(--text);cursor: pointer;font: 12.5px/1.35 var(--font)}
.goals .g-row:hover{border-color: rgba(255, 181, 71, 0.5)}
.g-ic{font-size: 18px}
.g-go{color: var(--muted);font-size: 18px}
.g-xp{color: #ffd79a;font-weight: 600}
.g-next{margin-top: 6px;font-size: 11.5px;color: var(--muted)}
.g-new{margin-bottom: 10px;padding-bottom: 10px;border-bottom: 1px solid var(--line)}
.goals .tut-foot{display: flex;align-items: center;gap: 6px;flex-wrap: wrap}
.tut-pill.g-pill-new{border-color: rgba(255, 215, 122, 0.7);box-shadow: 0 0 14px rgba(255, 215, 122, 0.25)}
.lg-biz.open{border-color: rgba(57, 255, 136, 0.35)}
.lg-biz .cinfo .pill-mini{font-size: 11px;padding: 1px 7px;margin-left: 2px}
.pill-mini.pos{color: var(--green);border-color: rgba(57, 255, 136, 0.4)}
.pill-mini.neg{color: var(--red);border-color: rgba(255, 77, 97, 0.4)}
.lg-panel{margin-top: 8px;padding: 8px 10px;border-radius: 10px;border: 1px solid var(--line);background: rgba(11, 16, 24, 0.6)}
.lg-panel .kv{margin: 4px 0}
.lg-spark{vertical-align: middle;margin-left: 6px;overflow: visible}
.lg-spark polyline{fill: none;stroke-width: 1.6;stroke-linejoin: round;stroke-linecap: round}
.lg-spark.up polyline{stroke: var(--green)}
.lg-spark.down polyline{stroke: var(--red)}
.lg-cand{align-items: center}
.lg-bar{height: 6px;margin-top: 5px;border-radius: 3px;background: #1b2333;overflow: hidden}
.lg-bar i{display: block;height: 100%;border-radius: 3px;background: linear-gradient(90deg, var(--green-2), var(--green))}
.lg-pct{min-width: 44px;text-align: right;font: 600 15px var(--display)}
.lg-acts{margin: 6px 0 4px;padding: 6px 10px;border-radius: 10px;border: 1px dashed var(--line-2)}
.lg-acts .btnrow{gap: 4px;flex-wrap: wrap}
.modal.np-modal .mbody{background: transparent}
.np{background: #efe8d6;color: #1d1a14;border-radius: 6px;padding: 14px 18px 18px;box-shadow: inset 0 0 60px rgba(120, 95, 50, 0.18);font: 14px/1.5 Georgia, 'Times New Roman', serif}
.np-mast{text-align: center;border-bottom: 3px double #1d1a14;padding-bottom: 6px;margin-bottom: 10px}
.np-mast h1{margin: 2px 0 0;font: 700 42px/1 Georgia, 'Times New Roman', serif;letter-spacing: 3px}
.np-meta{display: flex;justify-content: space-between;gap: 8px;font: 11px/1.4 var(--font);text-transform: uppercase;letter-spacing: 1px;color: #4a4336;border-bottom: 1px solid #1d1a14;padding-bottom: 4px}
.np-sub{font: italic 12px Georgia, serif;color: #4a4336;margin-top: 2px}
.np-head{text-align: center;padding: 6px 4px 12px;border-bottom: 1px solid #1d1a14;margin-bottom: 12px}
.np-head .np-ic{font-size: 30px}
.np-head h2{margin: 2px 0 6px;font: 700 26px/1.15 Georgia, 'Times New Roman', serif}
.np-lead{margin: 0;font-size: 15px}
.np-cols{column-count: 2;column-gap: 22px;column-rule: 1px solid rgba(29, 26, 20, 0.35)}
.np-art{break-inside: avoid;margin: 0 0 12px}
.np-art h3{margin: 0 0 3px;font: 700 15px/1.25 Georgia, 'Times New Roman', serif}
.np-art p{margin: 0 0 4px}
.np-li{font-size: 13px}
.np-box{border: 1px solid #1d1a14;padding: 6px 8px;background: rgba(255, 255, 255, 0.35)}
.np-box small{color: #4a4336}
.np-ad{border: 2px dashed rgba(29, 26, 20, 0.6);padding: 6px 8px;font-size: 13px}
.np-star{font-size: 13px;font-style: italic}
.np-nav{justify-content: space-between;align-items: center;margin-top: 10px}
@media (max-width: 640px){.np{padding: 10px 11px 14px}
.np-mast h1{font-size: 28px;letter-spacing: 1px}
.np-meta{flex-wrap: wrap;justify-content: center;font-size: 10px}
.np-head h2{font-size: 21px}
.np-cols{column-count: 1}
}
.modal.rg-draft .choices{flex-direction: column;align-items: stretch}
.modal.rg-draft .choices .btn{width: 100%;justify-content: flex-start;text-align: left}
.md-card.feat{border-color: rgba(57, 255, 136, 0.4)}
.md-card.open{border-color: rgba(255, 215, 122, 0.45)}
.md-btns{display: flex;gap: 6px}
.md-board{margin-top: 8px;padding-top: 6px;border-top: 1px solid var(--line)}
.ms-form{display: grid;gap: 6px}
.ms-form h5{margin: 8px 0 0;font: 600 12px var(--font);letter-spacing: 0.04em;text-transform: uppercase;color: var(--muted)}
.ms-row{display: grid;grid-template-columns: 120px minmax(0, 1fr);align-items: center;gap: 8px;font-size: 13px}
.ms-row > span{color: var(--muted)}
.ms-form input, .ms-form select, .ms-form textarea, .ms-share input{min-width: 0;width: 100%;padding: 6px 8px;border-radius: 8px;border: 1px solid var(--line-2);background: #0b1018;color: var(--text);font: 13px var(--font)}
.ms-form textarea{resize: vertical}
.ms-form input:focus, .ms-form select:focus, .ms-form textarea:focus, .ms-share input:focus{outline: none;border-color: var(--green)}
.ms-pair{display: grid;grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);gap: 6px}
.ms-rules{display: flex;flex-wrap: wrap;gap: 6px 14px;font-size: 13px}
.ms-rules input{width: auto;accent-color: var(--green)}
.ms-share{display: flex;gap: 6px;align-items: center;margin: 6px 0}
.ms-share input{flex: 1}
@media (max-width: 640px){.ms-row{grid-template-columns: 1fr;gap: 3px}
}
@media (max-width: 640px){.md-card{grid-template-columns: auto minmax(0, 1fr)}
.md-card .md-btns{grid-column: 1 / -1;justify-content: flex-end}
.lg-cand{grid-template-columns: auto minmax(0, 1fr) auto}
.lg-cand > .btn{grid-column: 1 / -1;justify-self: end}
}
.cos-fr{display: inline-flex;padding: 2px;margin-right: 4px;border-radius: 50%;background: linear-gradient(135deg, var(--f1), var(--f2));vertical-align: -8px;box-shadow: 0 0 6px rgba(0, 0, 0, 0.5)}
.cos-fr > .face.xs{margin: 0;vertical-align: top}
.cos-fr .cos-nf{display: inline-flex;width: 22px;height: 22px;align-items: center;justify-content: center;border-radius: 50%;background: #121826;font-size: 13px;line-height: 1}
.cos-ti{display: inline-block;margin-left: 4px;padding: 0 6px;border-radius: 9px;font-size: 10.5px;font-weight: 700;line-height: 16px;color: #ffd77a;background: rgba(255, 215, 122, 0.1);border: 1px solid rgba(255, 215, 122, 0.3);vertical-align: 1px;white-space: nowrap}
.cos-bd{margin-left: 3px;font-size: 13px}
.cos-sw{display: inline-block;width: 14px;height: 14px;margin-right: 5px;border-radius: 50%;background: linear-gradient(135deg, var(--f1), var(--f2));vertical-align: -2px}
.cos-prev{display: flex;align-items: center;flex-wrap: wrap;gap: 2px;padding: 10px 12px;margin: 6px 0 10px;border: 1px solid var(--line);border-radius: 10px;background: #0f1520}
.kz-goal{display: flex;gap: 10px;align-items: center;margin-bottom: 6px}
.kz-goal .kz-ic{font-size: 30px;line-height: 1}
.kz-goal b, .kz-goal small{display: block}
.kz-goal small{margin-top: 2px}
.kz-bar{height: 10px;margin: 8px 0 10px;border-radius: 5px}
.kz-bar i{border-radius: 5px}
.kz-ladder{display: grid;gap: 4px;margin: 10px 0}
.kz-tier{display: grid;grid-template-columns: 44px minmax(0, 1fr) auto;gap: 8px;align-items: center;padding: 5px 8px;border: 1px solid var(--line);border-radius: 8px;background: #101622;font-size: 12.5px;opacity: 0.72}
.kz-tier.got{opacity: 1;border-color: rgba(57, 255, 136, 0.35)}
.kz-tier.can{opacity: 1;border-color: rgba(255, 215, 122, 0.5);background: rgba(255, 215, 122, 0.06)}
.kz-t{font-weight: 700;color: var(--muted);font-variant-numeric: tabular-nums}
.kz-cos{display: flex;flex-wrap: wrap;gap: 6px;margin-bottom: 4px}
.kz-auto{display: flex;align-items: center;gap: 8px;margin: 6px 0;font-size: 12.5px}
.bm-row{display: grid;grid-template-columns: auto minmax(0, 1fr) auto auto;gap: 10px;align-items: center;padding: 8px 10px;margin-bottom: 6px;border: 1px solid var(--line);border-radius: 10px;background: #101622}
.bm-ic{font-size: 24px;line-height: 1}
.bm-info{min-width: 0}
.bm-info small{display: block;margin-top: 2px}
.bm-price{text-align: right;white-space: nowrap}
.bm-price b, .bm-price small{display: block}
.bm-city{margin-bottom: 12px}
.bm-ch{display: flex;align-items: center;gap: 8px;margin: 6px 0}
.bm-ch .btn{margin-left: auto}
.bm-pick{display: flex;flex-wrap: wrap;gap: 6px;margin: 8px 0}
.bm-form{display: flex;flex-wrap: wrap;gap: 14px;margin: 10px 0}
.bm-form label{display: flex;align-items: center;gap: 8px;font-size: 13px}
.bm-form .qin{width: 110px}
.bm-sum{margin-bottom: 8px}
@media (max-width: 640px){.bm-row{grid-template-columns: auto minmax(0, 1fr) auto}
.bm-row > .btn{grid-column: 1 / -1;justify-self: end}
}
.bm-row.open{border-color: rgba(57, 255, 136, 0.45);margin-bottom: 0;border-bottom-left-radius: 0;border-bottom-right-radius: 0}
.bm-buy{margin: 0 0 8px;padding: 6px 12px 10px;border: 1px solid rgba(57, 255, 136, 0.45);border-top: 0;border-radius: 0 0 10px 10px;background: #0d131d}
.bm-buy .qty{margin-top: 6px}
.nm-head{display: flex;gap: 12px;align-items: flex-start;margin-bottom: 8px}
.nm-head small{display: block;margin-top: 3px}
.nm-motto{color: #ffd77a;font-style: italic}
.nm-bar{height: 8px;margin: -2px 0 8px}
.nm-bar.neg i, .iv-bar.neg i{background: linear-gradient(90deg, #ffb547, #ff4d61)}
.nm-ch{margin: 4px 0 8px 18px;padding: 0;font-size: 13px}
.tap-log{font: 12.5px/1.55 ui-monospace, Consolas, monospace;background: #0a0e15;border: 1px solid var(--line);border-radius: 10px;padding: 10px 12px;margin: 8px 0 10px;max-height: 240px;overflow: auto}
.tap-log div{padding: 1px 0}
.tap-grid{display: grid;grid-template-columns: repeat(auto-fill, minmax(170px, 1fr));gap: 8px;margin-bottom: 8px}
.tap-card{position: relative;padding: 8px 30px 8px 10px;border: 1px solid var(--line-2);border-radius: 10px;background: #101622;cursor: pointer;font-size: 12.5px}
.tap-card b, .tap-card small{display: block}
.tap-card small{margin-top: 2px}
.tap-card:hover{border-color: var(--text)}
.tap-card.sel{border-color: var(--green);background: rgba(57, 255, 136, 0.08);box-shadow: 0 0 0 1px var(--green) inset}
.tap-card.out{opacity: 0.4;text-decoration: line-through}
.tap-x{position: absolute;top: 4px;right: 4px;width: 24px;height: 24px;border: 0;border-radius: 6px;background: #1b2333;color: var(--muted);cursor: pointer;font-size: 11px}
.tap-x:hover{color: #ff8a98}
.iv-tell{margin: 6px 0;color: #c9d1de;font-size: 13px}
.iv-meters{display: grid;grid-template-columns: auto minmax(0, 1fr);gap: 4px 10px;align-items: center;margin: 8px 0;font-size: 12.5px}
.iv-meters .lg-bar{margin: 0}
.chase .ch-hud{display: grid;grid-template-columns: auto minmax(0, 1fr) auto;gap: 10px;align-items: center;margin: 6px 0;font-size: 13px}
.chase .ch-lead{display: block;height: 10px;border-radius: 5px;background: #1b2333;overflow: hidden}
.chase .ch-lead i{display: block;height: 100%;width: 50%;background: linear-gradient(90deg, var(--green-2), var(--green));transition: width 0.12s linear}
.chase .ch-lead i.warn{background: #ffb547}
.chase .ch-lead i.neg{background: #ff4d61}
.chase .ch-cv{display: block;width: 100%;height: min(52vh, 380px);border-radius: 10px;background: #0f1520;touch-action: none}
.chase .ch-ctl{display: flex;justify-content: center;gap: 10px;margin: 8px 0 4px}
.chase .ch-ctl .btn{min-width: 64px;min-height: 44px;font-size: 16px}
@media (max-width: 640px){.chase .ch-cv{height: 46vh}
.tap-grid{grid-template-columns: 1fr 1fr}
}
.sp-grid{display: grid;grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));gap: 10px;margin: 8px 0}
.sp-card{padding: 10px 12px;border: 1px solid var(--line-2);border-left: 3px solid var(--sc);border-radius: 10px;background: #101622;cursor: pointer}
.sp-card:hover{border-color: var(--sc)}
.sp-card.sel{border-color: var(--sc);box-shadow: 0 0 0 1px var(--sc) inset;background: #131b29}
.sp-top, .sp-head{display: flex;gap: 10px;align-items: center}
.sp-top b, .sp-top small, .sp-head small{display: block}
.sp-ic{font-size: 30px;line-height: 1}
.sp-head{padding: 8px 12px;margin-bottom: 8px;border-left: 3px solid var(--sc);border-radius: 8px;background: #101622}
.sp-list{margin: 6px 0;padding-left: 16px;font-size: 12.5px}
.sp-list li{margin: 2px 0}
.look-view{display: flex;gap: 14px;align-items: center;margin-bottom: 8px}
.look-view p{margin: 4px 0}
.fx.temp{cursor: pointer;border-color: rgba(90, 200, 255, 0.45);color: #cfeeff}
.fx.temp.warn{border-color: rgba(255, 181, 71, 0.55);color: #ffd79a}
.fc-list, .job-list{display: grid;gap: 6px;margin-top: 8px}
.fc-row{display: grid;grid-template-columns: 104px 1fr auto;grid-template-areas: "d w t" "d tip tip";column-gap: 10px;row-gap: 2px;align-items: center;padding: 6px 10px;border: 1px solid var(--line);border-radius: 8px;background: #101622}
.fc-d{grid-area: d;display: flex;flex-direction: column}
.fc-d small{color: var(--muted);font-size: 11px}
.fc-w{grid-area: w}
.fc-t{grid-area: t;text-align: right;font-family: var(--display);white-space: nowrap}
.fc-tip{grid-area: tip;color: var(--muted);font-size: 11.5px}
.job-row{display: grid;grid-template-columns: 34px 1fr auto;gap: 10px;align-items: center;padding: 8px 10px;border: 1px solid var(--line);border-radius: 10px;background: #101622}
.job-row.off{opacity: 0.62}
.job-ic{font-size: 26px;line-height: 1;text-align: center}
.job-info{display: flex;flex-direction: column;gap: 2px;min-width: 0}
.job-info small{font-size: 11.5px}
.job-btns{display: flex;flex-direction: column;gap: 4px}
.job-btns .btn{white-space: nowrap;flex-direction: column;gap: 1px;line-height: 1.2}
.job-btns .btn small{font-size: 10.5px;font-weight: 600;opacity: 0.85}
.job-btns .btn small.warn{color: #ffd79a;opacity: 1}
.job-btns .btn small.neg{color: #ff9aa5;opacity: 1}
.job-btns .btn.primary small.warn{color: #6b4300}
.job-btns .btn.primary small.neg{color: #8b1020}
.tr-stat{display: grid;grid-template-columns: 136px 1fr 34px;grid-template-areas: "n m v" "fx fx fx";column-gap: 10px;row-gap: 2px;align-items: center;margin: 10px 0}
.tr-stat > span{grid-area: n}
.tr-stat .meter{grid-area: m;height: 8px}
.tr-stat .meter i{background: linear-gradient(90deg, #2fa8ff, #39ff88)}
.tr-stat > b{grid-area: v;text-align: right;font-family: var(--display)}
.tr-stat > small{grid-area: fx;font-size: 11.5px}
@media (max-width: 640px){.look-view{flex-direction: column;text-align: center}
.fc-row{grid-template-columns: 1fr auto;grid-template-areas: "d t" "w w" "tip tip"}
.job-row{grid-template-columns: 30px 1fr}
.job-btns{grid-column: 1 / -1;flex-direction: row;flex-wrap: wrap}
.job-btns .btn{flex: 1 1 30%}
.tr-stat{grid-template-columns: 112px 1fr 30px}
}
html.ts-l .modal, html.ts-l .col-right, html.ts-l .inv-drawer, html.ts-l .mdrop, html.ts-l .toasts, html.ts-l .dest-card, html.ts-l #manual{zoom: 1.12}
html.ts-xl .modal, html.ts-xl .col-right, html.ts-xl .inv-drawer, html.ts-xl .mdrop, html.ts-xl .toasts, html.ts-xl .dest-card, html.ts-xl #manual{zoom: 1.25}
html.ts-l .hud, html.ts-l .menubar{zoom: 1.06}
html.ts-l{--z: 1.12}
html.ts-xl{--z: 1.25}
html.ts-l .modal, html.ts-xl .modal{max-height: calc((100vh - 32px) / var(--z))}
html.ts-l .manual, html.ts-xl .manual{width: min(760px, calc(94vw / var(--z)))}
@media (max-width: 640px){html.ts-l .mdrop, html.ts-xl .mdrop{max-height: calc((100vh - 140px) / var(--z))}
html.ts-l .manual, html.ts-xl .manual{width: calc(100vw / var(--z))}
}
html.ts-xl .hud, html.ts-xl .menubar{zoom: 1.12}
html.cb{--green: #4da3ff;--green-2: #2f7fd6;--red: #ff9f1c}
html.cb .lg-bar i{background: linear-gradient(90deg, #2f7fd6, #4da3ff)}
html.cb .loyal i{background: linear-gradient(90deg, #ff9f1c, #ffd23d, #4da3ff)}
html.cb .nm-bar.neg i, html.cb .iv-bar.neg i{background: linear-gradient(90deg, #ffd84d, #ff9f1c)}
html.cb .chase .ch-lead i{background: linear-gradient(90deg, #2f7fd6, #4da3ff)}
html.cb .chase .ch-lead i.neg{background: #ff9f1c}
html.rm *, html.rm *::before, html.rm *::after{animation-duration: 0.01ms !important;animation-iteration-count: 1 !important;transition-duration: 0.01ms !important;scroll-behavior: auto !important}
@media (max-width: 640px){.crew-row.mis{grid-template-columns: auto minmax(0, 1fr)}
.crew-row.mis .mreward{grid-column: 1 / -1;flex-direction: row;flex-wrap: wrap;align-items: center;justify-content: space-between}
}
.wd-bar.water i{background: #4aa8ff}
.wd-bar.bond i{background: #ffcf6b}
.crew-row.fr-row{grid-template-columns: auto minmax(0, 1fr) auto}
.crew-row.fr-row.on{border-color: rgba(57, 255, 136, 0.35)}
.fr-row .fr-msgs{grid-column: 1 / -1}
.fr-ini{display: inline-grid;place-items: center;width: 26px;height: 26px;border-radius: 50%;border: 2px solid #8a94a6;font: 700 10.5px var(--font);color: #fff;background: #101622}
.fr-row.on .fr-ini{border-color: var(--green)}
.fr-code{display: flex;align-items: center;gap: 10px;margin: 6px 0 12px}
.fr-code b{font: 600 26px var(--display);letter-spacing: 2px;color: #9fffc9}
.fr-link{flex: 1;min-width: 0;padding: 8px 10px;border-radius: 9px;border: 1px solid var(--line-2);background: #0d1119;color: #9fffc9;font: 500 13px var(--font)}
.invite-note{margin: -14px auto 18px;max-width: 400px;padding: 9px 12px;border-radius: 10px;border: 1px solid rgba(57, 255, 136, 0.35);background: rgba(57, 255, 136, 0.07);font-size: 13px;color: #cfe9da;text-align: left}
.share-row{margin-top: 10px}
.share-panel{margin-top: 10px}
.share-panel img{display: block;width: 100%;height: auto;border-radius: 12px;border: 1px solid var(--line-2)}
.share-panel .btnrow{margin-top: 8px;flex-wrap: wrap}
.share-panel a.btn{text-decoration: none}
.share-text{margin-top: 6px;word-break: break-word}
.pr-stats{display: flex;flex-wrap: wrap;gap: 6px 12px;margin: 6px 0 8px;font-size: 13px}
.pr-stats span{padding: 3px 8px;border-radius: 8px;background: #131925;border: 1px solid var(--line-2)}
.ic{width: 1.2em;height: 1.2em;fill: none;stroke: currentColor;stroke-width: 1.8;stroke-linecap: round;stroke-linejoin: round;vertical-align: -0.24em;flex: none;display: inline-block}
.ic.drug{stroke: none;width: 1.6em;height: 1.6em;vertical-align: middle}
.ico .ic.drug{width: 26px;height: 26px}
.pic{display: inline-block;flex: none;width: 24px;height: 24px;vertical-align: middle;background: url(../icons/menu.svg) no-repeat;background-size: 1200% 1200%;background-position: calc(var(--x) * 100% / 11) calc(var(--y) * 100% / 11)}
html.pic-bmp .pic{background-image: var(--pic-bmp)}
html.pic-bmp .micon .pic.big, html.pic-bmp .sp-ic .pic{background-image: url(../icons/menu.svg)}
.stat .lbl .pic{width: 17px;height: 17px;margin: -4px 4px -3px 0}
.stat .lbl{padding-top: 3px;padding-bottom: 3px;margin-top: -3px;margin-bottom: -3px}
.stat .val small.dirty .pic, .hchip small.dirty .pic{width: 15px;height: 15px;margin: -2px 3px 0 0}
.meter-stat.mini .pic, .hchip .pic{width: 20px;height: 20px;margin: -3px 0}
.micon .pic.big{width: 44px;height: 44px}
.stab .pic{width: 20px;height: 20px;margin: -4px 4px -3px -2px}
.tr-ic .pic{width: 30px;height: 30px}
.sp-ic .pic{width: 40px;height: 40px}
.fx .pic{width: 18px;height: 18px;margin: -3px 4px -2px -3px}
.pc i .pic{width: 20px;height: 20px;margin: -3px 0}
h3 .pic.tp{width: 26px;height: 26px;margin: -4px 5px 0 0}
h4 .pic{width: 22px;height: 22px;vertical-align: -6px;margin-right: 5px}
.title-card .btn .pic, .title-card .linkbtn .pic, .cloud-opt .pic{width: 20px;height: 20px;margin: -3px 4px -2px 0}
.title-card .btn.big .pic{width: 30px;height: 30px;margin: 0 0 2px}
.mitem .mic .pic{width: 30px;height: 30px}
.menubar .mitem .mic .pic{width: 24px;height: 24px}
.mitem{grid-template-columns: 30px minmax(0, 1fr) auto}
.mbtn .mic .pic{width: 27px;height: 27px;margin: -5px 0}
.qbtn .pic{width: 26px;height: 26px}
.menubar .qbtn .pic{width: 27px;height: 27px;margin: -3px 0}
.menubar .qbtn:has(.pic){padding: 2px 3px}
.ptab i .pic{width: 30px;height: 30px}
.psg h5 .pic, .mbody h4 .pic{width: 20px;height: 20px;vertical-align: -5px;margin-right: 5px}
.map-ctrl button .ic{width: 18px;height: 18px;vertical-align: middle}
.lc-sky{position: relative;height: 84px;margin: 0 0 6px;border-radius: 10px;overflow: hidden;border: 1px solid var(--line-2);background: #070b14}
.lc-sky svg{display: block;width: 100%;height: 100%}
.lc-sky.dest{height: 70px}
.dest-card:has(> .lc-sky){flex-wrap: wrap}
.dest-card > .lc-sky{flex: 1 0 100%;margin: 0}
body.phone .lc-sky{height: 64px}
.sky-rain{animation: skyRain 0.75s linear infinite}
.sky-rain.fast{animation-duration: 0.5s}
@keyframes skyRain{to{transform: translate(-41.25px, 110px)}
}
.sky-snow{animation: skySnow 9s linear infinite}
@keyframes skySnow{to{transform: translate(-14px, 110px)}
}
.sky-bolt{opacity: 0;animation: skyBolt 5.5s infinite}
@keyframes skyBolt{0%, 84%, 100%{opacity: 0}
86%{opacity: 1}
88%{opacity: 0.15}
90%{opacity: 0.9}
92%{opacity: 0}
}
.sky-clouds{animation: skyDrift 40s ease-in-out infinite alternate}
@keyframes skyDrift{from{transform: translateX(-8px)}
to{transform: translateX(8px)}
}
.sky-wave{animation: skyShimmer 3.2s ease-in-out infinite alternate}
@keyframes skyShimmer{from{opacity: 0.45}
to{opacity: 1}
}
.sky-fog{animation: skyDrift 18s ease-in-out infinite alternate}
@media (prefers-reduced-motion: reduce){.sky-rain, .sky-snow, .sky-bolt, .sky-clouds, .sky-wave, .sky-fog{animation: none}
}
.rm .sky-rain, .rm .sky-snow, .rm .sky-bolt, .rm .sky-clouds, .rm .sky-wave, .rm .sky-fog{animation: none}
.map-wrap > .tut{position: absolute;left: 10px;bottom: 10px;z-index: 3;width: min(330px, calc(100% - 64px));max-height: calc(100% - 20px);overflow-y: auto}
.map-wrap > .tut.min{width: auto;overflow: visible}
body.phone .map-wrap > .tut{left: 8px;bottom: 8px}
.fb-kind{margin: 6px 0 8px}
.fb-msg{width: 100%;min-height: 110px;padding: 9px 11px;border-radius: 10px;border: 1px solid var(--line-2);background: #0d1119;color: var(--text);font: 500 14px var(--font);resize: vertical}
.fb-foot{justify-content: space-between;align-items: center;margin-top: 8px;gap: 8px}
.rg-head{display: flex;flex-wrap: wrap;align-items: center;gap: 8px 12px;margin: 10px 0 6px}
.rg-row{display: grid;grid-template-columns: minmax(0, 1fr) 90px auto;align-items: center;gap: 10px;padding: 6px 8px;border-radius: 10px;border: 1px solid transparent}
.rg-row.own{border-color: rgba(57, 255, 136, 0.35);background: rgba(57, 255, 136, 0.05)}
.rg-name{display: flex;flex-direction: column;min-width: 0}
.rg-name small{overflow-wrap: anywhere}
.rg-bar{display: block;height: 6px;border-radius: 99px;background: #1b2232;overflow: hidden}
.rg-head .rg-bar{width: 140px}
.rg-bar i{display: block;height: 100%;background: var(--green);border-radius: 99px}
@media (max-width: 640px){.rg-row{grid-template-columns: minmax(0, 1fr) 60px}
.rg-row .btn{grid-column: 1 / -1;justify-self: start}
}
.gg-tag.sm{min-width: 0;padding: 1px 5px;font-size: 10px;border-radius: 6px;vertical-align: 1px}
.map-ctrl button.on{border-color: var(--green);color: var(--green);background: rgba(16, 40, 28, 0.92)}
.map-layers{position: absolute;left: 10px;top: 10px;z-index: 3;display: flex;align-items: flex-start;gap: 4px;max-width: calc(100% - 70px)}
.map-layers.hidden{display: none}
.ml-legend{display: flex;align-items: center;flex-wrap: wrap;gap: 4px 8px;padding: 6px 10px;border-radius: 10px;cursor: pointer;text-align: left;background: rgba(10, 14, 21, 0.92);border: 1px solid var(--line-2);color: var(--text);font: 500 12px var(--font)}
.ml-legend:hover{border-color: var(--green)}
.ml-x{width: 26px;height: 26px;flex: none;border-radius: 8px;cursor: pointer;background: rgba(10, 14, 21, 0.92);border: 1px solid var(--line-2);color: var(--muted);font-size: 12px}
.ml-x:hover{color: var(--text);border-color: var(--line)}
.ml-scale{display: inline-flex;gap: 2px;vertical-align: middle}
.ml-scale i{width: 18px;height: 10px;border-radius: 3px;display: inline-block}
.ml-sl{display: inline-flex;gap: 8px}
.ml-sl small{color: var(--muted);font-size: 11px}
.ml-own{display: inline-flex;flex-wrap: wrap;gap: 4px 10px}
.ml-own.col{display: flex;flex-direction: column;gap: 4px;margin: 6px 0}
.ml-own i{width: 10px;height: 10px;border-radius: 50%;display: inline-block;margin-right: 5px;vertical-align: -1px}
.ml-own small{color: var(--muted)}
.map-layers.open{z-index: 26;flex-direction: column;width: 300px;max-height: calc(100% - 20px);overflow-y: auto;padding: 10px 12px;border-radius: 12px;background: rgba(10, 14, 21, 0.96);border: 1px solid var(--line-2);box-shadow: 0 8px 24px rgba(0, 0, 0, 0.45)}
.map-layers.open .ml-head{display: flex;align-items: center;justify-content: space-between;width: 100%;margin-bottom: 6px}
.map-layers.open h5{margin: 10px 0 6px;font: 600 11px var(--font);color: var(--muted);text-transform: uppercase;letter-spacing: 0.04em}
.ml-seg{display: flex;flex-wrap: wrap;gap: 4px;margin-bottom: 8px}
.ml-seg button, .ml-groups button{padding: 4px 9px;border-radius: 8px;cursor: pointer;font: 500 12px var(--font);color: #c9d1de;background: #0c121c;border: 1px solid var(--line-2)}
.ml-seg button.on{color: #0b1018;background: var(--green);border-color: var(--green);font-weight: 600}
.ml-groups{display: flex;flex-wrap: wrap;gap: 4px}
.ml-groups button{opacity: 0.5}
.ml-groups button.on{opacity: 1;border-color: rgba(57, 255, 136, 0.45)}
.ml-row{display: flex;align-items: center;gap: 8px;margin: 2px 0 8px;font-size: 12px;color: var(--muted)}
.ml-row select{flex: 1;padding: 4px 6px;border-radius: 7px;background: #0a0e15;color: var(--text);border: 1px solid var(--line-2);font: 500 12px var(--font)}
.ml-note{margin: 6px 0 0;font-size: 11.5px;color: var(--muted);line-height: 1.4}
.map-layers.open .ml-scale i{width: 26px;height: 12px}
@media (max-width: 640px){.map-layers.open{width: auto;right: 10px;max-height: calc(100% - 20px)}
.ml-legend{font-size: 11px;padding: 5px 8px}
}
.map-layers.covered:not(.open){top: 48px}
.meter-stat.pet{cursor: pointer;min-width: 86px;max-width: 124px}
.meter-stat.pet:hover{border-color: var(--line-2);background: #141b27}
.meter-stat.pet .pbars{grid-column: 1 / -1;display: grid;gap: 2px;padding: 1px 0}
.meter-stat.pet .pb{display: block;height: 4px;border-radius: 3px;background: #1a2130;overflow: hidden}
.meter-stat.pet .pb u{display: block;height: 100%;border-radius: 3px;text-decoration: none;transition: width 0.5s ease}
@media (min-width: 901px){body:not(.phone) .hud .hud-l.haspet .meter-stat{min-width: 80px}
body:not(.phone) .hud .hud-l.haspet .meter-stat.pet{min-width: 86px}
}
@media (min-width: 901px) and (max-width: 1499px){body:not(.phone) .hud-l.haspet + .hud-logo{display: none}
}
.meter-stat.pet .pb.food u{background: linear-gradient(90deg, #d9822b, #ffc35a)}
.meter-stat.pet .pb.water u{background: linear-gradient(90deg, #2b7bd9, #5ac8ff)}
.meter-stat.pet .pb.hp u{background: linear-gradient(90deg, #ff4d61, #ff7a59)}
.meter-stat.pet.warn .lbl{color: var(--amber)}
.meter-stat.pet.crit .lbl{color: #ff8a96}
.meter-stat.mini.pet i u{background: linear-gradient(90deg, #22b39a, #59e0c2)}
.meter-stat.mini.pet.warn i u{background: linear-gradient(90deg, #d9822b, #ffb547)}
.meter-stat.mini.pet.crit i u{background: linear-gradient(90deg, #ff4d61, #ff7a59)}
.btc-head{display: flex;flex-wrap: wrap;align-items: baseline;justify-content: space-between;gap: 4px 14px;margin-bottom: 8px}
.btc-px{font: 500 16px var(--display);letter-spacing: 0.02em}
.btc-px b{color: #ffc04d;font-weight: 600}
.btc-ch{font-size: 12px;color: var(--muted)}
.btc-ch .up{color: var(--green)}
.btc-ch .down{color: var(--red)}
.btc-chart{position: relative;margin: 0 0 10px}
.btc-chart svg{display: block;width: 100%;height: auto;overflow: visible}
.btc-chart .g{stroke: #222a39;stroke-width: 1}
.btc-chart .ax{fill: var(--muted);font: 10px var(--font)}
.btc-chart .ln{fill: none;stroke: #ffb547;stroke-width: 2;stroke-linejoin: round;stroke-linecap: round}
.btc-chart .end{fill: #ffb547;stroke: #0f141d;stroke-width: 2}
.btc-chart .xh{stroke: #8691a5;stroke-width: 1;stroke-dasharray: 3 3}
.btc-chart .hd{fill: #ffb547;stroke: #0f141d;stroke-width: 2}
.btc-chart .hit{fill: transparent;cursor: crosshair}
.btc-chart .hidden{display: none}
.btc-tip{position: absolute;transform: translate(-50%, calc(-100% - 10px));padding: 4px 8px;border-radius: 8px;background: rgba(8, 11, 17, 0.95);border: 1px solid var(--line-2);pointer-events: none;white-space: nowrap;text-align: center}
.btc-tip b{display: block;font: 600 13px var(--display);color: var(--text)}
.btc-tip small{color: var(--muted);font-size: 11px}
.btc-tip.hidden{display: none}
.btc-bal{display: grid;grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));gap: 8px;margin: 0 0 10px}
.btc-bal > div{display: grid;gap: 2px;padding: 8px 10px;border-radius: 10px;background: #0c111a;border: 1px solid var(--line)}
.btc-bal > div.off{opacity: 0.6}
.btc-bal span{font-size: 11px;color: var(--muted);text-transform: uppercase;letter-spacing: 0.06em}
.btc-bal b{font: 600 15px var(--display);color: #ffd28a}
.btc-bal small{font-size: 11px;color: var(--muted)}
.mbody .warn, .dw .warn{color: var(--amber)}
label.chk{display: flex;align-items: center;gap: 8px;margin: 6px 0;cursor: pointer}
.modal.tor{width: min(980px, 100%);padding: 0;overflow: hidden;border-color: #5b3fa8;background: #1c1b22;box-shadow: 0 30px 80px rgba(0, 0, 0, 0.7), 0 0 40px rgba(117, 66, 229, 0.18)}
.modal.tor > .mclose, .modal.tor > .mtop{display: none}
.modal.tor .mbody{padding: 0;color: #e6e6ea}
.tor{position: relative;display: flex;flex-direction: column;height: min(80vh, 760px);font-family: system-ui, -apple-system, 'Segoe UI', sans-serif}
.tor-top{display: flex;align-items: flex-end;gap: 6px;padding: 6px 8px 0;background: #121117}
.tor-tab{display: flex;align-items: center;gap: 8px;max-width: 260px;min-width: 0;padding: 7px 12px;border-radius: 8px 8px 0 0;background: #2b2a33;font-size: 12.5px}
.tor-tab i{font-style: normal}
.tor-tab b{font-weight: 500;overflow: hidden;text-overflow: ellipsis;white-space: nowrap}
.tor-plus{padding: 4px 8px 6px;color: #8f8f9d}
.tor-sp{flex: 1}
.tor-x{align-self: center;margin-bottom: 4px;border: 0;background: transparent;color: #cfcfd8;font-size: 15px;cursor: pointer;padding: 4px 8px;border-radius: 6px}
.tor-x:hover{background: #c50042;color: #fff}
.tor-nav{display: flex;align-items: center;gap: 4px;padding: 6px 8px;background: #2b2a33;border-bottom: 1px solid #3a3944}
.tor-nav > button{width: 30px;height: 30px;border: 0;border-radius: 6px;background: transparent;color: #e6e6ea;font-size: 15px;cursor: pointer;flex: none}
.tor-nav > button:hover:not([disabled]){background: #3a3944}
.tor-nav > button[disabled]{opacity: 0.35;cursor: default}
.tor-url{flex: 1;min-width: 0;display: flex;align-items: center;gap: 6px;padding: 4px 10px 4px 4px;border-radius: 6px;background: #1c1b22;border: 1px solid #45434f;font: 12.5px ui-monospace, 'Cascadia Mono', Consolas, monospace;color: #a8a8b3}
.tor-url span{overflow: hidden;text-overflow: ellipsis;white-space: nowrap}
.tor-url b{color: #e6e6ea;font-weight: 400}
.tor-onion{border: 0;border-radius: 5px;background: #7542e5;color: #fff;font-size: 13px;padding: 2px 6px;cursor: pointer}
.tor-circ{position: absolute;top: 84px;left: 70px;z-index: 3;width: min(320px, calc(100% - 24px));padding: 12px 14px;border-radius: 10px;background: #2b2a33;border: 1px solid #5b3fa8;box-shadow: 0 16px 40px rgba(0, 0, 0, 0.6);font-size: 12.5px}
.tor-circ ol{margin: 8px 0;padding-left: 18px;display: grid;gap: 4px}
.tor-circ small{color: #a8a8b3}
.tor-circ em{font-style: normal;color: #b9a3ff;font-size: 11px}
.tor-page{flex: 1;overflow-y: auto;background: #1c1b22}
.tor-conn{height: 100%;display: grid;place-content: center;justify-items: center;gap: 12px;padding: 30px;text-align: center}
.tor-conn small{color: #a8a8b3;max-width: 360px}
.tor-logo{font-size: 46px;filter: drop-shadow(0 0 18px rgba(117, 66, 229, 0.6))}
.tor-logo.big{font-size: 64px}
.tor-prog{width: 260px;max-width: 80vw;height: 5px;border-radius: 3px;background: #3a3944;overflow: hidden}
.tor-prog i{display: block;height: 100%;width: 100%;background: linear-gradient(90deg, #7542e5, #b9a3ff);animation: torProg 1.3s ease-out forwards;transform-origin: left}
@keyframes torProg{from{transform: scaleX(0.05)}
to{transform: scaleX(1)}
}
.tor-home{display: grid;justify-items: center;gap: 10px;padding: 34px 20px;text-align: center}
.tor-home h2{margin: 0;font: 600 26px system-ui, sans-serif;color: #fbfbfe}
.tor-ok{margin: 0;color: #7ee2a8;font-size: 13px}
.tor-search{display: flex;align-items: center;gap: 8px;width: min(520px, 100%);padding: 9px 14px;border-radius: 22px;background: #2b2a33;border: 1px solid #45434f}
.tor-search input{flex: 1;min-width: 0;border: 0;background: transparent;color: #e6e6ea;font: 14px system-ui, sans-serif}
.tor-bm{display: grid;grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));gap: 10px;width: min(760px, 100%);margin-top: 10px}
.tor-bm button{display: grid;gap: 3px;justify-items: start;text-align: left;padding: 12px 14px;border-radius: 10px;background: #2b2a33;border: 1px solid #3a3944;color: #e6e6ea;cursor: pointer}
.tor-bm button:hover{border-color: #7542e5;background: #33313d}
.tor-bm i{font-style: normal;font-size: 22px}
.tor-bm b{font-size: 14px}
.tor-bm small{color: #a8a8b3;font-size: 12px}
.tor-bm em{font: 10.5px ui-monospace, Consolas, monospace;color: #8f7ad8;font-style: normal}
.tor-note{color: #8f8f9d;font-size: 12px;max-width: 520px}
.dw{min-height: 100%;background: #0b0b0d;color: #d8d8dc;font: 13px/1.45 'Segoe UI', system-ui, sans-serif}
.dw-head{display: flex;justify-content: space-between;align-items: center;gap: 12px;padding: 12px 16px;background: #121214;border-bottom: 1px solid #26262b}
.dw-logo{font: 700 22px var(--display);letter-spacing: 0.12em;color: #ffb547;cursor: pointer;user-select: none}
.dw-logo span{color: #e8e8ec;margin-left: 6px}
.dw-user{text-align: right;font-size: 12px;color: #9a9aa4}
.dw-user b{color: #ffc04d}
.dw-nav{display: flex;flex-wrap: wrap;gap: 4px;padding: 8px 12px;background: #101012;border-bottom: 1px solid #26262b}
.dw-nav button{padding: 5px 10px;border-radius: 6px;border: 1px solid #2a2a30;background: #18181c;color: #cfcfd6;font: 500 12.5px system-ui, sans-serif;cursor: pointer}
.dw-nav button.on{background: #ffb547;color: #121214;border-color: #ffb547}
.dw-nav button i{font-style: normal;display: inline-block;min-width: 16px;padding: 0 4px;border-radius: 8px;background: #c50042;color: #fff;font-size: 11px}
.dw .dw-sub{margin: 10px 16px 0;color: #8a8a94;font-size: 12px}
.dw-grid{display: grid;grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));gap: 10px;padding: 12px 16px 18px}
.dw-card{display: grid;gap: 3px;align-content: start;text-align: left;padding: 12px;border-radius: 10px;background: #151518;border: 1px solid #26262b;color: #d8d8dc;font: inherit;cursor: pointer}
button.dw-card:hover{border-color: #ffb547}
.dw-card.out, .dw-card.lock{opacity: 0.55}
.dw-card.svc{cursor: default}
.dw-card b{font-size: 14px;color: #f0f0f3}
.dw-card small{color: #8a8a94;font-size: 11.5px}
.dw-ic{font-size: 26px;line-height: 1.1}
.dw-ic.big{font-size: 46px}
.dw-vend{font-size: 12px;color: #b9b9c2}
.dw-vend em{font-style: normal;color: #ffc04d}
.dw-price{font: 600 15px var(--display);color: #7ee2a8}
.dw-price small{font: 400 11px system-ui, sans-serif;color: #8a8a94;margin-left: 4px}
.dw-stock{font-size: 11.5px;color: #9a9aa4}
.dw-item{display: grid;gap: 12px;padding: 16px}
.dw-item-main{display: flex;gap: 14px;align-items: flex-start}
.dw-item h3{margin: 0 0 6px;font: 600 19px system-ui, sans-serif;color: #f4f4f6}
.dw-item h3 small{font-size: 13px;color: #ffb547;font-weight: 500}
.dw-item p{margin: 0 0 4px}
.dw-vendor{padding: 10px 12px;border-radius: 8px;background: #151518;border: 1px solid #26262b}
.dw-vendor small{color: #8a8a94}
.dw-packs{display: flex;flex-wrap: wrap;gap: 8px}
.dw-packs button{display: grid;gap: 2px;padding: 8px 12px;border-radius: 8px;background: #151518;border: 1px solid #2f2f36;color: #e6e6ea;cursor: pointer;text-align: left}
.dw-packs button.on{border-color: #ffb547;box-shadow: 0 0 0 1px #ffb547 inset}
.dw-packs small{color: #8a8a94;font-size: 11.5px}
.dw-dest{display: flex;flex-wrap: wrap;align-items: center;gap: 8px;font-size: 13px;color: #b9b9c2}
.dw-dest select{flex: 1;min-width: 200px;padding: 6px 8px;border-radius: 7px;background: #0b0b0d;color: #e6e6ea;border: 1px solid #2f2f36;font: 13px system-ui, sans-serif}
.mbody .dw-dest{color: var(--muted);margin: 6px 0 10px}
.dw-sum{display: grid;grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));gap: 8px}
.dw-sum > div{display: grid;gap: 2px;padding: 8px 10px;border-radius: 8px;background: #121214;border: 1px solid #26262b}
.dw-sum span{font-size: 11px;color: #8a8a94;text-transform: uppercase;letter-spacing: 0.05em}
.dw-sum b.pos{color: #7ee2a8}
.dw-sum b.warn{color: #ffb547}
.dw-sum b.neg{color: #ff7a8a}
.dw-orders{display: grid;gap: 8px;padding: 12px 16px}
.dw-ord{display: flex;align-items: center;gap: 12px;padding: 10px 12px;border-radius: 8px;background: #151518;border: 1px solid #26262b}
.dw-ord > div{flex: 1;min-width: 0;display: grid;gap: 2px}
.dw-ord small{color: #8a8a94;font-size: 11.5px}
.dw-ord.ready{border-color: #3f8f5f}
.dw-ord.lost, .dw-ord.seized{border-color: #7a2a35}
.dw-st{font-size: 12.5px;color: #e6e6ea}
.dw-orders + p{margin: 0 16px 14px}
.dw-wallet{padding: 14px 16px}
.dw-wallet code{font-size: 11.5px;color: #b9a3ff;word-break: break-all}
.dw-reg{display: grid;justify-items: center;gap: 12px;padding: 34px 20px;text-align: center;background: #0b0b0d;min-height: 100%}
.dw-reg ul{text-align: left;color: #b9b9c2;display: grid;gap: 4px;padding-left: 18px;margin: 0}
.dw-captcha{display: grid;gap: 4px;padding: 12px 18px;border-radius: 8px;background: #151518;border: 1px dashed #3a3a42}
.dw-captcha b{font: 600 18px ui-monospace, Consolas, monospace;letter-spacing: 0.1em;color: #ffc04d}
.dw-captcha small{color: #8a8a94}
.sut, .mix, .kan{padding: 14px 16px;background: #141418;min-height: 100%;font: 13px/1.45 system-ui, sans-serif;color: #d8d8dc}
.sut-head{display: flex;flex-wrap: wrap;align-items: baseline;gap: 10px;margin-bottom: 10px}
.sut-head b{font: 700 20px system-ui, sans-serif;color: #ff6b4a}
.sut-head span{color: #8a8a94;font-size: 12px}
.sut-threads{display: grid;gap: 2px;margin-bottom: 12px}
.sut-threads div{display: grid;grid-template-columns: 24px 1fr;gap: 0 8px;padding: 7px 10px;background: #1b1b21;border-left: 2px solid #ff6b4a}
.sut-threads small{grid-column: 2;color: #8a8a94;font-size: 11.5px}
.sut h4, .mix h4{margin: 12px 0 8px;color: #b9b9c2}
.sut-offers{display: grid;grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));gap: 10px}
.sut-off{display: grid;gap: 4px;padding: 12px;border-radius: 8px;background: #1b1b21;border: 1px solid #2c2c34}
.sut-off span{color: #ffc04d;font-size: 12px}
.sut-off small{color: #9a9aa4}
.sut-mine{padding: 12px;border-radius: 8px;background: #1b1b21;border: 1px solid #3f2a6b}
.sut-mine h4{margin-top: 0}
.sut-jobs{display: grid;grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));gap: 8px;margin: 8px 0}
.sut-jobs .btn{display: grid;gap: 2px;text-align: left;white-space: normal;height: auto}
.sut-jobs .btn small{font-weight: 400;font-size: 11px;color: #9a9aa4}
.mix-logo, .kan-logo{font: 700 24px var(--display);letter-spacing: 0.14em;color: #9fd3ff;margin-bottom: 8px}
.kan-logo{color: #ffd23d}
.kan-row{display: flex;gap: 10px;padding: 8px 0;border-bottom: 1px solid #26262b}
.kan-row p{margin: 0}
.sut .kv, .mix .kv, .dw-wallet .kv{display: flex;justify-content: space-between;gap: 10px;padding: 4px 0}
.mn-prop{margin: 10px 0;padding: 10px 12px;border-radius: 10px;background: #0c111a;border: 1px solid var(--line)}
.mbody .mn-prop h4{margin: 0 0 8px;text-transform: none;letter-spacing: 0;color: var(--text);font: 600 14px var(--font)}
.mn-prop h4 small{font-weight: 400}
.mn-rig{display: flex;align-items: flex-start;gap: 10px;padding: 8px 0;border-top: 1px solid var(--line)}
.mn-rig.broken .mn-tx b{color: var(--amber)}
.mn-ic{font-size: 22px}
.mn-tx{flex: 1;min-width: 0;display: grid;gap: 3px}
.mn-tx small{color: var(--muted);font-size: 11.5px}
.mn-ups{display: flex;flex-wrap: wrap;gap: 4px}
.mn-act{display: flex;flex-direction: column;gap: 4px;align-items: flex-end}
@media (max-width: 640px){.tor{height: calc(100vh - 40px)}
.tor-nav > button:nth-child(2), .tor-plus{display: none}
.tor-circ{left: 12px}
.dw-head{flex-direction: column;align-items: flex-start}
.dw-user{text-align: left}
.mn-rig{flex-wrap: wrap}
.mn-act{flex-direction: row;width: 100%;justify-content: flex-end}
}
.adm-login{display: grid;gap: 10px;max-width: 320px}
.adm-login label{display: grid;gap: 4px;font-size: 12.5px;color: var(--muted)}
.adm-login input, .adm-num, .adm-sel{padding: 7px 9px;border-radius: 8px;background: #0a0e15;color: var(--text);border: 1px solid var(--line-2);font: 13px var(--font)}
.adm-num{width: 84px}
.adm-sel{flex: 1 1 200px;min-width: 0;max-width: 100%}
.adm-err{min-height: 18px;margin: 0;color: var(--red)}
.adm-warn{padding: 8px 12px;border-radius: 10px;background: rgba(255, 77, 97, 0.08);border: 1px solid rgba(255, 77, 97, 0.35);color: #ffc2c9;font-size: 12.5px;margin-bottom: 6px}
.adm-tog{display: grid;gap: 2px}
.adm-out{margin-top: 14px}
.mu-now{display: flex;flex-wrap: wrap;align-items: center;justify-content: space-between;gap: 10px;padding: 10px 12px;margin-bottom: 10px;border: 1px solid var(--line-2);border-radius: 10px;background: linear-gradient(135deg, #121a26, #0e141d)}
.mu-t{display: grid;gap: 2px;min-width: 0}
.mu-t b{font-size: 15px}
.mu-t small{color: var(--muted)}
.mu-styles{display: flex;flex-wrap: wrap;gap: 6px;margin: 6px 0}
.mu-styles .segb{border: 1px solid var(--line-2);border-radius: 8px}
.mu-list{margin: 8px 0 0;padding-left: 22px;max-height: 180px;overflow: auto}
.mu-list .linkbtn.on{color: var(--green);font-weight: 700}
.fx.fx-st{cursor: pointer;border: 1px solid var(--line-2);background: #141c28}
.st-list{display: grid;gap: 6px}
.st-row{display: grid;gap: 2px;padding: 6px 8px;border: 1px solid var(--line);border-radius: 8px;background: #101622}
.st-row > span{justify-self: start}
.st-row small{color: var(--muted)}
.st-tbl .kv b.neg{color: var(--orange, #ffb547)}
.st-tbl .kv b.pos{color: var(--green)}
.side-tabs{display: none}
@media (min-width: 901px) and (min-height: 600px){body.onescreen #app{display: flex;flex-direction: column;height: 100vh;min-height: 0}
body.onescreen .topbar{flex: none}
body.onescreen .layout{flex: 1 1 auto;min-height: 0;align-items: stretch;grid-template-rows: minmax(0, 1fr);padding-bottom: 12px}
body.onescreen .col{min-height: 0}
body.onescreen .col-left > .map-panel{flex: 1 1 auto;min-height: 0;display: flex;flex-direction: column}
body.onescreen .map-wrap{flex: 1 1 auto;height: auto;min-height: 220px}
body.onescreen .dest-card{flex: 0 1 auto;max-height: 40%;overflow-y: auto}
body.onescreen .col-right{gap: 8px}
body.onescreen .market-panel{flex: 1 1 60%;min-height: 230px;display: flex;flex-direction: column}
body.onescreen #market{flex: 1 1 auto;min-height: 0;display: flex;flex-direction: column}
body.onescreen #market .mlist{flex: 1 1 auto;min-height: 60px;max-height: none}
body.onescreen .side-tabs{display: flex;gap: 4px;flex: none;padding: 3px;background: #0a0d13;border: 1px solid var(--line);border-radius: 10px}
body.onescreen .cartel-panel, body.onescreen .log-panel{flex: 1 1 40%;min-height: 150px;display: flex;flex-direction: column}
body.onescreen .col-right[data-side="log"] .cartel-panel, body.onescreen .col-right[data-side="cartels"] .log-panel{display: none}
body.onescreen #cartels{flex: 1 1 auto;min-height: 0;overflow-y: auto}
body.onescreen .log-panel .log{flex: 1 1 auto;min-height: 0;max-height: none}
}
.stab2{flex: 1;border: 0;border-radius: 7px;padding: 5px 10px;background: transparent;color: var(--muted);font: 600 12.5px var(--font);cursor: pointer}
.stab2:hover{color: var(--text);background: #151b27}
.stab2.on{background: #1b2433;color: var(--text)}
.stab2 .sdot{display: inline-block;width: 7px;height: 7px;margin-left: 4px;border-radius: 50%;background: var(--green);vertical-align: middle}
.mlegend-d > summary{cursor: pointer;color: var(--muted);font-size: 12px;margin: 2px 0 4px;list-style: none}
.mlegend-d > summary::-webkit-details-marker{display: none}
.mlegend-d > summary:hover{color: var(--text)}
@media (min-width: 901px) and (min-height: 600px) and (max-height: 860px){body.onescreen .dest-card{max-height: 34%}
body.onescreen .dest-card > .lc-sky{height: 50px}
body.onescreen .market-panel{flex-basis: 64%}
body.onescreen .cartel-panel, body.onescreen .log-panel{flex-basis: 36%;min-height: 130px}
body.onescreen .market-panel .panel-head, body.onescreen .log-panel .panel-head{margin-bottom: 6px}
}
.rar{font-size: 11px;font-weight: 700;letter-spacing: 1px;margin-left: 4px}
.rar1{color: var(--blue)}
.rar2{color: var(--purple)}
.rar3{color: var(--amber);text-shadow: 0 0 6px rgba(255, 181, 71, 0.55)}
.set-tag{margin-left: 4px;font-size: 12px;cursor: help;opacity: 0.9}
.sets{display: grid;gap: 6px;margin: 6px 0 8px}
.set-row{display: grid;gap: 2px;padding: 6px 8px;border: 1px solid var(--line);border-radius: 8px;background: #101622}
.set-row.act{border-color: rgba(57, 255, 136, 0.45)}
.set-row b small{color: var(--muted);font-weight: 400;margin-left: 4px}
.set-row small{color: var(--muted)}
.set-items span{opacity: 0.35;margin-right: 2px}
.set-items span.set-on, .set-row .set-on{opacity: 1;color: var(--green)}
.gmode{margin-bottom: 10px}
.gmode h5{margin: 6px 0}
.gup{display: grid;grid-template-columns: 32px 1fr auto;gap: 8px;align-items: center;padding: 6px 8px;border: 1px solid var(--line);border-radius: 8px;background: #101622;margin-bottom: 6px}
.gup .gic{font-size: 22px;text-align: center}
.gup .gtx small{display: block;color: var(--muted)}
.gup .pips{color: var(--green);letter-spacing: 2px;font-size: 11px;margin-left: 6px}
.ms-row{margin-bottom: 10px}
.ms-row h5{margin: 6px 0}
.ms-row.locked{opacity: 0.6}
.ms-cards{display: grid;grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));gap: 8px}
.ms-card{display: grid;gap: 4px;align-content: start;padding: 8px 10px;border: 1px solid var(--line);border-radius: 10px;background: #101622}
.ms-card small{color: var(--muted)}
.ms-card.on{border-color: var(--green);box-shadow: 0 0 0 1px rgba(57, 255, 136, 0.25) inset}
.ms-card.off{opacity: 0.45}
.ms-card .btn{justify-self: start;margin-top: 4px}
.dw-seized{display: grid;justify-items: center;gap: 8px;text-align: center;padding: 28px 18px;min-height: 100%;background: radial-gradient(600px 300px at 50% 0, rgba(77, 163, 255, 0.18), transparent 70%), #0b0d14;color: #dfe6f3}
.dw-seized-badge{font-size: 48px;width: 86px;height: 86px;display: grid;place-items: center;border-radius: 50%;border: 3px solid #4da3ff;box-shadow: 0 0 24px rgba(77, 163, 255, 0.45)}
.dw-seized h2{margin: 4px 0;font: 700 22px var(--display);letter-spacing: 0.08em;color: #ff4d61}
.dw-seized p{max-width: 520px;margin: 0}
.sut-job{display: grid;grid-template-columns: 1fr auto;gap: 4px}
.sut-job .cb{height: auto;padding: 4px 8px;font-size: 16px}
.dw-shop0, .dw-shop{padding: 12px;display: grid;gap: 8px}
.dw-shop h4{margin: 6px 0 0;font-size: 13px}
.dw-shop h4 small{font-weight: 400}
.dws-head{display: grid;gap: 2px;padding: 10px 12px;border-radius: 8px;background: #151518;border: 1px solid #26262b}
.dws-head small{color: #8a8a94}
.dw-shop .st, .dws-rev .st{color: #ffb547;letter-spacing: 1px}
.dws-row{display: grid;grid-template-columns: 30px 1fr auto auto;gap: 8px;align-items: center;padding: 6px 10px;border-radius: 8px;background: #121214;border: 1px solid #26262b}
.dws-row small{display: block;color: #8a8a94}
.dws-p{display: flex;gap: 2px}
.dws-p button{padding: 3px 7px;border-radius: 6px;border: 1px solid #2a2a30;background: #18181c;color: #cfcfd6;font: 500 11.5px system-ui, sans-serif;cursor: pointer}
.dws-p button.on{background: #ffb547;color: #121214;border-color: #ffb547}
.dws-inv{display: flex;flex-wrap: wrap;gap: 4px;align-items: center;padding: 4px 0;border-bottom: 1px dashed #26262b}
.dws-inv > span{flex: 1 1 160px}
.dws-inv small{color: #8a8a94}
.dws-rev{padding: 6px 10px;border-radius: 8px;background: #121214;border: 1px solid #26262b}
.dws-rev b{margin: 0 6px}
.dws-rev small{color: #8a8a94}
.dws-rev p{margin: 2px 0 0}
.cb-box{display: grid;gap: 6px;margin-top: 8px}
.cb-row{display: flex;gap: 6px;align-items: center}
.cb-row span{width: 34px;height: 34px;display: grid;place-items: center;border-radius: 8px;background: #101622;border: 1px solid var(--line);font-size: 20px}
.cb-row span.empty{border-style: dashed}
.cb-row em{font-style: normal;margin-left: 8px;letter-spacing: 2px;color: var(--green);min-width: 90px}
.cb-row.cur span{border-color: var(--amber)}
.cb-pal{display: flex;flex-wrap: wrap;gap: 6px;align-items: center}
.cb-pal button:not(.btn){width: 40px;height: 40px;border-radius: 10px;border: 1px solid var(--line-2);background: #131925;font-size: 20px;cursor: pointer}
.cb-pal button:not(.btn):hover{border-color: var(--green)}
.lc-sky[data-act]{cursor: zoom-in}
.sky-blink{animation: skyBlink 1.6s steps(1) infinite}
@keyframes skyBlink{0%, 55%{opacity: 1}
56%, 100%{opacity: 0.15}
}
.sky-beam{animation: skyBeam 4s ease-in-out infinite}
@keyframes skyBeam{0%, 100%{opacity: 0.06}
50%{opacity: 0.32}
}
@media (prefers-reduced-motion: reduce){.sky-blink, .sky-beam{animation: none}
}
.rm .sky-blink, .rm .sky-beam{animation: none}
@media (max-width: 520px){.dws-row{grid-template-columns: 30px 1fr auto}
.dws-row .dws-p{grid-column: 2 / 4;grid-row: 2}
.dws-row > .btn{grid-column: 3;grid-row: 1}
}
.wn-list{display: grid;gap: 6px}
.wn-row{display: grid;grid-template-columns: 30px 1fr auto;gap: 8px;align-items: center;padding: 6px 10px;border: 1px solid var(--line);border-radius: 8px;background: #101622}
.wn-row p{margin: 0}
.wn-ic{font-size: 20px;text-align: center}
@media (max-width: 520px){.wn-row{grid-template-columns: 26px 1fr}
.wn-row .btn{grid-column: 2;justify-self: start}
}
.camp-card{display: flex;align-items: center;gap: 12px;margin: 2px 0 10px;padding: 10px 12px;border-radius: 12px;background: linear-gradient(135deg, rgba(183, 123, 255, 0.2), rgba(77, 163, 255, 0.12));border: 1px solid rgba(183, 123, 255, 0.4)}
.camp-card > span{font-size: 34px;line-height: 1}
.camp-card small{display: block;font-size: 11px;letter-spacing: 0.06em;text-transform: uppercase;color: var(--muted)}
.camp-card b{font: 600 20px var(--display);letter-spacing: 0.02em}
.camp-recap{margin: 6px 0 10px;padding-left: 10px;border-left: 2px solid rgba(183, 123, 255, 0.5);font-size: 13px;line-height: 1.45}
.camp-recap small{display: block;color: var(--muted);margin-bottom: 2px}
.camp-next{display: flex;flex-direction: column;gap: 3px;margin: 6px 0 4px;padding: 9px 11px;border-radius: 10px;background: rgba(183, 123, 255, 0.1);border: 1px solid rgba(183, 123, 255, 0.35);font-size: 13px}
.camp-next b{font-size: 14px}
.camp-eps{display: grid;gap: 3px;margin: 4px 0 10px}
.camp-ep{display: flex;gap: 8px;align-items: baseline;font-size: 13px;line-height: 1.4}
.camp-ep > span{width: 18px;flex: none;text-align: center}
.camp-ep.now b{color: var(--purple)}
.camp-cast{display: grid;grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));gap: 8px}
.camp-who{display: flex;gap: 9px;align-items: center;padding: 6px 8px;border: 1px solid var(--line);border-radius: 10px;background: var(--panel-2)}
.camp-who .face.ric{width: 42px;height: 42px;flex: none}
.camp-who > div{flex: 1;min-width: 0;display: flex;flex-direction: column;gap: 2px}
.camp-who small{font-size: 11px}
.camp-rel{position: relative;height: 5px;margin-top: 3px;background: #1a2130;border-radius: 4px;overflow: hidden}
.camp-rel::after{content: '';position: absolute;left: 50%;top: 0;bottom: 0;width: 1px;background: var(--line-2)}
.camp-rel i{position: absolute;top: 0;bottom: 0}
.camp-rel i.pos{left: 50%;background: var(--green-2)}
.camp-rel i.neg{right: 50%;background: var(--red)}
.turf-chip{display: inline-block;min-width: 30px;padding: 0 5px;border-radius: 5px;font: 700 10px var(--font);letter-spacing: 0.04em;line-height: 16px;text-align: center;color: #0b0e14;background: var(--tc, #888);vertical-align: 1px}
.kp-tag{display: inline-block;margin-left: 4px;padding: 0 4px;border-radius: 5px;font-size: 10.5px;font-weight: 700;white-space: nowrap}
.kp-tag.up{color: var(--amber);background: rgba(255, 181, 71, 0.12)}
.kp-tag.down{color: var(--blue);background: rgba(77, 163, 255, 0.12)}
.mnote.crisis{border-color: rgba(255, 77, 97, 0.45);background: rgba(255, 77, 97, 0.08)}
.camp-card.crisis{background: linear-gradient(135deg, rgba(255, 77, 97, 0.2), rgba(255, 181, 71, 0.12));border-color: rgba(255, 77, 97, 0.45)}
.chips .chip.on{border-color: var(--red);color: var(--text)}
.tbar.crisis-bar{display: block;height: 5px;margin: 8px 0 4px;border-radius: 3px;background: #1a2130;overflow: hidden}
.tbar.crisis-bar u{display: block;height: 100%;text-decoration: none;background: linear-gradient(90deg, var(--amber), var(--red))}
.press-top{display: flex;gap: 10px;align-items: center;margin-bottom: 8px}
.press-top .face.ric{width: 46px;height: 46px;flex: none}
.press-top > div{flex: 1;display: flex;flex-direction: column;gap: 2px}
.press-rival{margin-right: 6px;padding: 4px 6px;border-radius: 7px;border: 1px solid var(--line-2);background: #0d1119;color: var(--text);font: 500 12px var(--font);max-width: 150px}
.ord-form{display: grid;grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));gap: 8px 12px;margin: 6px 0 8px}
.ord-form label{display: flex;flex-direction: column;gap: 3px;font-size: 12px;color: var(--muted)}
.ord-form select, .ord-form input{padding: 6px 8px;border-radius: 8px;border: 1px solid var(--line-2);background: #0d1119;color: var(--text);font: 500 13px var(--font)}
.ord-row.off{opacity: 0.55}
.pcard{display: inline-flex;align-items: center;justify-content: center;min-width: 34px;height: 48px;margin: 2px;padding: 0 4px;border-radius: 6px;background: #f4f1e8;color: #14171d;font: 700 15px var(--font);box-shadow: 0 2px 6px rgba(0, 0, 0, 0.35)}
.pcard.red{color: #c0262d}
.pcard.back{background: linear-gradient(135deg, #3b1530, #1f2f3f);color: #b77bff;font-size: 26px}
.hand{display: flex;flex-wrap: wrap;align-items: center;min-height: 52px}
.bj-table{display: grid;gap: 10px;padding: 12px;border-radius: 12px;background: radial-gradient(ellipse at center, #14432c, #0b2418);border: 1px solid #1f6b45}
.bj-table small{color: #bfe8cf}
.chips-row{display: flex;flex-wrap: wrap;gap: 6px;margin: 4px 0 8px}
.chips-row input{width: 70px;padding: 4px 6px;border-radius: 7px;border: 1px solid var(--line-2);background: #0d1119;color: var(--text)}
.rl-res{display: inline-block;padding: 6px 12px;border-radius: 10px;font-size: 15px}
.rl-res.red{background: rgba(192, 38, 45, 0.25)}
.rl-res.black{background: rgba(255, 255, 255, 0.08)}
.rl-res.green{background: rgba(31, 191, 99, 0.25)}
.pk-table{padding: 10px;border-radius: 12px;background: radial-gradient(ellipse at center, #14432c, #0b2418);border: 1px solid #1f6b45}
.pk-board{display: flex;flex-wrap: wrap;align-items: center;gap: 2px;justify-content: center;min-height: 54px;margin-bottom: 8px}
.pk-board small{margin-left: 10px;color: #bfe8cf}
.pk-seats{display: grid;grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));gap: 6px}
.pk-seat{display: flex;align-items: center;gap: 6px;padding: 5px 7px;border-radius: 9px;background: rgba(0, 0, 0, 0.25);border: 1px solid transparent}
.pk-seat > div:nth-child(2){display: flex;flex-direction: column;min-width: 0;flex: 1}
.pk-seat small{color: #bfe8cf;font-size: 11px}
.pk-seat.turn{border-color: var(--amber)}
.pk-seat.out{opacity: 0.45}
.pk-seat .pcard{min-width: 28px;height: 40px;font-size: 13px}
.pk-log{margin: 6px 0;padding: 6px 8px;border-radius: 8px;background: #0a0e15;font-size: 12px;line-height: 1.5;max-height: 120px;overflow-y: auto}
.loyal.wide + p.muted{margin-top: 6px}
.caseboard{position: relative;height: min(66vh, 520px);min-height: 380px;margin: 4px 0 8px;border-radius: 12px;background: #8a6a42 radial-gradient(circle at 30% 20%, rgba(255, 255, 255, 0.08) 0 2px, transparent 3px) 0 0 / 14px 14px;border: 6px solid #5a3f22;box-shadow: inset 0 0 40px rgba(0, 0, 0, 0.45);overflow: hidden}
.cb-strings{position: absolute;inset: 0;width: 100%;height: 100%}
.cb-strings line{stroke: #c0262d;stroke-width: 0.35}
.cb-strings line.dim{stroke: rgba(192, 38, 45, 0.35);stroke-dasharray: 1 1}
.cb-card, .cb-me{position: absolute;transform: translate(-50%, -50%);display: flex;flex-direction: column;align-items: center;gap: 2px;width: 104px;padding: 6px 6px 5px;background: #f4f1e8;color: #14171d;border-radius: 3px;box-shadow: 0 3px 8px rgba(0, 0, 0, 0.45);text-align: center;font-size: 11px;line-height: 1.2}
.cb-card b, .cb-me b{font-size: 11px;max-height: 2.4em;overflow: hidden}
.cb-card small, .cb-me small{color: #5b5f6b;font-size: 10px}
.cb-card.ev{background: #fffbe0}
.cb-card.unk{background: #d9d4c4;color: #6b6f75}
.cb-me{width: 128px;background: #ffffff;z-index: 2}
.cb-ic{font-size: 22px;line-height: 1.2}
.pin{position: absolute;top: -5px;left: 50%;width: 10px;height: 10px;margin-left: -5px;border-radius: 50%;background: radial-gradient(circle at 35% 35%, #ff8a96, #c0262d);box-shadow: 0 1px 2px rgba(0, 0, 0, 0.5)}
.cb-note{position: absolute;right: 8px;bottom: 8px;display: flex;align-items: center;gap: 6px;padding: 5px 8px;background: #f4f1e8;color: #14171d;border-radius: 3px;font-size: 11px;box-shadow: 0 3px 8px rgba(0, 0, 0, 0.45)}
.cb-note span{display: flex;flex-direction: column}
.cb-note small{color: #5b5f6b}
.cb-unit{font-size: 20px}
@media (max-width: 600px){.cb-card{width: 78px;font-size: 10px;padding: 4px}
.cb-card b{font-size: 10px}
.cb-me{width: 96px}
.caseboard{height: 560px}
}
.relgraph{position: relative;width: 100%;max-width: 640px;aspect-ratio: 1;margin: 0 auto}
.rg-edges{position: absolute;inset: 0;width: 100%;height: 100%}
.rg-ring{fill: none;stroke: var(--line);stroke-width: 0.25;stroke-dasharray: 1 1.4}
.rg-edges line.rel-good{stroke: var(--green-2)}
.rg-edges line.rel-mid{stroke: #6b7280}
.rg-edges line.rel-bad{stroke: var(--red)}
.rg-edges line.betray{stroke-dasharray: 1.5 1}
.rg-node, .rg-me{position: absolute;transform: translate(-50%, -50%);display: flex;flex-direction: column;align-items: center;gap: 1px;padding: 0;border: 0;background: none;color: var(--text);cursor: pointer;font: 500 10px var(--font)}
.rg-node small{max-width: 70px;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;padding: 0 3px;border-radius: 4px;background: rgba(8, 12, 18, 0.75)}
.rg-node .face{border: 2px solid #6b7280;border-radius: 50%}
.rg-node.rel-good .face{border-color: var(--green-2)}
.rg-node.rel-bad .face{border-color: var(--red)}
.rg-ic{display: inline-flex;align-items: center;justify-content: center;width: 28px;height: 28px;border-radius: 50%;background: var(--panel-2);border: 2px solid #6b7280;font-size: 15px}
.rg-me{cursor: default;z-index: 2}
.rg-me b{font-size: 12px;padding: 0 4px;border-radius: 4px;background: rgba(8, 12, 18, 0.75)}
.rg-legend{display: flex;flex-wrap: wrap;gap: 12px;justify-content: center;font-size: 12px;color: var(--muted)}
.rg-legend i{display: inline-block;width: 18px;height: 3px;margin-right: 5px;vertical-align: middle;background: #6b7280}
.rg-legend i.rel-good{background: var(--green-2)}
.rg-legend i.rel-bad{background: var(--red)}
.rg-legend i.betray{background: repeating-linear-gradient(90deg, var(--red) 0 4px, transparent 4px 7px)}
.lc-top{position: relative;display: flex;align-items: center;flex-wrap: wrap;gap: 6px 10px;min-height: 52px;padding: 6px 8px;border-radius: 10px;overflow: hidden;border: 1px solid var(--line-2);background: #070b14}
.lc-top.nosky{min-height: 0;padding: 0;border: 0;border-radius: 0;background: none;overflow: visible}
.lc-top > .lc-sky{position: absolute;inset: 0;z-index: 0;height: auto;margin: 0;border: 0;border-radius: 0}
.lc-title, .lc-top > .lc-actions{position: relative;z-index: 1}
.lc-title{display: flex;flex-direction: column;min-width: 0;max-width: 100%;padding: 2px 9px 3px;border-radius: 7px;background: rgba(6, 9, 15, 0.8);line-height: 1.25}
.lc-top.nosky .lc-title{padding: 0;background: none}
.lc-title > b{font: 500 15px var(--display);letter-spacing: 0.02em;cursor: help;white-space: nowrap;overflow: hidden;text-overflow: ellipsis}
.lc-title > span{font-size: 11px;color: #c4ccda;white-space: nowrap;overflow: hidden;text-overflow: ellipsis}
.lc-top > .lc-actions{margin: 0 0 0 auto;padding: 0;border: 0}
.lc-top > .lc-actions .btn{box-shadow: 0 1px 4px rgba(0, 0, 0, 0.5)}
.lc-top > .lc-actions .btn.danger{background: #2b1620}
.lc-top > .lc-actions .btn.danger:hover:not([disabled]){background: #45202b}
.lc-top > .lc-actions .btn[disabled]{opacity: 1;filter: saturate(0.35) brightness(0.62)}
.lc-fold{min-width: 30px;font-size: 13px}
.lc-sub{display: flex;flex-wrap: wrap;align-items: center;gap: 3px 16px;margin: 5px 2px 0}
.dest-card .lc-sub .lc-demo{margin: 0}
.lc-sub .meta{margin-left: auto;gap: 2px 10px;letter-spacing: 0}
.lc-flow{display: flex;flex-wrap: wrap;align-items: center;gap: 4px 3px;margin-top: 6px}
.lc-lead{display: inline-flex;align-items: center;gap: 3px;max-width: 100%;min-width: 0;margin-left: 12px;white-space: nowrap}
.lc-flow > .lc-lead:nth-child(2){margin-left: 0}
.lc-br{display: none}
.lc-lead > .lc-lab{margin-right: 2px}
.lc-flow .pill-mini{margin-left: 2px}
.dest-card.folded .lc-sub, .dest-card.folded .lc-flow{display: none}
@media (min-width: 901px) and (min-height: 600px){body.onescreen .dest-card.here > .lc-top{position: sticky;top: 0;z-index: 2}
}
@media (min-width: 901px) and (min-height: 600px) and (max-height: 860px){body.onescreen .dest-card.here > .lc-top{min-height: 40px;padding: 4px 6px}
body.onescreen .lc-title{flex-direction: row;align-items: baseline;gap: 8px;padding: 2px 9px}
body.onescreen .lc-sub{margin-top: 4px}
body.onescreen .lc-flow{margin-top: 5px;gap: 3px}
}
body.phone .lc-top{min-height: 64px}
body.phone .lc-top > .lc-actions{margin-left: 0}
body.phone .lc-br{display: block;flex-basis: 100%;height: 0}
body.phone .lc-flow > .lc-br:first-child{display: none}
body.phone .lc-lead{margin-left: 0}
.dy-kid{display: flex;gap: 12px;align-items: flex-start;padding: 10px;margin: 4px 0 8px;border: 1px solid var(--line-2);border-radius: 10px;background: rgba(255, 255, 255, 0.025)}
.dy-kid > div{min-width: 0}
.dy-kid p{margin: 4px 0}
.dy-traits{display: flex;flex-wrap: wrap;gap: 4px 12px;margin: 4px 0;font-size: 12px;color: var(--muted)}
.dy-traits .pos{color: var(--green);font-weight: 600}
.id-papers{display: grid;grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));gap: 6px}
.id-paper{display: flex;flex-direction: column;gap: 3px;padding: 8px 10px;text-align: left;border-radius: 9px;border: 1px solid var(--line-2);background: rgba(255, 255, 255, 0.03);color: var(--text);cursor: pointer;font: inherit}
.id-paper small{color: var(--muted);font-size: 11.5px}
.id-paper em{font-style: normal;font-size: 11.5px;color: #cfe0ff}
.id-paper em.neg{color: var(--red)}
.id-paper.on{border-color: var(--green);background: rgba(57, 255, 136, 0.08)}
.id-name{max-width: 260px}
.stk-list{display: flex;flex-direction: column;gap: 3px;margin: 8px 0}
.stk-row{display: grid;grid-template-columns: minmax(0, 1fr) 96px 64px 64px;align-items: center;gap: 10px;padding: 5px 8px;border-radius: 8px;border: 1px solid var(--line);background: rgba(255, 255, 255, 0.02);color: var(--text);font: inherit;text-align: left;cursor: pointer}
.stk-row:hover{background: rgba(255, 255, 255, 0.05)}
.stk-row.on{border-color: var(--green);background: rgba(57, 255, 136, 0.07)}
.stk-n{display: flex;flex-direction: column;min-width: 0;font-weight: 600;font-size: 13px}
.stk-n small, .stk-p small{font-weight: 400;font-size: 11px;color: var(--muted)}
.stk-p{display: flex;flex-direction: column;align-items: flex-end;font-weight: 600;font-size: 13px}
.stk-p small.pos, .stk-head small.pos{color: var(--green)}
.stk-p small.neg, .stk-head small.neg{color: var(--red)}
.stk-o{font-size: 11.5px;color: #cfe0ff;text-align: right}
.stk-spark{width: 64px;height: 20px}
.stk-spark polyline, .stk-chart polyline{fill: none;stroke-width: 1.5;vector-effect: non-scaling-stroke}
.stk-spark.up polyline, .stk-chart.up polyline{stroke: var(--green)}
.stk-spark.dn polyline, .stk-chart.dn polyline{stroke: var(--red)}
.stk-detail{padding: 10px;border: 1px solid var(--line-2);border-radius: 10px;background: rgba(255, 255, 255, 0.02)}
.stk-head{display: flex;flex-wrap: wrap;align-items: baseline;justify-content: space-between;gap: 4px 12px;font-size: 14px}
.stk-chart{display: block;width: 100%;height: 80px;margin: 6px 0;border-radius: 6px;background: rgba(0, 0, 0, 0.18)}
.stk-qty{width: 90px}
@media (max-width: 600px){.stk-row{grid-template-columns: minmax(0, 1fr) 84px 52px}
.stk-row .stk-o{display: none}
.stk-spark{width: 52px}
}
.ck-hud{display: flex;justify-content: space-between;gap: 10px;margin: 4px 0 8px;font-size: 13px}
.ck-hud b{font-variant-numeric: tabular-nums}
.ck-gauge{position: relative;height: 46px;border-radius: 10px;overflow: hidden;border: 1px solid var(--line-2);background: linear-gradient(90deg, #1b3b6f, #23406b 30%, #5a4a2a 65%, #7a2a1a)}
.ck-zone{position: absolute;top: 0;bottom: 0;background: rgba(57, 255, 136, 0.22);border-left: 2px solid rgba(57, 255, 136, 0.7);border-right: 2px solid rgba(57, 255, 136, 0.7);transition: background 0.15s}
.ck-gauge.in .ck-zone{background: rgba(57, 255, 136, 0.42)}
.ck-red{position: absolute;top: 0;bottom: 0;right: 0;background: repeating-linear-gradient(45deg, rgba(255, 77, 97, 0.35) 0 6px, rgba(255, 77, 97, 0.15) 6px 12px)}
.ck-needle{position: absolute;top: -2px;bottom: -2px;width: 4px;margin-left: -2px;border-radius: 2px;background: #fff;box-shadow: 0 0 8px rgba(255, 255, 255, 0.8)}
.ck-gauge.hot .ck-needle{background: #ff4d61;box-shadow: 0 0 10px rgba(255, 77, 97, 0.9)}
.ck-cold, .ck-hot{position: absolute;top: 50%;transform: translateY(-50%);font-size: 16px;opacity: 0.7;pointer-events: none}
.ck-cold{left: 6px}
.ck-hot{right: 6px}
.ck-gauge.shake{animation: ckShake 0.12s linear infinite}
.ck-gauge.boom{animation: none;background: #ff4d61}
@keyframes ckShake{0%{transform: translateX(0)}
25%{transform: translateX(-2px)}
75%{transform: translateX(2px)}
100%{transform: translateX(0)}
}
.ck-press{display: flex;align-items: center;gap: 8px;margin: 8px 0;font-size: 12.5px}
.ck-press .wd-bar{flex: 1}
.ck-ctl{display: grid;grid-template-columns: 1fr 1fr;gap: 8px;margin: 6px 0}
.ck-ctl .btn{padding: 14px;font-size: 16px;touch-action: none;user-select: none;-webkit-user-select: none}
.fl-svg{display: block;width: 100%;height: auto;margin: 6px 0 10px}
.fl-box{stroke-width: 1}
.fl-box.in{fill: rgba(255, 181, 71, 0.18);stroke: rgba(255, 181, 71, 0.7)}
.fl-box.ch{fill: rgba(183, 123, 255, 0.16);stroke: rgba(183, 123, 255, 0.6)}
.fl-box.warn{fill: rgba(255, 77, 97, 0.16);stroke: rgba(255, 77, 97, 0.7);stroke-dasharray: 4 3}
.fl-box.clean{fill: rgba(57, 255, 136, 0.16);stroke: rgba(57, 255, 136, 0.7)}
.fl-box.fee{fill: rgba(140, 150, 170, 0.16);stroke: rgba(140, 150, 170, 0.6)}
.fl-t{fill: var(--text);font: 600 11px var(--font);text-anchor: middle}
.fl-v{fill: var(--muted);font: 500 10.5px var(--font);text-anchor: middle}
.fl-link{fill: none;stroke-opacity: 0.22}
.fl-link.in{stroke: #ffb547}
.fl-link.warn{stroke: #ff4d61}
.fl-link.clean{stroke: #39ff88}
.fl-link.fee{stroke: #8c96aa}
.fl-dots{fill: none;stroke-width: 2.4;stroke-linecap: round}
.fl-dots.in{stroke: #ffd79a}
.fl-dots.warn{stroke: #ff8a96}
.fl-dots.clean{stroke: #9dffc6}
.fl-dots.fee{stroke: #c4ccda}
.fx-bars{display: flex;flex-direction: column;gap: 4px;margin: 4px 0 8px}
.fx-row{display: grid;grid-template-columns: minmax(0, 1.3fr) minmax(90px, 1fr) 56px;align-items: center;gap: 10px;font-size: 12.5px}
.fx-n{min-width: 0;overflow: hidden;text-overflow: ellipsis;white-space: nowrap}
.fx-track{position: relative;height: 10px;border-radius: 5px;background: rgba(255, 255, 255, 0.05)}
.fx-track::before{content: '';position: absolute;left: 50%;top: -2px;bottom: -2px;width: 1px;background: var(--line-2)}
.fx-track i{position: absolute;top: 0;bottom: 0;border-radius: 5px}
.fx-track i.up{background: linear-gradient(90deg, rgba(255, 181, 71, 0.5), #ffb547)}
.fx-track i.dn{background: linear-gradient(270deg, rgba(57, 255, 136, 0.5), #39ff88)}
.fx-row b{text-align: right;font-variant-numeric: tabular-nums}
@media (max-width: 600px){.fx-row{grid-template-columns: minmax(0, 1fr) 80px 48px;gap: 6px;font-size: 12px}
}
.cr-wrap{margin: 8px 0;border: 1px solid var(--line);border-radius: 10px;background: rgba(255, 255, 255, 0.02)}
.cr-wrap > summary{cursor: pointer;padding: 7px 10px;font-weight: 600;font-size: 13px;list-style: none}
.cr-wrap > summary::-webkit-details-marker{display: none}
.cr-wrap > summary::after{content: ' ▾';color: var(--muted)}
.cr-wrap[open] > summary::after{content: ' ▴'}
.cr-svg{display: block;width: 100%;height: auto;padding: 0 6px 6px}
.cr-line{fill: none;stroke: #39ff88;stroke-width: 2;vector-effect: non-scaling-stroke}
.cr-area{fill: rgba(57, 255, 136, 0.1);stroke: none}
.cr-zero{stroke: var(--line-2);stroke-dasharray: 3 3}
.cr-ev circle{fill: #ffb547;stroke: #07090d;stroke-width: 1.5}
.cr-ev text{font-size: 13px;text-anchor: middle}
.cr-ax{fill: var(--muted);font: 500 10px var(--font)}
.cr-ax.end{text-anchor: end}
.cr-paper{margin: 0 8px 8px;padding: 12px 14px;border-radius: 6px;background: #f1ead8;color: #1d1a14;font-family: Georgia, 'Times New Roman', serif}
.cr-paper p, .cr-paper li{color: #2a251c;font-size: 13.5px;line-height: 1.5}
.cr-paper h4{color: #5a4a2a;margin: 10px 0 4px}
.cr-paper .pkg li{background: rgba(0, 0, 0, 0.05);border-color: rgba(0, 0, 0, 0.12)}
.cr-mast{display: flex;justify-content: space-between;align-items: baseline;padding-bottom: 6px;border-bottom: 3px double #1d1a14;font: 700 20px Georgia, serif;letter-spacing: 0.08em}
.cr-mast small{font: italic 400 12px Georgia, serif;letter-spacing: 0;color: #5a4a2a}
.cr-head{margin: 10px 0 6px;font: 700 24px/1.2 Georgia, serif;color: #1d1a14}
.cr-box{display: flex;flex-wrap: wrap;gap: 6px 14px;margin-top: 10px;padding-top: 8px;border-top: 1px solid rgba(0, 0, 0, 0.2);font-size: 12.5px}
.ex-goal{margin: 0 0 10px;font-size: 13.5px}
.ex-meters{display: grid;gap: 8px;margin-bottom: 10px}
.ex-m{padding: 8px 10px;border: 1px solid var(--line);border-radius: 10px;background: var(--panel-2)}
.ex-m .ex-h{display: flex;justify-content: space-between;gap: 8px;margin-bottom: 4px}
.ex-m .ex-h b{font-family: var(--display);font-weight: 500}
.ex-m .meter{margin-bottom: 4px}
.ex-m small{display: block;font-size: 11.5px}
.ex-m.clean .meter i{background: linear-gradient(90deg, #1fbf63, #39ff88)}
.ex-m.press .meter i{background: linear-gradient(90deg, #4da3ff, #ff4d61)}
.ex-m.press.warn{border-color: rgba(255, 181, 71, 0.5)}
.ex-m.press.crit{border-color: rgba(255, 77, 97, 0.7);box-shadow: 0 0 14px rgba(255, 77, 97, 0.2)}
.ex-m.rep .meter i{background: linear-gradient(90deg, #d9b52b, #ffd75a)}
.ex-ends{display: grid;gap: 6px;margin-bottom: 8px}
.ex-end{display: grid;grid-template-columns: auto minmax(0, 1fr);gap: 10px;align-items: start;padding: 7px 10px;border: 1px solid var(--line);border-radius: 10px}
.ex-end .ex-ic{font-size: 20px;line-height: 1.2}
.ex-end small{display: block;font-size: 11.5px}
.ex-end.now{border-color: rgba(57, 255, 136, 0.55);background: rgba(57, 255, 136, 0.05)}
.ex-end.done{border-color: rgba(183, 123, 255, 0.6);background: rgba(183, 123, 255, 0.07)}
.mnote.bad{border-color: rgba(255, 77, 97, 0.45);color: #ffb3bd}
.goals .ex-strip .ex-mini{display: block;position: relative;height: 4px;margin-top: 4px;border-radius: 3px;background: #1a2130;overflow: hidden}
.goals .ex-strip .ex-mini u, .goals .ex-strip .ex-mini s{position: absolute;left: 0;height: 2px;border-radius: 2px}
.goals .ex-strip .ex-mini u{top: 0;background: var(--green)}
.goals .ex-strip .ex-mini s{bottom: 0;background: var(--red)}
.goals .ex-strip.ready{border-color: rgba(57, 255, 136, 0.6)}
.lg-pts{font-size: 15px;margin: 0 0 6px}
.lg-perks{display: grid;gap: 6px;margin: 10px 0}
.lg-perk{display: grid;grid-template-columns: auto minmax(0, 1fr) auto;gap: 10px;align-items: center;padding: 8px 10px;border: 1px solid var(--line);border-radius: 10px;background: var(--panel-2)}
.lg-perk.own{border-color: rgba(183, 123, 255, 0.5)}
.lg-perk .lg-ic{font-size: 22px}
.lg-perk small{display: block;font-size: 11.5px}
.lg-runs{margin: 4px 0 0;padding-left: 18px;font-size: 12.5px}
