:root{--paper: #eadfc2;--ink: #2b2420;--wash: #d9cba6;--card: #f2e9d2;--red: #a43f28;--green: #5c6b3a;--gold: #c29a45}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{background:var(--paper);color:var(--ink);font:16px/1.45 Georgia,Times New Roman,serif}button,input,select{font:inherit;color:var(--ink)}select{font-size:14px;background:var(--card);border:1.5px solid var(--ink);border-radius:4px;padding:5px 6px;min-height:36px}.arena{font-style:italic;font-size:15px}button{font-size:14px;background:transparent;border:1.5px solid var(--ink);border-radius:4px;padding:5px 10px;min-height:36px;cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}button.on,button.primary{background:var(--ink);color:var(--paper)}button.big{font-size:18px;font-style:italic;padding:8px 28px;min-height:46px}button.link{border:0;min-height:0;padding:0 4px;font-size:13px;text-decoration:underline;font-style:normal;font-weight:400}button:focus-visible,input:focus-visible{outline:3px solid var(--gold);outline-offset:1px}input{background:var(--card);border:1.5px solid var(--ink);border-radius:4px;padding:5px 8px;min-height:36px;min-width:0;flex:1}.app{display:flex;flex-direction:column;min-height:100vh;padding:12px 16px;gap:10px}.app.fighting{height:100vh;height:100dvh}.app p{margin:0;font-size:14px}.top{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 16px;border-bottom:3px double var(--ink);padding-bottom:8px}.top h1{margin:0;font-size:22px;font-style:italic}.credits{font-weight:700;font-size:18px;font-variant-numeric:tabular-nums;border:1.5px solid var(--ink);border-radius:4px;padding:0 10px;background:var(--card)}.status{font-size:13px;opacity:.8;margin-left:auto}.bar,.row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.group{font-size:13px;font-style:italic;margin-left:6px}.tips,.fine{font-size:13px!important;opacity:.85}.blurb{font-style:italic}.why{color:var(--red);font-size:13px!important}.shop{display:grid;grid-template-columns:210px minmax(0,1fr) minmax(320px,440px);gap:14px 18px;align-items:start}.shop h2{margin:0 0 6px;font-size:19px;font-style:italic;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px}.shop h2 small,.shop h3 small{font-size:12px;font-weight:400;font-style:normal;opacity:.75}.shop h3{margin:0 0 4px;font-size:15px;border-bottom:1px solid var(--ink);display:flex;justify-content:space-between;align-items:baseline;gap:8px}.shop ul{list-style:none;margin:0;padding:0}.stable{grid-column:1;grid-row:1 / span 2}.note{grid-column:2 / -1;grid-row:1;background:var(--card);border:1.5px solid rgba(43,36,32,.45);border-left-width:6px;border-radius:4px;padding:6px 10px;font-size:14px}.note.good{border-color:var(--green)}.note.bad{border-color:var(--red)}.bench{grid-column:2;grid-row:2}.parts{grid-column:3;grid-row:2}.stable ul{display:flex;flex-direction:column;gap:6px}.stable button{width:100%;text-align:left;display:flex;flex-direction:column;padding:6px 10px}.stable button span{font-size:12px;opacity:.8}.stable button.order{font-style:italic;border-style:dashed;min-height:44px;justify-content:center}.bench,.parts{display:flex;flex-direction:column;gap:8px;min-width:0}.preview{height:340px;border:1.5px solid var(--ink);border-radius:6px;overflow:hidden;background:var(--wash);position:relative}.preview canvas{display:block}.preview p{padding:16px}.actions{margin:2px 0}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:6px}.cards button{display:flex;flex-direction:column;text-align:left;padding:6px 8px;background:var(--card)}.cards button.on{background:var(--ink)}.cards small{font-size:11px;text-transform:capitalize;opacity:.8}.cards span{font-size:13px;font-variant-numeric:tabular-nums}.stats table{width:100%;border-collapse:collapse;font-size:14px}.stats th{text-align:left;font-weight:400;padding:1px 8px 1px 0;white-space:nowrap}.stats td.num{text-align:right;font-weight:700;font-variant-numeric:tabular-nums;width:3.4em}.stats td.delta{font-size:12px;width:3.6em;padding-left:6px;font-variant-numeric:tabular-nums;white-space:nowrap}.stats td.delta.up{color:var(--green)}.stats td.delta.down{color:var(--red)}.stats td.track{width:42%}.stats td.track span{display:block;height:7px;background:var(--ink);border-radius:1px}.load{margin-top:8px}.loadbar{position:relative;height:12px;border:1.5px solid var(--ink);background:var(--card);border-radius:2px}.loadbar span{display:block;height:100%;background:var(--green)}.loadbar span.heavy{background:var(--gold)}.loadbar span.over{background:var(--red)}.loadbar i{position:absolute;top:-3px;bottom:-3px;width:0;border-left:1.5px dashed var(--ink)}.value{margin-top:6px!important}.slot{background:var(--card);border:1.5px solid var(--ink);border-radius:6px;padding:8px 10px}.slot li{display:flex;gap:10px;align-items:center;justify-content:space-between;padding:6px 0;border-top:1px dotted rgba(43,36,32,.4)}.slot li:first-child{border-top:0}.slot li>div{min-width:0}.slot li.fitted b{text-decoration:underline;text-decoration-thickness:2px}.slot li em{font-size:12px;color:var(--green);font-weight:700}.slot li span{display:block;font-size:12.5px}.slot li button{flex:none;white-space:nowrap}.fx{font-variant-numeric:tabular-nums}.noslot{padding:0 2px}.garage{border-style:dashed}.orderform{display:flex;flex-direction:column;gap:6px;background:var(--card);border:1.5px dashed var(--ink);border-radius:6px;padding:10px}.orderform label{font-size:13px;font-style:italic}@media(max-width:1020px){.shop{grid-template-columns:minmax(0,1fr)}.stable,.note,.bench,.parts{grid-column:1;grid-row:auto}.stable ul{flex-direction:row;overflow-x:auto;padding-bottom:4px}.stable li{flex:none}.stable button{min-width:132px}.preview{height:260px}}.stage{position:relative;flex:1;min-height:240px;border:1.5px solid var(--ink);border-radius:6px;overflow:hidden;background:var(--wash);touch-action:none}.stage canvas{display:block;width:100%;height:100%}.pad{position:absolute;right:12px;bottom:12px;display:none;gap:10px}.pad button{width:64px;height:64px;border-radius:50%;border:2px solid var(--ink);background:#eadfc2d9;font-size:14px;touch-action:none}@media(pointer:coarse){.pad{display:flex}}.result{position:absolute;left:50%;top:14px;transform:translate(-50%);max-width:calc(100% - 24px);display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;background:#f2e9d2f0;border:2px solid var(--ink);border-radius:6px;padding:10px 18px}.result b{font-size:20px;font-style:italic}.result span{font-size:14px}.chat{position:absolute;left:12px;bottom:12px;width:min(340px,60%);display:flex;flex-direction:column;gap:4px;font-size:13px}.chat ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px;pointer-events:none;text-shadow:0 0 3px var(--paper),0 0 3px var(--paper),0 0 3px var(--paper)}.chat li.room{font-style:italic;opacity:.8}.chat input{width:100%;min-height:30px;font-size:13px;background:#f2e9d2cc}.chat input:not(:focus){opacity:.6}@media(pointer:coarse){.chat{bottom:88px}}.lobby{margin-top:6px}.chat li button.link{pointer-events:auto;font-size:11px;margin-left:4px;opacity:.7}.chat form{display:flex;flex-wrap:wrap;gap:2px 10px}.chat form button.link,.chat>button.link{font-size:12px;text-shadow:0 0 3px var(--paper),0 0 3px var(--paper)}
