.rem-v2{box-sizing:border-box;width:min(900px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;margin:auto;padding:clamp(16px,3vw,28px);border:1px solid var(--line,#77819e);border-radius:12px;background:var(--surface,#fff);color:var(--ink,#18232c);font:inherit;line-height:1.5}
.rem-v2::backdrop{background:#0009}
.rem-v2,.rem-v2 *{box-sizing:border-box;animation:none!important;transition:none!important}
.rem-v2 [hidden]{display:none!important}
.rem-v2 h2{font-size:1.35rem;margin:0}.rem-v2 h3{font-size:1.1rem;margin:16px 0 8px}
.rem-v2 p{white-space:pre-line;overflow-wrap:anywhere;margin:12px 0}.rem-v2 progress{display:block;width:100%;margin:12px 0}
.rem-v2 .rv-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.rem-v2 header .rv-actions{justify-content:space-between}
.rem-v2 button{min-height:44px;max-width:100%;padding:8px 12px;border:1px solid var(--line,#77819e);border-radius:6px;background:var(--surface,#fff);color:inherit;font:inherit;cursor:pointer;overflow-wrap:anywhere;margin:4px}
.rem-v2 button[aria-pressed=true]{border-width:2px;font-weight:650}.rem-v2 button:disabled{opacity:.5;cursor:default}
.rem-v2 :focus-visible{outline:3px solid var(--accent,#3355ff);outline-offset:2px}
.rem-v2 label{display:block;margin:12px 0}.rem-v2 textarea,.rem-v2 input:not([type=checkbox]),.rem-v2 select{display:block;width:100%;min-height:44px;padding:8px;margin-top:6px;border:1px solid var(--line,#77819e);background:var(--surface,#fff);color:inherit;font:inherit;border-radius:6px}
.rem-v2 textarea{min-height:70px;resize:vertical}.rem-v2 input[type=checkbox]{width:20px;height:20px;vertical-align:middle;margin-right:8px}
.rem-v2 .rv-stimulus{font-size:clamp(1.6rem,4vw,2.4rem);font-weight:650}.rem-v2 .rv-note{font-size:.92rem}.rem-v2 .rv-coaching,.rem-v2 .rv-help{background:var(--accent-soft,#dbe1f4);padding:12px;border-radius:6px}.rem-v2 .rv-cue{font-weight:650}
.rem-v2 .rv-grid{display:grid;grid-template-columns:repeat(var(--rv-size),minmax(0,1fr));max-width:420px;margin:12px auto;gap:3px}.rem-v2 .rv-grid button{aspect-ratio:1;min-height:44px;margin:0;padding:4px}.rem-v2 .rv-grid .rv-blocked{background:var(--line,#77819e)}.rem-v2 .rv-grid .rv-goal{font-weight:700}
.rem-v2 .rv-shapes{display:block;width:min(300px,75vw);height:auto;margin:16px auto;fill:currentColor}.rem-v2 .rv-material{line-height:1.8;padding-left:24px}
