:root{--pp-bg:#f6f7fb;--pp-card:#ffffff;--pp-text:#0f172a;--pp-muted:#64748b;--pp-line:rgba(15,23,42,.08);--pp-line-strong:rgba(15,23,42,.12);--pp-shadow:0 10px 30px rgba(15,23,42,.08);--pp-shadow-soft:0 6px 18px rgba(15,23,42,.06);--pp-radius:16px}body{background:var(--pp-bg)}.pp-wrap{margin:0 auto}.pp-card{background:var(--pp-card);border:1px solid var(--pp-line);border-radius:var(--pp-radius);box-shadow:var(--pp-shadow-soft)}.pp-h{font-size:20px;font-weight:800;color:var(--pp-text);letter-spacing:-.01em}.pp-sub{font-size:13px}.pp-muted,.pp-sub{color:var(--pp-muted)}.pp-pill{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--pp-line-strong);border-radius:8px;padding:6px 12px;font-size:12px;color:var(--pp-text);background:rgba(255,255,255,.75);backdrop-filter:saturate(130%) blur(4px)}.pp-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:18px}@media (max-width:992px){.pp-grid{grid-template-columns:1fr}}.pp-roomcode{font-family:ui-monospace,Menlo,Monaco,Consolas,monospace;font-weight:900;letter-spacing:.12em}.pp-list{max-height:420px;overflow:auto;padding-right:2px}.pp-list::-webkit-scrollbar{width:10px}.pp-list::-webkit-scrollbar-thumb{background:rgba(15,23,42,.12);border-radius:8px;border:3px solid transparent;background-clip:content-box}.pp-story-item{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:12px;border:1px solid var(--pp-line);border-radius:14px;background:#fff;box-shadow:0 2px 10px rgba(15,23,42,.04);transition:transform .08s ease,box-shadow .08s ease,border-color .08s ease}.pp-story-item:hover{transform:translateY(-1px);box-shadow:0 10px 20px rgba(15,23,42,.06)}.pp-story-item.active{border-color:rgba(37,99,235,.28);box-shadow:0 0 0 4px rgba(37,99,235,.1)}.pp-story-title{font-weight:800;color:var(--pp-text);font-size:14px;line-height:1.25}.pp-story-meta{font-size:12px;color:var(--pp-muted)}.pp-btn{border-radius:8px}.btn.pp-btn{box-shadow:0 8px 18px rgba(15,23,42,.08)}.btn.pp-btn:disabled{box-shadow:none;opacity:.55}.pp-cards{display:flex;flex-wrap:wrap;gap:10px}.pp-cardbtn{min-width:72px;height:56px;border-radius:8px;border:1px solid rgba(15,23,42,.14);background:linear-gradient(180deg,#fff,#fbfbfd);font-weight:900;color:var(--pp-text);box-shadow:0 10px 18px rgba(15,23,42,.06);transition:transform .08s ease,box-shadow .08s ease,border-color .08s ease}.pp-cardbtn:hover{transform:translateY(-1px);box-shadow:0 14px 26px rgba(15,23,42,.1)}.pp-cardbtn.active{border-color:rgba(37,99,235,.55);box-shadow:0 0 0 4px rgba(37,99,235,.14),0 16px 28px rgba(15,23,42,.1)}.pp-votes{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}@media (max-width:576px){.pp-votes{grid-template-columns:1fr}}.pp-vote{border:1px solid var(--pp-line);border-radius:14px;background:#fff;padding:12px;display:flex;align-items:center;justify-content:space-between;gap:10px;box-shadow:0 2px 10px rgba(15,23,42,.04)}.pp-vote strong{font-size:13px}.pp-vhidden,.pp-vval{font-weight:900}.pp-vhidden{color:#94a3b8}.pp-badge,.pp-toast .pp-toast-msg{display:inline-flex;align-items:center;gap:8px;border-radius:8px}.pp-badge{padding:6px 10px;font-size:12px;border:1px solid transparent}.pp-badge-ok{background:rgba(34,197,94,.1);border-color:rgba(34,197,94,.2);color:#166534}.pp-badge-warn{background:rgba(245,158,11,.1);border-color:rgba(245,158,11,.22);color:#92400e}.pp-badge-info{background:rgba(59,130,246,.1);border-color:rgba(59,130,246,.22);color:#1e40af}.pp-actions{display:flex;flex-wrap:wrap;gap:10px}.pp-hr{height:1px;background:var(--pp-line);margin:14px 0}.pp-kv{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px}.pp-kv b{color:var(--pp-text)}.pp-toast{min-height:18px;font-size:13px}.pp-toast .pp-toast-msg{padding:8px 10px;border:1px solid var(--pp-line);background:rgba(255,255,255,.75)}@media (max-width:576px){.pp-card{border-radius:14px}.pp-h{font-size:19px}.pp-cardbtn{min-width:64px;height:52px;border-radius:14px}}.pp-container-full{width:100%;max-width:98%;margin:34px auto 40px;padding:0 12px}@media (max-width:575.98px){.pp-container-full{max-width:100%;padding:0 12px;margin:22px auto 40px}}