/* RECATOOLS — Scientific Calculator look (indigo math family) */
.sc-wrap { padding: 1.1rem; max-width: 520px; margin: 0 auto; }
.sc-screen { position: relative; background: #1a1814; border-radius: 14px; padding: .9rem 1rem; margin-bottom: .9rem; }
.sc-meta { display: flex; justify-content: space-between; align-items: center; margin-bottom: .35rem; }
.sc-mode { font-size: .72rem; font-weight: 700; letter-spacing: .08em; color: #a5b4fc; }
.sc-mem-ind { font-size: .72rem; font-weight: 700; color: #fbbf24; opacity: 0; transition: opacity .15s; }
.sc-display { width: 100%; border: none; background: transparent; color: #fff; font-family: ui-monospace, Menlo, monospace; font-size: 1.5rem; text-align: right; padding: .2rem 0; }
.sc-display:focus { outline: none; }
.sc-error { margin: -.4rem 0 .8rem; padding: .5rem .8rem; background: #fef2f2; border-left: 4px solid #ef4444; border-radius: 8px; color: #991b1b; font-size: .82rem; }
.sc-modes { display: grid; grid-template-columns: repeat(7, 1fr); gap: .4rem; margin-bottom: .5rem; }
.sc-pad { display: grid; grid-template-columns: repeat(7, 1fr); gap: .4rem; }
.sc-key { padding: .7rem .2rem; border: 1px solid #ebebeb; border-radius: 10px; background: #fff; font-size: .95rem; font-family: ui-monospace, Menlo, monospace; color: #1a1814; cursor: pointer; transition: background .1s; user-select: none; }
.sc-key:hover { background: #f5f3ff; }
.sc-key:active { background: #e0e7ff; }
.sc-key.fn { background: #f7f6f3; color: #4338ca; font-size: .82rem; }
.sc-key.op { background: #eef2ff; color: #4338ca; font-weight: 700; }
.sc-key.mem { background: #fafafa; color: #6b6760; font-size: .8rem; }
.sc-key.mode { background: #fafafa; color: #6b6760; font-size: .8rem; font-weight: 700; }
.sc-key.mode.is-active { background: #4f46e5; color: #fff; border-color: #4f46e5; }
.sc-key.eq { background: #4f46e5; color: #fff; font-weight: 700; border-color: #4f46e5; }
.sc-key.eq:hover { background: #4338ca; }
.sc-key.clear { background: #fef2f2; color: #b91c1c; }
.sc-key.span2 { grid-column: span 2; }
.sc-history { margin-top: 1rem; display: flex; flex-direction: column; gap: .3rem; max-height: 180px; overflow-y: auto; }
.sc-hist-item { text-align: right; padding: .4rem .7rem; background: #fafafa; border: 1px solid #ebebeb; border-radius: 8px; font-family: ui-monospace, Menlo, monospace; font-size: .85rem; color: #6b6760; cursor: pointer; }
.sc-hist-item:hover { background: #f5f3ff; color: #4338ca; }
@media (max-width: 480px) { .sc-key { padding: .6rem .1rem; font-size: .85rem; } .sc-key.fn { font-size: .72rem; } }
