/* 节目周 · 陈泽杯擂台 · 公益花园 */
.community-panel{display:grid;gap:12px;color:#293c30;background:#f8f9f1;padding:14px;border:2px solid #27212a;box-shadow:inset 0 0 0 1px #fffef8}
.community-panel kbd{font-size:11px;border:1px solid #c9d2bd;padding:1px 4px;background:#f4f6ec}
.community-panel p{margin:0}
.cm-message{padding:8px 12px;background:#f6f0df;border-left:3px solid #9b742b;font-size:12px}
.cm-loading,.cm-empty,.cm-fine{font-size:11px;color:#7b8a6b}
.cm-note{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;padding:8px 12px;border:1px dashed #b8cba4;background:#f1f4e8}
.cm-theme{display:grid;gap:2px;padding:12px 14px;border:2px solid #405a40;background:#edf3e2;box-shadow:3px 3px 0 #d6dfcb}
.cm-theme span{font:11px monospace;color:#5a7748;letter-spacing:1px}
.cm-theme strong{font:400 22px/1.4 var(--pixel,monospace)}
.cm-theme small{font-size:11px;color:#6f7d62}
.cm-games{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}
.cm-game,.cm-arena{border:1px solid #dce3cf;background:#fffef8;padding:12px;display:grid;gap:8px;align-content:start}
.cm-game h4,.cm-arena h4{margin:0;font:400 16px var(--pixel,monospace)}
.cm-game>p{font-size:12px;color:#5b6a52;line-height:1.7}
.cm-mine{font-size:12px}.cm-mine b,.cm-arena b{color:#a5603a}
.cm-board{list-style:none;margin:0;padding:0;display:grid;gap:2px;font-size:12px}
.cm-board li{display:grid;grid-template-columns:22px 1fr auto;gap:6px;padding:3px 6px;background:#f6f8ef}
.cm-board li:first-child{background:#f3e7c4}
.cm-board b{font-family:monospace;color:#75865f}.cm-board em{font-style:normal;font-family:monospace}
.cm-play{display:grid;gap:10px;justify-items:start}
.cm-play>p{font-size:12px;line-height:1.8}
.cm-status{font-family:monospace;font-size:12px;color:#5a7748}
.cm-result{font:400 18px var(--pixel,monospace);color:#a5603a}
.cm-cards{display:grid;grid-template-columns:repeat(4,minmax(64px,1fr));gap:8px;width:100%}
.cm-card{min-height:64px;border:2px solid #3e5049;background:#587450;color:#fffef0;font:400 15px var(--pixel,monospace);cursor:pointer;box-shadow:2px 2px 0 #c7d1b8}
.cm-card.is-open{background:#fffef8;color:#293c30}
.cm-card.is-matched{background:#dce7cc;border-color:#7e9a63}
.cm-river{position:relative;width:100%;height:42px;background:linear-gradient(#8fc1d6,#6aa6b9);border:2px solid #3e5049}
.cm-zone{position:absolute;top:0;bottom:0;background:#7ec07466;border-left:2px solid #4f8f45;border-right:2px solid #4f8f45}
.cm-bobber{position:absolute;top:8px;width:12px;height:22px;margin-left:-6px;background:linear-gradient(#d65c4a 50%,#fffef8 50%);border:2px solid #3e5049}
.cm-casts{list-style:none;display:flex;gap:6px;margin:0;padding:0;font:12px monospace}
.cm-casts li{padding:2px 6px;border:1px solid #cfd8c1}.cm-casts .hit{background:#dce7cc}.cm-casts .miss{background:#f0e3dc}
.cm-lane{position:relative;width:100%;max-width:360px;height:260px;margin:0 auto;overflow:hidden;background:repeating-linear-gradient(#393346 0 39px,#433c52 39px 40px);border:2px solid #27212a}
.cm-note{position:absolute;left:50%;top:0;width:56px;height:14px;margin-left:-28px;background:#f2cc76;border:2px solid #27212a;opacity:0;will-change:transform}
.cm-hitline{position:absolute;left:0;right:0;top:227px;height:4px;background:#f2cc76;box-shadow:0 0 0 2px #27212a}
.cm-judge{position:absolute;left:0;right:0;top:120px;text-align:center;font:400 22px var(--pixel,monospace);color:#fff3c4;opacity:0;transition:opacity .25s}
.cm-judge.show{opacity:1}
.cm-tap{min-width:160px;min-height:56px;font-size:18px}
.cm-grades{display:flex;gap:10px;font-size:12px}
.cm-beds{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}
.cm-bed{display:grid;grid-template-columns:repeat(5,1fr);gap:2px;padding:6px;background:#8a6b4c;border:2px solid #5d4632}
.cm-bed i{display:block;aspect-ratio:1;background:#6f5640}
.cm-bed i.on{background:#7e9a63}
.cm-bed.is-bloom i{background:#d98ba0}.cm-bed.is-bloom i:nth-child(3n){background:#f2cc76}.cm-bed.is-bloom i:nth-child(4n){background:#8fb7d6}
.cm-fireworks{font-size:13px;color:#a5603a}
.today-laotie{display:grid;gap:6px;padding:12px 14px;border:2px solid #9b742b;background:#fbf4e1;color:#293c30}
.today-laotie strong{font:400 18px var(--pixel,monospace)}
.today-laotie small{font-size:11px;color:#6f7d62}
.today-laotie details{font-size:11px}.today-laotie summary{cursor:pointer;color:#5a7748}
.today-laotie ul{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:2px}
.today-laotie li{display:flex;justify-content:space-between;gap:8px}
@media (prefers-reduced-motion:reduce){.cm-judge{transition:none}}
@media (max-width:560px){.cm-cards{grid-template-columns:repeat(4,1fr)}.cm-beds{grid-template-columns:repeat(5,1fr);gap:3px}.cm-bed{padding:3px}}
