:root{--bg:#0d1117;--panel:#11141ce6;--border:#4a3e2a;--gold:#e6bd62;--text:#ece6d6;--muted:#a39b88;--good:#82c985;--thin:#e0a645;--bad:#e8735f;--chat:#8fb8ff}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--text);margin:0;font:13px/1.45 Inter,system-ui,sans-serif;overflow:hidden}#view{touch-action:none;width:100vw;height:100vh;display:block;position:fixed;inset:0}#view.draw{cursor:crosshair}.frame{background:var(--panel);border:1px solid var(--border);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:8px;box-shadow:0 0 0 1px #00000080,0 8px 28px #00000073}button{font:inherit;color:var(--text);cursor:pointer;background:#252a35;border:1px solid #3d4351;border-radius:6px;padding:6px 10px}button:hover:not(:disabled){border-color:var(--gold)}button.active{border-color:var(--gold);color:#fff4d8;background:#4a3c1f}button:disabled{opacity:.45;cursor:not-allowed}button.danger:hover{border-color:var(--bad);color:#ffd2c9}kbd{color:var(--muted);border:1px solid #4a4f5c;border-radius:3px;padding:2px 4px;font:11px/1 ui-monospace,monospace}a{color:var(--gold)}.muted{color:var(--muted)}.small{font-size:11.5px}#topbar{align-items:center;gap:26px;height:54px;padding:0 16px;display:flex;position:fixed;top:10px;left:10px;right:10px}.brand{color:var(--gold);letter-spacing:.08em;font-family:Cinzel,serif;font-size:24px;font-weight:700}.stat{flex-direction:column;min-width:72px;display:flex}.stat .label{text-transform:uppercase;letter-spacing:.09em;color:var(--muted);font-size:10px}.stat .value{font-variant-numeric:tabular-nums;font-size:15px;font-weight:600}.stat .value.bad,.stat .sub.bad{color:var(--bad)}.stat .sub.good{color:var(--good)}.stat .sub{color:var(--muted);font-variant-numeric:tabular-nums;font-size:10.5px}.daybar{background:#30343e;border-radius:2px;height:3px;margin-top:3px;overflow:hidden}.daybar>div{background:var(--gold);width:0;height:100%}.speed{gap:4px;margin-left:auto;display:flex}.speed button{letter-spacing:-.1em;min-width:40px;font-size:11px}#tools{flex-direction:column;gap:6px;padding:8px;display:flex;position:fixed;top:74px;left:10px}#tools button{text-align:left;justify-content:space-between;align-items:center;gap:14px;min-width:150px;display:flex}#tools button.quiet{opacity:.7;margin-top:6px;font-size:12px}#panel{width:310px;max-height:calc(100vh - 84px);padding:14px 16px;position:fixed;top:74px;right:10px;overflow-y:auto}#panel-open{padding:8px 12px;position:fixed;top:74px;right:10px}.panel-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.panel-head button{padding:3px 8px;font-size:12px}#panel h2{color:var(--gold);margin:0 0 10px;font-family:Cinzel,serif;font-size:18px}#panel h3,.window h3{text-transform:uppercase;letter-spacing:.09em;color:var(--muted);margin:16px 0 6px;font-size:10.5px}#panel p{margin:6px 0}.title-input{width:100%;color:var(--gold);background:0 0;border:1px solid #0000;border-radius:4px;margin:0 0 8px -5px;padding:2px 4px;font:700 18px Cinzel,serif}.name-row{align-items:center;gap:6px;margin-bottom:8px;display:flex}.name-row.small,.name-row .title-input{margin-bottom:0}.name-dice{flex:none;padding:2px 6px;font-size:15px;line-height:1.2}.title-input:hover,.title-input:focus{border-color:var(--border);outline:none}.kv>div{border-bottom:1px solid #ffffff0d;justify-content:space-between;padding:2px 0;display:flex}.kv b{font-variant-numeric:tabular-nums;font-weight:600}.slider{grid-template-columns:58px 1fr 36px;align-items:center;gap:8px;display:grid}.slider input{width:100%;accent-color:var(--gold)}.slider b{text-align:right;font-variant-numeric:tabular-nums}.mons{flex-direction:column;gap:3px;display:flex}.mon{cursor:pointer;grid-template-columns:18px 12px 1fr auto;align-items:center;gap:6px;display:grid}.mon-traits{grid-column:3/-1;margin-top:-3px}.zone-set{border:1px solid var(--border);background:#e6bd620d;border-radius:6px;margin:12px 0 4px;padding:8px 10px}.zone-set p{margin:4px 0}.zone-set.done b,.set-note b{color:var(--gold)}.zone-set ul{margin:2px 0 0;padding:0;font-size:12px;list-style:none}.zone-set li{opacity:.6}.zone-set li.ok{opacity:1}.zone-set .tick{width:14px;color:var(--good);display:inline-block}.mon.locked{opacity:.5;cursor:default}.mon input{accent-color:var(--gold);margin:0}.swatch{border:1px solid #0009;border-radius:50%;width:12px;height:12px;display:inline-block}.aggro{color:var(--bad);text-transform:uppercase;letter-spacing:.06em;vertical-align:1px;border:1px solid;border-radius:3px;margin-left:2px;padding:0 3px;font-size:9.5px;font-weight:600}.pause-icon{vertical-align:-1px;border-left:3px solid;border-right:3px solid;width:9px;height:10px;display:inline-block}.warn{color:var(--thin)}.event-days .seg{flex-wrap:wrap;row-gap:4px}.event-booked{border-left:2px solid var(--gold);margin:6px 0;padding:6px 8px}.guild-row{border-left:2px solid var(--good);margin:6px 0;padding:6px 8px}.guild-tag{color:var(--good)}.row-buttons{margin-top:14px}.tips{margin:0;padding-left:18px}.tips li{margin-bottom:5px}.types{flex-direction:column;gap:5px;display:flex}.type-row{font-variant-numeric:tabular-nums;grid-template-columns:12px 84px 1fr 24px 24px;align-items:center;gap:8px;font-size:12.5px;display:grid}.type-row b,.type-row>span:last-child{text-align:right}.type-bar{background:#ffffff12;border-radius:3px;height:6px;overflow:hidden}.type-bar span{height:100%;display:block}.toggle-row{align-items:center;gap:8px;margin-top:10px;display:flex}.seg{display:flex}.seg button{border-radius:0;padding:3px 10px;font-size:12px}.seg button:first-child{border-radius:5px 0 0 5px}.seg button:last-child{border-radius:0 5px 5px 0}.seg button+button{margin-left:-1px}.lfg-row{border-bottom:1px solid #ffffff0f;padding:6px 0}.lfg-head{justify-content:space-between;align-items:baseline;gap:8px;font-size:12.5px;display:flex}.roles{gap:6px;margin-top:4px;display:flex}.role{color:#c9c3b6;font-variant-numeric:tabular-nums;background:#ffffff0f;border-radius:9px;padding:1px 7px;font-size:11.5px}.role.full{color:#b6f0bd;background:#6ec87833}.fams{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.fam{align-items:center;gap:6px;padding:3px 9px;font-size:12px;display:flex}.rare-toggle{margin-top:8px}.rare-toggle .mon-name{grid-column:2/-1}.back{opacity:.8;margin-bottom:8px;padding:2px 8px;font-size:12px}.build-list{flex-direction:column;gap:6px;margin-top:10px;display:flex}.build-item{text-align:left;align-items:flex-start;gap:10px;padding:8px 10px;display:flex}.build-item.unaffordable{opacity:.5}.build-icon{font-size:20px;line-height:1.2}.build-text{flex-direction:column;flex:1;gap:2px;display:flex}.build-head{justify-content:space-between;display:flex}.build-cost{color:var(--gold);font-weight:600}.build-count{color:var(--muted);font-weight:400}.hist{gap:2px;height:96px;display:flex}.hist .col{flex-direction:column;flex:1;justify-content:flex-end;min-width:0;display:flex}.hist .bar{background:var(--chat);border-radius:2px 2px 0 0;transition:height .3s}.hist .cov{background:#333;border-radius:1px;height:6px;margin-top:2px}.cov.gap,.chip.gap{background:var(--bad)}.cov.thin,.chip.thin{background:var(--thin)}.cov.ok,.chip.ok{background:var(--good)}.hist .lv{color:var(--muted);text-align:center;margin-top:1px;font-size:9px}.legend{color:var(--muted);font-size:11.5px}.chip{color:#1a1a1a;border-radius:3px;padding:0 5px;font-size:10.5px;font-weight:600;display:inline-block}.research{border-bottom:1px solid #ffffff12;padding:10px 0}.research-grid{grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:10px;margin:10px 0 4px;display:grid}.research-grid .research{border:1px solid var(--border);background:#ffffff08;border-radius:8px;flex-direction:column;padding:12px 14px;display:flex}.research-grid .research>:last-child{margin-top:auto}.research-status{align-items:center;gap:14px;margin:10px 0;display:flex}.research-status .progress{flex:1;max-width:320px}.research-done{flex-wrap:wrap;gap:6px;display:flex}.done-chip{color:var(--good);border:1px solid #82c98566;border-radius:999px;padding:3px 9px;font-size:12px}.tab-count{background:var(--gold);color:#1b1408;border-radius:999px;min-width:18px;padding:1px 5px;font-size:11px;font-weight:700}.research.is-done{opacity:.65}.research-head{align-items:center;gap:8px;display:flex}.research p{margin:4px 0}.research button{width:100%;margin-top:4px}.done{color:var(--good);font-weight:600}.progress{background:#30343e;border-radius:4px;height:8px;margin-top:6px;overflow:hidden}.progress>div{background:var(--gold);width:0;height:100%}#feed{pointer-events:none;width:460px;max-width:calc(100vw - 350px);padding:8px 12px;font-size:12px;position:fixed;bottom:10px;left:10px}.feed-line{padding:1px 0}.feed-line.system{color:var(--gold)}.feed-line.good{color:var(--good)}.feed-line.bad{color:var(--bad)}.feed-line.chat .who{color:var(--chat)}#tooltip,.tooltip{pointer-events:none;z-index:10;max-width:260px;padding:6px 9px;font-size:12px;position:fixed}#toast{opacity:0;pointer-events:none;color:#ffd9cf;border-color:var(--bad);padding:8px 14px;transition:opacity .2s;position:fixed;top:74px;left:50%;transform:translate(-50%)}#toast.show{opacity:1}#rail{gap:6px;display:flex;position:fixed;bottom:10px;left:480px}.notice{border:2px solid var(--border);background:var(--panel);border-radius:8px;width:46px;height:46px;padding:0;animation:.45s cubic-bezier(.2,1.4,.4,1) notice-in,1s ease-in-out .45s 4 notice-pulse;position:relative;box-shadow:0 2px 10px #00000080}#rail .notice.good{border-color:var(--good)}#rail .notice.bad{border-color:var(--bad)}#rail .notice.news{border-color:var(--gold)}.notice-icon{font-size:22px;line-height:1}.notice-tip{text-align:left;pointer-events:none;flex-direction:column;gap:4px;width:260px;padding:8px 10px;font-size:12.5px;display:none;position:absolute;bottom:calc(100% + 8px);left:0}.notice:hover .notice-tip{display:flex}@keyframes notice-in{0%{opacity:0;transform:translateY(70px)}}@keyframes notice-pulse{50%{transform:translateY(-3px);box-shadow:0 0 0 3px #ffd27859,0 2px 10px #00000080}}.cards{flex-direction:column;gap:5px;display:flex}.card-row{background:#ffffff0a;border:1px solid #0000;border-radius:6px;grid-template-columns:14px 22px 1fr auto;align-items:center;gap:6px;padding:5px 6px;display:grid}.card-row.hot{border-color:#e8735f73}.card-num{color:var(--muted);text-align:center;font-size:11px}.card-icon{text-align:center;font-size:16px}.card-text{flex-direction:column;gap:2px;min-width:0;font-size:12.5px;display:flex}.card-text .seg{flex-wrap:wrap;margin-top:3px}.card-text .seg button{padding:2px 7px;font-size:11px}.card-buttons{gap:2px;display:flex}.card-buttons button{min-width:22px;padding:2px 6px;font-size:11px}.add-cards{flex-wrap:wrap;gap:5px;margin-top:8px;display:flex}.add-cards button{padding:3px 8px;font-size:11.5px}.add-cards button.locked{opacity:.45}.run{padding:4px 0 8px}.run-bar{gap:3px;margin-top:4px;display:flex}.run-cell{background:#30343e;border-radius:3px;flex:1;height:7px;overflow:hidden}.run-cell>div{background:#b79cff;height:100%}.loot{border-top:1px solid #ffffff0f;flex-direction:column;grid-column:2/-1;gap:3px;margin-top:2px;padding-top:5px;font-size:12.5px;display:flex}.loot-head{justify-content:space-between;align-items:center;gap:6px;display:flex}.loot-edit,.loot-add,.loot-remove{padding:2px 8px;font-size:11px}.loot-add{align-self:flex-start}.loot-editor{flex-direction:column;gap:6px;margin-top:4px;display:flex}.loot-editor .seg{flex-wrap:wrap}.loot-editor .seg button{padding:2px 8px;font-size:11px}.loot-editor p{margin:0}.loot-remove{align-self:flex-start}.name-input{width:100%;font:inherit;color:var(--text);background:#ffffff0d;border:1px solid #ffffff1f;border-radius:5px;padding:3px 7px;font-weight:600}.item-name{font-weight:600}button.stat-button{text-align:left;background:0 0;border:1px solid #0000;align-items:flex-start;margin:-3px 0;padding:2px 8px}button.stat-button.active{background:#e6bd621a}button.link{color:var(--gold);font-size:inherit;background:0 0;border:none;padding:0;text-decoration:underline}button.buy{border-color:var(--gold);width:100%;margin:10px 0 6px;display:block}.server-rack{flex-wrap:wrap;gap:4px;margin:10px 0 4px;display:flex}.instance{background:#1b1f28;border:1px solid #3d4351;border-radius:4px;width:18px;height:18px}.instance.busy{background:#b9a1ff;border-color:#d9c8ff;box-shadow:0 0 6px #b9a1ff80}.instance.waiting{border:1px dashed var(--bad);background:0 0}.stars{white-space:nowrap}.stars-on{color:var(--gold)}.stars-off{color:#3d4351}.reviews{flex-direction:column;gap:6px;margin-bottom:6px;display:flex}.review{background:#ffffff08;border:1px solid #ffffff0f;border-radius:6px;padding:6px 8px}.review-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.review-text{margin-top:2px;font-size:13px}.region-rumour{color:var(--gold);font-style:italic}.patch-card .reactions{flex-wrap:wrap;gap:2px 12px;display:flex}.reactions .up{color:var(--good)}.reactions .down{color:var(--bad)}.patch-skip{opacity:.75;width:100%;margin-top:10px}#tools button .badge{background:var(--gold);color:#1a1408;text-align:center;border-radius:9px;min-width:18px;padding:0 5px;font-size:11px;font-weight:700}#tools button.waiting{border-color:var(--gold);animation:1.6s ease-in-out infinite waiting}@keyframes waiting{50%{box-shadow:0 0 10px #e6bd628c}}.good-text{color:var(--good)}.bad-text{color:var(--bad)}.recipe .research-head{justify-content:space-between}.market{border-collapse:collapse;width:100%;margin:6px 0}.market th{color:var(--muted);text-align:left;font-weight:500}.market th,.market td{border-bottom:1px solid #ffffff12;padding:2px 6px 2px 0}.market td:nth-child(n+2),.market th:nth-child(n+2){text-align:right;white-space:nowrap}.market-seller{justify-content:space-between;margin:2px 0;display:flex}.window{z-index:5;flex-direction:column;max-width:1080px;margin:0 auto;padding:12px 16px;display:flex;position:fixed;inset:74px 10px 10px 190px}.window-head{align-items:center;gap:18px;display:flex}.window-head h2{color:var(--gold);margin:0;font-family:Cinzel,serif;font-size:18px}.window-tabs{flex:1;gap:6px;display:flex}.window-tabs button{align-items:center;gap:10px;display:flex}.window-close{padding:4px 10px}.realm-summary{margin:10px 0 8px}.window-scroll{flex:1;min-height:0;overflow-y:auto}.made{margin:0 0 8px;padding:0;list-style:none}.made li{padding:2px 0}.gripes{margin:0 0 18px;padding:0;list-style:none}.gripe{border-bottom:1px solid #ffffff12;gap:14px;padding:10px 0;display:flex}.gripe-count{min-width:44px;color:var(--gold);text-align:right;font-variant-numeric:tabular-nums;font-size:22px;font-weight:600}.gripe-body{flex-direction:column;gap:3px;min-width:0;display:flex}.gripe-head{flex-wrap:wrap;align-items:baseline;gap:4px 12px;display:flex}.gripe-quote{color:var(--muted);font-style:italic}.gripe-who{flex-wrap:wrap;gap:2px 12px;display:flex}.gripe-help:before{content:"Helps: ";color:var(--gold)}.quits td{padding:3px 14px 3px 0}.quits .num{text-align:right;font-variant-numeric:tabular-nums}.funnel{grid-template-columns:150px 1fr 90px 90px;align-items:center;column-gap:14px;margin-bottom:14px;display:grid}.funnel-head,.funnel-stage,.funnel-gap{display:contents}.funnel-head span{padding-bottom:6px}.funnel-head span:nth-child(2){grid-column:2/4}.funnel-head span:last-child{text-align:right}.funnel-stage>*{padding:4px 0}.funnel-last>span:first-child{color:var(--gold);font-weight:600}.funnel-bar{background:#ffffff0f;border-radius:3px;height:14px;padding:0;display:flex;overflow:hidden}.funnel-bar .got{background:var(--gold)}.funnel-bar .pending{background:var(--gold);opacity:.3}.funnel-last .funnel-bar .got{background:var(--good)}.funnel-gap>*{padding:1px 0 3px}.funnel-gap>span:nth-child(2){border-left:1px solid var(--border);grid-column:2/4;padding-left:10px}.funnel .num{text-align:right;font-variant-numeric:tabular-nums}.roster{border-collapse:collapse;width:100%;font-size:12.5px}.roster th{color:var(--muted);text-align:left;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;background:#161a23;font-weight:500;position:sticky;top:0}.roster th:hover,.roster th.sorted{color:var(--gold)}.roster th,.roster td{border-bottom:1px solid #ffffff12;padding:4px 10px 4px 0}.roster td{white-space:nowrap}.roster th:nth-child(n+4),.roster td:nth-child(n+4){text-align:right}.roster tbody tr{cursor:pointer}.roster tbody tr:hover{background:#e6bd6214}.charts{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:14px 22px;padding:2px 2px 8px;display:grid}.chart-head{justify-content:space-between;align-items:baseline;display:flex}.chart-value{font-variant-numeric:tabular-nums;font-weight:600}.chart-body{grid-template-rows:110px auto;grid-template-columns:auto 1fr;column-gap:8px;margin-top:8px;display:grid}.chart-axis{text-align:right;min-width:44px;position:relative}.chart-axis span{font-variant-numeric:tabular-nums;position:absolute;top:0;right:0;transform:translateY(-50%)}.chart-plot{cursor:crosshair;position:relative}.chart-plot svg{width:100%;height:100%;display:block;overflow:visible}.chart-plot line,.chart-plot path{vector-effect:non-scaling-stroke}.chart-grid{stroke:#ffffff12;stroke-width:1px}.chart-zero{stroke:#ffffff38;stroke-width:1px}.chart-line{fill:none;stroke:var(--gold);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.chart-cross{stroke:var(--muted);stroke-width:1px;stroke-dasharray:3 3}.chart-dot{background:var(--gold);pointer-events:none;border-radius:50%;width:9px;height:9px;margin:-4.5px 0 0 -4.5px;position:absolute;box-shadow:0 0 0 2px #161a23}.chart-days{grid-column:2;justify-content:space-between;margin-top:4px;display:flex}.online-chart{margin:4px 0 12px}.online-chart .chart-body{grid-template-rows:90px auto}.online-bar{fill:#7d9bc9}.queue-bar{fill:var(--bad)}.online-chart .hovered .online-bar{fill:#a9c2e8}.capacity-line{stroke:var(--gold);stroke-width:1.5px;stroke-dasharray:4 3}.capacity-tick{color:var(--gold)}.chart-hours{grid-column:2;height:1.4em;margin-top:4px;position:relative}.chart-hours span{white-space:nowrap;position:absolute;transform:translate(-50%)}.chart-legend{flex-wrap:wrap;gap:2px 14px;margin-top:4px;display:flex}.chart-legend span{white-space:nowrap}.chart-legend i{border-radius:2px;width:9px;height:9px;margin-right:4px;display:inline-block}.online-key{background:#7d9bc9}.queue-key{background:var(--bad)}.chart-legend .capacity-key{border-top:2px dashed var(--gold);vertical-align:middle;border-radius:0;height:0}.rival-hype{align-items:center;gap:8px;margin:8px 0;display:flex}.rival-hype .progress{flex:1;margin:0}.rival-hype .progress>div{background:var(--bad)}.slogan{color:var(--gold);margin:8px 0 2px;font-style:italic}.aim-picker{grid-template-columns:repeat(3,1fr);gap:4px;display:grid}.aim-picker button{padding:4px 6px;font-size:12px}.quest{border-bottom:1px solid #ffffff12;flex-direction:column;gap:2px;padding:8px 0;display:flex}.quest-name{color:#ffd75e}.menu-cover{z-index:50;background:#080a0e8c;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.title-cover{background:radial-gradient(#080a0e59 0%,#080a0ed9 75%),#080a0e4d}.title-card{text-align:center;max-width:460px}.title-brand{letter-spacing:.08em;color:var(--gold);text-shadow:0 2px #5a4520,0 8px 30px #000c;margin:0;font-family:Cinzel,serif;font-size:96px;font-weight:700;line-height:1}.title-tagline{color:#fff4d8;text-shadow:0 2px 12px #000000e6;margin:10px 0 14px;font-family:Cinzel,serif;font-size:18px}.title-blurb{color:var(--text);text-shadow:0 1px 8px #000000e6;max-width:380px;margin:0 auto 22px;font-size:14px}.menu-buttons{flex-direction:column;gap:8px;width:240px;margin:0 auto;display:flex}.menu-buttons button{justify-content:center;align-items:center;gap:10px;padding:10px 14px;font-size:14px;display:flex}.title-cover .menu-buttons button:not(.active){background:#252a35d9}.credits{background:var(--panel);border:1px solid var(--border);border-radius:8px;width:240px;margin:18px auto 0;padding:10px 14px}.credits p{margin:4px 0}.title-foot{text-shadow:0 1px 8px #000000e6;margin-top:22px;font-size:12px}.pause-menu{width:300px;padding:18px 22px 16px}.pause-menu h2{color:var(--gold);text-align:center;margin:0 0 14px;font-family:Cinzel,serif;font-size:22px}.menu-keys{border-collapse:collapse;margin:16px auto 0}.menu-keys td{padding:2px 6px}.menu-keys td:first-child{text-align:right}@media (width<=520px){.title-brand{font-size:64px}}
