* { box-sizing: border-box; touch-action: manipulation; -webkit-user-select: none; }
body { background: #000; margin: 0; height: 100dvh; display: flex; justify-content: center; align-items: center; font-family: -apple-system, sans-serif; overflow: hidden; }
.calc-body { width: 100%; max-width: 400px; height: 100dvh; padding: 20px; display: flex; flex-direction: column; }
#display { width: 100%; height: 25dvh; background: #000; border: none; color: #fff; font-size: 70px; text-align: right; padding: 20px; outline: none; }
.buttons { flex: 1; display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
button { font-size: 28px; border: none; border-radius: 50%; background: #333; color: #fff; cursor: pointer; }
button:active { filter: brightness(1.4); }
button.op { background: #ff9500; }
button.func { background: #a5a5a5; color: #000; }
button.eq { background: #ff9500; }
#proxy-panel { display: none; position: fixed; inset: 0; background: #fff; z-index: 1000; }
.controls { background: #222; padding: 10px; display: flex; gap: 8px; }
#urlInput { flex: 1; border: none; border-radius: 5px; padding: 8px; }
.run-btn { background: #34c759; color: #fff; border: none; padding: 0 15px; border-radius: 5px; }
.back-btn { background: #ff3b30; color: #fff; border: none; padding: 0 15px; border-radius: 5px; }
iframe { width: 100%; height: calc(100% - 55px); border: none; }
