#save-status.save-status{margin-left:auto;margin-right:14px;font-size:13px;color:#52695a;line-height:1.35;max-width:50%;overflow-wrap:anywhere}
#save-status.save-status:not(:empty){display:block}
#save-status.save-status:empty{display:none}
.formula-shortcut-hint{margin:0 0 14px;padding:14px 16px;background:#faf5f7;border:1px solid var(--line);border-radius:9px;font-size:13px;line-height:1.55}
.formula-shortcut-hint>strong{font-size:14px}
.formula-shortcut-hint p{margin:5px 0 0}
.formula-shortcut-hint ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 18px;list-style:none;padding:0;margin:10px 0}
.formula-shortcut-hint li{display:flex;align-items:baseline;gap:9px}
.formula-shortcut-hint kbd{white-space:nowrap;background:white;border:1px solid #dfd0d6;border-radius:4px;padding:1px 5px;font:12px var(--mono,monospace)}
.formula-shortcut-hint code{white-space:nowrap;font-size:13px}
@media(pointer:coarse){.formula-shortcut-hint{display:none}}
@media(max-width:500px){.formula-shortcut-hint ul{grid-template-columns:1fr}}
.save-retry{font-size:13px;min-height:44px;margin-right:12px;letter-spacing:0}
.session-pause{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:28px 0 4px;padding-top:18px;border-top:1px solid var(--line)}
.session-pause span,.session-save-note{font-size:14px;color:var(--muted)}
.session-pause .text-button,[data-finish-session]{min-height:44px}
.lesson-completion-actions{display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap}
.lesson-celebration .session-save-note{margin:0}
.session-rest{display:grid;grid-template-columns:32px minmax(0,1fr);gap:4px 12px;align-items:center;max-width:780px;margin:0 0 20px;padding:16px 20px;background:#f0f6f1;border:1px solid #ccdcd0;border-radius:12px}
.session-rest h2{font:24px var(--serif);margin:0}
.session-rest h2:focus{outline:none}
.session-rest p{grid-column:2;line-height:1.5;max-width:62ch;font-size:14px;margin:0}
.session-rest #session-account{grid-column:2;margin-top:8px;padding-top:10px}
.rest-mark{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;color:#246043;background:#d9ebdf;font-size:20px}
#session-account{margin-top:22px;padding-top:16px;border-top:1px solid #ccdcd0}
#session-account p{margin:6px 0}
#session-account .text-button{text-align:left;min-height:44px}
.symbol-reminders{margin:22px 0 4px;padding-top:14px;border-top:1px solid var(--line)}
.symbol-reminders>p{font-size:13px;color:var(--muted);margin:0 0 8px}
.symbol-reminder-buttons{display:flex;flex-wrap:wrap;gap:7px}
.predicate-welcome{max-width:640px;padding:26px;border:1px solid #d5c9d9;border-radius:14px;background:#faf7fb}
.predicate-welcome p{font-size:18px;line-height:1.65;margin:0 0 18px}
.predicate-welcome .button-row{gap:18px;flex-wrap:wrap}
.predicate-welcome .text-link{display:inline-flex;align-items:center;min-height:44px}
.symbol-reminder{background:#faf8f3;color:#563d65;border:1px solid #d5c9d9;border-radius:8px;min-width:44px;min-height:44px;padding:5px 11px;font:21px var(--serif);cursor:pointer}
.symbol-reminder:hover{background:#eee6f1}
.symbol-reminder:focus-visible,.argument-sentence:focus-visible{outline:3px solid #a12652;outline-offset:3px}
.symbol-dialog{width:calc(100% - 32px);max-width:480px;box-sizing:border-box;padding:30px}
.symbol-dialog h2{font:30px var(--serif);margin:12px 0 20px}
.symbol-dialog p{line-height:1.6}
.symbol-example{padding:16px;border-left:3px solid #87608e;background:#f5f0f7;border-radius:0 7px 7px 0}
.argument-instructions{font-size:14px;color:var(--muted);margin:0 0 15px;line-height:1.5}
.argument-tools{display:flex;flex-wrap:wrap;gap:10px;border:0;padding:0;margin:0 0 17px}
.argument-tools legend{font-size:14px;margin-bottom:8px}
.argument-tool{display:flex;align-items:center;gap:8px;min-height:44px;padding:7px 13px;box-sizing:border-box;border-radius:8px;border:1px solid #b4cdc7;background:#eaf5f1;cursor:pointer;color:#225b50}
.argument-tool:has(input:checked){outline:2px solid currentColor;outline-offset:2px}
.argument-tool:last-child{color:#624382;background:#f1eafa;border-color:#cebadc}
.argument-tool input{margin:0;width:17px;height:17px;accent-color:currentColor}
.argument-passage{display:grid;gap:10px}
.argument-sentence{position:relative;width:100%;display:flex;gap:13px;align-items:center;justify-content:space-between;padding:17px;text-align:left;border:1px solid #d4cfc8;background:#fcfbf8;color:var(--ink);border-radius:9px;font:18px/1.45 var(--serif);cursor:pointer;transition:background .18s,border-color .18s}
.argument-sentence[data-role=premise]{background:#eaf5f1;border-color:#80b7a8;color:#214d44}
.argument-sentence[data-role=conclusion]{background:#f1eafa;border-color:#ad91c5;color:#4c3366}
.argument-label{font:12px/1.3 var(--sans, sans-serif);min-width:70px;text-align:right;flex-shrink:0}
.argument-bridge{margin:16px 0 2px;padding:17px;background:#f8f4ed;border-radius:8px;line-height:1.6}
.argument-bridge strong{display:block;font-size:15px;color:#3d6055}
.argument-bridge .argument-therefore{display:block;color:#644681;font-weight:600;margin-top:9px}
.argument-bridge.reveal{animation:argument-reveal .35s ease-out}
@keyframes argument-reveal{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.argument-sentence{transition:none}.argument-bridge.reveal{animation:none}}
@media(max-width:530px){.session-rest{padding:14px;gap:4px 10px}.session-rest h2{font-size:22px}.session-pause{gap:3px 12px}.session-pause span{font-size:13px}.argument-sentence{padding:13px;font-size:17px;gap:9px}.argument-label{min-width:62px;font-size:11px}.symbol-dialog{padding:24px}.save-status{font-size:12px}}
