.co-calc{display: grid;gap: 12px;max-width: 460px;width: 100%;margin-inline: auto}.co-screen{border: 1px solid var(--border);border-radius: var(--radius);background: var(--surface-2);padding: 12px 16px;display: grid;gap: 2px;min-width: 0}.co-expr{min-height: 1.4em;text-align: right;color: var(--text-2);font-size: 1rem;overflow-x: auto;white-space: nowrap}.co-out{display: block;text-align: right;font-size: clamp(2rem,1.4rem + 3cqi,3rem);font-weight: 700;line-height: 1.15;overflow-x: auto;white-space: nowrap}.co-out.is-error{color: var(--danger);font-size: 1.1rem;white-space: normal}.co-mem{display: grid;grid-template-columns: repeat(4,1fr) auto;gap: 6px;align-items: center}.co-mflag{font-weight: 700;color: var(--brand);padding: 0 4px}.co-keys{display: grid;grid-template-columns: repeat(4,1fr);gap: 8px}.co-calc .key{min-height: 56px;border: 1px solid var(--border);border-radius: 12px;background: var(--surface);color: var(--text);font: 600 1.3rem/1 system-ui,sans-serif;cursor: pointer;padding: 0 4px;transition: background 0.1s,transform 0.05s;touch-action: manipulation}.co-calc .key:hover{background: var(--surface-2)}.co-calc .key:active,.co-calc .key.is-pressed{transform: translateY(1px);background: var(--surface-2)}.co-calc .key-mem{min-height: 38px;font-size: 0.85rem;color: var(--text-2);background: var(--surface-2)}.co-calc .key-op{color: var(--brand);font-size: 1.45rem}.co-calc .key-danger{color: var(--danger)}.co-calc .key-eq{background: var(--brand);border-color: var(--brand);color: #fff;font-size: 1.5rem}.co-calc .key-eq:hover,.co-calc .key-eq.is-pressed{background: var(--brand);filter: brightness(1.08)}.co-hist{list-style: none;margin: 0;padding: 0;display: grid;gap: 6px;max-height: 460px;overflow-y: auto}.co-hist button{width: 100%;display: flex;flex-direction: column;align-items: flex-end;gap: 2px;padding: 8px 10px;border: 0;border-radius: 8px;background: var(--surface-2);color: var(--text-2);cursor: pointer;font: 0.9rem system-ui,sans-serif;text-align: right}.co-hist button:hover{background: var(--brand-soft,var(--surface-2))}.co-h-e{overflow-wrap: anywhere}.co-h-r{color: var(--text);font-weight: 700;font-size: 1.05rem;font-variant-numeric: tabular-nums}@container (min-width: 760px){.co-split{grid-template-columns: minmax(0,1.4fr) minmax(220px,1fr)}}