/* みんなの貯金箱（アプリの「貯金箱」の項目）。見た目は16個（豚 1・2・3・4・5・8。番号は10案のときのまま ／ 豚以外の形 11〜20）。
   アプリ全体の見た目とは別の世界なので、色は枠の中だけで決める。名前はすべて pg- で始めて、アプリ側の部品と重ならないようにする */
.pgHost{display:grid;justify-items:center;padding:4px 0 24px}
.pgp{--p-bg:#111;--p-fg:#fff;--p-mut:#bbb;--p-pan:rgba(255,255,255,.08);--p-line:rgba(255,255,255,.14);--p-a:#25f4ee;--p-b:#fe2c55;
  --p-font:'Zen Kaku Gothic New','Hiragino Sans','Yu Gothic',sans-serif;--p-num:'JetBrains Mono',ui-monospace,monospace;--p-d:'Dela Gothic One','Hiragino Sans',sans-serif;
  position:relative;width:100%;max-width:430px;display:grid;grid-template-columns:minmax(0,1fr);overflow:hidden;border-radius:26px;background:var(--p-bg);color:var(--p-fg);font:500 14px/1.5 var(--p-font);border:1px solid var(--p-line);box-sizing:border-box}
.pgp *{box-sizing:border-box}
.pgp button{font-family:inherit}
.pg-top{grid-area:top;display:flex;align-items:center;gap:8px;padding:12px 14px 8px;font-size:12px;z-index:3}
.pg-live{background:var(--p-b);color:#fff;font:700 10.5px/1 var(--p-num);padding:4px 6px;border-radius:4px;letter-spacing:.06em}
.pg-live.off{background:var(--p-pan);color:var(--p-mut)}
.pg-watch{color:var(--p-mut)}
.pg-gauge{flex:1;min-width:0;display:flex;align-items:center;gap:7px;justify-content:flex-end}
.pg-pigs{font-weight:700;white-space:nowrap}
.pg-pct{font:700 15px/1 var(--p-num);font-variant-numeric:tabular-nums;white-space:nowrap}
.pg-mtr{flex:none;height:5px;margin:0 14px 6px 8px;background:var(--p-pan);border-radius:3px;overflow:hidden;z-index:3}
.pg-mtr i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--p-a),var(--p-b));transition:width .25s}
.pg-mtr.over i{animation:pgpulse .6s infinite alternate}
@keyframes pgpulse{to{opacity:.45}}
.pg-bank{grid-area:bank;display:flex;flex-direction:column;min-width:0;min-height:0}
.pg-stage{position:relative;flex:1;min-width:0;min-height:0;overflow:hidden}
.pg-stage canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.pg-banner{position:absolute;left:50%;top:34%;transform:translate(-50%,-50%);white-space:nowrap;font:400 26px/1 var(--p-d);color:#fff;text-shadow:0 2px 0 rgba(0,0,0,.65),0 0 18px rgba(0,0,0,.5);opacity:0;pointer-events:none;z-index:4}
.pg-banner.go{animation:pgbn 1.7s ease-out}
@keyframes pgbn{0%{opacity:0;transform:translate(-50%,-30%) scale(.7)}14%{opacity:1;transform:translate(-50%,-50%) scale(1.08)}24%{transform:translate(-50%,-50%) scale(1)}80%{opacity:1}100%{opacity:0;transform:translate(-50%,-70%)}}
.pg-msg{position:absolute;inset:44px 0 0 0;min-height:200px;display:grid;place-items:center;padding:24px;text-align:center;font-size:14px;color:var(--p-mut);z-index:5;background:var(--p-bg)}
.pg-msg[hidden]{display:none}
.pg-tick{grid-area:tick;min-width:0;height:26px;line-height:26px;padding:0 14px;font-size:12px;color:var(--p-mut);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;z-index:3}
.pg-tick b{color:var(--p-fg)}
.pg-you{grid-area:you;min-width:0;margin:0 10px 10px;padding:7px 10px;font-size:12px;background:var(--p-pan);border-radius:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;z-index:3}
.pg-you b{font-family:var(--p-num);font-variant-numeric:tabular-nums}
.pg-rk{grid-area:rank;position:relative;min-width:0;margin:2px 10px 8px;z-index:3}
.pg-ri{position:absolute;left:0;top:0;min-width:0}
.pg-rk.moving .pg-ri{transition:transform .4s cubic-bezier(.2,.8,.3,1),opacity .3s}
.pg-ri.off{opacity:0;pointer-events:none}
.pg-av{display:inline-grid;place-items:center;border-radius:50%;background:hsl(var(--h,200),68%,52%);color:#fff;font-weight:700;flex:none}
.pg-nm{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.pg-vl{font-family:var(--p-num);font-variant-numeric:tabular-nums;white-space:nowrap}
.pg-vl i{font-style:normal;font-size:.72em;opacity:.75;margin-left:1px}
.pg-ri.me .pg-nm{color:var(--p-a);font-weight:700}


/* タップメーター（縦に伸びる。合計のタップ数は下に書く） */
.pg-tapm{grid-area:tap;min-width:0;min-height:0;display:flex;flex-direction:column;align-items:center;gap:6px;padding:4px 2px 6px 8px;z-index:3}
.pg-tapm[hidden]{display:none}
.pg-tlv{text-align:center;line-height:1.2}
.pg-tlv b{display:block;font:700 17px/1.1 var(--p-num);color:var(--p-a)}
.pg-tlv small{display:block;font-size:9.5px;color:var(--p-mut);white-space:nowrap}
.pg-tube{position:relative;flex:1;min-height:80px;width:30px;border-radius:15px;background:var(--p-pan);border:1px solid var(--p-line);overflow:hidden;box-shadow:inset 0 2px 6px rgba(0,0,0,.25)}
.pg-tube i{position:absolute;left:0;right:0;bottom:0;height:calc(var(--f,0)*100%);background:linear-gradient(0deg,var(--p-b),var(--p-a));border-radius:0 0 15px 15px;transition:height .7s cubic-bezier(.2,.8,.3,1)}
.pg-tube i::after{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:rgba(255,255,255,.55);border-radius:3px;filter:blur(1px)}
.pg-tube::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 calc(25% - 1px),rgba(255,255,255,.22) calc(25% - 1px) 25%);pointer-events:none}
.pg-ttot{text-align:center;line-height:1.15;max-width:100%}
.pg-ttot b{display:block;font:700 15px/1.1 var(--p-num);font-variant-numeric:tabular-nums;white-space:nowrap}
.pg-tapm.big .pg-ttot b{font-size:12.5px}
.pg-ttot small{display:block;font-size:10px;color:var(--p-mut)}
.pg-tapm.up .pg-tube{animation:pgtup .7s ease-out}
@keyframes pgtup{0%{box-shadow:0 0 0 0 var(--p-a)}40%{box-shadow:0 0 16px 3px var(--p-a)}100%{box-shadow:inset 0 2px 6px rgba(0,0,0,.25)}}

/* バトルの連勝 */
.pg-bt{grid-area:bt;display:flex;align-items:center;gap:8px;margin:0 10px 6px;padding:6px 10px;background:var(--p-pan);border:1px solid var(--p-line);border-radius:10px;font-size:12px;white-space:nowrap;overflow:hidden;z-index:3}
.pg-bt[hidden]{display:none}
.pg-bt::before{content:"⚔️";font-size:15px}
.pg-bs{font-weight:700;font-size:13px}
.pg-bs b{font:700 20px/1 var(--p-num);font-variant-numeric:tabular-nums;color:var(--p-a);margin-right:1px}
.pg-bd{margin-left:auto;color:var(--p-mut);font-size:11px;overflow:hidden;text-overflow:ellipsis}
.pg-bl{background:var(--p-b);color:#fff;font:700 10px/1 var(--p-num);padding:3px 6px;border-radius:4px;animation:pgpulse .7s infinite alternate}
.pg-bl[hidden]{display:none}
.pg-bt.win{border-color:var(--p-a)}
.pg-bt.hot{box-shadow:0 0 14px -2px var(--p-a);border-color:var(--p-a)}
.pg-bt.hot::before{content:"🔥"}
.pg-bt.up{animation:pgbup .8s ease-out}
@keyframes pgbup{0%{transform:scale(1)}30%{transform:scale(1.04)}100%{transform:scale(1)}}

/* TikTokで開くボタン（足元の帯） */
.pg-go{grid-area:go;display:flex;align-items:center;justify-content:center;gap:8px;margin:0 10px 10px;min-height:46px;padding:10px 14px;border-radius:12px;border:1px solid var(--p-a);background:var(--p-pan);color:var(--p-fg);font-weight:700;font-size:14px;text-decoration:none;cursor:pointer;z-index:4}
.pg-go[hidden]{display:none}
.pg-go::after{content:"↗";font-size:15px;color:var(--p-a)}
.pg-go.on{background:linear-gradient(90deg,var(--p-b),var(--p-a));border-color:transparent;color:#fff}
.pg-go.on::after{color:#fff}
.pg-go:hover{filter:brightness(1.12)}
.pg-go:focus-visible{outline:2px solid var(--p-a);outline-offset:2px}
.pgp.s5 .pg-go{border-radius:0;border-width:2px}

/* コメント（新しい物が上から入る。下は薄く消える） */
.pg-cmt{grid-area:cmt;min-width:0;min-height:0;display:flex;flex-direction:column;margin:0 10px 10px;background:var(--p-pan);border:1px solid var(--p-line);border-radius:12px;overflow:hidden;position:relative;z-index:3}
.pg-cmt[hidden]{display:none}
.pg-chead{flex:none;padding:6px 10px 4px;font-size:11px;font-weight:700;color:var(--p-mut);border-bottom:1px solid var(--p-line)}
.pg-clist{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--p-line) transparent;padding:6px 8px 6px;-webkit-mask-image:linear-gradient(0deg,#000 88%,transparent);mask-image:linear-gradient(0deg,#000 88%,transparent)}
.pg-clist:focus-visible{outline:2px solid var(--p-a);outline-offset:-2px}
.pg-cr.new{animation:pgcin .28s ease-out}
@keyframes pgcin{from{opacity:0;transform:translateY(10px)}}
.pg-cnew{position:absolute;left:50%;bottom:10px;transform:translateX(-50%);z-index:4;border:0;border-radius:999px;padding:6px 14px;min-height:32px;background:var(--p-b);color:#fff;font:700 12px/1 var(--p-font);box-shadow:0 2px 10px rgba(0,0,0,.4);cursor:pointer}
.pg-cnew[hidden]{display:none}
@media (prefers-reduced-motion:reduce){.pg-cr.new{animation:none}}
.pg-cempty{position:absolute;inset:30px 8px 8px;display:grid;place-items:center;font-size:12px;color:var(--p-mut);text-align:center}
.pg-cempty[hidden]{display:none}
.pg-cr{display:grid;grid-template-columns:22px minmax(0,1fr);gap:6px;padding:3px 0;font-size:12.5px;line-height:1.35}
.pg-cav{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:10.5px;font-weight:700;color:#fff;background:hsl(var(--h,200),68%,52%)}
.pg-cb{min-width:0;overflow-wrap:anywhere}
.pg-cnm{display:block;font-size:10.5px;font-weight:600;color:var(--p-mut);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pg-cnm i{font-style:normal;margin-left:5px;padding:1px 4px;border-radius:3px;background:var(--p-b);color:#fff;font-size:9.5px}
.pg-ctx{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.pg-cr.me .pg-cnm{color:var(--p-a);font-weight:700}

/* 並べ方に合わせた見た目（形そのものは pglayout.js が決める） */
.pgp.no-bank .pg-gauge{display:none}
.pgp.lay-wide .pg-cmt{margin:0 10px 10px 2px;contain:size} /* コメントの量で枠の高さが変わらないように */
.pgp.lay-empty{min-height:240px}
.pg-ctr{justify-content:center}
.pgp.lay-wide .pg-tapm{padding-bottom:10px}
.pgp.lay-bigtap .pg-tapm{align-items:center;padding:6px 8px 14px}
.pgp.lay-bigtap .pg-tube{width:56px;border-radius:28px}
.pgp.lay-bigtap .pg-tube i{border-radius:0 0 28px 28px}
.pgp.lay-bigtap .pg-tlv b{font-size:24px}
.pgp.lay-bigtap .pg-ttot b{font-size:22px}
.pgp.lay-solo{padding-bottom:12px}
.pgp.lay-solo .pg-bt{flex-wrap:wrap;justify-content:center;gap:4px 10px;padding:20px 12px;white-space:normal;text-align:center}
.pgp.lay-solo .pg-bt::before{font-size:30px}
.pgp.lay-solo .pg-bs{font-size:20px}
.pgp.lay-solo .pg-bs b{font-size:52px}
.pgp.lay-solo .pg-bd{margin-left:0;flex-basis:100%;font-size:13px}
.pgp.lay-solo .pg-art{width:56px;height:56px}
.pgp.lay-solo .pg-sl{padding:12px 4px 14px}
.pgp.lay-solo .pg-gn{font-size:12px}

/* ギフトカウンター */
.pg-ctr{grid-area:ctr;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin:0 10px 6px;z-index:5}
.pg-ctr[hidden]{display:none}
.pg-sl{appearance:none;position:relative;min-width:0;padding:5px 3px 7px;background:var(--p-pan);border:1px solid var(--p-line);border-radius:10px;color:var(--p-fg);cursor:pointer;display:grid;justify-items:center;line-height:1.2;overflow:hidden}
.pg-sl:focus-visible{outline:2px solid var(--p-a);outline-offset:1px}
.pg-art{width:34px;height:34px;display:block}
.pg-art svg{width:100%;height:100%;display:block}
.pg-gn{width:100%;font-size:10px;color:var(--p-mut);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center}
.pg-ct{font-size:10.5px;font-weight:700;white-space:nowrap}
.pg-ct b{font:700 18px/1.05 var(--p-num);font-variant-numeric:tabular-nums}
.pg-cn{font-size:9.5px;color:var(--p-mut)}
.pg-pb{position:absolute;left:0;right:0;bottom:0;height:3px;background:rgba(127,127,127,.25)}
.pg-pb i{display:block;height:100%;width:calc(var(--c,0)*100%);background:var(--p-a);transition:width .25s}
.pg-sl.done{border-color:var(--p-a)}
.pg-sl.done .pg-ct{color:var(--p-a)}
.pg-sl.hit .pg-art{animation:pghit .34s ease-out}
@keyframes pghit{0%{transform:scale(1)}40%{transform:scale(1.28) rotate(-5deg)}100%{transform:scale(1)}}
.pg-sl.pg-add{border-style:dashed;color:var(--p-mut);align-content:center;min-height:46px;font-size:11px}

/* ランキングの形 */
.pg-rk.k-cards{height:92px}
.k-cards .pg-ri{width:calc(20% - 4px);height:92px;background:var(--p-pan);border:1px solid var(--p-line);border-radius:10px;padding:6px 3px;display:flex;flex-direction:column;align-items:center;gap:2px;font-size:10.5px;text-align:center}
.k-cards .pg-rn{font:700 11px/1 var(--p-num)}
.k-cards .pg-av{width:26px;height:26px;font-size:12px}
.k-cards .pg-nm{width:100%}
.k-cards .pg-vl{font-size:11px;font-weight:700}
.k-cards .pg-vl i,.k-cards .pg-br,.k-podium .pg-vl i{display:none}
.k-cards .pg-ri.p1{border-color:#ffd76a;box-shadow:inset 0 0 12px rgba(255,215,106,.28)}
.pg-rk.k-rows{height:150px}
.k-rows .pg-ri{width:100%;height:28px;display:grid;grid-template-columns:18px 22px minmax(0,1fr) auto;gap:6px;align-items:center;font-size:12.5px}
.k-rows .pg-rn{font:700 12px/1 var(--p-num);text-align:right}
.k-rows .pg-av{width:22px;height:22px;font-size:10.5px}
.k-rows .pg-vl{font-weight:700;font-size:13px}
.k-rows .pg-br{position:absolute;left:46px;right:0;bottom:1px;height:3px;background:var(--p-pan);border-radius:2px;overflow:hidden}
.k-rows .pg-br i{display:block;height:100%;width:calc(var(--v,0)*100%);background:linear-gradient(90deg,var(--p-a),var(--p-b));transition:width .4s}
.pg-rk.k-podium{height:168px}
.k-podium .pg-ri{width:calc(20% - 3px);height:168px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;font-size:10.5px;text-align:center;gap:1px}
.k-podium .pg-nm{width:100%}
.k-podium .pg-av{width:26px;height:26px;font-size:12px;box-shadow:0 0 0 2px rgba(255,255,255,.3)}
.k-podium .pg-vl{font-size:11px;font-weight:700}
.k-podium .pg-br{width:100%;height:calc(10px + var(--v,0)*82px);border-radius:6px 6px 0 0;background:linear-gradient(180deg,#f7d774,#a06a12);display:grid;place-items:start center;transition:height .45s cubic-bezier(.2,.8,.3,1);overflow:hidden}
.k-podium .pg-ri:not(.p1) .pg-br{background:linear-gradient(180deg,#b9a8e8,#5a3f96)}
.k-podium .pg-br i{display:none}
.k-podium .pg-rn{font:400 15px/1.3 var(--p-d);color:#fff;position:absolute;left:0;right:0;bottom:6px;text-align:center;z-index:1}
.k-podium .pg-ri.p1 .pg-rn{color:#2a1a05}
.pg-rk.k-bubbles{height:128px}
.k-bubbles .pg-ri{width:20%;height:128px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:1px;font-size:10.5px;text-align:center}
.k-bubbles .pg-av{width:calc(22px + var(--v,0)*38px);height:calc(22px + var(--v,0)*38px);font-size:calc(10px + var(--v,0)*11px);transition:width .4s,height .4s;box-shadow:0 3px 0 rgba(160,90,160,.25),0 0 0 3px #fff}
.k-bubbles .pg-rn{font-weight:700;color:#d65a9c;font-size:11px;order:-1}
.k-bubbles .pg-nm{width:100%;margin-top:5px}
.k-bubbles .pg-vl{font-weight:700;font-size:11px}
.k-bubbles .pg-vl i,.k-bubbles .pg-br{display:none}
.pg-rk.k-hiscore{height:122px;padding:4px 8px;border:2px solid var(--p-line)}
.k-hiscore .pg-ri{left:8px;right:8px;top:6px;height:22px;display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:6px;align-items:center;font-size:14px;line-height:1}
.k-hiscore .pg-rn{color:var(--p-a)}
.k-hiscore .pg-av,.k-hiscore .pg-br,.k-hiscore .pg-vl i{display:none}
.k-hiscore .pg-vl{font-family:inherit;color:#ffe066}
.pg-rk.k-piglets{height:112px}
.k-piglets .pg-ri{width:20%;height:112px;display:flex;flex-direction:column;align-items:center;font-size:10.5px;text-align:center}
.k-piglets svg{width:58px;height:46px;display:block}
.k-piglets .pg-rn{font:700 11px/1.2 var(--p-num)}
.k-piglets .pg-nm{width:100%}
.k-piglets .pg-vl{font-weight:700;font-size:11px}
.k-piglets .pg-vl i,.k-piglets .pg-av,.k-piglets .pg-br{display:none}

/* 見た目ごとの世界 */
.pgp.s1{--p-bg:#120a24;--p-a:#ff8ad0;--p-b:#ff4f8f;--p-pan:rgba(255,255,255,.1)}
.pgp.s2{--p-bg:#0b0b10;--p-a:#25f4ee;--p-b:#fe2c55;--p-mut:#a9a9b6}
.pgp.s3{--p-bg:#190f33;--p-a:#f7d774;--p-b:#c9973a;--p-mut:#c2b4de}
.pgp.s4{--p-bg:#fff0f8;--p-fg:#5a3a66;--p-mut:#a07fa8;--p-pan:#ffffffcc;--p-line:#f6cfe5;--p-a:#e46aa8;--p-b:#b78bf0;--p-font:'Zen Maru Gothic','Zen Kaku Gothic New',sans-serif;--p-num:'Zen Maru Gothic','Zen Kaku Gothic New',sans-serif}
.pgp.s4 .pg-live{background:#e46aa8}
.pgp.s5{--p-bg:#0f1730;--p-fg:#edeff7;--p-mut:#8fa0d0;--p-pan:#1a2750;--p-line:#46558f;--p-a:#8fd3ff;--p-b:#5bd16f;--p-font:'DotGothic16','Zen Kaku Gothic New',sans-serif;--p-num:'DotGothic16','JetBrains Mono',monospace;border-radius:6px}
.pgp.s5 .pg-mtr{height:10px;border-radius:0;border:2px solid #46558f;background:#0a1024}
.pgp.s5 .pg-mtr i{background:repeating-linear-gradient(90deg,#5bd16f 0 8px,#3fae55 8px 10px)}
.pgp.s5 .pg-live,.pgp.s5 .pg-you,.pgp.s5 .pg-sl,.pgp.s5 .pg-bt,.pgp.s5 .pg-tube,.pgp.s5 .pg-tube i{border-radius:0}
.pgp.s5 .pg-tube i{background:repeating-linear-gradient(0deg,#5bd16f 0 8px,#3fae55 8px 10px)}
.pgp.s5 .pg-sl{border-width:2px}
.pgp.s8{--p-bg:#d9f2ff;--p-fg:#123a5c;--p-mut:#4d7694;--p-pan:#ffffffb8;--p-line:#a6d7f0;--p-a:#ff7a59;--p-b:#2a9df4;--p-font:'Zen Maru Gothic','Zen Kaku Gothic New',sans-serif;--p-num:'Zen Maru Gothic','Zen Kaku Gothic New',sans-serif}
.pgp.s8 .pg-live{background:#ff7a59}
/* 豚以外の形（11〜20）。背景色は絵の背景（pgshape.js の BG）の下の色に合わせてある */
.pgp.s11{--p-bg:#130c1d;--p-a:#ff9fcb;--p-b:#ff5aa8;--p-pan:rgba(255,255,255,.1)}
.pgp.s12{--p-bg:#05030a;--p-a:#5ff0ff;--p-b:#ff5cb6;--p-mut:#a9a9c6}
.pgp.s13{--p-bg:#1a1330;--p-a:#ff9fcb;--p-b:#ffe66b;--p-mut:#b9aed6}
.pgp.s14{--p-bg:#2b1747;--p-a:#ffb3d9;--p-b:#c9b4ff;--p-mut:#d3c3ee;--p-pan:rgba(255,255,255,.12);--p-font:'Zen Maru Gothic','Zen Kaku Gothic New',sans-serif;--p-num:'Zen Maru Gothic','Zen Kaku Gothic New',sans-serif}
.pgp.s15{--p-bg:#251446;--p-a:#c9a6ff;--p-b:#ffe35c;--p-mut:#c4b4e4}
.pgp.s16{--p-bg:#080a20;--p-a:#ffd94a;--p-b:#ff9f43;--p-mut:#a9aed8}
.pgp.s17{--p-bg:#0e0712;--p-a:#f7d774;--p-b:#c9973a;--p-mut:#c2b4de}
.pgp.s18{--p-bg:#100a18;--p-a:#ffb26e;--p-b:#ff7a9c;--p-mut:#c1b2cf}
.pgp.s19{--p-bg:#0d0906;--p-a:#f0c24a;--p-b:#c0502a;--p-mut:#c9b8a4}
.pgp.s20{--p-bg:#1b2c4a;--p-a:#9fd3ff;--p-b:#ff6b6b;--p-mut:#a9bfdc;--p-pan:rgba(255,255,255,.12)}
.pgp.s13 .pg-rn,.pgp.s20 .pg-rn{color:var(--p-a)}
.pgp.s14 .pg-live{background:#e46aa8}
@media (prefers-reduced-motion:reduce){.pg-tube i{transition:none!important}.pg-tapm.up .pg-tube,.pg-bt.up,.pg-bl{animation:none!important}.pg-banner.go{animation:none;opacity:1}.pg-ri,.pg-av,.pg-br,.pg-br i,.pg-pb i{transition:none!important}}

/* 設定の見た目の選び（アプリ側の設定画面で使う） */
.pgpick{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.pgpick button{display:grid;grid-template-columns:34px minmax(0,1fr);gap:8px;align-items:center;text-align:left;padding:8px;min-height:52px;border-radius:10px;border:1px solid var(--line,#33333f);background:var(--panel-2,#1c1c25);color:inherit;cursor:pointer}
.pgpick button[aria-pressed="true"]{border-color:var(--fg,#fff);box-shadow:0 0 0 1px var(--fg,#fff) inset}
.pgpick .sw{width:34px;height:34px;border-radius:8px;display:grid;place-items:center;font:700 15px/1 var(--f-num,monospace)}
.pgpick small{display:block;font-size:11px;color:var(--dim,#7d7d8a);line-height:1.3}
.pgslot{display:grid;grid-template-columns:minmax(0,1fr) 76px;gap:6px;margin:0 0 6px}
.pgslot select,.pgslot input{min-height:38px}
.pgslot .row2{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px;align-items:center}

/* ライバー画面の上にある、仕掛けのオン・オフのスイッチ（アプリ側の部品） */
.pgchips{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 8px;justify-content:center}
.pgchips button{appearance:none;display:inline-flex;align-items:center;gap:5px;min-height:38px;padding:6px 11px;border-radius:19px;border:1px solid var(--line,#33333f);background:transparent;color:var(--dim,#7d7d8a);font:600 12.5px/1 inherit;cursor:pointer}
.pgchips button[aria-pressed="true"]{background:var(--panel-2,#1c1c25);color:var(--fg,#fff);border-color:var(--fg,#fff)}
.pgchips button:focus-visible{outline:2px solid var(--fg,#fff);outline-offset:2px}
.pgtapnum{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0 4px}
.pgtapnum input{width:130px;min-height:38px}
