.assignment-calculator { position:relative; flex:0 0 auto; align-self:center; }
.assignment-calculator[hidden], .assignment-calculator-panel[hidden] { display:none!important; }
.assignment-calculator .assignment-calculator-toggle { width:36px; height:34px; min-height:0; padding:5px; display:flex; align-items:center; justify-content:center; }
.assignment-calculator-toggle img { width:24px; height:24px; object-fit:contain; filter:invert(1); pointer-events:none; }
.assignment-calculator-panel { position:fixed; inset:auto; margin:0; right:auto; top:0; z-index:2147483647; width:268px; max-width:calc(100vw - 24px); padding:12px; border:1px solid #63778e; border-radius:12px; background:#17202b; color:#f8fafc; box-shadow:0 12px 35px #0008; text-align:left; box-sizing:border-box; max-height:calc(100dvh - 24px); overflow:auto; }
.assignment-calculator-heading { display:flex; align-items:center; justify-content:space-between; margin-bottom:8px; }
.assignment-calculator-heading button { border:0; background:transparent; color:inherit; font-size:24px; cursor:pointer; padding:0 6px; }
.assignment-calculator-panel input { width:100%; box-sizing:border-box; font-size:20px; border:1px solid #63778e; border-radius:6px; padding:8px; background:#0b111b; color:#fff; }
.assignment-calculator-result { display:block; min-height:24px; padding:4px 0; font-size:13px; overflow-wrap:anywhere; }
.assignment-calculator-keys { display:grid; grid-template-columns:repeat(4,1fr); gap:6px; }
.assignment-calculator-keys button { border:1px solid #63778e; border-radius:6px; height:36px; background:#29394b; color:#fff; font-size:18px; cursor:pointer; }
.assignment-calculator-keys button:hover { background:#40546b; }
.assignment-calculator-keys .assignment-calculator-equals { grid-column:1/-1; background:#92562c; }
.assignment-calculator-panel small { display:block; margin-top:8px; font-size:11px; color:#b7c5d7; }
.worksheet-student-preview-header h2 { margin-right:auto; }
#studentNodeModalHeader, .presentation-student-preview-overlay .presentation-slide-maker-header, .worksheet-student-preview-header { position:relative; z-index:10; }
#studentNodeModalHeader { min-height:34px; flex:none; flex-direction:row!important; align-items:center!important; }
#studentNodeModalHeading { position:absolute; left:50%; transform:translateX(-50%); max-width:38%; min-width:0; pointer-events:none; text-align:center; }
#studentNodeModalHeading #studentNodeModalTitle { display:block!important; font-size:14px!important; line-height:1.2; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
#studentNodeModalHeading #studentNodeModalSub { display:none; }
#studentNodeModalHeaderActions { flex-wrap:nowrap; }
@media(max-width:600px) {
  .assignment-calculator-panel { position:fixed; right:12px; top:72px; }
  #studentNodeModal:not(.student-presentation-lecture-modal) #studentNodeModalHeading { position:static; transform:none; flex:1 1 0; max-width:none; }
  #studentNodeModal:not(.student-presentation-lecture-modal) #studentNodeModalHeader { gap:8px!important; }
}
