/* Stadira Quick Keys look 1.5.1 - equation editor, calculator and on-screen keyboard. "html body #ibx" outranks the player's own "#ibx" rules, so no load-order tricks are needed. */

/* ===== 1.5.0 Quick Keys look: equation editor, calculator and on-screen keyboard (all papers) ===== */
html body #ibx{--qk-cream:#FFF8E6;--qk-line:#E7D08F;--qk-gold:#F4B942;--qk-gold2:#F7CD6B;--qk-navy:#0B1F3A;--qk-stripe:linear-gradient(90deg,#F4B942,#2A7F8C,#C4624B)}

/* --- equation editor --- */
html body #ibx .ib-dlg:has(.ib-eq) .ib-dh{position:relative}
html body #ibx .ib-dlg:has(.ib-eq) .ib-dh:after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:var(--qk-stripe)}
html body #ibx .ib-eq .tabs{gap:8px;padding:2px 0 12px}
html body #ibx .ib-eq .tabs button,html body #ibx .ib-eq .tabs button:hover{background:var(--qk-cream);border:1.5px solid var(--qk-line);color:var(--qk-navy);font:800 13.5px Nunito,Arial,sans-serif;padding:7px 15px;border-radius:999px;box-shadow:none;transform:none}
html body #ibx .ib-eq .tabs button:hover{background:#FFF1CC;border-color:var(--qk-gold)}
html body #ibx .ib-eq .tabs button.on:nth-child(n),html body #ibx .ib-eq .tabs button.on:nth-child(n):hover{background:var(--qk-navy);border-color:var(--qk-navy);color:var(--qk-gold);box-shadow:0 2px 6px rgba(11,31,58,.25)}
html body #ibx .ib-eq .pal{position:relative;background:#fff;border:1.5px solid var(--qk-line);border-radius:14px;padding:16px 10px 10px;gap:6px;box-shadow:0 6px 18px rgba(11,31,58,.08);overflow:hidden}
html body #ibx .ib-eq .pal:before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--qk-stripe)}
html body #ibx .ib-eq .pal button{min-width:44px;height:40px;padding:0 8px;border-radius:10px;background:var(--qk-cream);border:1.5px solid var(--qk-line);color:var(--qk-navy);font-family:"Times New Roman",serif;font-size:18px;box-shadow:none;transition:background .12s,color .12s,border-color .12s}
html body #ibx .ib-eq .pal button:hover{background:var(--qk-navy);border-color:var(--qk-navy);color:#fff;transform:none;box-shadow:0 4px 10px rgba(11,31,58,.22)}
html body #ibx .ib-eq .pal button:focus-visible{outline:3px solid var(--qk-gold);outline-offset:2px}
html body #ibx .ib-eq .pal .gap{width:10px}
html body #ibx .ib-eq math-field{border:2px solid var(--qk-line);border-radius:14px;background:#fff}
html body #ibx .ib-eq math-field:focus-within{border-color:var(--qk-gold);box-shadow:0 0 0 4px rgba(244,185,66,.25)}
html body #ibx .ib-eqtip b{background:var(--qk-cream);border:1.5px solid var(--qk-line);border-bottom-width:3px;color:var(--qk-navy)}
html body #ibx .ib-dlg:has(.ib-eq) .ib-df{background:#FFFCF4;border-top:1px solid #F1E3B5}
html body #ibx .ib-dlg:has(.ib-eq) .ib-df button{background:#fff;border:1.5px solid var(--qk-line);color:var(--qk-navy)}
html body #ibx .ib-dlg:has(.ib-eq) .ib-df button:hover{background:var(--qk-cream);border-color:var(--qk-gold)}
html body #ibx .ib-dlg:has(.ib-eq) .ib-df button.p{background:linear-gradient(135deg,var(--qk-gold),var(--qk-gold2));border:0;color:var(--qk-navy);box-shadow:0 2px 8px rgba(244,185,66,.45)}
html body #ibx .ib-dlg:has(.ib-eq) .ib-df button.p:hover{background:var(--qk-navy);color:var(--qk-gold)}

