/* StudentMate v73 — diamond buttons: every button looks cut from a gem and presses like a real key.
   Visual only (colour, depth, light, press) — sizes and layouts are untouched. The mood engine sets --d73-* per person. */
:root{--d73-a:#7c8cff;--d73-b:#4f46e5;--d73-c:#3426c9;--d73-edge:#271c9e;--d73-glow:rgba(79,70,229,.45);--d73-ink:#fff;
  --d73-s1:#ffffff;--d73-s2:#eef1f7;--d73-sedge:#c9cfdb;--d73-sink:#1d2433}
html body :is(.btn.primary,.btn.pri,.dm-btn.primary,.vh-btn.pri,.v5-btn.primary,.smp-btn.primary,.smartapply-btn.primary,button.primary){
  background:
    linear-gradient(135deg,rgba(255,255,255,.42) 0 14%,rgba(255,255,255,0) 14% 46%,rgba(255,255,255,.14) 46% 58%,rgba(255,255,255,0) 58%),
    linear-gradient(180deg,var(--d73-a) 0%,var(--d73-b) 52%,var(--d73-c) 100%) !important;
  color:var(--d73-ink) !important;border:1px solid rgba(255,255,255,.28) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.6),inset 0 -2px 0 rgba(0,0,0,.16),0 3px 0 var(--d73-edge),0 10px 22px -8px var(--d73-glow) !important;
  text-shadow:0 1px 0 rgba(0,0,0,.18);transform:translateY(0);
  transition:transform .09s ease,box-shadow .09s ease,filter .2s ease,background-position .6s ease !important;background-size:220% 100%,100% 100% !important;background-position:100% 0,0 0 !important}
html body :is(.btn,.dm-btn,.vh-btn,.v5-btn,.smp-btn,.smartapply-btn,.chip-btn,.doc-btn,.saved-btn,.tag-btn):not(.primary):not(.pri):not(.ghost):not(.danger):not([class*="tab"]):not(.active):not(.on):not(.sel):not(.selected):not(.cur):not(.current):not([aria-pressed="true"]):not([aria-selected="true"]):not([aria-current]){
  background:linear-gradient(135deg,rgba(255,255,255,.9) 0 16%,rgba(255,255,255,0) 16%),linear-gradient(180deg,var(--d73-s1) 0%,var(--d73-s2) 100%) !important;
  color:var(--d73-sink);border:1px solid var(--d73-sedge) !important;
  box-shadow:inset 0 1px 0 #fff,0 2px 0 var(--d73-sedge),0 6px 14px -8px rgba(16,24,40,.28) !important;
  transform:translateY(0);transition:transform .09s ease,box-shadow .09s ease,filter .2s ease !important}
html body :is(.btn,.dm-btn,.vh-btn,.v5-btn,.smp-btn,.smartapply-btn,button.primary):not(:disabled):hover{filter:brightness(1.05) saturate(1.05);transform:translateY(-1px)}
html body :is(.btn.primary,.btn.pri,.dm-btn.primary,.vh-btn.pri,.v5-btn.primary,.smp-btn.primary,button.primary):not(:disabled):hover{background-position:0 0,0 0 !important}
html body :is(.btn,.dm-btn,.vh-btn,.v5-btn,.smp-btn,.smartapply-btn,button.primary):not(:disabled):active,
html body :is(.btn,.dm-btn,.vh-btn,.v5-btn,.smp-btn,.smartapply-btn,button.primary).d73-press{transform:translateY(2px) !important;filter:brightness(.98)}
html body :is(.btn.primary,.btn.pri,.dm-btn.primary,.vh-btn.pri,.v5-btn.primary,.smp-btn.primary,button.primary):not(:disabled):active,
html body :is(.btn.primary,.btn.pri,.dm-btn.primary,.vh-btn.pri,.v5-btn.primary,.smp-btn.primary,button.primary).d73-press{
  box-shadow:inset 0 2px 4px rgba(0,0,0,.25),inset 0 -1px 0 rgba(255,255,255,.2),0 1px 0 var(--d73-edge),0 4px 10px -6px var(--d73-glow) !important}
html body :is(.btn,.dm-btn,.vh-btn,.v5-btn,.smp-btn,.smartapply-btn):not(.primary):not(.pri):not(.ghost):not(:disabled):active,
html body :is(.btn,.dm-btn,.vh-btn,.v5-btn,.smp-btn,.smartapply-btn).d73-press:not(.primary):not(.pri){box-shadow:inset 0 2px 4px rgba(16,24,40,.14),0 0 0 var(--d73-sedge) !important}
html body :is(.btn,.dm-btn,.vh-btn,button.primary):disabled{filter:grayscale(.35) opacity(.6);transform:none !important}
html body :is(.btn,.dm-btn,.vh-btn,.v5-btn,.smp-btn,button.primary):focus-visible{outline:3px solid color-mix(in srgb,var(--d73-b) 45%,transparent) !important;outline-offset:2px}
/* the SOS key: a deep ruby that always looks like the most important button on the screen */
html body :is(.sos-btn,.btn.danger,.dm-btn.danger,[data-sos-btn]){
  background:linear-gradient(135deg,rgba(255,255,255,.4) 0 14%,rgba(255,255,255,0) 14%),linear-gradient(180deg,#ff6b6b 0%,#e11d48 55%,#b4123a 100%) !important;color:#fff !important;
  border:1px solid rgba(255,255,255,.3) !important;box-shadow:inset 0 1px 0 rgba(255,255,255,.55),0 3px 0 #8f0f2e,0 12px 26px -8px rgba(225,29,72,.6) !important}
@media (prefers-reduced-motion: reduce){html body :is(.btn,.dm-btn,.vh-btn,button.primary){transition:none !important}}
