.calculator-drawer-header { gap: 8px; }
.calculator-drawer-window-actions { display: flex; align-items: center; flex-shrink: 0; gap: 4px; }
.calculator-minimize { display: inline-flex; align-items: center; gap: 4px; font-size: 12px; }
.calculator-minimize:disabled { opacity: .5; cursor: wait; }
.calculator-sync-status { flex: none; display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; padding: 6px 16px; color: #047857; background: #ecfdf5; font-size: 12px; }
.calculator-sync-status[data-status="offline"], .calculator-sync-status[data-status="conflict"] { color: #92400e; background: #fffbeb; }
.calculator-sync-status button { text-decoration: underline; text-underline-offset: 3px; padding: 4px 0; font-weight: 600; }
.calculator-sync-choices { display: flex; flex-wrap: wrap; gap: 8px 20px; }
.calculator-sync-loading { position: fixed; z-index: 1110; top: 12px; right: 12px; max-width: calc(100vw - 24px); padding: 16px; display: flex; gap: 20px; border: 1px solid #059669; border-radius: 12px; background: #ecfdf5; color: #064e3b; }
.dark .calculator-sync-status { background: #153b35; color: #a7f3d0; }
.dark .calculator-sync-status[data-status="offline"], .dark .calculator-sync-status[data-status="conflict"] { background: #42321b; color: #fde68a; }
.calculator-resume {
  position: fixed;
  z-index: 1110;
  top: max(12px, env(safe-area-inset-top));
  right: max(12px, env(safe-area-inset-right));
  display: flex;
  align-items: center;
  gap: 10px;
  max-width: calc(100vw - 24px);
  padding: 12px 14px;
  border: 1px solid #059669;
  border-radius: 14px;
  background: #ecfdf5;
  color: #064e3b;
  box-shadow: 0 6px 24px #0002;
  text-align: left;
  cursor: pointer;
}
.calculator-resume:hover { background: #d1fae5; }
.calculator-resume:focus-visible, .calculator-minimize:focus-visible { outline: 2px solid #10b981; outline-offset: 3px; }
.calculator-resume-icon { width: 20px; height: 20px; flex-shrink: 0; }
.calculator-resume-copy { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.calculator-resume-title { font-size: 14px; font-weight: 600; }
.calculator-resume-summary { font-size: 12px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.dark .calculator-resume { background: #153b35; color: #d1fae5; border-color: #34d399; }
.dark .calculator-resume:hover { background: #1c4c43; }
@media (max-width: 480px) {
  .calculator-drawer-header { padding: 10px 12px; }
  .calculator-drawer-header h2 { font-size: 14px; }
  .calculator-minimize { flex-direction: column; gap: 0; font-size: 10px; }
}

.proposal-preview { min-width: 0; }
.proposal-preview-controls {
  position: sticky; top: 0; z-index: 2;
  display: flex; align-items: center; gap: 6px; padding: 4px 0;
  background: #fff;
}
html:is(.dark, .crm-glass) .proposal-preview-controls { background: var(--dk-surface-solid, #1e3444); }
.proposal-preview-controls button {
  min-width: 44px; min-height: 44px; padding: 6px 12px;
  border: 1px solid #94a3b866; border-radius: 9px;
  color: inherit; background: transparent; font-size: 20px;
}
.proposal-preview-controls button:hover:not(:disabled) { background: #94a3b822; }
.proposal-preview-controls button:disabled { opacity: .35; }
.proposal-preview-controls button:focus-visible { outline: 2px solid #10b981; outline-offset: 2px; }
.proposal-preview-controls output { min-width: 44px; text-align: center; font-size: 12px; font-variant-numeric: tabular-nums; }
.proposal-preview-controls .proposal-preview-fit { margin-left: auto; font-size: 13px; }
.proposal-preview-hint { margin: 6px 0 10px; font-size: 11px; color: inherit; opacity: .75; }
.proposal-preview-viewport { width: 100%; overflow-x: auto; overflow-y: hidden; touch-action: pan-x pan-y; }
.proposal-preview-space { position: relative; overflow: hidden; }
.proposal-preview-content { position: absolute; top: 0; left: 0; transform-origin: top left; }
.proposal-preview-content .kp-paper { margin-top: 0; }