/* --- calculator --- */
html body #ibx .ib-calc{border:1.5px solid var(--qk-line)}
html body #ibx .ib-calc .ch{position:relative}
html body #ibx .ib-calc .ch:after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:var(--qk-stripe);pointer-events:none}
html body #ibx .ib-calc .ln.on{border-left-color:var(--qk-gold);background:#FFFCF3}
html body #ibx .ib-calc .ln .rs{background:var(--qk-cream);border:1.5px solid var(--qk-line);color:var(--qk-navy);font-weight:700}
html body #ibx .ib-calc .ln .rs:hover{background:#FFF1CC}
html body #ibx .ib-calc .ln .rs.err{border:0;background:transparent}
html body #ibx .ib-calc .kp{background:#FFFDF7;border-top:1px solid #F1E3B5;padding:2px 8px 9px}
html body #ibx .ib-calc .kt{height:42px;gap:5px}
html body #ibx .ib-calc .kt button{font:800 13px Nunito,Arial,sans-serif;color:var(--qk-navy)}
html body #ibx .ib-calc .kt .tab{border:1.5px solid var(--qk-line);background:var(--qk-cream);border-radius:999px;padding:0 13px;height:28px}
html body #ibx .ib-calc .kt .tab:hover{background:#FFF1CC}
html body #ibx .ib-calc .kt .tab.on{background:var(--qk-navy);border-color:var(--qk-navy);color:var(--qk-gold);box-shadow:0 2px 6px rgba(11,31,58,.25)}
html body #ibx .ib-calc .kt .dr{border:1.5px solid var(--qk-line);border-radius:999px}
html body #ibx .ib-calc .kt .dr button{height:24px;font-size:11px;padding:0 10px;color:#7a6a3a;background:var(--qk-cream)}
html body #ibx .ib-calc .kt .dr button.on{background:var(--qk-navy);color:var(--qk-gold)}
html body #ibx .ib-calc .kt .ur{color:var(--qk-navy)}
html body #ibx .ib-calc .kt .ur:disabled{color:#c9bfa3}
html body #ibx .ib-calc .kt .ca{color:#C4624B}
html body #ibx .ib-calc .kt .ur:hover,html body #ibx .ib-calc .kt .ca:hover{background:#FFF1CC}
html body #ibx .ib-calc .keys{gap:6px}
html body #ibx .ib-calc .keys .k,html body #ibx .ib-calc .keys .k.k{border-radius:10px;background:var(--qk-cream);border:1.5px solid var(--qk-line);color:var(--qk-navy);font-family:"Times New Roman",serif;font-size:19px;transition:background .12s,color .12s,border-color .12s}
html body #ibx .ib-calc .keys .k.k.d{background:#fff;color:var(--qk-navy);font:800 20px Nunito,Arial,sans-serif}
html body #ibx .ib-calc .keys .k[class="k k"]{background:#FFF1CC;color:var(--qk-navy);font-family:Arial,sans-serif}
html body #ibx .ib-calc .keys .k.k:hover,html body #ibx .ib-calc .keys .k.k.d:hover,html body #ibx .ib-calc .keys .k[class="k k"]:hover{background:var(--qk-navy);border-color:var(--qk-navy);color:#fff}
html body #ibx .ib-calc .keys .k:active{transform:translateY(1px)}
html body #ibx .ib-calc .keys .k.k.ent,html body #ibx .ib-calc .keys .k.k.ent:hover{background:var(--qk-navy);border-color:var(--qk-navy);color:var(--qk-gold);font-size:24px}
html body #ibx .ib-calc .keys .k.k.ent:hover{background:linear-gradient(135deg,var(--qk-gold),var(--qk-gold2));border-color:var(--qk-gold);color:var(--qk-navy)}
html body #ibx .ib-calc .keys.abc .k.k,html body #ibx .ib-calc .keys.func .k.k{font-family:Arial,sans-serif;font-size:16px}
html body #ibx .ib-calc .keys.func .k.k{font-size:14.5px}
html body #ibx .ib-calc .keys .k:focus-visible{outline:3px solid var(--qk-gold);outline-offset:1px}

