body { font-family: Arial, sans-serif; margin: 0 auto; padding: 0; transition: background-color 0.4s, color 0.4s; max-width: 1778px; min-width: 808px; } h1 { font-size: 28px; } body.dark { background-color: #121212; color: #ffffff; } body.light { background-color: #f2f2f2; color: #000000; } .header { text-align: center; padding: 20px; max-width: 1660px; } .button-container { margin-bottom: 10px; } button { padding: 10px; margin: 5px; font-size: 16px; background-color: #008CBA; color: white; border: none; cursor: pointer; border-radius: 5px; } button:hover { background-color: #005f73; } .alarm-btn { background-color: #ff8b00; } .alarm-btn:hover { background-color: #e38806; } .options-btn { background-color: #555; } .options-btn:hover { background-color: #777; } .main-container { display: flex; } .left-column { width: 75%; padding: 10px; } .right-column { display: grid; grid-template-rows: 300px auto; border-left: 1px solid #444; width: 320px; padding: 20px; } .notify-area { min-height: 400px; max-width: 280px; border: 1px solid #444; overflow-y: auto; padding: 10px; display: flex; flex-direction: column; } .buttons-and-version { display: flex; flex-direction: column; max-width: 260px; padding-left: 6%; } .notify-heading { display: flex; justify-content: space-between; align-items: center; font-size: 20px; margin-bottom: 10px; } .notify-list { list-style: none; padding-left: 0; margin: 0; flex: 1; overflow-y: auto; max-height: 400px; } .grid-container { display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; width: 80%; margin: auto; padding: 10px; } .crypto-box { background-color: #1e1e1e; border: 2px solid #444; padding: 15px; border-radius: 5px; text-align: center; font-size: 16px; position: relative; user-select: none; min-width: 177px; } body.light .crypto-box { background-color: #ffffff; border: 2px solid #ccc; color: #000; } .change.up { color: #00ff00; } .change.down { color: #ff0000; } .delete-btn { position: absolute; top: 5px; right: 5px; background-color: #333; color: #fff; border: none; cursor: pointer; border-radius: 3px; font-size: 14px; width: 24px; height: 24px; text-align: center; line-height: 24px; padding: 0; } .delete-btn:hover { background-color: #999; color: #000; } .crypto-box.dragging { opacity: 0.5; transform: scale(0.97); } .crypto-box.drag-over { border: 2px dashed #ccc !important; } .modal { display: none; position: fixed; z-index: 2; left: 0; top: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.7); } .modal-content { background-color: #222222f2; margin: 5% auto; padding: 20px; border-radius: 8px; max-width: 40%; text-align: center; color: white; overflow-y: auto; overflow-x: hidden; position: relative; box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.3); } #cryptoNewsModal .modal-content { width: 40%; overflow-x: hidden; overflow-y: auto; max-height: 80vh; } #buyMeModal .modal-content { width: 400px; max-width: 90%; overflow-x: hidden; text-align: center; position: absolute; top: 35%; left: 50%; transform: translate(-50%, -50%); display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 30px; border-radius: 15px; background: linear-gradient(135deg, #2c3e50 0%, #34495e 100%); box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3); } #buyMeModal .close { position: absolute; top: 15px; right: 15px; font-size: 24px; cursor: pointer; } #optionsModal .modal-content { width: 30%; overflow-x: hidden; } #addCryptoModal .modal-content { width: 20%; text-align: center; position: absolute; top: 35%; left: 50%; transform: translate(-50%, -50%); display: flex; flex-direction: column; align-items: center; justify-content: center; } #addCryptoModal .modal-content label { display: block; margin-bottom: 6px; } #addCryptoModal .close { position: absolute; top: 15px; right: 15px; font-size: 24px; cursor: pointer; } #addCryptoModal .modal-content select, #addCryptoModal .modal-content input { width: 100%; height: 20px; font-size: 16px; padding: 8px; border: 1px solid #ccc; box-sizing: border-box; } #alarmModal .modal-content { min-width: 406px; text-align: center; position: absolute; top: 35%; left: 50%; max-width: 100%; transform: translate(-50%, -45%); flex-direction: column; align-items: center; justify-content: center; } #alarmModal .modal-content label { display: block; margin-bottom: 3px; } #alarmModal .modal-content select, #alarmModal .modal-content input { margin-bottom: 8px; width: 30%; padding: 8px; } #alarmModal .modal-content select { padding: 8px; font-size: 13px; width: 30%; } #alarmModal .close { position: absolute; top: 15px; right: 15px; font-size: 24px; cursor: pointer; } #alarmModal .modal-content h3 { display: flex; align-items: center; justify-content: center; font-size: 1.15em; font-weight: bold; margin: 18px 0 8px 0; color: #00bfff; padding-bottom: 6px; letter-spacing: 1px; } #alarmModal .modal-content h3::before, #alarmModal .modal-content h3::after { content: ""; flex: 1; border-bottom: 1.5px solid #444; margin: 0 12px; opacity: 0.5; } body.light #alarmModal .modal-content h3 { color: #0077b6; } body.light #alarmModal .modal-content h3::before, body.light #alarmModal .modal-content h3::after { border-bottom: 1.5px solid #bbb; } body.light .modal-content { background-color: #ddd; color: #000; } .close { float: right; font-size: 24px; cursor: pointer; } label { display: inline-block; margin-top: 10px; } select, input[type="number"], input[type="text"] { margin: 5px 0 10px 5px; font-size: medium; } .alert-overlay { display: none; position: fixed; z-index: 3; left: 0; top: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.7); } .alert-box { background-color: #333; color: #fff; padding: 20px; margin: 15% auto; width: 300px; border-radius: 5px; text-align: center; position: relative; } .alert-box button { margin-top: 15px; background-color: #555; } .alert-box button:hover { background-color: #777; } body.light .alert-box { background-color: #ccc; color: #000; } .error-overlay { display: none; position: fixed; z-index: 4; left: 0; top: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.7); } .error-box { background-color: #aa3333; color: #fff; padding: 20px; margin: 15% auto; width: 300px; border-radius: 5px; text-align: center; position: relative; } body.light .error-box { background-color: #f2aaaa; color: #000; } .api-label { margin-top: 10px; font-size: 14px; color: #ccc; text-decoration: underline; cursor: pointer; } body.light .api-label { color: #333; } .alarm-list-container { display: block; max-height: 200px; overflow-y: auto; margin: 1em 0; } .alarm-group { margin-bottom: 10px; } .alarm-group-list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; } #alarmModal .modal-content .alarm-row { display: flex; gap: 24px; align-items: flex-start; margin-bottom: 10px; justify-content: center; } #alarmModal .modal-content .alarm-row .alarm-col { flex: 1 1 0; min-width: 180px; max-width: 240px; display: flex; flex-direction: column; align-items: stretch; justify-content: flex-start; } #alarmModal .modal-content .alarm-row label { margin-bottom: 4px; font-size: 15px; font-weight: 500; text-align: left; padding-left: 6px; } #alarmModal .modal-content .alarm-row select, #alarmModal .modal-content .alarm-row input { width: 100%; min-width: 120px; max-width: 240px; box-sizing: border-box; margin-bottom: 0; font-size: 15px; } .alarm-item { display: flex; align-items: center; justify-content: space-between; background-color: #333; padding: 3px 8px; border-radius: 3px; font-size: 14px; min-height: 28px; transition: background 0.15s, box-shadow 0.15s; height: 36px; } .alarm-item span { display: flex; align-items: center; height: 100%; } .alarm-item:hover { background-color: #444; box-shadow: 0 2px 8px rgba(0,0,0,0.08); } body.light .alarm-item { background-color: #eee; color: #000; } .alarm-delete-btn { background-color: #008CBA; border: none; color: white; cursor: pointer; border-radius: 4px; padding: 2px 6px; font-size: 15px; margin-left: 8px; transition: background 0.15s; height: 22px; width: 22px; display: flex; align-items: center; justify-content: center; } .alarm-delete-btn:hover { background-color: #005f7a; } @font-face { font-family: 'Bree Serif'; src: url('font/BreeSerif-Regular.ttf') format('truetype'); font-weight: normal; font-style: normal; } .coffee-btn { margin-top: 60px; background-color: #614484; font-family: 'Bree Serif', serif; font-size: 16px; color: white; padding: 10px 20px; border: none; cursor: pointer; } .coffee-btn:hover { background-color: #711fe9; } .coffee-icon { width: 25px; height: 25px; vertical-align: middle; margin-left: 5px; } #search { width: 90%; padding: 10px; font-size: 16px; margin-bottom: 15px; border: none; border-radius: 5px; outline: none; background: #1e1e1e; color: white; text-align: center; } #news-feed { text-align: left; } .news-item { padding: 15px; border-bottom: 1px solid #333; transition: background 0.3s; } .news-item:last-child { border-bottom: none; } .news-item:hover { background: rgba(255, 255, 255, 0.1); cursor: pointer; } .news-title { font-size: 18px; color: #1db954; text-decoration: none; display: block; margin-bottom: 5px; } .news-meta { font-size: 14px; color: gray; display: flex; justify-content: space-between; align-items: center; } .news-source { font-weight: bold; color: #ffffff; } .time { font-size: 14px; color: gray; } #economicCalendarModal .iframe-container { position: relative; width: 100%; max-width: 700px; height: 500px; margin: 0 auto; display: flex; flex-direction: column; text-align: center; align-items: center; justify-content: center; } #economicCalendarModal .iframe-wrapper { position: relative; width: 100%; height: 100%; border-radius: 15px; overflow: hidden; padding: 10px; background: white; box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.2); } #economicCalendarModal iframe { width: calc(100% - 20px); height: calc(100% - 20px); border: none; display: block; } #economicCalendarModal .poweredBy { margin-top: 10px; font-family: Arial, Helvetica, sans-serif; font-size: 12px; color: #ffffff; text-align: center; } #economicCalendarModal .poweredBy a { color: #06529D; font-weight: bold; text-decoration: none; } #updateModal .modal-content { padding: 20px; border-radius: 5px; } .version-info { text-align: center; margin-top: 10px; } .change { margin: 5px; } .my-button { background-color: white; color: black; border: 1px solid black; padding: 8px 16px; cursor: pointer; font-weight: 700; } #tradingViewModal .modal-content { min-width: 80%; min-height: 80%; max-height: 80%; text-align: center; position: fixed; top: 35%; left: 50%; transform: translate(-50%, -45%); padding: 25px; flex-direction: column; align-items: center; justify-content: center; overflow-y: hidden; display: flex; flex-direction: column; align-items: center; justify-content: center; } #tradingViewModal .close { position: absolute; top: 1px; right: 7px; font-size: 24px; cursor: pointer; color: red; } .button-grid-container { display: grid; grid-template-columns: 1fr 1fr 1fr; align-items: center; justify-items: center; column-gap: 10px; align-items: start; margin-bottom: 15px; } .grid-right { display: flex; justify-content: flex-end; width: 100%; align-items: start; justify-items: stretch; justify-content: flex-end; } .header-container { max-width: 170px; margin: 0 auto; padding: 0 10px; } .alarm-row { display: flex; gap: 10px; align-items: center; margin-bottom: 10px; } .alarm-col { flex: 1; } #alarmModal .modal-content .alarm-row select, #alarmModal .modal-content .alarm-row input { margin-bottom: 8px; width: 200px; padding: 8px; } .coffee-modal-header { margin-bottom: 25px; } .coffee-icon-large { font-size: 48px; margin-bottom: 15px; animation: coffeeSteam 2s ease-in-out infinite; } @keyframes coffeeSteam { 0%, 100% { transform: translateY(0) scale(1); } 50% { transform: translateY(-5px) scale(1.05); } } .coffee-modal-header h2 { color: #ecf0f1; margin: 0 0 8px 0; font-size: 24px; font-weight: 600; } .coffee-subtitle { color: #bdc3c7; margin: 0; font-size: 14px; } .coffee-content { width: 100%; } .payment-methods { margin-bottom: 25px; } .payment-method { background: rgba(255, 255, 255, 0.1); border-radius: 12px; padding: 20px; border: 1px solid rgba(255, 255, 255, 0.2); } .payment-icon { font-size: 32px; margin-bottom: 10px; } .payment-method h3 { color: #ecf0f1; margin: 0 0 15px 0; font-size: 18px; } .chain-selector { display: flex; justify-content: center; gap: 15px; margin: 0; } .chain-option { padding: 8px 16px; border-radius: 20px; cursor: pointer; transition: all 0.3s ease; border: 2px solid transparent; font-weight: 500; } .chain-option.active { background: #3498db; color: white; border-color: #2980b9; } .chain-option:not(.active) { background: rgba(255, 255, 255, 0.1); color: #bdc3c7; border-color: rgba(255, 255, 255, 0.2); } .chain-option:hover:not(.active) { background: rgba(255, 255, 255, 0.2); color: #ecf0f1; } .wallet-address-section { display: flex; gap: 20px; margin-bottom: 25px; align-items: flex-start; } .qr-code-placeholder { background: rgba(255, 255, 255, 0.1); border-radius: 12px; padding: 20px; border: 1px solid rgba(255, 255, 255, 0.2); min-width: 100px; text-align: center; } .qr-icon { font-size: 32px; margin-bottom: 8px; } .qr-code-placeholder p { color: #bdc3c7; margin: 0; font-size: 12px; } .address-container { flex: 1; text-align: left; } .address-container label { color: #ecf0f1; font-size: 14px; font-weight: 500; margin-bottom: 8px; display: block; } .address-box { background: rgba(255, 255, 255, 0.1); border: 1px solid rgba(255, 255, 255, 0.2); border-radius: 8px; padding: 12px; cursor: pointer; transition: all 0.3s ease; display: flex; align-items: center; justify-content: space-between; font-family: 'Courier New', monospace; font-size: 12px; word-break: break-all; } .address-box:hover { background: rgba(255, 255, 255, 0.15); border-color: #3498db; transform: translateY(-1px); } .address-box span:first-child { color: #ecf0f1; flex: 1; margin-right: 10px; } .copy-icon { color: #3498db; font-size: 16px; flex-shrink: 0; } .copy-hint { color: #95a5a6; font-size: 12px; margin: 8px 0 0 0; text-align: center; } .coffee-footer { border-top: 1px solid rgba(255, 255, 255, 0.2); padding-top: 20px; } .thank-you { color: #ecf0f1; font-size: 16px; margin: 0 0 15px 0; font-weight: 500; } .coffee-benefits { display: flex; justify-content: center; gap: 15px; } .coffee-benefits span { font-size: 20px; animation: benefitFloat 3s ease-in-out infinite; } .coffee-benefits span:nth-child(2) { animation-delay: 1s; } .coffee-benefits span:nth-child(3) { animation-delay: 2s; } @keyframes benefitFloat { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-3px); } } /* Light mode styles */ body.light #buyMeModal .modal-content { background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%); box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1); } body.light .coffee-modal-header h2 { color: #2c3e50; } body.light .coffee-subtitle { color: #6c757d; } body.light .payment-method { background: rgba(0, 0, 0, 0.05); border-color: rgba(0, 0, 0, 0.1); } body.light .payment-method h3 { color: #2c3e50; } body.light .chain-option:not(.active) { background: rgba(0, 0, 0, 0.05); color: #6c757d; border-color: rgba(0, 0, 0, 0.1); } body.light .chain-option:hover:not(.active) { background: rgba(0, 0, 0, 0.1); color: #495057; } body.light .qr-code-placeholder { background: rgba(0, 0, 0, 0.05); border-color: rgba(0, 0, 0, 0.1); } body.light .qr-code-placeholder p { color: #6c757d; } body.light .address-container label { color: #2c3e50; } body.light .address-box { background: rgba(0, 0, 0, 0.05); border-color: rgba(0, 0, 0, 0.1); } body.light .address-box:hover { background: rgba(0, 0, 0, 0.1); border-color: #3498db; } body.light .address-box span:first-child { color: #2c3e50; } body.light .copy-hint { color: #6c757d; } body.light .coffee-footer { border-color: rgba(0, 0, 0, 0.1); } body.light .thank-you { color: #2c3e50; }