.tool-page{--line:#ffffff47;--panel:var(--card);--panel-2:#07162c;--panel-3:#102441;--err-bg:#2c070d;--warn-bg:#261800;--ok-bg:#001c0c}@supports (color:lab(0% 0 0)){.tool-page{--line:lab(100.18% -7.57471 -7.33585/.28);--panel-2:lab(6.89542% .782371 -17.3804);--panel-3:lab(13.7523% .605971 -21.0203);--err-bg:lab(6.6219% 19.0552 4.94835);--warn-bg:lab(9.50387% 5.65907 15.209);--ok-bg:lab(7.84433% -13.5283 6.66311)}}.tool-page section{padding:clamp(36px,5vw,60px) 0}.tool-page section+section{border-top:1px solid var(--border)}.tool-page .wrap{width:min(1180px,100% - 48px);margin-inline:auto}.tool-page .wrap.narrow>*{max-width:820px}.tool-page h2{letter-spacing:-.045em;margin:0 0 .6em;font-size:clamp(2rem,3.4vw,3rem);line-height:1}.tool-page p{margin:0 0 1em}.tool-page p:last-child{margin-bottom:0}.tool-page .lede{font-size:clamp(18px,2vw,21px);line-height:1.55}.tool-page strong,.tool-page b{font-weight:700}.tool-page a{color:var(--primary);text-underline-offset:3px;text-decoration:underline}.tool-page .btn,.tool-page a.btn{text-decoration:none}.tool-page em{font-style:italic}.tool-page .muted{color:var(--muted-foreground)}.tool-page [hidden]{display:none!important}.tool-page canvas{display:inline-block}.tool-page .label{color:var(--accent-blue);letter-spacing:.12em;text-transform:uppercase;margin-bottom:18px;font-size:11px;font-weight:700}.tool-page h4,.mapb h3.subhead{color:var(--accent-blue);letter-spacing:.12em;text-transform:uppercase;margin:26px 0 10px;font-size:12px;font-weight:700}.tool-page .help{color:var(--muted-foreground);font-size:16px;line-height:1.65}.tool-page .hint{color:var(--muted-foreground);font-size:14px;line-height:1.55}.tool-page ul.hint,.tool-page ul.help{padding-left:1.2em;list-style:square}.tool-page ul.hint li,.tool-page ul.help li{margin-bottom:.5em}.mapb .hint{margin:8px 0 0}.mapb .credits{margin-top:22px}.tool-page code{color:var(--primary);overflow-wrap:anywhere;font-size:.85em}.tool-page .online-steps{color:var(--muted-foreground);margin:24px 0;padding-left:1.3em;font-size:16px;line-height:1.6;list-style:decimal}.tool-page .online-steps li{margin-bottom:.7em}.tool-page .online-steps li::marker{color:var(--accent-blue);font-weight:700}.tool-page .online-steps strong{color:var(--foreground)}.tool-page .btn-row{flex-wrap:wrap;align-items:center;gap:10px;margin-top:14px;display:flex}.tool-page .btn{border:1px solid var(--primary);color:var(--primary);font:inherit;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:12px;font-weight:700;transition:background .15s,color .15s;display:inline-flex}.tool-page .btn:hover{background:#00c9da24;background:lab(73.6763% -52.3209 -28.0061/.14)}.tool-page .btn--primary{background:var(--primary);color:var(--primary-foreground)}.tool-page .btn--primary:hover{background:#00ddef;background:lab(80.4087% -44.2 -23.5549)}.tool-page .btn--small{border-color:var(--line);color:var(--foreground);padding:6px 12px;font-size:11px}.tool-page .btn--small:hover{border-color:var(--primary);background:var(--panel-3)}.tool-page .btn--danger:hover{border-color:var(--accent-pink);color:var(--accent-pink)}.tool-page .btn:disabled{opacity:.4;cursor:not-allowed}.tool-page .btn:focus-visible,.tool-page .tool:focus-visible,.tool-page .tab:focus-visible,.tool-page .pl:focus-visible,.tool-page .example:focus-visible,.tool-page .seg button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.tool-page .status{min-height:1.2em;color:var(--accent-amber);letter-spacing:.04em;margin-top:12px;font-size:13px;font-weight:700}.tool-page input[type=text],.tool-page input[type=number],.tool-page select,.tool-page textarea{border:1px solid var(--line);background:var(--well);min-width:0;color:var(--foreground);font:inherit;border-radius:0;margin:4px 0;padding:7px 10px;font-size:15px}.tool-page input:focus,.tool-page select:focus,.tool-page textarea:focus{border-color:var(--primary);outline:none}.tool-page input:invalid{border-color:var(--accent-pink);background:var(--err-bg)}.tool-page input[type=text],.tool-page textarea{width:100%}.tool-page select{max-width:100%}.tool-page option{background:var(--well)}.builder input[type=number]{width:9em}.mapb input[type=number]{width:5.5em}.builder textarea{min-height:160px;font-family:var(--mono);font-size:13px;line-height:1.5}.builder #checkText{min-height:130px}.tool-page input[type=checkbox],.tool-page input[type=radio]{width:17px;height:17px;accent-color:var(--primary);flex:none}.tool-page .field{gap:4px;margin-bottom:14px;display:grid}.tool-page .field>span{color:var(--muted-foreground);font-size:14px}.tool-page .field em{opacity:.75;font-style:normal}.tool-page .check{cursor:pointer;align-items:flex-start;gap:9px;margin:8px 0;display:flex}.tool-page .check input{margin-top:4px}.tool-page .choice{gap:2px;margin:10px 0;display:grid}.builder .tool{border:1px solid var(--line);background:var(--panel-2);color:var(--foreground);font:inherit;cursor:pointer;margin:2px;padding:3px 9px;font-size:13px}.builder .tool:hover{border-color:var(--primary)}.builder .tool:disabled{opacity:.35;cursor:not-allowed}.builder .tool--x:hover{border-color:var(--accent-pink);background:var(--err-bg);color:var(--accent-pink)}.numgrid{border:1px solid var(--line);background:var(--panel);gap:1px;display:grid}.numgrid>div{box-shadow:0 0 0 1px var(--line);background:var(--panel);grid-template-columns:1fr auto;align-items:center;gap:4px 14px;padding:10px 12px;display:grid}.numgrid b{font-size:15px}.numgrid .hint{grid-column:1/2}.numgrid input{grid-area:1/2/span 2}@media (min-width:760px){.numgrid--two{grid-template-columns:1fr 1fr}}.tag{letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;vertical-align:2px;border:1px solid;margin-left:6px;padding:0 5px;font-size:10px;font-weight:700}.tag--new{color:var(--accent-amber)}.tag--untested{color:var(--accent-pink)}.rules{gap:14px;margin:22px 0;display:grid}.rule{border:1px solid var(--line);border-left:3px solid var(--primary);background:var(--panel-2)}.rule.is-dead{opacity:.6}.rule>summary{cursor:pointer;align-items:flex-start;gap:12px;padding:12px 14px;list-style:none;display:flex}.rule>summary::-webkit-details-marker{display:none}.rule__num{background:var(--primary);min-width:28px;color:var(--primary-foreground);text-align:center;flex:none;padding:1px 4px;font-size:13px;font-weight:700}.rule__sum{overflow-wrap:anywhere;flex:1;min-width:0;font-size:15px;line-height:1.5}.rule__sum em{color:var(--primary);font-style:normal;font-weight:700}.rule[open]>summary{border-bottom:1px solid var(--border)}.rule__body{padding:4px 14px 14px}.rule__tools{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.tool-page .row{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:6px;padding:6px 0;display:flex}.tool-page .row:last-of-type{border-bottom:0}.tool-page .row .grow{flex:200px}.tool-page .row .unit{color:var(--muted-foreground);font-size:13px}.tool-page .empty{color:var(--muted-foreground);margin:6px 0;font-size:14px;font-style:italic}.outcomes{flex-wrap:wrap;gap:6px 18px;display:flex}.outcomes .check{margin:4px 0}.mix{border-collapse:collapse;width:100%;margin-top:12px;font-size:14px}.mix th,.mix td{border-bottom:1px solid var(--border);text-align:left;padding:6px 8px}.mix th{color:var(--muted-foreground);letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:700}.mix td.n{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.mix .up{color:var(--accent-green)}.mix .down{color:var(--accent-pink)}.bar{border:1px solid var(--line);background:var(--well);min-width:60px;height:10px}.bar>i{background:var(--primary);height:100%;display:block}.tool-page .issues{gap:8px;margin:0 0 16px;padding:0;list-style:none;display:grid}.tool-page .issues li{border:1px solid var(--border);border-left:3px solid var(--primary);background:var(--panel);padding:9px 12px;font-size:14px;line-height:1.5}.tool-page .issues li.err{border-left-color:var(--accent-pink);background:var(--err-bg)}.tool-page .issues li.warn{border-left-color:var(--accent-amber);background:var(--warn-bg)}.tool-page .issues li.ok{border-left-color:var(--accent-green);background:var(--ok-bg)}.tool-page .issues li b{letter-spacing:.1em;text-transform:uppercase;margin-right:6px;font-size:11px}.tool-page .issues li.err b{color:var(--accent-pink)}.tool-page .issues li.warn b{color:var(--accent-amber)}.tool-page .issues li.ok b{color:var(--accent-green)}.tool-page .issues li.info b{color:var(--primary)}.compat{background:var(--panel);letter-spacing:.1em;text-transform:uppercase;border:1px solid;margin-bottom:12px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-block}.compat--all{color:var(--accent-green)}.compat--recent{color:var(--accent-amber)}.compat--bad{color:var(--accent-pink)}.tool-page .json{border:1px solid var(--line);background:var(--well);max-height:460px;font-family:var(--mono);margin:0 0 18px;padding:14px;font-size:12.5px;line-height:1.55;overflow:auto}.builder .json{white-space:pre-wrap;overflow-wrap:anywhere}.builder #promptText{max-height:420px}.mapb .json{white-space:pre;margin:0}.ref details,details.ref{border:1px solid var(--line);background:var(--panel);margin-bottom:12px}details.ref{margin-top:18px}.ref summary,details.ref>summary{color:var(--foreground);cursor:pointer;padding:12px 16px;font-size:15px;font-weight:700}.ref summary::marker{color:var(--primary)}details.ref>summary::marker{color:var(--primary)}.ref details[open]>summary,details.ref[open]>summary{border-bottom:1px solid var(--border);margin-bottom:10px}.ref details>div,details.ref>div{padding:0 16px 16px}.ref table{border-collapse:collapse;width:100%;font-size:14px}.ref td,.ref th{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:6px 8px}.ref th{color:var(--muted-foreground);letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:700}.examples{gap:24px;display:grid}.examples h5{color:var(--accent-blue);letter-spacing:.12em;text-transform:uppercase;margin:0 0 12px;font-size:11px;font-weight:700}.examples__grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px;display:grid}.example{border:1px solid var(--border);background:var(--card);color:var(--foreground);font:inherit;text-align:left;cursor:pointer;align-content:start;gap:6px;padding:10px;transition:border-color .15s,transform .15s;display:grid}.example:hover{border-color:var(--primary);transform:translateY(-3px)}.example canvas{border:1px solid var(--line);width:100%;height:auto;image-rendering:pixelated;background:#16233a}.example b{font-family:var(--serif);font-size:19px;font-weight:400}.example span{color:var(--muted-foreground);font-size:13px;line-height:1.4}.example small{color:var(--primary);font-size:12px}.about{grid-template-columns:1fr;gap:4px 18px;margin-bottom:8px;display:grid}@media (min-width:700px){.about{grid-template-columns:1fr 1fr}.about__wide{grid-column:1/-1}}.tabs{flex-wrap:wrap;gap:8px;display:flex}.tab,.pl,.mapb .tool,.seg button{border:1px solid var(--line);background:var(--panel-2);color:var(--foreground);font:inherit;cursor:pointer;transition:border-color .15s,background .15s}.tab:hover,.pl:hover,.mapb .tool:hover,.seg button:hover{border-color:var(--primary);background:var(--panel-3)}.tab[aria-selected=true],.pl.is-on,.mapb .tool.is-on,.seg button.is-on{border-color:var(--primary);background:var(--primary);color:var(--primary-foreground)}.tab{letter-spacing:.06em;padding:8px 14px;font-size:13px;font-weight:700}.tab.is-empty{font-style:italic;font-weight:400}.box,.card{border:1px solid var(--border);background:var(--panel)}.box{margin:18px 0 0;padding:16px}.box p{font-size:15px}.box .btn-row{gap:6px;margin-top:12px}.edit{gap:22px;margin-top:18px;display:grid}.edit__main,.edit__side{min-width:0}@media (min-width:940px){.edit{grid-template-columns:minmax(0,1fr) 310px;align-items:start}}.toolbar{gap:10px;margin-bottom:14px;display:grid}.tools{flex-wrap:wrap;gap:8px;display:flex}.mapb .tool{align-items:center;gap:7px;min-height:40px;padding:4px 10px 4px 7px;font-size:13px;display:inline-flex}.mapb .tool img{object-fit:contain;width:24px;height:24px;image-rendering:pixelated;flex:none}.mapb .tool .tool__swatch{border:1px solid var(--line);flex:none;width:22px;height:22px}.mapb .tool kbd{color:var(--muted-foreground);font:11px var(--mono);border:1px solid;padding:0 4px}.mapb .tool.is-on kbd{color:var(--primary-foreground)}.players{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.players>span{color:var(--muted-foreground);margin-right:4px;font-size:14px}.pl{align-items:center;gap:7px;min-height:36px;padding:4px 10px;font-size:13px;display:inline-flex}.pl i{border:1px solid var(--line);width:14px;height:14px;display:inline-block}.pl.is-off{opacity:.45}.undo{flex-wrap:wrap;gap:6px;display:flex}.boardwrap{border:1px solid var(--line);text-align:center;background:#0a101c;max-height:80vh;padding:10px;overflow:auto}.boardwrap canvas{cursor:crosshair;touch-action:none;max-width:none;image-rendering:pixelated}.card{margin:0 0 14px;padding:12px 14px}.card h4{margin:0 0 10px}.card .hint{margin-top:6px}.card .row{border:0;flex-wrap:wrap;align-items:center;gap:8px;padding:0;display:flex}.card .row+.row{margin-top:8px}.card select{width:100%}.card .grow{flex:140px}.card .muted{font-size:14px}.seg{grid-template-columns:1fr 1fr;gap:8px;display:grid}.seg button{padding:7px;font-size:14px;line-height:1.3}.seg button:disabled{opacity:.4;cursor:not-allowed}.count{align-items:center;gap:6px;margin-right:14px;font-size:14px;display:inline-flex}.count i{border:1px solid var(--line);width:12px;height:12px;display:inline-block}@media (max-width:850px){.tool-page .wrap{width:min(100% - 32px,620px)}}@media (max-width:430px){.builder input[type=number]{width:7.5em}.numgrid>div{grid-template-columns:1fr}.numgrid input{grid-area:auto}.mapb .tool{padding-right:8px}.mapb .tool kbd{display:none}}
