.px{--px-sunken:var(--rule-soft);--px-green-bg:color-mix(in srgb,var(--success) 8%,var(--paper));--px-red-bg:color-mix(in srgb,var(--danger) 6%,var(--paper));color:var(--ink);font-family:var(--sans)}.px-page{max-width:1080px;margin:0 auto;width:100%;padding:28px 40px 90px;display:flex;flex-direction:column;gap:12px}.px-page-wide{max-width:1320px}.px-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.px-eyebrow,.px-kicker{margin:0;font:600 11.5px var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.px-kicker{margin:14px 0 6px}.px-back{color:var(--muted);text-decoration:none}.px-back:hover{color:var(--accent)}.px-head{display:flex;flex-direction:column;gap:10px}.px-title{font:700 clamp(28px,4.4vw,40px) /1.12 var(--sans);letter-spacing:-.03em}.px-title-sm{font-size:clamp(24px,3.4vw,32px)}.px-lede{margin:0;max-width:66ch;color:var(--ink-soft);line-height:1.7}.px-muted{margin:0;color:var(--muted);font-size:13.5px}.px-diff{display:inline-block;font:600 11.5px var(--sans);letter-spacing:0;padding:2px 9px;border-radius:999px;background:var(--px-sunken);color:var(--muted);vertical-align:middle;white-space:nowrap}.px-title .px-diff{font-size:12.5px;padding:3px 10px;margin-left:6px}.px-diff-E{color:var(--success)}.px-diff-M{color:var(--warn)}.px-diff-H{color:var(--danger)}.px-core,.px-status,.px-tag{font:500 11.5px var(--mono);color:var(--accent);white-space:nowrap}.px-status-due,.px-tag-due{color:var(--warn)}.px-status-solved,.px-tag-ok{color:var(--success)}.px-status-stuck,.px-tag-stuck{color:var(--danger)}.px-meter-wrap{margin-top:4px}.px-meter{height:8px;max-width:420px;background:var(--px-sunken);border-radius:999px;overflow:hidden}.px-meter i{display:block;height:100%;background:var(--accent);border-radius:999px;transition:width .4s ease}.px-meter-label{margin:6px 0 0;font:500 12px var(--mono);color:var(--muted)}.px-upnext{margin-top:8px;background:var(--accent-dim);border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);border-radius:var(--radius);padding:16px 18px;display:flex;flex-direction:column;gap:10px}.px-group-h,.px-upnext h2{font:700 20px/1.25 var(--sans);letter-spacing:-.02em}.px-group{margin-top:18px;display:flex;flex-direction:column;gap:8px}.px-group-h small{font:500 12px var(--mono);color:var(--muted);margin-left:4px;letter-spacing:0}.px-filters{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.px-chip{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--rule);background:var(--paper);color:var(--ink-soft);border-radius:999px;padding:5px 13px;font:500 13px var(--sans);cursor:pointer}.px-chip:hover{border-color:var(--accent)}.px-chip[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--paper)}.px-rows{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.px-row{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;padding:10px 14px;background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius-sm);box-shadow:var(--shadow)}.px-row.is-solved{opacity:.66}.px-row.is-due{border-color:var(--warn)}.px-row.is-stuck{border-color:var(--danger)}.px-row-title{flex:1 1 220px;min-width:0;color:var(--ink);font-weight:500;text-decoration:none}.px-row-title:hover{color:var(--accent)}.px-row-icons{display:flex;gap:6px;align-items:center;margin-left:auto}.px-ico{width:30px;height:28px;display:grid;place-items:center;border:1px solid var(--rule);border-radius:7px;color:var(--ink-soft);background:var(--paper);text-decoration:none}.px-ico:hover{border-color:var(--accent);color:var(--accent)}.px-reset{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;color:var(--muted);cursor:pointer;font-size:15px;padding:2px 4px}.px-reset:hover{color:var(--ink)}.px-grid{display:grid;grid-template-columns:minmax(280px,5fr) minmax(0,7fr);grid-gap:24px;gap:24px;align-items:start;margin-top:6px}.px-left,.px-right{min-width:0}.px-statement{background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius);padding:16px 18px;line-height:1.65}.px-statement p{margin:0 0 10px}.px-statement p:last-child{margin-bottom:0}.px-examples{margin:0 0 12px;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px}.px-case code,.px-examples code,.px-hint code,.px-sig code{font:13px/1.5 var(--mono)}.px-examples code{display:block;padding:7px 10px;background:var(--paper-2);border:1px solid var(--rule-soft);border-radius:8px;white-space:pre-wrap;overflow-wrap:anywhere}.px-hint,.px-sig{color:var(--ink-soft);font-size:14px}.px-hint{margin-top:10px}.px-hint p{margin:0;padding:10px 12px;background:var(--accent-dim);border-radius:var(--radius-sm)}.px-solution pre{margin:0;padding:14px;background:var(--paper-2);border:1px solid var(--rule);border-radius:var(--radius-sm);overflow-x:auto;font:13px/1.55 var(--mono);max-width:100%}.px-tools{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:8px}.px-timer{font:500 17px var(--mono);margin-right:auto;color:var(--ink-soft)}.px-timer.is-over{color:var(--danger)}.px-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:6px;border:1px solid var(--rule);background:var(--paper);color:var(--ink);border-radius:var(--radius-sm);padding:8px 14px;font:600 13.5px var(--sans);cursor:pointer;text-decoration:none}.px-btn:hover{border-color:var(--accent);color:var(--ink)}.px-btn:disabled{opacity:.6;cursor:default}.px-btn-primary,.px-btn-primary:hover{background:var(--accent);border-color:var(--accent);color:var(--paper)}.px-btn-primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.px-btn-ghost{border-color:transparent;color:var(--ink-soft)}.px-btn-sm{padding:6px 11px}.px-editor{display:block;width:100%;height:380px;min-height:200px;padding:14px 16px;background:var(--paper-2);color:var(--ink);border:1px solid var(--rule);border-radius:var(--radius);font:14px/1.6 var(--mono);-moz-tab-size:2;tab-size:2;resize:vertical;white-space:pre;overflow:auto}.px-editor:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.px-keys{margin:6px 0 0;display:flex;flex-wrap:wrap;gap:4px 10px;font-size:12.5px;color:var(--muted)}.px-keys kbd{font:11.5px var(--mono);padding:0 4px;border:1px solid var(--rule);border-radius:4px;background:var(--paper)}.px-status{margin-left:auto}.px-out{margin-top:12px;display:flex;flex-direction:column;gap:6px}.px-sum{margin:0;font:600 15px var(--mono);color:var(--danger)}.px-sum.is-pass{color:var(--success)}.px-case{padding:8px 12px;background:var(--px-red-bg);border:1px solid var(--danger);border-radius:var(--radius-sm);font-size:13px;display:flex;flex-direction:column;gap:3px;min-width:0}.px-case.is-ok{background:var(--paper);border-color:var(--rule)}.px-case.is-ok b{color:var(--success)}.px-case code{font-size:12px;color:var(--ink-soft);word-break:break-all}.px-case code,.px-err{overflow-wrap:anywhere}.px-err{color:var(--danger);font:13px var(--mono);white-space:pre-wrap;padding:8px 12px;background:var(--px-red-bg);border:1px solid var(--danger);border-radius:var(--radius-sm)}.px-case .px-err{padding:0;border:0;background:none}.px-actions{margin-top:12px;display:flex;flex-wrap:wrap;gap:10px;align-items:center}@media (max-width:900px){.px-grid{grid-template-columns:minmax(0,1fr)}.px-editor{height:320px}}@media (max-width:720px){.px-page{padding:20px 16px 70px}.px-editor{font-size:13px}}.px code,.px pre,.px-editor{font-variant-ligatures:none;font-feature-settings:"liga" 0,"calt" 0,none}