/* CaseMentor interaction contract. Load after the product adapter. */
body .btn,body .btn-sm{border-radius:6px;min-height:46px;padding:10px 18px;border:1px solid #c8d5e1;color:var(--suite-ink);background:#fff;font:650 16px/1.4 var(--suite-font);text-decoration:none;box-shadow:none;transition:background-color 140ms ease,border-color 140ms ease,color 140ms ease;transform:none}
body .btn:hover,body .btn-sm:hover{background:var(--suite-blue-soft);border-color:#9dbacf;color:var(--suite-navy);text-decoration:none;transform:none;box-shadow:none}
body .btn.primary,body .btn.btn-primary,body .suite-primary{background:var(--suite-blue);border-color:var(--suite-blue);color:#fff}
body .btn.primary:hover,body .btn.btn-primary:hover,body .suite-primary:hover{background:var(--suite-blue-hover);border-color:var(--suite-blue-hover);color:#fff}
body .btn.danger,body .btn.btn-danger{background:#fff;color:var(--suite-error);border-color:#d7a9ae}body .btn.danger:hover,body .btn.btn-danger:hover{background:var(--suite-error-soft);color:var(--suite-error);border-color:#d7a9ae}
body .btn:active:not(:disabled):not([aria-disabled=true]){box-shadow:inset 0 1px 3px #102d4322}body .btn:disabled,body .btn[aria-disabled=true]{opacity:.55;cursor:default;transform:none;box-shadow:none;pointer-events:none}
body .btn[aria-pressed=true]{background:var(--suite-blue-soft);border-color:var(--suite-blue);color:var(--suite-blue)}
body .suite-sidebar nav a{border-radius:6px}body .suite-sidebar nav a:hover{background:#f3f7fb;color:var(--suite-navy)}body .suite-sidebar nav a[aria-current=page]{background:var(--suite-blue-soft);color:var(--suite-blue);box-shadow:inset 3px 0 var(--suite-blue)}
body :is(.topic-row,.course-row,.practice-row,.quick-row,.overview-topic,.lesson-row,.library-list li):hover{background:#f7fafd}
body :is(.topic-row,.course-row,.practice-row,.quick-row,.overview-topic,.lesson-row,.library-list a):hover :is(h3,strong){color:var(--suite-blue);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
body .exercise-link:hover{border-color:var(--suite-blue);background:var(--suite-blue-soft)}
body :is(.topic-group,.curriculum-module)>summary:hover{background:var(--suite-bg)}body :is(.topic-group,.curriculum-module)[open]>summary{background:var(--suite-blue-soft)}
body .choice{border-radius:6px;box-shadow:none;transition:background-color 140ms ease,border-color 140ms ease}body .choice:hover{border-color:var(--suite-blue);background:#f7fafd}body .choice:has(input:checked){border-color:var(--suite-blue);background:var(--suite-blue-soft);box-shadow:none}body .choice:has(input:disabled){cursor:default}
body :is(select,textarea,input:not([type=radio]):not([type=checkbox]):not([type=range]):not([type=file])),body .field :is(input:not([type=radio]):not([type=checkbox]),select,textarea){border-radius:6px;border-color:#bacbd9}
body :is(input,textarea,select):disabled{background:var(--suite-bg);color:var(--suite-muted);cursor:default}body :is(input[type=radio],input[type=checkbox]){accent-color:var(--suite-blue)}
body :is(a,button,input,select,textarea,summary,[role=tabpanel]):focus-visible{outline:3px solid #4798ca;outline-offset:3px}body .input-unit:focus-within{outline:3px solid #4798ca;outline-offset:3px}
body :is(.back,.text-link,.related):hover{color:var(--suite-blue-hover);text-decoration:underline}
@media(prefers-reduced-motion:reduce){body .btn,body .choice{transition:none}}