/* --- on-screen keyboard --- */
html body #ibx .ib-kbd{background:#fff;border:1.5px solid var(--qk-line);border-bottom:0;border-radius:14px 14px 0 0;padding:16px 10px 10px;box-shadow:0 -10px 28px rgba(11,31,58,.22);overflow:hidden}
html body #ibx .ib-kbd:before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--qk-stripe)}
html body #ibx .ib-kbd .kt{gap:8px;margin-bottom:10px}
html body #ibx .ib-kbd .kt button{height:34px;padding:0 15px;border-radius:999px;background:var(--qk-cream);border:1.5px solid var(--qk-line);color:var(--qk-navy);font:800 13.5px Nunito,Arial,sans-serif}
html body #ibx .ib-kbd .kt button:hover{background:#FFF1CC;border-color:var(--qk-gold)}
html body #ibx .ib-kbd .kt button.on,html body #ibx .ib-kbd .kt button.on:hover{background:var(--qk-navy);border-color:var(--qk-navy);color:var(--qk-gold);box-shadow:0 2px 6px rgba(11,31,58,.25)}
html body #ibx .ib-kbd .kt .x{background:#fff;color:#C4624B;border-color:#EBC2B6}
html body #ibx .ib-kbd .kt .x:hover{background:#C4624B;border-color:#C4624B;color:#fff}
html body #ibx .ib-kbd .kk{gap:6px}
html body #ibx .ib-kbd .kk button{min-width:44px;height:40px;padding:0 8px;border-radius:10px;background:var(--qk-cream);border:1.5px solid var(--qk-line);color:var(--qk-navy);font-family:"Times New Roman",serif;font-size:18px;transition:background .12s,color .12s,border-color .12s}
html body #ibx .ib-kbd .kk button:hover{background:var(--qk-navy);border-color:var(--qk-navy);color:#fff}
html body #ibx .ib-kbd .kk button:focus-visible{outline:3px solid var(--qk-gold);outline-offset:2px}
html body #ibx .ib-kbd .kk.abc button,html body #ibx .ib-kbd .kk.num button{font:700 17px Nunito,Arial,sans-serif;min-width:44px;height:42px}
html body #ibx .ib-kbd .kk button.space{min-width:200px;font:800 13px Nunito,Arial,sans-serif;background:#fff}
html body #ibx .ib-kbd .kk button.wide{min-width:66px;font:800 14px Nunito,Arial,sans-serif;background:#FFF1CC}
html body #ibx .ib-kbd .kk button.on{background:var(--qk-navy);color:var(--qk-gold);border-color:var(--qk-navy)}
@media (max-width:600px){
  html body #ibx .ib-eq .pal button{min-width:40px;height:38px;font-size:17px}
  html body #ibx .ib-kbd .kk button{min-width:36px;height:38px;padding:0 4px;font-size:16px}
  html body #ibx .ib-kbd .kk.abc button,html body #ibx .ib-kbd .kk.num button{min-width:30px;height:40px;font-size:15px}
  html body #ibx .ib-kbd .kk button.space{min-width:120px}
  html body #ibx .ib-kbd .kt button{padding:0 11px;font-size:12.5px}
  html body #ibx .ib-calc .keys{gap:4px}
  html body #ibx .ib-calc .keys .k.k{font-size:17px}
  html body #ibx .ib-calc .keys .k.k.d{font-size:18px}
}
@media (prefers-reduced-motion:reduce){html body #ibx .ib-calc .keys .k:active{transform:none}}
/* --- executive symbols: one refined maths face, keycap depth, navy + gold hover --- */
html body #ibx{--qk-math:"Cambria Math","STIX Two Math","Latin Modern Math",Cambria,Georgia,"Times New Roman",serif}
html body #ibx .ib-eq .pal button,html body #ibx .ib-kbd .kk.sym button,html body #ibx .ib-calc .keys.main .k.k:not(.d):not(.ent),html body #ibx .ib-qk-pop button.qk-b{font-family:var(--qk-math);font-size:20px;font-weight:400;color:var(--qk-navy);background:linear-gradient(180deg,#FFFEF9 0%,#FFF4DA 100%);border:1px solid #DCC27A;border-bottom-width:2.5px;box-shadow:inset 0 1px 0 #fff,0 1px 2px rgba(11,31,58,.08);letter-spacing:.01em;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-variant-numeric:lining-nums}
html body #ibx .ib-eq .pal button:hover,html body #ibx .ib-kbd .kk.sym button:hover,html body #ibx .ib-calc .keys.main .k.k:not(.d):not(.ent):hover,html body #ibx .ib-qk-pop button.qk-b:hover{background:linear-gradient(180deg,#163A63 0%,#0B1F3A 100%);border-color:#0B1F3A;border-bottom-color:#F4B942;color:#F4B942;box-shadow:0 4px 10px rgba(11,31,58,.25)}
html body #ibx .ib-eq .pal button:active,html body #ibx .ib-kbd .kk.sym button:active,html body #ibx .ib-qk-pop button.qk-b:active{border-bottom-width:1px;transform:translateY(1px)}
html body #ibx .ib-calc .keys.main .k[class="k k"]{background:linear-gradient(180deg,#FFF6DD,#FBE7B0);font-family:Arial,sans-serif;font-size:18px}
html body #ibx .ib-calc .keys .k.k.d{border:1px solid #DCC27A;border-bottom-width:2.5px;box-shadow:inset 0 1px 0 #fff,0 1px 2px rgba(11,31,58,.08)}
html body #ibx .ib-calc .keys .k.k.d:hover{color:#F4B942;background:linear-gradient(180deg,#163A63,#0B1F3A)}
html body #ibx .ib-kbd .kk.sym button.sm{font-size:27px;line-height:1}
html body #ibx .ib-eq .pal button sup,html body #ibx .ib-eq .pal button sub{font-size:.68em}
html body #ibx .ib-kbd .kk.sym button.space,html body #ibx .ib-kbd .kk.sym button.wide{font:800 13px Nunito,Arial,sans-serif;color:var(--qk-navy)}
html body #ibx .ib-kbd .kk.sym button.space{background:#fff}html body #ibx .ib-kbd .kk.sym button.wide{background:#FFF1CC}
@media (max-width:600px){html body #ibx .ib-eq .pal button,html body #ibx .ib-kbd .kk.sym button{font-size:18px}html body #ibx .ib-kbd .kk.sym button.sm{font-size:23px}}
@media (prefers-reduced-motion:reduce){html body #ibx .ib-eq .pal button:active,html body #ibx .ib-kbd .kk.sym button:active,html body #ibx .ib-qk-pop button.qk-b:active{transform:none}}
html body #ibx .ib-eq .pal button .fr,html body #ibx .ib-qk-pop button.qk-b .fr{font-size:.62em;line-height:1.05}
