@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700;900&display=swap";:root{--bg: #FFFFFF;--text: #000000;--muted: #555555;--gold: #D4AF37;--radius: 10px;--card-border: #ececec;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial;line-height:1.5;font-weight:400;color:var(--text);background-color:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:600;color:var(--text);text-decoration:none}a:hover{color:var(--gold)}body{margin:0;min-width:320px;min-height:100vh;width:100%;background-color:var(--bg);color:var(--text)}h1{font-size:2rem;line-height:1.15;margin:0}button{border-radius:10px;border:1px solid rgba(0,0,0,.08);padding:10px 18px;font-size:.95rem;font-weight:600;font-family:inherit;background-color:#1570ef;color:#fff;cursor:pointer;transition:box-shadow .2s ease,transform .08s ease,background-color .2s ease,border-color .2s ease}button:active{transform:translateY(1px)}button.secondary{background-color:#1570ef;color:#fff;border:1px solid rgba(0,0,0,.08)}button.secondary:hover{background-color:#1365d6}button.accent,button.accent-hover{border:1px solid var(--gold);color:var(--gold);background:#1570ef}button.accent:hover,button.accent-hover:hover{background:#125ed6;box-shadow:0 4px 14px #d4af3714}button:hover{box-shadow:0 6px 18px #0000000f;background-color:#1365d6}button.active{background:#0f56c2;border:2px solid #0b4fb0;color:#fff;font-weight:800;box-shadow:0 8px 20px #0f56c21f}button.active:hover{background:#0d4fb3;border-color:#093f92}.App{min-height:100vh;width:100%;background:var(--bg);color:var(--text)}.app-header{width:100%;padding:16px;text-align:center;border-bottom:1px solid #E0E0E0;background:var(--bg);position:sticky;top:0;z-index:10;box-shadow:none}.logo{width:auto;height:300px;vertical-align:middle;margin-top:-23%;margin-bottom:-24%}.header-content{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 12px}.header-content h1{font-size:1.25rem;font-weight:800;color:var(--text);letter-spacing:1px;margin:0}.header-sub{color:var(--muted);font-weight:600;font-size:.95rem}.status-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;border:1px solid var(--card-border);background:transparent;color:var(--text);font-weight:700}.status-dot{width:10px;height:10px;border-radius:50%;display:inline-block;flex:0 0 auto}.status-dot.connected{background:#22c55e}.status-dot.disconnected{background:#ef4444}@keyframes pulse{0%{transform:scale(1);opacity:1}50%{transform:scale(1.25);opacity:.75}to{transform:scale(1);opacity:1}}.status-dot.connected,.status-dot.disconnected{animation:pulse 1.6s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.status-dot.connected,.status-dot.disconnected{animation:none}}.header-right{display:flex;align-items:center;gap:14px}.language-select-header{background:#fff;border:1px solid #E5E7EB;border-radius:8px;padding:8px 12px;font-family:inherit;font-size:.95rem;color:#111;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.language-select-header:hover{background:#f5f5f5}.language-select-header:focus{outline:2px solid rgba(21,112,239,.12)}.language-select-header option:checked{color:#1570ef}.controls-section{max-width:1200px;margin:24px auto;padding:0 16px;display:grid;align-items:end;justify-content:end}.control-group{background:var(--bg);border:1px solid var(--card-border);padding:14px;border-radius:var(--radius)}.control-label{font-weight:700;color:var(--muted);font-size:.8rem;margin-bottom:8px}.button-group{display:flex;gap:10px}.city-btn,.metal-btn,.currency-btn,.language-btn{padding:10px 18px;border-radius:10px;border:1px solid rgba(0,0,0,.08);background:#1570ef;color:#fff;font-weight:700}.city-btn.secondary,.metal-btn.secondary,.currency-btn.secondary,.language-btn.secondary{background:#1570ef;color:#fff;border:1px solid rgba(0,0,0,.08)}.city-btn.secondary:hover,.metal-btn.secondary:hover,.currency-btn.secondary:hover,.language-btn.secondary:hover{background:#1365d6}.city-btn.active,.metal-btn.active,.currency-btn.active,.language-btn.active{background:#0f56c2;color:#fff;border:2px solid #0b4fb0;font-weight:800;box-shadow:0 8px 20px #0f56c21f;position:relative}.city-btn.active:after,.metal-btn.active:after,.currency-btn.active:after,.language-btn.active:after{content:"✓";display:inline-block;margin-left:8px;font-size:.85rem;color:#fff;opacity:.95}.city-btn.active:hover,.metal-btn.active:hover,.currency-btn.active:hover,.language-btn.active:hover{background:#0d4fb3;border-color:#093f92}.prices-container{max-width:1200px;margin:32px auto;padding:0 16px}.no-data{padding:32px;text-align:center;border-radius:12px;border:1px solid var(--card-border);background:var(--bg)}.no-data p{color:var(--muted);font-weight:600}.app-footer{padding:24px 16px;text-align:center;border-top:1px solid var(--card-border);margin-top:40px}.app-footer p{color:var(--muted);font-weight:600}@media(max-width:768px){.controls-section{grid-template-columns:1fr}.button-group{flex-direction:column}}@media(max-width:480px){.header-content{flex-direction:column;text-align:center}.header-content h1{font-size:1rem}}.price-table-wrapper{background:var(--bg);border:1px solid #E0E0E0;border-radius:12px;overflow:hidden}.table-header{padding:12px 18px 8px;border-bottom:none;text-align:left}.table-header h2{margin:0;font-size:1rem;font-weight:800;color:#111;position:relative;padding-left:14px}.table-header h2:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:6px;height:28px;background:#1570ef;border-radius:4px}.price-grid{display:flex;flex-direction:column;width:100%}.grid-header{display:grid;grid-template-columns:20% 27% 27% 26%;gap:8px;padding:12px 8px;background:#f3f4f6;align-items:center}.grid-row{display:grid;grid-template-columns:20% 27% 27% 26%;gap:8px;padding:12px 8px;border-radius:0;border-bottom:1px solid #E0E0E0;align-items:center}.grid-row:hover{background:#e8e8e8}.grid-cell{display:flex;align-items:center;justify-content:center;padding:6px;font-size:.95rem;font-weight:600;color:var(--text)}.header-cell{font-weight:600;font-size:.85rem;color:#111;text-transform:uppercase;letter-spacing:1px}.price-grid .grid-row:nth-of-type(odd){background:#f5f5f5}.price-grid .grid-row:nth-of-type(2n){background:#fff}.purity-badge{display:inline-block;padding:6px 12px;border-radius:20px;border:1px solid var(--gold);color:var(--text);background:transparent;font-weight:700}.buy-price,.sell-price{color:var(--text);font-weight:700}.change-badge{display:inline-block;padding:6px 10px;border-radius:12px;font-weight:700;font-size:.9rem}.change-badge.positive{color:#0b8a5f;border:1px solid #9de7c5;background:transparent}.change-badge.negative{color:#c74b4b;border:1px solid #f1bebe;background:transparent}.change-badge.neutral{color:var(--muted);border:1px solid #e5e5e5}.no-data-message{padding:32px;text-align:center}.no-data-message p{margin:0;font-size:1rem;font-weight:600;color:var(--muted)}@media(max-width:768px){.grid-header,.grid-row{grid-template-columns:18% 28% 28% 26%;padding:10px}.grid-cell{font-size:.9rem}}@media(max-width:480px){.grid-header,.grid-row{grid-template-columns:1fr;gap:8px}.grid-cell{justify-content:flex-start;padding:8px 0}.header-cell{display:none}.grid-cell:before{content:attr(data-label);font-weight:700;color:var(--gold);margin-right:8px;min-width:90px}}.loading-spinner-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px;background:transparent;border-radius:12px}.loading-spinner{position:relative;width:72px;height:72px;margin-bottom:12px}.spinner-ring{box-sizing:border-box;position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:5px solid transparent;border-top-color:var(--gold);animation:spin 1.1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.spinner-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:22px;height:22px;border-radius:50%;background:var(--gold)}.loading-text{font-size:1rem;font-weight:800;color:var(--text);letter-spacing:1px}.loading-text:after{content:"...";font-weight:800;margin-left:6px}.loading-subtitle{margin-top:8px;font-size:.9rem;color:var(--muted);font-weight:600}@media(max-width:480px){.loading-spinner{width:56px;height:56px}.spinner-center{width:18px;height:18px}.loading-text{font-size:.95rem}}
