@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=JetBrains+Mono:wght@500;700&display=swap";:root{--font-main:"Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:"JetBrains Mono", monospace;--radius-sm:8px;--radius-md:14px;--radius-lg:20px;--radius-full:9999px;--transition-fast:.15s ease;--transition-normal:.25s cubic-bezier(.4, 0, .2, 1);--transition-bounce:.4s cubic-bezier(.175, .885, .32, 1.275);--bg-main:#0b0f19;--bg-secondary:#111827;--card-bg:#111827bf;--card-bg-hover:#1f2937d9;--card-border:#ffffff14;--card-border-focus:#10b98180;--card-shadow:0 8px 32px 0 #0000005e;--text-main:#f3f4f6;--text-secondary:#9ca3af;--text-muted:#6b7280;--accent-primary:#10b981;--accent-primary-hover:#059669;--accent-primary-light:#10b98126;--accent-secondary:#06b6d4;--accent-indigo:#6366f1;--gain:#10b981;--gain-bg:#10b9811f;--loss:#ef4444;--loss-bg:#ef44441f;--input-bg:#0f172acc;--input-border:#ffffff1f;--nav-bg:#0b0f19d9;--modal-overlay:#000000bf;--tag-bg:#ffffff0f;--tag-active-bg:#10b981;--tag-active-text:#fff}[data-theme=light]{--bg-main:#f8fafc;--bg-secondary:#fff;--card-bg:#ffffffd9;--card-bg-hover:#f1f5f9f2;--card-border:#00000014;--card-border-focus:#10b98199;--card-shadow:0 10px 25px -5px #0000000d, 0 8px 10px -6px #00000008;--text-main:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--accent-primary:#059669;--accent-primary-hover:#047857;--accent-primary-light:#0596691f;--accent-secondary:#0284c7;--accent-indigo:#4f46e5;--gain:#059669;--gain-bg:#0596691f;--loss:#dc2626;--loss-bg:#dc26261f;--input-bg:#fff;--input-border:#00000026;--nav-bg:#ffffffe6;--modal-overlay:#0f172a73;--tag-bg:#0000000d;--tag-active-bg:#059669;--tag-active-text:#fff}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}body{font-family:var(--font-main);background-color:var(--bg-main);color:var(--text-main);min-height:100vh;transition:background-color var(--transition-normal), color var(--transition-normal);background-image:radial-gradient(at 0 0,#10b98114 0,#0000 50%),radial-gradient(at 100% 100%,#6366f114 0,#0000 50%);background-attachment:fixed;line-height:1.5;overflow-x:hidden}.app-wrapper{flex-direction:column;max-width:600px;min-height:100vh;margin:0 auto;padding-bottom:84px;display:flex;position:relative}.app-header{z-index:40;-webkit-backdrop-filter:blur(16px);background:var(--nav-bg);border-bottom:1px solid var(--card-border);justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex;position:sticky;top:0}.brand-section{align-items:center;gap:10px;display:flex}.brand-logo{border-radius:var(--radius-md);color:#fff;background:linear-gradient(135deg,#10b981 0%,#06b6d4 100%);justify-content:center;align-items:center;width:36px;height:36px;display:flex;box-shadow:0 4px 12px #10b9814d}.brand-info h1{font-size:1.05rem;font-weight:700;line-height:1.2}.provider-badge{color:var(--accent-primary);background:var(--accent-primary-light);border-radius:var(--radius-full);align-items:center;gap:4px;padding:2px 8px;font-size:.72rem;font-weight:600;display:inline-flex}.header-actions{align-items:center;gap:8px;display:flex}.icon-btn{background:var(--tag-bg);border:1px solid var(--card-border);color:var(--text-main);border-radius:var(--radius-md);cursor:pointer;width:36px;height:36px;transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex}.icon-btn:hover{background:var(--card-bg-hover);transform:translateY(-1px)}.icon-btn:active{transform:scale(.95)}.glass-card{background:var(--card-bg);-webkit-backdrop-filter:blur(14px);border:1px solid var(--card-border);border-radius:var(--radius-lg);box-shadow:var(--card-shadow);transition:all var(--transition-normal);padding:16px}.glass-card:hover{border-color:#ffffff26}.search-container{padding:12px 16px 4px}.search-input-wrapper{align-items:center;display:flex;position:relative}.search-icon{color:var(--text-muted);pointer-events:none;position:absolute;left:14px}.search-input{background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-md);width:100%;color:var(--text-main);font-size:.92rem;font-family:var(--font-main);transition:all var(--transition-fast);outline:none;padding:12px 14px 12px 42px}.search-input:focus{border-color:var(--card-border-focus);box-shadow:0 0 0 3px var(--accent-primary-light)}.filter-scroll{scrollbar-width:none;gap:8px;padding:8px 16px;display:flex;overflow-x:auto}.filter-scroll::-webkit-scrollbar{display:none}.filter-pill{border-radius:var(--radius-full);background:var(--tag-bg);color:var(--text-secondary);border:1px solid var(--card-border);cursor:pointer;white-space:nowrap;transition:all var(--transition-fast);padding:6px 14px;font-size:.82rem;font-weight:600}.filter-pill.active{background:var(--tag-active-bg);color:var(--tag-active-text);box-shadow:0 2px 8px var(--accent-primary-light);border-color:#0000}.rates-grid{flex-direction:column;gap:10px;padding:8px 16px;display:flex}.rate-card{cursor:pointer;justify-content:space-between;align-items:center;display:flex;position:relative;overflow:hidden}.rate-card:before{content:"";width:4px;transition:background var(--transition-fast);background:0 0;position:absolute;top:0;bottom:0;left:0}.rate-card:hover:before{background:var(--accent-primary)}.rate-pair-left{align-items:center;gap:12px;display:flex}.currency-flag-badge{background:var(--tag-bg);width:42px;height:42px;box-shadow:inset 0 0 0 1px var(--card-border);border-radius:12px;justify-content:center;align-items:center;font-size:1.4rem;display:flex}.pair-info h3{letter-spacing:-.01em;font-size:1rem;font-weight:700}.pair-info p{color:var(--text-muted);font-size:.76rem}.rate-pair-right{text-align:right;flex-direction:column;align-items:flex-end;gap:4px;display:flex}.rate-value{font-family:var(--font-mono);color:var(--text-main);font-size:1.05rem;font-weight:700}.change-badge{border-radius:var(--radius-sm);align-items:center;gap:3px;padding:2px 7px;font-size:.74rem;font-weight:700;display:inline-flex}.change-badge.gain{color:var(--gain);background:var(--gain-bg)}.change-badge.loss{color:var(--loss);background:var(--loss-bg)}.card-quick-actions{gap:6px;margin-top:4px;display:flex}.mini-action-btn{background:var(--tag-bg);border:1px solid var(--card-border);color:var(--text-secondary);cursor:pointer;border-radius:6px;align-items:center;gap:4px;padding:4px 8px;font-size:.72rem;display:flex}.mini-action-btn:hover{background:var(--accent-primary-light);color:var(--accent-primary);border-color:var(--accent-primary)}.bottom-nav{-webkit-backdrop-filter:blur(20px);background:var(--nav-bg);border-top:1px solid var(--card-border);z-index:50;justify-content:space-around;width:100%;max-width:600px;padding:8px 12px;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.nav-tab{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-fast);background:0 0;border:none;flex-direction:column;align-items:center;gap:3px;padding:6px 12px;font-size:.72rem;font-weight:600;display:flex}.nav-tab.active{color:var(--accent-primary);transform:translateY(-2px)}.nav-tab svg{transition:transform var(--transition-bounce)}.nav-tab.active svg{transform:scale(1.15)}.modal-backdrop{background:var(--modal-overlay);-webkit-backdrop-filter:blur(8px);z-index:100;justify-content:center;align-items:flex-end;padding:0;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-content{background:var(--bg-secondary);border-top:1px solid var(--card-border);border-radius:24px 24px 0 0;width:100%;max-width:600px;max-height:90vh;padding:20px 20px 36px;animation:.3s cubic-bezier(.16,1,.3,1) slideUp;overflow-y:auto;box-shadow:0 -10px 40px #0006}.modal-handle{background:var(--card-border);border-radius:var(--radius-full);width:40px;height:4px;margin:0 auto 16px}.modal-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.modal-title{font-size:1.15rem;font-weight:700}.chart-stats-row{grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:16px;display:grid}.stat-box{background:var(--tag-bg);border:1px solid var(--card-border);border-radius:var(--radius-md);text-align:center;padding:8px 10px}.stat-box .label{color:var(--text-muted);text-transform:uppercase;font-size:.68rem;font-weight:700}.stat-box .val{font-family:var(--font-mono);color:var(--text-main);margin-top:2px;font-size:.85rem;font-weight:700}.timeframe-selector{background:var(--tag-bg);border-radius:var(--radius-md);gap:4px;margin-bottom:16px;padding:4px;display:flex}.timeframe-btn{color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;flex:1;padding:6px;font-size:.78rem;font-weight:700}.timeframe-btn.active{background:var(--accent-primary);color:#fff;box-shadow:0 2px 8px var(--accent-primary-light)}.chart-wrapper{height:220px;margin-bottom:20px;position:relative}.converter-container{flex-direction:column;gap:16px;padding:16px;display:flex}.convert-box{flex-direction:column;gap:8px;display:flex}.convert-box-label{color:var(--text-secondary);font-size:.82rem;font-weight:600}.convert-input-row{box-sizing:border-box;align-items:center;gap:10px;width:100%;display:flex}.convert-amount-input{background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-md);width:100%;min-width:0;height:52px;color:var(--text-main);font-family:var(--font-mono);box-sizing:border-box;-moz-appearance:textfield;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none;flex:1;align-items:center;padding:10px 14px;font-size:1.25rem;font-weight:700;display:flex}.convert-amount-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.convert-amount-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.convert-amount-input:focus{border-color:var(--card-border-focus);box-shadow:0 0 0 3px var(--accent-primary-light)}.currency-select{background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-md);width:100px;height:52px;color:var(--text-main);font-family:var(--font-main);cursor:pointer;box-sizing:border-box;transition:border-color var(--transition-fast);outline:none;flex-shrink:0;padding:0 12px;font-size:.95rem;font-weight:700}.currency-select:focus{border-color:var(--card-border-focus)}.swap-btn-container{justify-content:center;display:flex}.swap-button{border-radius:var(--radius-full);background:var(--accent-primary);color:#fff;cursor:pointer;width:44px;height:44px;box-shadow:0 4px 14px var(--accent-primary-light);border:none;justify-content:center;align-items:center;transition:transform .3s;display:flex}.swap-button:hover{transform:rotate(180deg)scale(1.05)}.swap-button:active{transform:rotate(180deg)scale(.95)}.chip-row{flex-wrap:wrap;gap:8px;display:flex}.chip-btn{border-radius:var(--radius-full);background:var(--tag-bg);border:1px solid var(--card-border);color:var(--text-secondary);cursor:pointer;padding:6px 12px;font-size:.8rem;font-weight:600}.chip-btn:hover{background:var(--accent-primary-light);color:var(--accent-primary)}.alerts-container{flex-direction:column;gap:16px;padding:16px;display:flex}.alert-item-card{flex-direction:column;gap:12px;display:flex}.alert-item-top{justify-content:space-between;align-items:center;display:flex}.alert-pair-tag{font-size:1.05rem;font-weight:800}.alert-condition-badge{font-family:var(--font-mono);border-radius:var(--radius-sm);background:var(--accent-primary-light);color:var(--accent-primary);padding:3px 8px;font-size:.88rem;font-weight:700}.alert-progress-bar-bg{background:var(--tag-bg);border-radius:var(--radius-full);width:100%;height:6px;overflow:hidden}.alert-progress-bar-fill{border-radius:var(--radius-full);background:linear-gradient(90deg,#10b981,#06b6d4);height:100%;transition:width .4s}.btn-primary{background:linear-gradient(135deg, var(--accent-primary) 0%, var(--accent-secondary) 100%);color:#fff;border-radius:var(--radius-md);width:100%;font-size:.95rem;font-weight:700;font-family:var(--font-main);cursor:pointer;box-shadow:0 4px 16px var(--accent-primary-light);transition:all var(--transition-fast);border:none;justify-content:center;align-items:center;gap:8px;padding:14px 20px;display:flex}.btn-primary:hover{filter:brightness(1.1);transform:translateY(-1px)}.btn-primary:active{transform:scale(.98)}.settings-container{flex-direction:column;gap:16px;padding:16px;display:flex}.settings-section-title{text-transform:uppercase;color:var(--text-muted);letter-spacing:.05em;margin-bottom:8px;font-size:.8rem;font-weight:700}.profile-card{align-items:center;gap:14px;display:flex}.avatar-placeholder{border-radius:var(--radius-full);background:linear-gradient(135deg, var(--accent-indigo), var(--accent-secondary));color:#fff;justify-content:center;align-items:center;width:52px;height:52px;font-size:1.3rem;font-weight:800;display:flex}.profile-name{font-size:1.1rem;font-weight:700}.profile-username{color:var(--text-muted);font-size:.82rem}.setting-row{border-bottom:1px solid var(--card-border);justify-content:space-between;align-items:center;padding:12px 0;display:flex}.setting-row:last-child{border-bottom:none}.setting-label-block{flex-direction:column;gap:2px;display:flex}.setting-label{font-size:.92rem;font-weight:600}.setting-desc{color:var(--text-muted);font-size:.76rem}.switch{width:48px;height:26px;display:inline-block;position:relative}.switch input{opacity:0;width:0;height:0}.slider{cursor:pointer;background-color:var(--tag-bg);border:1px solid var(--card-border);border-radius:var(--radius-full);transition:all .3s;position:absolute;inset:0}.slider:before{content:"";background-color:#fff;border-radius:50%;width:18px;height:18px;transition:all .3s;position:absolute;bottom:3px;left:3px}input:checked+.slider{background-color:var(--accent-primary)}input:checked+.slider:before{transform:translate(22px)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.toast-notice{background:var(--bg-secondary);color:var(--text-main);border:1px solid var(--accent-primary);border-radius:var(--radius-full);z-index:200;padding:10px 20px;font-size:.86rem;font-weight:700;animation:.2s ease-out fadeIn;position:fixed;top:70px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #0000004d}
