.sp-ai{--accent-pale: color-mix(in srgb, var(--accent) 10%, var(--surface-raised));--success-pale: color-mix(in srgb, var(--status-success) 10%, var(--surface-raised));--error-pale: color-mix(in srgb, var(--status-error) 10%, var(--surface-raised));--info-pale: color-mix(in srgb, var(--status-info) 10%, var(--surface-raised))}.sp-ai .exercise{border:1px solid var(--rule);border-radius:var(--shape-panel);background:var(--surface-raised);padding:clamp(20px,3vw,30px);margin-bottom:22px}.sp-ai .exercise-head{display:flex;align-items:baseline;gap:10px;margin-bottom:12px}.sp-ai .exercise-num{font-family:var(--font-display);font-size:.85rem;font-weight:700;color:var(--fg-muted);letter-spacing:.04em}.sp-ai .problem{font-size:1.06rem;line-height:1.6;margin:0 0 18px}.sp-ai .prompt{font-size:.9rem;font-weight:700;color:var(--fg-secondary);margin:0 0 10px}.sp-ai .pool,.sp-ai .chain{list-style:none;margin:0 0 16px;padding:0;display:flex;flex-direction:column;gap:8px}.sp-ai .chain{counter-reset:chainstep;min-height:8px}.sp-ai .chip{display:flex;align-items:flex-start;gap:10px;width:100%;text-align:left;font:inherit;font-size:.97rem;color:var(--fg-primary);background:var(--surface-sunken);border:1.5px solid var(--rule);border-radius:var(--shape-panel);padding:11px 14px;cursor:pointer;transition:border-color .15s,background .15s,transform .15s}.sp-ai .chip:hover{border-color:var(--accent);background:var(--accent-pale)}.sp-ai .chip:focus-visible{outline:2px solid var(--action-focus);outline-offset:2px}.sp-ai .chain .chip{background:var(--accent-pale);border-color:var(--rule)}.sp-ai .chain .chip:before{counter-increment:chainstep;content:counter(chainstep);flex:0 0 22px;height:22px;border-radius:var(--shape-control);background:var(--accent);color:var(--surface-raised);font-size:.78rem;font-weight:800;display:grid;place-items:center}.sp-ai .chain-empty{border:1.5px dashed var(--rule);border-radius:var(--shape-panel);padding:14px;color:var(--fg-muted);font-size:.92rem;text-align:center}.sp-ai .ai-chain{list-style:none;margin:0 0 16px;padding:0;display:flex;flex-direction:column;gap:8px;counter-reset:aistep}.sp-ai .ai-step{display:flex;align-items:flex-start;gap:12px;width:100%;text-align:left;font:inherit;color:var(--fg-primary);background:var(--surface-sunken);border:1.5px solid var(--rule);border-radius:var(--shape-panel);padding:12px 15px;cursor:pointer;transition:border-color .15s,background .15s}.sp-ai .ai-step:before{counter-increment:aistep;content:counter(aistep);flex:0 0 22px;height:22px;border-radius:var(--shape-control);background:var(--fg-muted);color:var(--surface-raised);font-size:.78rem;font-weight:800;display:grid;place-items:center}.sp-ai .ai-step:hover{border-color:var(--status-error);background:var(--error-pale)}.sp-ai .ai-step:focus-visible{outline:2px solid var(--action-focus);outline-offset:2px}.sp-ai .ai-step .sub{display:block;font-weight:700;font-size:.93rem}.sp-ai .ai-step .work{display:block;color:var(--fg-secondary);font-size:.93rem}.sp-ai .ai-step.is-culprit{border-color:var(--status-error);background:var(--error-pale)}.sp-ai .ai-step.is-culprit:before{background:var(--status-error)}.sp-ai .ai-step.is-fine{opacity:.62}.sp-ai .ai-answer{font-weight:700;padding:10px 15px;border-radius:var(--shape-panel);background:var(--surface-sunken);margin-bottom:16px}.sp-ai .correction{display:block;margin-top:6px;font-size:.9rem;color:var(--accent);font-weight:700}.sp-ai .feedback{display:none;border-radius:var(--shape-panel);padding:14px 16px;margin-top:14px;font-size:.96rem;border-left:4px solid var(--rule);background:var(--surface-sunken)}.sp-ai .feedback.show{display:block}.sp-ai .feedback strong{display:block;margin-bottom:4px}.sp-ai .feedback.good{background:var(--success-pale);border-left-color:var(--status-success)}.sp-ai .feedback.good strong{color:var(--status-success)}.sp-ai .feedback.alt{background:var(--info-pale);border-left-color:var(--status-info)}.sp-ai .feedback.alt strong{color:var(--status-info)}.sp-ai .feedback.bad{background:var(--error-pale);border-left-color:var(--status-error)}.sp-ai .feedback.bad strong{color:var(--status-error)}.sp-ai .reveal{display:none;margin-top:14px;padding-top:14px;border-top:1px dashed var(--rule)}.sp-ai .reveal.show{display:block}.sp-ai .reveal ol{margin:0;padding-left:20px}.sp-ai .reveal li{margin-bottom:8px;font-size:.95rem}.sp-ai .reveal .sub{font-weight:700;display:block}.sp-ai .reveal .work{color:var(--fg-secondary)}.sp-ai .controls{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.sp-ai .btn-check{font:inherit;font-weight:800;border:none;border-radius:var(--shape-control);padding:9px 20px;cursor:pointer;background:var(--fg-primary);color:var(--surface-page)}.sp-ai .btn-check:disabled{opacity:.4;cursor:not-allowed}.sp-ai .btn-ghost{font:inherit;border:1.5px solid var(--rule);background:transparent;color:var(--fg-secondary);border-radius:var(--shape-control);padding:8px 18px;cursor:pointer}.sp-ai .attribution{font-size:.86rem;color:var(--fg-muted);border-top:1px solid var(--rule);padding-top:18px;margin-top:8px}.sp-ai .attribution a{color:var(--status-info)}@media(prefers-reduced-motion:reduce){.sp-ai .chip,.sp-ai .ai-step{transition:none}}.sp-ai .stage{margin-bottom:16px}.sp-ai .stage.is-hidden{display:none}.sp-ai .btn-verdict,.sp-ai .btn-op{font:inherit;font-size:.95rem;border:1.5px solid var(--rule);background:var(--surface-raised);color:var(--fg-primary);border-radius:var(--shape-control);padding:9px 18px;cursor:pointer;transition:border-color .15s,background .15s}.sp-ai .btn-verdict:hover,.sp-ai .btn-op:hover{border-color:var(--accent);background:var(--accent-pale)}.sp-ai .btn-verdict.on,.sp-ai .btn-op.on{background:var(--fg-primary);color:var(--surface-raised);border-color:var(--fg-primary)}.sp-ai .btn-op .op-symbol{font-weight:800;margin-right:2px}.sp-ai .reasons{list-style:none;margin:0;padding:0;display:grid;gap:8px}.sp-ai .btn-reason{font:inherit;font-size:.95rem;text-align:left;width:100%;border:1.5px solid var(--rule);background:var(--surface-sunken);color:var(--fg-primary);border-radius:var(--shape-panel);padding:11px 14px;cursor:pointer;transition:border-color .15s,background .15s}.sp-ai .btn-reason:hover,.sp-ai .btn-reason.on{border-color:var(--accent);background:var(--accent-pale)}.sp-ai .btn-reason.off{border-color:var(--status-error);background:var(--error-pale)}.sp-ai .ai-step:disabled{cursor:default}.sp-ai .tally{background:var(--island-bg);color:var(--island-fg);box-shadow:inset 0 0 0 var(--rule-width) var(--island-rule);border-radius:var(--shape-panel);padding:clamp(22px,3vw,32px);margin:30px 0 22px}.sp-ai .tally h3{font-family:var(--font-display);font-size:1.2rem;margin:0 0 10px;color:var(--island-fg)}.sp-ai .tally .verdict-line{margin:0 0 14px;font-size:1rem;line-height:1.6}.sp-ai .tally .buckets{list-style:none;margin:0 0 16px;padding:0;display:grid;gap:6px;font-size:.93rem;color:color-mix(in srgb,var(--island-fg) 78%,transparent)}.sp-ai .tally .buckets strong{color:var(--island-fg)}.sp-ai .tally .btn-ghost{border-color:color-mix(in srgb,var(--island-fg) 30%,transparent);color:color-mix(in srgb,var(--island-fg) 82%,transparent)}.sp-ai .tally .btn-ghost:hover{border-color:var(--island-fg);color:var(--island-fg)}.sp-ai .robot-name{border:1.5px dashed var(--rule);border-radius:var(--shape-panel);background:var(--surface-raised);padding:18px 20px;margin-bottom:24px}.sp-ai .robot-name p{margin:0 0 12px;font-size:.97rem}.sp-ai .robot-name .robot-note{margin:10px 0 0;font-size:.85rem;color:var(--fg-muted)}.sp-ai .robot-name input{font:inherit;font-size:.95rem;border:1.5px solid var(--rule);border-radius:var(--shape-control);padding:8px 16px;min-width:0;flex:0 1 200px;color:var(--fg-primary);background:var(--surface-sunken)}.sp-ai .robot-name input:focus-visible{outline:2px solid var(--action-focus);outline-offset:2px}.sp-ai .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.sp-ai .step-count{margin-left:auto;font-size:.78rem;font-weight:700;color:var(--fg-muted);background:var(--surface-sunken);border-radius:var(--shape-control);padding:3px 11px}.sp-ai .exercise-head{align-items:center}.sp-ai .ladder{list-style:none;margin:0 0 16px;padding:0;counter-reset:rung}.sp-ai .ladder .rung{counter-increment:rung;display:grid;grid-template-columns:24px 1fr;gap:10px;align-items:start;padding:10px 0;border-top:1px solid var(--rule)}.sp-ai .ladder .rung:first-child{border-top:0}.sp-ai .ladder .rung.is-hidden{display:none}.sp-ai .ladder .rung:before{content:counter(rung);grid-row:1 / span 2;width:24px;height:24px;border-radius:var(--shape-control);background:var(--accent);color:var(--surface-raised);font-size:.78rem;font-weight:800;display:grid;place-items:center}.sp-ai .ladder .rung .sub{font-weight:600;font-size:.98rem}.sp-ai .ladder .rung .work{font-size:.93rem;color:var(--fg-secondary);grid-column:2}.sp-ai .ladder .rung .work.is-hidden{display:none}.sp-ai .ladder-note{margin:0;font-size:.86rem;color:var(--fg-muted)}.sp-ai .order-note{background:var(--info-pale);border-left:4px solid var(--status-info);border-radius:var(--shape-panel);padding:12px 15px;font-size:.95rem;margin:12px 0 0}.sp-ai .filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:24px;padding-bottom:18px;border-bottom:1px solid var(--rule)}.sp-ai .filter-label{font-size:.9rem;color:var(--fg-secondary);margin-right:2px}.sp-ai .btn-filter{font:inherit;font-size:.88rem;border:1.5px solid var(--rule);background:var(--surface-raised);color:var(--fg-secondary);border-radius:var(--shape-control);padding:5px 14px;cursor:pointer}.sp-ai .btn-filter:hover{border-color:var(--accent);color:var(--fg-primary)}.sp-ai .btn-filter.on{background:var(--fg-primary);color:var(--surface-raised);border-color:var(--fg-primary)}.sp-ai .filter-count{flex-basis:100%;margin:4px 0 0;font-size:.85rem;color:var(--fg-muted)}.sp-ai .filters,.sp-ai [data-page-top]{scroll-margin-top:110px}.sp-ai .pager{display:flex;justify-content:center;align-items:center;gap:14px;margin:8px 0 28px}.sp-ai .pager[hidden]{display:none}.sp-ai .pager .btn-filter:disabled{opacity:.4;cursor:default;border-color:var(--rule)}.sp-ai .pager-status{font-size:.88rem;color:var(--fg-muted)}.sp-ai .btn-reason .kind-name{display:block;font-weight:700}.sp-ai .btn-reason .kind-tag{display:block;font-size:.88rem;color:var(--fg-secondary);margin-top:2px}.sp-ai .report-open{display:block;margin-top:14px;padding:0;border:none;background:none;font:inherit;font-size:.85rem;color:var(--fg-muted);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.sp-ai .report-open[hidden]{display:none}.sp-ai .report-open:hover{color:var(--fg-secondary)}.sp-ai .report-open:disabled{text-decoration:none;cursor:default;color:var(--status-success)}.sp-ai .report-open:focus-visible,.sp-ai .report-form input:focus-visible,.sp-ai .report-form textarea:focus-visible{outline:2px solid var(--action-focus);outline-offset:2px}.sp-ai .report-form{margin-top:14px;padding:14px 16px;border:1px solid var(--rule);border-radius:var(--shape-panel);background:var(--surface-sunken);font-size:.93rem}.sp-ai .report-form[hidden]{display:none}.sp-ai .report-form fieldset{border:none;margin:0 0 12px;padding:0}.sp-ai .report-form legend{font-weight:700;margin-bottom:8px;padding:0}.sp-ai .report-reason{display:flex;gap:8px;align-items:flex-start;margin-bottom:6px;cursor:pointer}.sp-ai .report-reason input{margin-top:4px;accent-color:var(--accent)}.sp-ai .report-note{display:block;margin-bottom:12px}.sp-ai .report-note>span{display:block;margin-bottom:6px;font-weight:700}.sp-ai .report-optional{font-weight:400;color:var(--fg-muted)}.sp-ai .report-form textarea{display:block;width:100%;box-sizing:border-box;font:inherit;border:1.5px solid var(--rule);border-radius:var(--shape-control);padding:8px 12px;color:var(--fg-primary);background:var(--surface-raised);resize:vertical}.sp-ai .report-status{margin:10px 0 0;font-size:.88rem}.sp-ai .report-status:empty{display:none}.sp-ai .report-status.bad{color:var(--status-error)}
