/*! ポケカ攻略 一人回しツール pokeka-solo.css v4 */
.pks{--ink:#1d1d1f;--sub:#6b6b70;--line:#e3e3e6;--bg:#fff;--soft:#f6f6f7;--dark:#18181a;--acc:#f5c400;--red:#e0352b;--good:#1f9d55;--mid:#d98a00;--bad:#d93025;--felt:#eef3ef;
  position:relative;color:var(--ink);font-size:15px;line-height:1.6;-webkit-text-size-adjust:100%}
#pksolo.pks{container-type:inline-size;margin:0 0 2em}
.pks *,.pks *::before,.pks *::after{box-sizing:border-box}
.pks button,.pks input{font:inherit;color:inherit;margin:0;border-radius:8px}
.pks button{cursor:pointer;background:none;border:0;padding:0;line-height:1.3;-webkit-tap-highlight-color:transparent}
.pks button:disabled{cursor:default;opacity:.45}
.pks h3{font-size:17px;margin:0 0 .4em;padding:0;border:0;background:none;line-height:1.4}
.pks h3::before,.pks h3::after,.pks h4::before,.pks h4::after{display:none}
.pks h4{font-size:14px;margin:0 0 .3em;padding:0;border:0;background:none}
.pks p{margin:0 0 .5em}
.pks ul,.pks ol{margin:0;padding:0 0 0 1.2em}
.pks img{max-width:100%;height:auto;display:block}
.pks i{font-style:normal}
.pks-loading{padding:3em 1em;text-align:center;color:var(--sub)}
.pks-note{color:var(--sub);font-size:12px;margin:0 0 6px !important}
.pks-empty{color:var(--sub);font-size:13px;text-align:center;padding:1em 0;grid-column:1/-1;margin:0 !important}
.pks-noimg{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:215/300;background:#ddd;font-size:10px;padding:2px;text-align:center;border-radius:5px}

/* ボタン */
.pks-btns{display:flex;gap:6px;margin:8px 0}
.pks-btns.is-wrap{flex-wrap:wrap}
.pks-btns.is-col{flex-direction:column}
.pks-btns.is-grid5{display:grid;grid-template-columns:repeat(5,1fr)}
.pks-b{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:8px 12px !important;background:var(--soft) !important;font-weight:700;font-size:14px;text-align:center;text-decoration:none !important;color:var(--ink) !important;border-radius:10px !important}
.pks-b.is-main{background:var(--acc) !important;color:#111 !important}
.pks-b.is-on{background:var(--dark) !important;color:#fff !important}
.pks-b.is-sub{background:none !important;color:var(--sub) !important;font-weight:400;text-decoration:underline !important}
.pks-b.is-atk{background:var(--red) !important;color:#fff !important}
.pks-b.is-end{background:var(--dark) !important;color:#fff !important}
.pks-b.is-wide{display:flex;width:100%;margin-top:10px}
.pks-btns.is-col .pks-b{width:100%}
.pks-b:active{transform:scale(.97)}

/* 開始画面 */
.pks-start{background:var(--soft);border-radius:14px;padding:16px}
.pks-sum{font-size:14px;color:var(--sub)}
.pks-warn{background:#fff6e0;color:#7a5200;border-radius:8px;padding:8px 10px 8px 1.8em !important;font-size:13px;margin:0 0 8px !important}
.pks-links{display:flex;gap:16px;font-size:14px;margin-top:6px}
.pks-links a{color:var(--red) !important;font-weight:700;text-decoration:none}
.pks-help{margin-top:14px;font-size:13px;color:var(--sub);background:#fff;border-radius:10px;padding:10px 12px}

/* 上部バー */
.pks-bar{position:sticky;top:var(--wp-admin--admin-bar--height,0px);z-index:20;background:var(--dark);color:#fff;padding:8px;border-radius:12px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.pks-tn{flex:1 1 auto;min-width:0;line-height:1.2}
.pks-tn b{display:block;font-size:17px;color:var(--acc)}
.pks-tn small{font-size:11px;color:#bbb}
.pks-tb{background:#2b2b2e !important;color:#fff !important;padding:9px 10px !important;font-size:13px;font-weight:700;white-space:nowrap}
.pks-tb.is-main{background:var(--acc) !important;color:#111 !important}
.pks-tb.is-menu{font-size:18px;padding:6px 12px !important}
.pks-flags{flex:1 1 100%;display:flex;gap:4px}
.pks-flags i{flex:1;text-align:center;font-size:11px;padding:2px 0;border-radius:6px;background:#2b2b2e;color:#888}
.pks-flags i.is-used{background:#4a3d00;color:var(--acc);font-weight:700}
.pks-over{margin-top:8px;background:#fdecea;color:#a1251b;border-radius:10px;padding:10px 12px;font-weight:700}
.pks-over small{display:block;font-weight:400;font-size:12px}
.pks-guide{margin:8px 0 0 !important;background:#fff8d6;border:1px solid #f0dc8a;border-radius:10px;padding:8px 10px;font-size:13px}

/* 場 */
.pks-field{margin-top:8px;background:var(--felt);border-radius:14px;padding:8px}
.pks-lb{font-size:12px;color:var(--sub);margin:0 0 3px !important;display:flex;align-items:center;gap:6px}
.pks-lb b{color:var(--ink);font-size:14px}
.pks-lb button{font-size:11px;text-decoration:underline;color:var(--sub)}
.pks-row1{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;margin-bottom:6px}
.pks-aw .pks-slot{max-width:124px;margin:0 auto}
.pks-sidecol{display:flex;flex-direction:column;gap:6px}
.pks-piles{display:grid;grid-template-columns:1fr 1fr;gap:5px}
.pks-pile{background:#fff !important;border-radius:8px !important;padding:5px 4px !important;display:flex;flex-direction:column;align-items:center;box-shadow:0 1px 2px rgba(0,0,0,.08)}
.pks-pile span{font-size:11px;color:var(--sub)}
.pks-pile b{font-size:18px;line-height:1.1}
.pks-pile.is-deck{background:#2e4a8b !important;color:#fff}
.pks-pile.is-deck span{color:#cfd8f0}
.pks-pile.is-prize{background:#7a2e2e !important;color:#fff}
.pks-pile.is-prize span{color:#f0d0d0}
.pks-stad{display:flex;align-items:center;gap:6px;background:#fff !important;border-radius:8px !important;padding:4px !important;font-size:11px;font-weight:700;text-align:left;min-height:40px}
.pks-stad img{width:28px;border-radius:3px}
.pks-stad.is-empty{color:#aaa;font-weight:400;justify-content:center;border:1px dashed #cdd5cf;background:transparent !important}

.pks-bench{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}
.pks-slot{position:relative;display:block;width:100%;aspect-ratio:215/300;border-radius:6px !important;overflow:visible;background:#fff}
.pks-slot img{width:100%;height:100%;object-fit:cover;border-radius:6px}
.pks-slot.is-empty{border:1.5px dashed #c5cfc8;background:transparent;display:flex;align-items:center;justify-content:center;font-size:11px;color:#aaa}
.pks-slot.is-ko img{filter:grayscale(.7) brightness(.8)}
.pks-dmg{position:absolute;right:-3px;top:-3px;background:var(--red);color:#fff;font-weight:800;font-size:11px;min-width:24px;height:22px;line-height:22px;border-radius:11px;text-align:center;padding:0 4px;box-shadow:0 1px 3px rgba(0,0,0,.3)}
.pks-dmg.is-ko{background:#000}
.pks-cd{position:absolute;left:2px;top:2px;display:flex;gap:2px}
.pks-cd i{font-size:10px;font-weight:800;color:#fff;border-radius:4px;padding:0 3px;line-height:16px}
.c-p{background:#7b2cbf}.c-b{background:#e4572e}.c-s{background:#2d6cdf}
.pks-new{position:absolute;left:2px;bottom:16px;background:var(--acc);color:#111;font-size:9px;font-weight:800;padding:0 3px;border-radius:3px;line-height:14px}
.pks-stk{position:absolute;right:2px;bottom:16px;background:var(--dark);color:#fff;font-size:9px;font-weight:800;padding:0 4px;border-radius:3px;line-height:14px}
.pks-es{position:absolute;left:0;right:0;bottom:-4px;display:flex;flex-wrap:wrap;justify-content:center;gap:1px}
.pks-e{display:inline-block;width:16px;height:16px;line-height:16px;border-radius:50%;color:#fff;font-size:9px;font-weight:800;text-align:center;border:1px solid #fff;box-shadow:0 1px 2px rgba(0,0,0,.3)}
.pks-e.is-sp{background:#555}
.pks-e.is-tool{background:#0f7a6b;border-radius:3px}
.pks-hpb{position:absolute;left:50%;bottom:-24px;transform:translateX(-50%);white-space:nowrap;font-size:11px;font-weight:700;color:var(--ink)}
.pks-aw{padding-bottom:22px}

/* 手札 */
.pks-hand{margin-top:10px}
.pks-hgrid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}
@container (min-width:560px){.pks-hgrid{grid-template-columns:repeat(7,minmax(0,1fr))}.pks-aw .pks-slot{max-width:170px}}
@container (min-width:820px){.pks-hgrid{grid-template-columns:repeat(9,minmax(0,1fr))}}
@container (min-width:600px){.pks-bench{grid-template-columns:repeat(5,minmax(0,100px));justify-content:center;gap:10px}.pks-row1{grid-template-columns:minmax(0,1fr) 300px}}
.pks-hc{display:block;width:100%;border-radius:5px !important;overflow:hidden;background:#eee;aspect-ratio:215/300}
.pks-hc img{width:100%;height:100%;object-fit:cover}
.pks-hc.is-dim{opacity:.4}

/* ログ */
.pks-log{margin-top:12px;background:var(--soft);border-radius:12px;padding:8px 10px}
.pks-log ol,.pks-loglist{list-style:none;padding:0 !important;margin:0;font-size:12px}
.pks-log li,.pks-loglist li{padding:3px 0;border-bottom:1px solid var(--line)}
.pks-log li:last-child{border-bottom:0}
.pks-log li b,.pks-loglist li b{display:inline-block;min-width:2.6em;color:var(--sub);font-weight:700}

/* パネル */
html.pks-lock{overflow:hidden}
.pks-modal{position:fixed;inset:0;z-index:100000;background:rgba(0,0,0,.55);display:flex;align-items:flex-end;justify-content:center}
.pks-modal[hidden]{display:none}
.pks-dialog{position:relative;background:#fff;width:100%;max-width:640px;max-height:88vh;overflow:auto;overscroll-behavior:contain;border-radius:16px 16px 0 0;padding:16px 14px 24px}
@media (min-width:700px){.pks-modal{align-items:center}.pks-dialog{border-radius:16px;padding:20px}}
.pks-x{position:sticky;float:right;top:0;width:36px;height:36px;border-radius:50% !important;background:var(--soft) !important;font-size:22px;z-index:2;margin:-6px -4px 0 6px}
.pks-ch{display:flex;gap:12px;margin-bottom:8px}
.pks-chi{flex:0 0 96px}
.pks-chi img{border-radius:6px}
.pks-cht{min-width:0;flex:1}
.pks-meta{font-size:12px;color:var(--sub)}
.pks-tx{font-size:13px;background:var(--soft);border-radius:8px;padding:8px 10px;margin:8px 0}
.pks-gh{font-size:12px;font-weight:700;color:var(--sub);margin:12px 0 4px !important;border-top:1px solid var(--line);padding-top:8px}
.pks-acts{display:flex;flex-direction:column;gap:6px;margin:6px 0}
.pks-act{background:#fff3bf !important;border:2px solid var(--acc) !important;border-radius:10px !important;padding:10px 12px !important;font-weight:700;font-size:14px;text-align:left;position:relative}
.pks-act small{display:block;font-weight:400;font-size:11px;color:var(--sub)}
.pks-act.is-done{background:#f3f3f3 !important;border-color:#ddd !important}
.pks-act.is-done::after{content:'✓';position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--good)}
.pks-hp{display:flex;justify-content:space-between;align-items:baseline;font-size:14px;margin-top:4px}
.pks-hp b{font-size:20px}
.pks-dc b{font-size:16px;color:var(--red)}
.pks-cond .pks-b{min-height:36px;font-size:13px;padding:6px 10px !important}
.pks-att{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}
.pks-ab{display:inline-flex;align-items:center;gap:5px;background:var(--soft) !important;border:2px solid transparent !important;padding:6px 10px !important;font-size:13px;border-radius:999px !important}
.pks-ab.is-on{border-color:var(--red) !important;background:#fdecea !important}
.pks-par{border:1px solid var(--line);border-radius:10px;padding:8px 10px;margin:6px 0}
.pks-ph{font-weight:700;margin:0 0 2px !important;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.pks-ph b{margin-left:auto;font-size:16px}
.pks-pb{font-size:13px;margin:0 !important}
.pks-cost{display:inline-flex;gap:2px}
.pks-cost i{width:16px;height:16px;border-radius:50%;color:#fff;font-size:9px;line-height:16px;text-align:center;font-weight:800}
.pks-tag{background:#c0392b;color:#fff;font-size:10px;padding:1px 6px;border-radius:4px}
.pks-gen .pks-b{font-size:13px;min-height:38px;padding:6px 10px !important}

/* 選ぶ画面 */
.pks-free{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--sub);margin:0 0 8px}
.pks-cgrid,.pks-pgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
@media (min-width:520px){.pks-cgrid,.pks-pgrid{grid-template-columns:repeat(5,minmax(0,1fr))}}
.pks-pc,.pks-pick{position:relative;display:block;width:100%;text-align:center;border-radius:6px !important;padding:0 !important}
.pks-pc img,.pks-pick img{border-radius:6px;border:3px solid transparent;width:100%}
.pks-pc span,.pks-pick span{display:block;font-size:10px;line-height:1.25;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pks-pick b{display:block;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pks-pc.is-off,.pks-pick.is-off{opacity:.28}
.pks-pc.is-on img{border-color:var(--red)}
.pks-chk{position:absolute;right:4px;top:4px;background:var(--red);color:#fff;width:22px;height:22px;line-height:22px;border-radius:50%;font-weight:800;font-size:13px}
.pks-ord{position:absolute;left:4px;top:4px;background:var(--dark);color:#fff;min-width:20px;height:20px;line-height:20px;border-radius:10px;font-size:11px;font-weight:700}
.pks-foot{position:sticky;bottom:-24px;background:#fff;margin:10px -14px -24px;padding:8px 14px 16px;border-top:1px solid var(--line);box-shadow:0 -4px 10px rgba(0,0,0,.05)}
.pks-foot p{font-size:13px;margin:0 !important}
.pks-foot .pks-btns{margin:6px 0 0}
.pks-foot .pks-b{font-size:13px;min-height:38px;padding:6px 10px !important}
.pks-backs{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}
.pks-back{width:44px;aspect-ratio:215/300;border-radius:5px;background:linear-gradient(135deg,#2e4a8b,#1b2d57);border:2px solid #fff;box-shadow:0 1px 3px rgba(0,0,0,.3)}

.pks-toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);background:rgba(20,20,22,.92);color:#fff;padding:10px 16px;border-radius:999px;font-size:14px;opacity:0;pointer-events:none;transition:.2s;z-index:100001;max-width:90vw;text-align:center}
.pks-toast.is-on{opacity:1;transform:translate(-50%,0)}
@media (max-width:834px){.pks-toast{bottom:84px}}

/* ドラッグ */
.pks-hc{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.pks-hc img{-webkit-user-drag:none;pointer-events:none}
.pks-hc.is-lift{opacity:.3}
.pks-ghost{position:fixed;left:0;top:0;width:68px;z-index:100002;pointer-events:none;filter:drop-shadow(0 6px 10px rgba(0,0,0,.35));will-change:transform}
.pks-ghost img{border-radius:5px;width:100%}
.pks.is-dragging .pks-field{outline:2px dashed #9fb6a5;outline-offset:-2px}
.pks.is-dragging .pks-slot.is-empty{border-color:#6c9a7a;background:rgba(255,255,255,.5)}
.pks [data-drop].is-over{outline:3px solid var(--acc) !important;outline-offset:1px;box-shadow:0 0 0 6px rgba(245,196,0,.25)}
.pks-field[data-drop].is-over{outline-offset:-3px}
.pks-pile[data-drop].is-over{background:#fff3bf !important}

/* 幅の狭いスマホ（360px前後）で上部バーが折り返さないように */
.pks-tn{flex:1 1 0}
.pks-tn small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@container (max-width:370px){
  .pks-bar{gap:5px}
  .pks-tn b{font-size:15px}
  .pks-tb{padding:8px 7px !important;font-size:12px}
  .pks-tb.is-menu{padding:5px 9px !important;font-size:16px}
}
