.w-pts{display:grid;gap:12px}
.w-pts-win{border:3px solid var(--ink);border-radius:6px;background:var(--paper-hi);box-shadow:4px 4px 0 var(--ink);overflow:hidden}
.w-pts-bar{padding:4px 10px;border-bottom:3px solid var(--ink);background:repeating-linear-gradient(180deg,var(--ink) 0 2px,transparent 2px 5px);text-align:center}
.w-pts-bar b{display:inline-block;padding:0 10px;background:var(--paper-hi);font:700 14px/1.5 var(--sans)}
.w-pts-body{display:grid;gap:12px;padding:16px}.w-pts-body>*{min-width:0;margin:0}
.w-pts-lede{font:700 20px/1.3 var(--serif)}
.w-pts-read{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.w-pts-read span{font:600 15px var(--sans)}
.w-pts-read .chip[aria-pressed=true][data-ok="0"]{background:var(--warm);color:var(--ink)}
.w-pts-rules,.w-pts-log{list-style:none;padding:0;display:grid;gap:6px}
.w-pts-rules button{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:8px 14px;border:2px solid var(--ink);border-radius:6px;background:var(--card);color:var(--ink);font:600 16px var(--sans);text-align:left;cursor:pointer;box-shadow:3px 3px 0 var(--ink);transition:transform var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease)}
.w-pts-rules button:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}
.w-pts-rules b{font:800 18px var(--serif);color:var(--go)}
.w-pts-total{display:flex;align-items:baseline;gap:12px;font:600 15px var(--sans)}
.w-pts-n{display:inline-block;font:700 44px/1 var(--serif)}
.w-pts-n.pop{animation:w-pts-pop var(--t-base) var(--ease-snap)}
@keyframes w-pts-pop{from{transform:scale(1.18)}to{transform:none}}
.w-pts-log li{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;padding:6px 10px;border-left:6px solid var(--go);background:var(--card);font:400 15px var(--sans);animation:w-pts-in var(--t-base) var(--ease)}
.w-pts-log li.bad{border-color:var(--warm)}.w-pts-log i{font-style:normal;font-size:13px;color:var(--ink2)}.w-pts-log b{color:var(--go)}
@keyframes w-pts-in{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}
.w-pts-note{font:italic 15px var(--serif);color:var(--ink2)}
.w-pts:not(.live) .w-live{display:none}.w-pts:not(.live) button{pointer-events:none}
@media (prefers-reduced-motion:reduce){.w-pts-n,.w-pts-log li,.w-pts-rules button{animation:none!important;transition:none!important}}
