/* scientific-calculator: styles only it uses, split out of site.css by scripts/split-css.mjs. */
.sci-layout { display: grid; grid-template-columns: minmax(0, 520px) minmax(0, 1fr); gap: 24px; align-items: start; }
@media (max-width: 860px) { .sci-layout { grid-template-columns: 1fr; } }
.sci { background: var(--ink); border-radius: var(--r-panel); padding: 18px; box-shadow: var(--shadow-3); }
.sci-display { background: #0A1530; border-radius: 12px; padding: 12px 16px 14px; margin-bottom: 12px; }
.sci-modes { display: flex; align-items: center; gap: 10px; }
.sci-mode { font: 600 0.75rem var(--text); color: var(--c1); background: rgb(255 122 69 / 0.12); border: 0; border-radius: 6px; padding: 3px 8px; cursor: pointer; }
.sci-memory { font: 600 0.75rem var(--text); color: #A9B5CB; }
.sci-expression {
    width: 100%; background: transparent !important; border: 0 !important; box-shadow: none !important; outline: none;
    color: #A9B5CB !important; font: 500 1.15rem var(--mono) !important; text-align: right; padding: 8px 0 2px !important;
}
.sci-result { display: block; text-align: right; color: #fff; font: 800 clamp(2rem, 1.6rem + 2vw, 2.8rem) var(--display); font-variant-numeric: tabular-nums; overflow-x: auto; white-space: nowrap; }
.sci-result.is-error { color: #FFB4A8; font-size: 1.05rem; font-family: var(--text); font-weight: 500; white-space: normal; }
.sci-memory-keys { display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; margin-bottom: 6px; }
.sci-memory-keys button { font: 600 0.8rem var(--text); color: #A9B5CB; background: transparent; border: 0; border-radius: 6px; padding: 6px; cursor: pointer; }
.sci-memory-keys button:hover { background: rgb(255 255 255 / 0.08); color: #fff; }
.sci-keys { display: grid; grid-template-columns: repeat(6, 1fr); gap: 6px; }
.sci-key {
    font: 600 1rem var(--text); color: #fff; background: rgb(255 255 255 / 0.08); border: 0; border-radius: 10px;
    padding: 14px 4px; cursor: pointer; transition: background 0.12s, transform 0.06s;
}
.sci-key:hover { background: rgb(255 255 255 / 0.14); }
.sci-key:active { transform: scale(0.96); }
.sci-num { background: rgb(255 255 255 / 0.16); font-size: 1.15rem; }
.sci-fn { color: #C9D3E5; font-size: 0.92rem; }
.sci-op { color: var(--c1); font-size: 1.1rem; }
.sci-danger { color: #FFB4A8; }
.sci-equals { background: var(--signal); }
.sci-equals:hover { background: var(--signal-deep); }
@media (max-width: 420px) { .sci-key { padding: 12px 2px; font-size: 0.9rem; } }
.sci-history h2 { display: flex; align-items: center; gap: 8px; }
.sci-history-list { list-style: none; margin: 0; padding: 0; max-height: 420px; overflow-y: auto; }
.sci-history-list button {
    width: 100%; text-align: right; font: 500 0.95rem var(--mono); color: var(--ink); background: none; border: 0;
    border-bottom: 1px solid var(--line); padding: 10px 4px; cursor: pointer; overflow-wrap: anywhere;
}
.sci-history-list button:hover { background: var(--signal-soft); }
tr.is-error td { color: var(--bad); }
