/* GP Events. Translucent surfaces so the bar follows the theme's dark and light modes. */
.gpe-bar,.gpe-card{--gpe-acc:#f59e0b;--gpe-line:rgba(127,127,127,.28);border:1px solid color-mix(in srgb,var(--gpe-acc) 45%,var(--gpe-line));border-radius:18px;background:linear-gradient(135deg,color-mix(in srgb,var(--gpe-acc) 14%,transparent),transparent 70%),rgba(127,127,127,.06);color:inherit;box-sizing:border-box}
.gpe-bar{margin:0 0 16px;padding:14px;width:100%}
.gpe-bar--active{--gpe-acc:#22c55e}.gpe-bar--done{--gpe-acc:#a855f7}
.gpe-bar-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.gpe-thumb{width:84px;height:84px;border-radius:14px;object-fit:cover;flex:none;background:rgba(127,127,127,.15)}
.gpe-thumb-ph{display:grid;place-items:center;font-size:34px}
.gpe-bar-main{flex:1 1 220px;min-width:0}
.gpe-kicker{display:block;font-size:11px;font-weight:800;letter-spacing:.08em;color:var(--gpe-acc)}
.gpe-bar h3,.gpe-card h3{margin:2px 0 4px;font-size:18px;line-height:1.25;font-weight:850;color:inherit}
.gpe-bar p,.gpe-card p{margin:0;font-size:13px;opacity:.8;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.gpe-card p{-webkit-line-clamp:4}
.gpe-bar-actions{display:flex;gap:8px;flex-wrap:wrap}
.gpe-btn{appearance:none;border:1px solid var(--gpe-line);background:rgba(127,127,127,.12);color:inherit;border-radius:12px;padding:9px 14px;font-weight:700;font-size:13px;cursor:pointer;text-decoration:none;display:inline-block;line-height:1.2}
.gpe-btn:hover{border-color:var(--gpe-acc)}
.gpe-btn:disabled{opacity:.55;cursor:default}
.gpe-btn-main{background:var(--gpe-acc);border-color:var(--gpe-acc);color:#111}
.gpe-bar-extra{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:10px;font-size:12px;opacity:.9}
.gpe-bar-extra a{margin-left:auto;color:var(--gpe-acc);font-weight:700}
.gpe-prog{height:12px;border-radius:99px;background:rgba(127,127,127,.22);overflow:hidden;margin:8px 0 4px}
.gpe-prog i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#22c55e,#a3e635);transition:width .5s}
.gpe-prog-txt{font-size:12px;opacity:.8}
.gpe-bar-list{margin-top:12px;border-top:1px solid var(--gpe-line);padding-top:10px}
.gpe-tasks{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}
.gpe-bar .gpe-tasks{margin-top:0}
.gpe-task{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;background:rgba(127,127,127,.08);flex-wrap:wrap}
.gpe-task.is-done{background:rgba(34,197,94,.14)}
.gpe-tick{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;border:2px solid var(--gpe-line);flex:none;font-size:13px;font-weight:900}
.is-done .gpe-tick{background:#22c55e;border-color:#22c55e;color:#fff}
.gpe-task-main{flex:1 1 180px;min-width:0;display:flex;flex-direction:column;gap:3px}
.gpe-task-main b{font-size:13.5px}
.gpe-task-main small{font-size:11px;opacity:.75}
.gpe-mini{display:block;height:6px;border-radius:99px;background:rgba(127,127,127,.22);overflow:hidden}
.gpe-mini i{display:block;height:100%;background:#22c55e;border-radius:99px}
.gpe-task-prize{display:flex;gap:6px;flex-wrap:wrap}
.gpe-chip{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:99px;font-size:11.5px;font-weight:800;background:color-mix(in srgb,var(--gpe-acc) 22%,transparent);border:1px solid color-mix(in srgb,var(--gpe-acc) 45%,transparent)}
.gpe-chip img{width:16px;height:16px;object-fit:contain}
.gpe-final{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:10px;font-size:13px}
.gpe-muted{opacity:.7}
.gpe-note{display:inline-block;margin-top:10px;font-size:13px;font-weight:700;opacity:.85}
/* page */
.gpe-page{max-width:900px;margin:0 auto;padding:6px 0 30px}
.gpe-h{font-size:20px;margin:22px 0 10px}
.gpe-card{display:flex;gap:14px;padding:14px;margin-bottom:12px;flex-wrap:wrap}
.gpe-card--past{opacity:.8}
.gpe-card-main{flex:1 1 280px;min-width:0}
.gpe-card-head{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.gpe-pill{font-size:11.5px;font-weight:800;padding:3px 10px;border-radius:99px;background:rgba(127,127,127,.18)}
.gpe-pill.is-live{background:#22c55e;color:#06260f}
.gpe-card .gpe-btn{margin-top:12px}
.gpe-toast{position:fixed;left:50%;bottom:26px;transform:translate(-50%,20px);opacity:0;transition:.35s;background:#16a34a;color:#fff;padding:11px 18px;border-radius:14px;font-weight:800;font-size:14px;z-index:99999;box-shadow:0 10px 30px rgba(0,0,0,.35)}
.gpe-toast.is-in{opacity:1;transform:translate(-50%,0)}
@media(max-width:600px){.gpe-thumb{width:64px;height:64px}.gpe-bar-actions{width:100%}.gpe-bar-actions .gpe-btn{flex:1 1 auto;text-align:center}}
@media(prefers-reduced-motion:reduce){.gpe-prog i,.gpe-toast{transition:none}}
.gpe-glink{color:#f7b500;text-decoration:underline;text-underline-offset:2px;font-weight:700}
.gpe-glink:hover{filter:brightness(1.15)}
.gpe-focus{display:inline-block;margin:6px 0 0;font-size:12px;opacity:.95}
.gpe-boost{display:flex;gap:10px;align-items:center;margin:8px 0;padding:9px 12px;border-radius:12px;background:color-mix(in srgb,var(--gpe-acc) 16%,transparent);font-size:13px;line-height:1.4}
.gpe-boost-x{font-weight:900;font-size:16px;color:var(--gpe-acc);white-space:nowrap}
.gpe-board{margin-top:12px;border-top:1px solid var(--gpe-line);padding-top:10px}
.gpe-board-h{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;margin-bottom:6px}.gpe-board-h span{font-size:12px;opacity:.8}
.gpe-board-prizes{display:flex;gap:8px;flex-wrap:wrap;margin:4px 0 8px}
.gpe-bp{display:inline-flex;gap:5px;align-items:center;font-size:12px}.gpe-bp i{font-style:normal;font-weight:900;opacity:.8}
.gpe-board-rows{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}
.gpe-board-rows li{display:flex;gap:10px;align-items:center;padding:6px 10px;border-radius:10px;background:rgba(127,127,127,.08);font-size:13px}
.gpe-board-rows li i{font-style:normal;font-weight:900;width:26px;opacity:.8}.gpe-board-rows li span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gpe-board-rows li.is-me{background:color-mix(in srgb,var(--gpe-acc) 25%,transparent);font-weight:800}
.gpe-board-me,.gpe-board-empty{font-size:12.5px;margin:8px 0 0;font-weight:700}
