:root{--bg:#e9edf3;--panel:#ffffff;--fg:#1a2232;--muted:#5b6579;--line:#cdd5e1;--accent:#2d4c8c;--accent-fg:#ffffff;--gold:#9a6f17;--red:#cf2626;--ok:#2d7a4a;--stage:#0c0f14;--f-body:"Hiragino Sans","Yu Gothic UI","Yu Gothic","Meiryo",system-ui,sans-serif;--f-disp:"Yu Mincho","Hiragino Mincho ProN","BIZ UDPMincho",serif}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--bg:#10141b;--panel:#19202b;--fg:#e4e8ef;--muted:#98a2b5;--line:#2c3545;--accent:#86a5e6;--accent-fg:#0d1320;--gold:#d6b05a;--red:#ff6b6b;--ok:#6cc58e;--stage:#07090c;color-scheme:dark}}:root[data-theme=dark]{--bg:#10141b;--panel:#19202b;--fg:#e4e8ef;--muted:#98a2b5;--line:#2c3545;--accent:#86a5e6;--accent-fg:#0d1320;--gold:#d6b05a;--red:#ff6b6b;--ok:#6cc58e;--stage:#07090c;color-scheme:dark}html,body{background:var(--bg);color:var(--fg)}[hidden]{display:none!important}body{font-family:var(--f-body);font-size:14px;line-height:1.6;padding-inline:16px;padding-block:14px 40px}h1{font-family:var(--f-disp);font-weight:800;font-size:1.45rem;margin:0;letter-spacing:.04em;text-wrap:balance}h2{font-family:var(--f-disp);font-weight:700;font-size:1.02rem;margin:0;display:flex;gap:.5em;align-items:baseline}h2 .no{color:var(--gold);font-variant-numeric:tabular-nums}.top{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:baseline}.top p{margin:0;color:var(--muted)}.wrap{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:16px;align-items:start}@media (max-width:1000px){.wrap{grid-template-columns:minmax(0,1fr)}}.stage{position:relative;background:var(--stage);border-radius:6px;overflow:hidden;min-width:0}.stage canvas{display:block;width:100%;height:auto;cursor:crosshair;touch-action:none}.stage .hint{position:absolute;left:10px;bottom:8px;right:10px;color:#e8ecf2;font-size:12px;text-shadow:0 1px 2px #000;pointer-events:none}.badge{display:inline-block;font-size:11px;padding:1px 7px;border-radius:99px;background:var(--gold);color:var(--panel);font-weight:700;letter-spacing:.06em}.drop{position:absolute;inset:0;display:none;align-items:center;justify-content:center;background:#14285a8c;color:#fff;font-size:1.2rem;font-weight:700}.stage.over .drop{display:flex}.side{display:flex;flex-direction:column;gap:12px;min-width:0}section{background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:12px 14px;display:flex;flex-direction:column;gap:10px;min-width:0}.row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.row>label{color:var(--muted);font-size:12px}.grid2{display:grid;grid-template-columns:auto minmax(0,1fr) 3.6em;gap:4px 8px;align-items:center;font-size:12px;color:var(--muted)}.grid2 output{font-variant-numeric:tabular-nums;text-align:right;color:var(--fg)}input[type=text],textarea,select{font:inherit;color:var(--fg);background:var(--bg);border:1px solid var(--line);border-radius:4px;padding:5px 7px;min-width:0}textarea{width:100%;box-sizing:border-box;resize:vertical}input[type=range]{width:100%;accent-color:var(--accent)}button,.filebtn{font:inherit;font-size:13px;border:1px solid var(--line);background:var(--bg);color:var(--fg);border-radius:4px;padding:5px 11px;cursor:pointer;display:inline-flex;align-items:center;gap:6px}button:hover,.filebtn:hover{border-color:var(--accent)}button.primary{background:var(--accent);color:var(--accent-fg);border-color:var(--accent);font-weight:700}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,.filebtn:focus-within,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.filebtn input{position:absolute;width:1px;height:1px;opacity:0}.filebtn{position:relative}.note{font-size:12px;color:var(--muted);margin:0}.status{font-size:12px;margin:0}.status.ok{color:var(--ok)}.status.warn{color:var(--red)}.cands{display:flex;flex-direction:column;gap:8px}.cand{display:grid;grid-template-columns:2.1em minmax(0,1fr) auto;gap:4px 8px;align-items:center;border-top:1px dashed var(--line);padding-top:8px}.cand .num{font-family:var(--f-disp);font-weight:800;color:var(--red);font-size:1.25rem;text-align:center;grid-row:span 2}.cand .num.out{color:#8d929b}.cand .pos{font-size:12px;color:var(--gold);font-weight:700}.cand .fields{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:6px;grid-column:2/4}.cand .ops{display:flex;gap:2px}.cand .ops button{padding:2px 7px;font-size:12px}.cand .why{grid-column:2/4;font-size:12px;color:var(--muted);margin:0}.empty{font-size:12px;color:var(--muted);border:1px dashed var(--line);border-radius:4px;padding:10px;text-align:center}.panels{display:flex;flex-direction:column;gap:6px}.pnl{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:8px;align-items:center;font-size:12px}.pnl img{width:44px;height:44px;object-fit:cover;border-radius:3px;border:1px solid var(--line)}.out{font-family:var(--f-body);font-size:13px;line-height:1.7;min-height:11em}.count{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.count.over{color:var(--red);font-weight:700}details{border-top:1px dashed var(--line);padding-top:8px}.pick{display:grid;grid-template-columns:1fr 1fr;gap:8px}.filebtn.big{flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;padding:10px 12px;font-weight:700;border-color:var(--accent);min-height:3.4em}.filebtn.big small{font-weight:400;font-size:11px;color:var(--muted)}summary{cursor:pointer;font-weight:700;font-size:13px}@media (min-width:1001px){html,body{height:100%;overflow:hidden}body{padding:0;margin:0}.wrap{height:100vh;box-sizing:border-box;padding:12px 16px;grid-template-rows:minmax(0,1fr);align-items:stretch}.left,.side{min-height:0;overflow-y:auto;overscroll-behavior:contain}.stage{position:sticky;top:0;z-index:1;display:flex;justify-content:center;flex:none}.left{overflow:hidden}.stage canvas{width:auto;max-width:100%;max-height:calc(100vh - 330px)}}.left{display:flex;flex-direction:column;gap:10px;min-width:0}.top{margin-top:0}.outgrid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:stretch}.outbtns{display:flex;flex-direction:column;gap:6px;align-items:stretch}.outbtns .count{text-align:center}.out{min-height:8em;height:100%}.fgrid{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 8px;align-items:center}.fgrid>label{color:var(--muted);font-size:12px}.fgrid input{width:100%;box-sizing:border-box}.pair{display:flex;gap:6px;align-items:center;min-width:0}.pair input{flex:1;min-width:0}.pair .sub{color:var(--muted);font-size:12px;white-space:nowrap}.pnl{grid-template-columns:30px minmax(0,1fr) auto}.pnl img{width:30px;height:30px}.pnl button{padding:2px 8px;font-size:12px}.sectog{all:unset;cursor:pointer;display:flex;gap:.5em;align-items:baseline;width:100%;box-sizing:border-box}.sectog:after{content:"▾";margin-left:auto;color:var(--muted);font-size:.9em}.sectog[aria-expanded=false]:after{content:"▸"}.sectog:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}.secbody{display:flex;flex-direction:column;gap:10px;min-width:0}.sep{border-top:1px dashed var(--line);padding-top:8px}.secbody[hidden]{display:none!important}@media (max-width:1000px){.wrap{display:flex;flex-direction:column;gap:12px}.left{display:contents}.stage{order:0}.top{order:1}.side{order:2}.out-sec{order:3}.outgrid{grid-template-columns:minmax(0,1fr)}.outbtns{flex-direction:row;flex-wrap:wrap}.out{min-height:12em}}html:not(.debug) .dbg,html:not(.debug) .status.ok{display:none!important}@media (prefers-reduced-motion:reduce){*{transition:none!important}}
